18 Oct 2011

Cross Browser Testing

I have just finished a major refactoring of a legacy website.  I thought it would be useful to share some of the lessons I learnt.  One of the main lessons I learnt was to make the best use of the tools available.  In particular, I spent a lot of time testing for cross browser compatibility (this legacy site was originally developed in 2007/08), and I wanted to discover the best way of quickly uncovering any browser rendering issues. 
There are several different ways of testing websites for cross browser compatibility:
  • Installing multiple versions of the various browsers on a local PC to allow for testing (belts and braces).  This can be difficult, as some browsers don’t allow for different versions being installed on the same system (Cough *Internet Explorer* Cough). Normally, you end up using multiple virtual images with the various target browsers installed, which can be a pain to manage.
  • Use a web-based screenshot service in order to view how a site renders on various combinations of browsers and operating systems. A multitude of these services have sprung up recently, making use of various cloud-based virtual environments.  Several of these sites allow you to use a browser on a remote machine and test the functionality, as well checking the actual page rendering.
    • CrossBrowserTesting – A commercial service that offers both automated screenshots and access to browsers in remote machine sessions to interactively test your website. Covers all major browsers and operating systems, including all mobile smartphone devices.
CrossBrowserTesting.com Logo
    • BrowserCam – Another commercial service, again offering both automated screenshots and remote access to various browsers. Covers all major browsers and operating systems, including all mobile smartphone devices.
    • Adobe BrowserLab – An excellent online service that allows you to view sites side by side and even to set different browser renderings over the top of one another (thought this onion skin mode isn’t that useful in practice!).  The service is fast and allows you to test using Safari (5.1), Internet Explorer (6 – 9), Firefox (5, 7 on both OS X and Windows) and Chrome (13 and 14).  The service is currently free until April 2012, when it will become a paid service.
Adobe BrowserLab
    • Spoon – A free virtualization service that allows you make use of all the major browsers except Internet Explorer.
  • Desktop applications typically bundle multiple browser installations, allowing you to switch browsers when viewing your site.
    • Lunascape Browser - This browser comes with all three major browser engines, allowing it to mimic the behaviour of all the major browsers (IE, Firefox, Chrome, Safari).  The browser is free to download.
    • Microsoft Expression Web SuperPreview – A free tool to allow to test all versions of IE locally, and also to test the other browsers remotely. This tool is free, and is normally found as part of the Expression IDE.
Microsoft Expression SuperPreview
Of the above methods, I would recommend Microsoft Expression Web SuperPreview as the best way of checking how your site renders in the main browsers, because it is both free and fully featured   I found Adobe BrowserLab to be the best online solution, but I wasn’t testing against mobile devices.  The two commercial offerings may be more relevant if you are developing against mobile devices.  I intend to look at cross browser testing on mobile devices in a future post. 

Tech City Talks

For those interested in my previous post about teaching programming, the Guardian Tech Podcast team’s first talk in their Tech City Talks series is on skills and education.  The panel includes David Willetts MP (Minister of State for Universities and Science), Prof Jeff Magee (Principal of the Faculty of Engineering at Imperial College), Dan Crow (CTO, Songkick) and Emma Mulqueeny (Rewired State and Young Rewired State).

librarian and student

The podcast gives a great overview on the current (dire) state of how programming is  (not) taught in our schools, and what is being done, and still needs to be done, to rectify this.  I was particularly interested to hear of Emma’s experiences from Young Rewired State.  Unfortunately, there doesn’t seem to be anything comparable to this in Northern Ireland at the moment – though that may change…

25 Aug 2011

Coding in the Cloud - Online IDEs

Coding in the Clouds - Online IDEs
The company I work for, Parity, has recently revitalised the company blogs.  As part of this, I've recently written a series of posts looking at the advent of online IDEs.  Check out the blog series at blogs.parity.net/archives/category/cloud-computing.


Update - 28/08/2011
I have written a whitepaper that summarizes the conclusions from the blog series. It is now available from the Parity website (registration required):

http://www.parity.net/parity-systems/white-papers/coding-in-the-cloud-white-paper

29 Jul 2011

Raspberry Pi for Coding Kids

I came across a couple of great resources for teaching programming over the past week, and I thought I would share them with you.

Link to Teaching Kids Programming WebsiteThe first is Teaching Kids Programming (TKP).  I came across this after it was brought up by Llewellyn Falco in the latest Herding Code podcast (the discussion on TKP comes in the last 10 minutes of the podcast, but I would recommend any one who programmes listen to the entire podcast).   TKP provides courseware and guidelines for teaching children how to program on their website.  The various lesson plans introduce kids to programming concepts using the Small Basic, SQL programming, and visual programming using Kodu.  The various tasks in the lesson plans (known as recipes) are fun and engaging, and can range from teaching SQL using a dating database populated with movie stars to introducing object oriented programming via a program to generate pictures of flowers.

The second programming resource was the Raspberry Pi Foundation.  This is a new charity that is developing an ultra-low-cost computer, for use in teaching computer programming to children.  The charity’s initial aim is to distribute an ARM Linux box for $25.  Yes, $25!  The charity was setup by a number of developers who had initially cut their teeth coding on BBC Micro computers, and who despaired at the teaching of programming in UK schools.  It is certainly more affordable than the latest geek chic toy, Arduino.

I’m pretty excited about the future of programming.  Whilst there may be currently a lack of developers in Northern Ireland, and the current scheme to encourage children here to consider a career in IT is poor, resources like TKP and Raspberry Pi are great ways to encourage kids to develop an interest in programming as a career.  Coupled with the One Laptop Per Child initiative, I can see a whole new generation of programmers coming into being.  Unfortunately, I’m not sure if many children from Northern Ireland will be part of it.

13 Jan 2011

TV Viewing for the Year Ahead

I love watching TV.  I used to be a massive film buff (and I’m trying to get back to watching films regularly), but I got drawn into watching TV by BattleStar Galactica.  Then I caught up in Lost, watched the much under-rated Invasion, Farscape (classic Sci-Fi!), and then True Blood… Before I knew it, I was watching 45 minutes of TV every night.  And I don’t intend to stop!!

I am not one of these people who deride TV. I find watching TV a great way to relax.  And there are some simply great TV series today.  Recent classics include Brotherhood and Deadwood, both of which I enjoyed immensely.  I strongly recommend that you watch them if you haven’t seen them yet.

Given this, I was really interested in an article on i09 on the Sci-Fi and Fantasy TV series coming this year.  In particular, I intend to catch up on the following:

  • Camelot.  This looks to be a grown-up version of Merlin, with a simply amazing cast (Joseph Fiennes, Eva Green, Sinead Cusack and James Purefoy).
  • Terra Nova.  Steven Spielberg’s first TV series this year.  Worth a look if only for Spielberg’s involvement.
  • Falling Skies.  Spielberg’s second TV series, and for my money, the more interesting of the two.  I’ll look forward to seeing Noah Wyle again.

Falling Skies

  • Fringe.  I’ve been following Fringe for a while.  It is has been constantly under-rated by critics, though it hasn’t helped itself with 1-2 slow episodes at the start of each series.  I’m looking forward to seeing how Olivia, Peter and Walter  battle to save us from ourselves in the parallel universe.
  • Game of Thrones. I’ve been looking forward to this series for a while now, and I’ve posted about it previously. The books by George R. R. Martin are simply fantastic, and the TV series looks to be shaping up to be a classic as well. The website Making Game of Thrones is well worth a visit – the production looks to be incredibly detailed, and true to the books.

Game of Thrones

  • True Blood.  A great TV series, with so many laugh out loud moments in each episode.  And so much better than the books on which the series is based!
  • BSG Blood and Chrome.  I’m still bitter about the demise of Caprica, but I’'ll give this a watch. So say we all!
  • The Walking Dead.  An excellent first series (yet to be aired in the UK), and I’m looking forward to catching the new series later this year.  I’m even considering getting hold of the comics on which is based. Just one piece of advice – don’t get too attached to any of the characters.  The zombies aren’t just there for decoration…

5 Jan 2011

Delicious Bookmarks

I’ve received complaints about the daily update of my Delicious bookmarks that is published via the blog’s RSS feed.  This problem has been made worse by the recent migration of bookmarks from my now defunct Xmarks account to my Delicious account.  Apologies for any inconvenience this caused you. 

I have now disabled the daily RSS post from Delicious.  If you are looking for an RSS feed of my bookmarks, you can find it at http://feeds.feedburner.com/AndyParkhillsBookmarks. Note, this feed will be available regardless of where I store my bookmarks (which may not be Delicious for much longer).

RSS Icon

On a related note, I’m currently looking at ways of improving the blog. I’m aware that I have neglected it over the past few months due to work commitments.  If you have any comments or ideas for the blog, please get in contact or tweet me at @MagicAndi.

4 Jan 2011

My Personal Goals for 2011

I have finally gotten around to compiling my year resolutions for 2011, and thought I would share them with you. The list consists of a number of general aims, with a number of specific and quantifiable goals associated with each.

Lose weight now

  1. Get fit!
    • Reduce weight to 68kg (I’m currently weighing in at 74.1 Kg).
    • Eat no chocolate, and work to reduce the amount of sugar in my diet.
    • Exercise daily for at least 45 minutes.
    • Get at least 7 hours sleep every night.
    • Start a martial art by April.
  2. Friends and Family
    • Spend some time each week staying in touch with friends and family.
  3. Personal Interests
    • Read 100 new books. Some people on Twitter were kind enough to suggest a number of books to read. I’m also getting inspiration from the BBC’s Big Read, and the list of Penguin Classics.  The list of books (currently incomplete) can be found here. Update: You can check out my reading list here, or in full on my Shelfari profile.
    • Watch 50 films.  Half of these are to be classic films, and the rest are to be new releases in 2011. The list of films (currently incomplete) can be found here. Update: This list is no more!
    • Release an open-source project.
    • Write a new blog post weekly.
  4. Career
    • Become Microsoft Certified in SharePoint 2010.
  5. Financial
    • To save 20% of my net salary (separate from pension contributions).
Success is this way by RambergMediaImages, on Flickr
I plan on tracking my goals using a number of tools.  Joe’s Goals is an online goal tracking application that I will be using to track a number of the specific goals detailed above.  I am using Tada List to record the books and films I plan to read and watch. I’ll also update you throughout the year on my progress, and I am aiming to have an end of year review to see exactly how strong my willpower has been.
If you have any thoughts on my resolutions, or want to suggest a book or film to me, please get in touch (or tweet @magicandi).  Thanks.