theThought's thoughts

Kevin A Gray - Creative Strategy Guy

"one for all" is definitely possible - the Test Centre

In my previous post (read it here) I classified browsers into three types:

  • Basic
  • Simple
  • Rich

This was done so that I could organise the way that I build templates for IBM SPSS Data Collection.  This is part of my project to build a single template that works for all browsers both desktop and mobile.

I defined these three classifications by building some simple web pages and testing a number of different browsers on them.  The web pages has a range of capabilities from basic HTML with CSS styling to complex HTML 5/CSS 3 and JavaScript.

The Environment
A first I tried building a test, test environment on my new Dell 1645, a 64bit laptop running Windows 7 64bit.   Installation of the main desktop browsers was not an issue, however almost all the emulators failed to work properly.  Consequently I stopped and reverted to a Windows XP operating system running in a vmWare image.  I built this using vmWare Workstation and started by taking a blank Windows XP SP 2 install and then performing a series of upgrades to ensure that I had all the latest patches applied and .net 3.5.

The Emulators
Once that was done I started installing desktop browsers:

Image001
 

Then I moved on to emulators for mobile phones.  There were a number of emulators that I wanted to try including the OpenWave emulator that I simply could not download.  It seems that the OpenWave browser and many of the older emulators are no longer available.

I installed a Sony Ericsson emulator which was written in Flash.  This was, consequently a simple installation from Sony Ericsson’s Developer Site (PhoneGap Simulator).  This was by far the easiest of the installers to get working.

Image002

The other two emulators that I wanted to install were the Blackberry, because I believe that this is a fairly limited browser that being built by RIM cannot be described as standard and the Android emulator.  I would have liked an iPhone emulator but alas my machine is a PC not a mac so I have to make do with testing on my iPod Touch.

Both of these emulators require the Java Runtime emulator (JRE) so that was the first element to install (JRE is available here).  Additionally the RIM emulator requires the Java Development Kit (download JDK here).

Next it was off to the Blackberry site to download an emulator.  I chose one for the Blackberry Storm (9500), however it is my understanding that you can download a number of them (get a blackberry emulator here).  Downloading the emulator, however is not enough if you want to browse the Internet.  It is also necessary to install MDS which is a Mobile Delivery Service created by BlackBerry.  Not only does this need to be installed but it also needs to be run at the same time as the emulator.  Testing with the RIM was concerning.  There are two modes the first is Page View this is a smartphone mode that I had expected to be as good as Sony Ericsson, Android and iPhone.  What I found was that although it supported HTML 5 and a fair amount of CSS it did not really support JavaScript (even though JavaScript support is switched on).  The other mode is called Column view and is a more basic view that is similar to that provided by very basic mobile browsers.  As can be seen by the following example neither gives a very good experience.  It is really troubling that these phones are the phones of choice for Businesses.

Image003
 

The last emulator was the Android emulator (get the android emulator here).  Like RIM there is an opportunity to download a number of different emulators, unlike RIM downloading them all is much easier and therefore I did just that.  Also like RIM the Android needs more than just JRE and the emulator.  There is also a need for eclipse (get eclipse here).  Careful with this download.  It is a zip which needs to be extracted in the location where you want to run it.  The setup is not an installation routine just a way of quickly setting up the environment and getting to the emulators once they have been installed.  Once these items are installed you are presented with an array of different device types.  Each takes quite a while to load but there is no doubt that the wait is worth it.

Image004

So that just left aDesigner.  This too needs Eclipse but as that was already installed this final installation was easy.  I may extend my list of browsers and emulators over time (a proper Nokia S60 is very likely).  I would really like a proper iPhone emulator rather than just Safari as Safari does not give an indication of how screen real-estate is working nor does it allow me to tilt the device.

If you have any emulators that you think I have missed feel free to drop me a line.

Filed under  //   Android   Browsers   CSS 3   Chrome   Emulators   Firefox   HTML 5   IBM SPSS Data Collection   IE   JavaScript   Opera   Safari   Simulators   Windows XP   iPhone   vmWare  

"one for all" is definitely possible - the Browsers

A couple of weeks ago I wrote an article questioning whether it would be possible to create a single template that handles the vast majority of browsers and allows Data Collection to deliver the best experience each browser can deliver (read Is “one for all” even possible).

I am pleased to announce, after a number of weeks of hard work that the answer is “YES”.

So what has happened over the last few weeks that allowed me to come to this answer?

The steps so far
I have not yet reached the end of my journey, however, I thought it might be a good idea to allow you to catch up.  I have started/completed a number of tasks including:

  • A review of different browsers on the market (or previously on the market) identifying the capabilities they provide
  • Locate and install a number of browsers and emulators into a Test environment
  • Build a small Data collection survey to allow testing
  • Start building a solution

Browsers

I started with the currently installable browsers (Internet Explorer, Firefox, Opera, Safari, Chrome)  Then I tried older versions of IE.  Lastly I obtained some emulators (Blackberry, Sony Ericsson, Nokia), finally I installed a copy of aDesigner for testing JAWS screen reader compatibility.

aDesigner an aSide
If you have not encountered aDesigner before and you are seriously interested in web accessibility you need to look at it now (aDesigner is available here).  aDesigner was built by IBM but it has been donated to the Accessibility Tools Framework (ACTF).  Not only does aDesigner provide clear information about the general level of accessibility of a website (based on its markup) it will also render the website from the perspective of “low vision“ showing how those with poor eyesight will see the site.  Furthermore, if that was not enough, in addition to testing websites it can also test ODF (Open Document Format) files, Flash content and general GUI accessibility of any application.

Image001

3 Classifications of Browsers
Having reviewed a multitude of browser capabilities I ended up with three simple classficiations.  These are based on the capabilities of the browser and will affect the way in which the template will be designed.  The basis of the categorisation is the fact that there are, currently, primarily, two platforms that have to be handled:

  • Desktop Browsers (PC, Mac and others)
  • Mobile Browsers (smartphone, basic phone, portable devices)

Against these two basic platforms there are a number of capabilities that may or may not be used:

  • HTML
  • CSS
  • HTML 5
  • CSS 3
  • JavaScript

All of the browsers support HTML although some only have limited support of CSS.  Only a few have support for HTML 5 and CSS 3 (as I wrote this Microsoft announced that this list will expand to include IE 9 – review by the Register.com).  Lastly there is JavaScript.  This is more complex as browsers that naturally support JavaScript can be “crippled” by corporations that disable its use.  The following graphic shows how these different elements interplay with each other.

Image002
 

From this I defined three classifications of Browser as follows:

Basic Browsers           OpenWare browser, Basic (old) Mobile browsers, very early versions of IE and Netscape (Full HTML coverage, limited CSS coverage, little or no JavaScript coverage)

Simple Browsers         IE, Netscape, RIM, Nokia browser (Full HTML/CSS coverage, no HTML 5/CSS 3 coverage, some JavaScript Coverage)

Rich Browsers            Chrome, Firefox, Safari, Sony Ericsson (Full HTML/CSS and HTML 5/CSS 3 coverage, Full JavaScript Coverage)

Filed under  //   ACTF   Blackberry   Browsers   CSS   CSS 3   Chrome   Emulators   Firefox   Flash   Form Field   HTML   HTML 5   IBM   IBM SPSS Data Collection   JAWS   JavaScript   Netscape   Safari   Simulators   aDesigner  

Is "one for all" even possible

I have seen a number of different approaches to the creation of templates for IBM SPSS Data Collection that aim to handle multiple languages, multiple browsers and multiple question types.  The one approach I have not seen is a single master template with supporting sub-templates and transparently handle all desktop (Mac/PC) browsers and also provide an experience for basic mobile browsers.

If you look into the Internet you can find many companies who have achieved this for some or all of their websites.

So the question is, is this possible? Does it provide any benefits? Is it an approach that all customers can take to extend the reach of their surveys?

At the heart of the issue is the plethora of browsers available today and the range of capabilities of each of those browsers.  This can be seen in wikipedia’s firstly their comparison of web browsers and secondly their comparison of mobile browsers.  If there were a clear dominiant force in either or both of these markets they the majority of website designers would build for that format.  This was the case through the 90’s with the dominance of Internet Explorer (IE).  However that dominance is effectively at an end as shown by the following infographic:

The above graphic shows the long term evolution of desktop browsers but it ends in August 2009 and quite a lot has changed since then.  Furthermore it does not cover mobile browsers.  The next three charts are from the same web service and provide a more up to date picture (for more detail and other charts go to StatCounter).

Figure 1: Desktop Browsers by Version

Image004

This chart really highlights the rapid decline in Microsoft’s dominance.  Okay there are three versions out there and the still amount to a very high percentage of market share, but it has fallen by 20% over the last few years and with issues such as the provision of choice for Europe (where Europeans are presented with a choice of browser rather than automatic installation of IE) market share can only continue to decline.

Figure 2: Desktop vs Mobile Browsers

Image002

 

This graphic surprised me because there is a lot of noise about mobile internet but this indicates that that noise is largely irrelevant at this time.  This probably reflects the fact that a large portion of users are concerned about data costs and that combined with the percentage of users who do not have good internet access (no smartphone) means that mobiles have a way to go before they will challenge desktops.  Further exploration at a country level shows that emerging territories such as India are showing more movement towards mobile browsing than Europe or the US.

Figure 3: Mobile Browsers

Image003

This graphic shows that there is no clear dominant factor in terms of Browser when looking at mobile devices.  Many in Europe and the US may be surprised by the fact that Opera is top but in territories such as Japan this browser has real dominance.  Opera Mini is seen as a very good browser and other non mobile products (such as the WII) use this browser.  It is not clear whether the WII would be seen in the desktop or the mobile category.

With the advent, but not wholesale adoption of, HTML 5/CSS 3 and the fact that this standard is not due to be ratified until 2022.  There are new ways to engage browsers users with more visual richness.  One of the most talked about features of HTML 5 being its ability to embed video without the need for a plug-in such as Flash or Silverlight and its consequential high profile adoption by YouTube (amongst others).  The approach by IBM/SPSS Data Collection has always been to be browser agnostic.  This means delivering solutions without JavaScript and therefore without any richness.  As much as this may have been a sensible policy 5 or 10 years ago, it now runs against the mainstream perception of the Internet and so Data Collection consumers need to add their own solution. 

A small number of customers have explored User Agents to discover details regarding the device being used and to then send the person to the relevant template.  This requires constant support as User Agents are not delivered in a standard way by providers and they only provide a relatively small amount of information.  Also the building of multiple templates significantly increases the cost of support should customers come along requiring their own branded versions.

Its seems to me, therefore that a new approach is required.  This would be a three stage approach utilising a combination of Graceful degradation and Progressive Enhancement (a short explanation).  It starts with a basic HTML solution that is a fits all solution.  It is then built upon using CSS capabilities to improve presentation and overall layout.  Finally JavaScript is used to add richness where richness can be added.  But is this solution possible?

Because I like a challenge I have set myself an objective of delivering such a solution over the next few weeks.  I am interested in your opinion.  Will I manage it? what should I be looking out for?

As usual I will keep you informed of my progress and show the end results so watch this space.