Monthly Archives: August 2010

Uncategorized

Useful Links: August 2010

A list of items I’ve come across recently that I found potentially useful, interesting, or just plain funny:

Uncategorized

More on implementing Twitter’s Tweet button

A week or so back, I wrote about putting a Tweet button onto a self-hosted WordPress blog. The method I used was fine – it works – but I was struggling to place the button within my page (I knew where to put it in my code but it seemed to display in the wrong place sometimes, as a result of some of the floats that the stylesheet applies).

That’s when I called in my buddy Alex: XHTML and CSS wizard; and fixer of many things on this site.

He spotted that, even though Twitter gives us three options for implementing the Tweet button: JavaScript, IFrame, and roll your own, the JavaScript implementation also uses an IFrame.

The trouble with this is that IFrames are bad. Well, not really bad, but certainly deprecated for Strict HTML and XHTML, and certainly not the direction I want to be heading in for a compliant site. Ideally, I would find another way around the issue but rolling my own Tweet button doesn’t look great) and Twitter’s implementation uses several images in one file, just showing the appropriate section of the image. I could use this, with image replacement techniques for hover and click (which is what Twitter do) but, to be honest, that was a little out of my league, so IFrames it is…

Alex helped me style up the button – if you want to do something similar, this was the CSS that he used:

p.social-media {margin-top: -15px;}
iframe.twitter-share-button {float: left; margin-right: 1em;}

Together with adding class="social-media" to the <p> tag in the code to display the tweet button so that it now reads:

<p class="social-media"><a href="http://twitter.com/share" class="twitter-share-button" data-url="<?php the_permalink(); ?>" data-text="<?php the_title(); ?>" data-count="none" data-via="markwilsonit">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></p>

When I asked him how this works, he explained that the class on the <p> is just to close up the top margin; the real magic is floating just the Tweet button (which cured the CSS float issues that had been frustrating me).

Of course, there may be plugins to display buttons like Tweet, Facebook Share/Like, etc. but when something only takes a couple of lines of code, I’d rather implement it natively than add to the list of plugins running on my WordPress installation.

Uncategorized

Running Spotify and other apps as background tasks on an iPhone 3G

I like shiny toys as much as the next geek, but I don’t have an iPhone 4 for two reasons: firstly, I’ve spent far too much money on an iPad (so I have much less use for a smartphone); and, secondly, I consider iPhone upgrades to be evolutionary rather than revolutionary so my existing iPhone 3G has some life in it yet (even though the case has some nasty cracks and I may need to replace the back soon).

Given that my 3G needs to soldier on for a while, I’d like to be able to use it’s full technical capabilities, rather than being governed by Apple’s marketing decisions – and one feature I’m missing is being able to a run third party applications in the background. For example, I would like to use Spotify instead of the built-in iPod app whilst Runkeeper is tracking my rather slow progress at pounding the pavements of Buckinghamshire.

Luckily for me, even though Apple doesn’t allow multitasking with iOS 4 on the iPhone 3G, there are some clever hackers that have made it possible:

  • First up, you need to allow the iPhone to run apps that are not available from the Apple AppStore. This is commonly known as “jail breaking” the device and there are various methods evolving as Apple tightens up the security on the device – jailbreakme.com is probably the easiest way for people who haven’t yet upgraded to iOS 3.2.2 or 4.0.2.
  • The next step is to install the Backgrounder app, using Cydia (the package manager installed by the jailbreak process). Backgrounder is customisable and includes an FAQ with usage details but the basic principle is to start the app you’d like to run in the background (e.g. Spotify), then activate Backgrounder.
  • Now, when you leave the first app and switch to run something else (e.g. Runkeeper), the first app should keep on running.
Uncategorized

Playing with video on the iPad

One of the great uses for the iPad is watching video.  Seriously, it’s a reasonably large display, held close to the user and, whilst it may not replace the big flat screen in the living room for family viewing, it’s more than good enough for catching up on the normal stuff.

Whilst I’m waiting for the BBC to release an iPlayer app for the iPad (iPlayer support is currently limited to streaming content), I have some video content that I’d like to catch up on whilst disconnected from the ‘net.  Unfortunately, my iPad didn’t want to play it… until I converted the video to a suitable format.

My first task was to use GSpot (on a Windows machine) to have a look at what codecs the file used.  It turned out to be an XviD video/MP3 audio file at 30fps in a .AVI container.

According to Apple’s technical specifications, the iPad can cope with:

Audio playback

  • Frequency response: 20Hz to 20,000Hz
  • Audio formats supported: HE-AAC (V1), AAC (16 to 320 Kbps), Protected AAC (from iTunes Store), MP3 (16 to 320 Kbps), MP3 VBR, Audible (formats 2, 3 and 4), Apple Lossless, AIFF and WAV
  • User-configurable maximum volume limit

TV and video

  • Support for 1024 by 768 pixels with Dock Connector to VGA Adapter; 576p and 480p with Apple Component AV Cable; 576i and 480i with Apple Composite AV Cable
  • H.264 video up to 720p, 30 frames per second, Main Profile level 3.1 with AAC-LC audio up to 160 Kbps, 48kHz, stereo audio in .m4v, .mp4 and .mov file formats; MPEG-4 video, up to 2.5 Mbps, 640 by 480 pixels, 30 frames per second, Simple Profile with AAC-LC audio up to 160 Kbps, 48kHz, stereo audio in .m4v, .mp4 and .mov file formats; Motion JPEG (M-JPEG) up to 35 Mbps, 1280 by 720 pixels, 30 frames per second, audio in ulaw, PCM stereo audio in .avi file format

Unfortunately, it’s not possible to install additional codecs on the iPad (at least not on a non-jailbroken one), so the video needed to be converted to something that the iPad could handle.  To do this, I installed the DivX and XviD codecs on my Mac (although I should have just used Perian), and used Apple QuickTime Pro to export the video as an MP4… except it took ages and converted it to 4:3 ratio at a lower resolution and higher frame rate – not really the result I was after…

Then I remembered Handbrake.  Handbrake doesn’t have any iPad presets yet but Carson McDonald has created some and they worked brilliantly to create a suitable H.264/MP4 file (there’s also a thread on iPad encoding in the Handbrake Forums).

When it cames to getting the video onto the iPad, I had two options: drag the the video to iTunes and sync (it then appears in the iPad’s built in Videos app); or upload the file to Dropbox and access it that way (by marking the file as a favourite, Dropbox will cache it for offline access). Now I can catch up on my TV viewing whilst I’m disconnected.

I’m still waiting for BBC, Channel 4, et al to step up the mark with their apps though!

Uncategorized

What features would you like to see in Windows 8?

Michael Pietroforte, of the 4sysops blog has teamed up with several prominant blog owners across the ‘net to ask people what features they would like to see in Windows 8, which is expected to ship around 2012.

As the poll is running on several websites (Demonic Talking SkullmsigeekStandalone SysadminTeching It Easy: with WindowsThe Experience BlogThe things that are better left unspokenThe Windows ClubWindowsProWithin Windows7tutorials4sysops) please only vote once!

Guidance for poll questions

  • New user interface: Android and iOS are good examples of operating systems with innovative user interface models. Even more revolutionary will be Windows 7 Phone. These examples show that OS interfaces beyond the Windows Start Menu and the Windows Taskbar are possible.
  • Support for different form factors – Support for different form factors, such as tablets and netbooks, includes the ability to run Windows with minimal hardware requirements and on devices with small screen sizes (as small as 5”). Optimization for touch, the ability to run Windows without mouse and keyboard, and orientation detection are other essential features.
  • More modularity: Linux is a good example of a modular operating system. It allows you to install only those OS components you really need. This would require a package manager that resolves software dependencies. The advantages of more modularity are lower hardware requirements, a reduced attack surface, and simplified patch management.
  • Third-party patch management: Third-party management would allow you to update common Windows applications of third-party vendors through Microsoft’s online update service. Linux has this feature for as long as I can remember.
  • Bare metal hypervisor: A bare metal hypervisor would enable you to run multiple Windows installations simultaneously on a PC. You could move your virtualized Windows installation with all applications to another PC or to a VDI environment by simply copying the virtual system drive.
  • Application virtualization: Virtualized applications run in an isolated environment that ensures no modifications to the OS are made during installation and at runtime. Application virtualization can solve compatibility issues and improves security.
  • Application streaming: Application streaming allows you to launch a Windows application from a remote server, for example, through the web, without the need to install the application manually. Application streaming solutions usually leverage application virtualization. An application streaming Windows API would enable third-party software vendors to offer Windows applications through the web.
  • Windows Store: Like Apple’s App Store, Windows Store would allow you to buy and download third-party applications that have been approved by Microsoft.
  • Windows Restore Button: If you messed up your Windows installation, this feature would enable you to restore Windows to its original state without losing your data and without the need to reinstall all your applications.
  • Cloud APIs: Third-party software vendors could allow you to use cloud APIs to add cloud features to their applications. For instance, a web browser vendor could store your bookmarks, plugins, and browser settings in Microsoft’s cloud or in the cloud of a third-party provider. That way, all your settings and data would automatically be available on every Windows machine you log on to.
  • New authentication methods: Wouldn’t it be cool if you could log on to Windows or an online service with a smile at your web cam (facial recognition), with a friendly “Hi, it’s me” (voice recognition), or by just touching your beloved PC (fingerprint recognition)? Biometrics applications have already been available for a while, but they will only have a fair chance of being adopted in the Windows ecosystem if Microsoft fully integrates these functions into Windows.
  • Instant-On: Instant-On means that Windows wouldn’t have to boot up when you turn on your PC. Considering that computers are becoming more and more an integral part of our daily life, this could be an interesting feature for home users in particular. It is probably a must-have feature for tablets.
  • Malware protection: If Windows were delivered with integrated malware protection, every PC would be protected right after the installation, which would make the whole Internet a safer place. Third-party vendors could offer services such as antivirus signatures and antivirus applications that run on top of the Windows malware scanning engine. This would also reduce notorious compatibility problems with antivirus scanning engines and would even allow you to run multiple antivirus applications at the same time.
  • Better UAC: Compared to Sudo in the Linux world, UAC (User Account Control) is a fairly simple security privilege solution. A UAC with more configuration options could improve security, especially in business environments.
  • Migration from Windows XP: Windows XP is a very popular operating system and it will still probably run on many computers even when Windows 8 is released. These Windows customers would appreciate a seamless migration from Windows XP to Windows 8.
  • Better compatibility: Better compatibility includes better hardware and software compatibility with legacy hardware and software.
  • Better security: If you think that Microsoft should focus on improving the security features of Windows 8, then you should vote for this option.
  • Better performance: Speed is always important. If it matters most in your environment, then you should tell Microsoft now.
  • Less hardware requirements: If you intend to run Windows 8 on old computers, then you need a Windows 8 which requires only minimal hardware.
  • Less bloat: Some people think that Windows already has too many features and would prefer a slim Windows 8.
Uncategorized

Adding a Tweet button to a self-hosted WordPress blog

Yesterday, Twitter launched their official button for websites and keen-eyed observers will have noticed that markwilson.it now sports a shiny new “tweet” icon at the head of each post.  It’s pretty easy to do (Twitter generates the code for you – and has an FAQ for developers) but there may be a couple of things to watch out for, depending on your blog’s content management system.

I use self-hosted WordPress, and these were the changes I made to the site:

  • For my single posts, I just added the Twitter-generated code to an appropriate position in the single.php file.
  • For my main index page, I edited index.php, but didn’t want the generated link to be to the current page (my home page with several recent posts) – I wanted it to relate to the particular post that the viewer is tweeting from.  Adapting a tip from David Teng, I added two parameters to the link code (data-url="<?php the_permalink(); ?>" and data-text="<?php the_title(); ?>").

Now, by clicking the Tweet button on this post, the link generated relates to the post – and not the home page for the blog.

Uncategorized

Yikes! My computer can tell websites where I live (thanks to Google)

A few months ago there was a furor as angry Facebook users rallied against the social networking site’s approach to sharing our personal data.  Some people even closed their accounts but at least Facebook’s users choose the information that they post on the site.  OK, so I guess someone else may tag me in an image, but it’s basically up to me to decide whether I want something to be made available – and I can always use fake information if I choose to (I don’t – information like my date of birth, place of birth, and my Mother’s maiden name is all publicly available from government sources, so why bother to hide it?).

Over the last couple of weeks though, I’ve been hearing about Google being able to geolocate a device based on information that their Streetview cars collected.  Not the Wi-Fi traffic that was collected “by mistake” but information collected about Wi-Fi networks in a given neighbourhood used to create a geolocation database.  Now, I don’t really mind that Google has a picture of my house on Streetview… although we were having building work done at the time, so the presence of a builder’s skip on my drive does drag down the impression of my area a little!  What I was shocked to find was that Firefox users can access this database to find out quite a lot about the location of my network (indeed, any browser that supports the Geolocation API can) – in my case it’s only accurate to within about 30-50 metres, but that’s pretty close! I didn’t give consent for Google to collect this – in effect they have been “wardriving” the streets of Britain (and elsewhere).  And if you’re thinking “thats OK, my Wi-Fi is locked down” well, so is mine – I use WPA2 and only allow certain MAC addresses to connect but the very existence of the Wi-Fi access point provides some basic information to clients.

Whilst I’m not entirely happy that Google has collected this information, it’s been done now, and being able to geolocate myself could be handy – particularly as PCs generally don’t have GPS hardware and location-based services will become increasingly prevalent over the coming years.  In addition, Firefox asks for my consent before returning the information required for the database lookup (that’s a requirement of the W3C’s Geolocation API)  and it’s possible to turn geolocation off in Firefox (presumably it’s as simple in other browsers too).

What’s a little worrying is that a malicious website can grab the MAC address of a user’s router, after which it’s just a simple API call to find out where the user is (as demonstrated at the recent Black Hat conference).  The privacy and security implications of this are quite alarming!

One thing’s for sure: Internet privacy is an oxymoron.

Uncategorized

IT Tweet Up number 5 (#ITTU5)

Next week sees the latest in the series of “tweet-ups” that have been running every few months for UK-based IT professionals to meet up over a drink and a bite to eat.

This time, the venue has changed – someone didn’t like the toasties in Ye Olde Mitre so we’ve moved to the Melton Mowbray pub in London (make sure you get that the right way around – this is nothing to do with pork pies in Leicestershire) but you can register your interest and get directions on the ‘net. Hopefully I’ll see you there.

Technology

Publishing: yet another industry clinging on to an outdated business model

One would hope that, after the much publicised issues that the music industry experienced whilst grappling with digital music distribution, other digital content producers would avoid making the same mistakes. Apparently that’s not so – at least not if the publishing industry is anything to go by.

I love books. Real books. Dead tree editions full of glorious photographs. I’ll even pay good money for them. But, for magazines and run-of-the-mill text content, I’m increasingly looking towards digital media.

Take, for example, a well-known personal computing magazine – PC Pro. Last week I was convinced that subscribing to the magazine would be a good idea but I don’t want a paper copy to carry around with me – I have a tablet computer for that – an iPad that, somewhat ironically, one of the magazine’s Contributing Editors, Jon Honeyball, convinced me to part with several hundred pounds to buy. Now the fact that it was Jon who “sold” the iPad to me is not really relevant – there are many reasons that was a good purchase and that’s the subject of another blog post – but I would hope that a computer magazine would be at the vanguard of digital publication. Unfortunately not – the answer I got from the magazine’s publishers was that if I wanted a digital copy, I could download an application from Zinio and read it that way.

Er… No thanks. I’ll just hold off on that and PC Pro will pick up one less new subscriber this month.

My problems with this approach to magazine distribution are threefold:

  • Apple provides me with iBooks – a perfectly good eBook reader with support for PDF documents and features such as brightness control.
  • If I buy a magazine from a shop, I can read it and then recycle it, store it (forever if I choose to), or give it to a friend to read (if they don’t mind getting their news/reviews a few weeks late) but the Zinio approach imposes digital rights management on me (or at least some form of copy control).
  • I don’t want another application just to read magazines – not unless its truly innovative and enhances my experience (as the Wired iPad application does by integrating content that’s not available in paper form, such as video).

Then there is newspaper publishing. I don’t buy a newspaper every day but I will read one of the free newspapers on the way to/from work, catch up on the latest news via the ‘net, and either my wife or I buy a newspaper most weekends. Even though my preferred newspaper is The Sunday Times, Murdoch’s paywall means I will not consume their online content because there is plenty of quality content available elsewhere (e.g. The Guardian website and podcasts such as Tech Weekly, or BBC News – either via the web or in their excellent iPad application). I did consider the Financial Times iPad application – and I even tried it whist it was free last month, but it didn’t give me enough to justify a regular subscription. I’m sorry to say that paid newspapers are a dying medium – which is a shame – as the standard of journalism available for free is not up to the same standards but there is just not enough there to convince me that parting with money to subscribe to a newspaper (physical or online) is a worthwhile investment.

Books on sale in WH SmithFinally, there are books. I’m not talking about coffee-table books here, but about normal books – the sort of thing you might see in WH Smith or Waterstones. I’m completely at a loss as to why the same book costs the same price, regardless of whether I buy a paperback copy or an e-book. Indeed, given that most of the books I buy tend to be on a “buy one, get one half price” or similar offer the digital versions actually cost more – ludicrous given that there are no printing costs, almost no distribution costs, and that the content creator (i.e. the author) gets paid less.

[Update: 6 August 2010 @13:06: My assertion that e-books cost around the same as paperbacks was based on Apple’s prices – I’ve since found that Kindle eBooks are available at a substantial discount, just as paper books from Amazon are]

I did actually buy an e-book last weekend: after my half-read copy of Alexander McCall Smith’s 44 Scotland Street got soaked during a rainstorm on a camping trip, I downloaded the iBooks version and was soon reading again; but I can’t give it away when I’ve finished. Indeed, because e-books cannot be passed on to a friend or given to the charity shop, they have the potential to decimate the second-hand book trade, which should result in even more first-time sales – in itself a reason why the prices should be lower as book sales increase.

So it seems that publishers – be they magazine, newspaper, or book publishers – are clinging on to a business model that is in decline. I’m sure that we’ll have books on our shelves for many years to come, and printed magazines will survive a while longer (although their days are numbered) but newspapers are already suffering,  photojournalism has pretty much been killed off (the last NCTJ accredited photojournalism course has only just given a reprieve)., and real journalism (I mean journalism, not bloggers regurgitating press releases) is becoming increasingly endangered.

If only the publishers could learn from the music industry’s mistakes we might see something new, something innovative, something that makes people want to consume their content but, based on what I’ve seen recently, theres little evidence to suggest that they have learned anything.

Uncategorized

Another of my “How Do I?” videos available on the Microsoft TechNet website

Over the last couple of years, I’ve produced a few of the TechNet How Do I? videos for Microsoft and have linked to most (if not all) of them from this blog as they’ve gone live.

A few days ago, I was reviewing my community activities for the year and noticed one that had slipped through the net: running Hyper-V Server from a USB drive.

Unfortunately it doesn’t look as though I’ll be doing any more of these as the company I did the work through has lost the contract (and Microsoft produces a lot of this sort of content in house, reducing the scope for outsiders like me).  It was a nice gig, while it lasted – if a little time-consuming… hopefully the videos are useful to people!

%d bloggers like this: