Published Jul 11, 2010 Comments [2]

I am currently working on a couple of web-based projects that involve adapting the content that is displayed to the dizzying array of screen resolutions that are available on today’s desktops, laptops and mobile phones.  I started making a list of the screen resolutions and thought I would share it:

Mobile phone resolutions (commonly rotate):

  • 320x480 (iPhone 3)
  • 480x800 (Nexus One/HD2)
  • 640x960 (iPhone 4)

Full Screen resolutions:

  • 640x480 (old school)
  • 800x600
  • 1024x768 (many projectors)
  • 1280x1024
  • 2048x1536

Widescreen resolutions:

  • 1280x800
  • 1440x900
  • 1600x900
  • 1680x1050
  • 1920x1080
  • 2048x1152
  • 2560x1600

This list is by no means exhaustive, but I hope it captures enough of a baseline that I can use to “unit test” the projects that I am working on.  Please let me know if I have missed any obvious ones!

Best Viewed in 800x600?

In the late 1990s and early 2000s we went through a period where many web developers and designers went with a standard of “locking” their website designs to screens that were 800x600.  In many ways this made sense because (at the time) that was the most common screen resolution and monitors that were slightly larger would still look okay. 

Go to your favorite search engine and do a search for the text +”best viewed in 800x600” (link goes to bing.com).  You will find that there are still 1000s of sites with that text on it (and a site that is locked into a design that is optimized for that display.

Since it was in vogue to lock a design to one screen size a number of things have happened:

  • Desktop screen resolutions got bigger – much bigger!  The 30” Apple Cinema display checks in at 2560x1600!  Laptops also got higher resolution
  • The variety of resolutions also increased with Widescreen Resolutions becoming popular
  • Smart phones became popular and we started browsing on devices that were much lower than the desktop and laptops
  • Browsers (and their associated standards) made it easier to have websites that could adapt to different size resolutions (yeah!)

All these factors have conspired to make locking your site into one screen resolution no longer a desirable practice.

The most important resolution to optimize for?

The ones that your users are actually using!  Knowing your audience is important especially before you spend a lot of effort in adapting your site to different screen resolutions.  Most stats applications (either server side or client side) will give you some statistics on the screen resolutions that are typical on your website.  As an example, if you have a site that is geared to information on mobile phones I would suspect that you would see more traffic from smart phones (smaller screen resolutions).  If you have a site that hosts high resolution wallpapers you probably see traffic with high resolutions.  You won’t know until you look!

Pete Prodoehl over at RasterWeb recently published some of his website stats, including the screen resolutions he sees on the site.  He noted that a couple of years ago he made some optimizations for netbook screens, but actually sees more traffic from Smart Phone size screens.

 
Published Mar 4, 2010 Comments [0]

Yesterday morning I got several updates delivered to my laptop via Windows Update.  These were not security patches that are typically delivered by Microsoft on the second Tuesday of the month (commonly referred to as Patch Tuesday).  But these were non-security related updates to the system.  An example of one was an update to the daylight savings functionality, seems that governments around the world are still adjusting the start dates (see  http://support.microsoft.com/KB/979306 if you want the details).

Seeing the updates reminded me that it had been a while since I checked my various devices for updates to the firmware.  This was a good reminder, so I spent a few minutes checking the devices and bringing them up to the latest versions.

Keeping your firmware up to date is just as important as keeping your operating system and applications up to date.  Firmware updates will often correct application issues, close security holes, improve performance and even deliver new functionality.

The IEEE has a very dry, but functional definition of firmware:

The combination of a hardware device and computer instructions and data that reside as read-only software on that device

I tend to think of firmware as this magical layer of software abstraction that has a very intimate relationship with the hardware, but I am kind of a software romantic.

Firmware is becoming increasingly important in computing as we have more and more intelligent hardware devices.  I bet the average person carries at least 1 device that has updatable firmware on it and many of us who are “mobile” workers can carry 3 or more (I have 3 on me right now: Zune, Mobile Phone and laptop).  Even the speaker dock that I have for my Zune has firmware in it.

Firmware updates are different

One of the things that is so nice about Windows Update is that it can be set to automatically update the system by the user (in a home situation) or by the administrator (in a corporate situation).  For the most part your updates are on auto pilot at that point, with the exception of getting prompted for a reboot if an update requires one.

Note: I don’t mean to be a Microsoft “fan boy” in praising Windows Update here; the Apple software update process is similar and just as reliable.  There are philosophical differences between the two; Microsoft’s updates are more numerous, but much smaller in size and Apple generally prefers fewer, but much larger updates.  There are also update processes for software applications other than the operating system as well: Apple Update for Windows, Adobe, Firefox, etc.

Updates to firmware are generally not as seamless and carefree as the Operating System Updates.  Almost no hardware systems pull down the updates and apply them automatically.  The processes by which you apply the updates also vary greatly:

  • The Zune and iPhone firmware updates are pulled down automatically and applied when you tether the devices, but they require software on the machine to accomplish it.
  • The BIOS updates on a computer usually require you to download an specialized installer that updates the firmware the next time you reboot
  • Home routers and access points generally have you download a binary file and upload it through the management interface

The slightly more complicated update process goes to the specialized nature of firmware, because it is at such a low level the update needs a little more care than updating a software application or even an operating system.

When was the last time that you updated your firmware?