User Experience at paulcarvill.com, the home of Paul Carvill on the web

link: paulcarvill at flickr

paulcarvill.com

Hi, I'm Paul Carvill and I'm a web developer. I am Head of Interface Development at LBi, Europe's largest digital agency.

I also like walking, cooking, Bollywood and rock 'n' roll.

Archive for the ‘User Experience’ Category

The appliance of science, or, how rumours of Flash’s death are greatly exagerrated

Tuesday, February 2nd, 2010

There was some excellent work by Dr. Aleks Krotoski in Sunday night’s BBC documentary Virtual Revolution, especially the interview with Tim Berners-Lee where he reiterated the importance of freedom of information, and freedom of access. Aleks made the point that the federated structure of the internet resists authority. This documentary went out at prime time and did a fantastic job or explaining the absolutely world-changing importance of the web, without patronizing or over-simplifying the issue. Watching it, even after having worked on the web for the last 13 years, almost brought a tear to my eye. They really should do something very, very special with Tim Berners-Lee. Maybe put him on the fourth plinth in Trafalgar Square?

Also, there was yet another polished product launch by Apple this week with the announcement of the iPad.

These two events caused me to think back to a 2008 talk by Jonathan Zittrain, professor of Internet law at Harvard, to employees of The Guardian, as part of their Future of Journalism series. His talk was based on his book, the then about to be published The Future Of The Internet, And How To Stop It.

He talked at length about how we are in danger of adopting a top-down, tightly controlled model for the web, run overwhelmingly in the interests of large corporations; technology’s inexorable move towards locked-down digital units and tethered appliances; and ‘walled garden’ internet access. The beauty of the iPhone, when it launched, was that for what seemed like the first time we had a real web browser on a real mobile device which freed us from the tyranny of telco executives who wanted to control what we used our high-priced WAP data access plans to look at. We could go anywhere we wanted. It felt truly free. Now it seems, as Dr. Aleks pointed out with a useful proportional representation model of the web, we are increasingly moving to a future Zittrain warns about, one with a narrow marketplace controlled by a handful of powerful providers, where we go to iTunes for our music, Amazon, or perhaps iTunes, for our books, to eBay to sell our old stuff and to Wikipedia, run by a sinister cabal of administrators headed by the despotic Jimmy Wales, for our raw factual information. We can’t even view Flash content on an iPhone or Blu-Ray on a Mac due to Apple’s strict control over what can and can’t be installed on these systems. Whether it’s political or, as Steve Jobs supposedly says, because Flash is so buggy, I’m sure we’ll find out when the dust has settled. For now it appears to be a mobile device manufacturer — with something approaching a monopoly — trying to throw their weight around. The documentary raised some fascinating points about power structures on the web, and it certainly seems that we are only really beginning to understand how any of this will work.

Zittrain, in his book (which is itself licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License) ,says,

“A shift to tethered appliances and locked-down PCs will have a ripple effect on long-standing cyberlaw problems, many of which are tugs-of-war between individuals with a real or perceived injury from online activity and those who wish to operate as freely as possible in cyberspace. The capacity for the types of disruptive innovation discussed in the previous chapter will not be the only casualty. A shift to tethered appliances also entails a sea change in the regulability of the Internet. With tethered appliances, the dangers of excess come not from rogue third-party code, but from the much more predictable interventions by regulators into the devices themselves, and in turn into the ways that people can use the appliances.”

The iPad is certainly a continuation on the theme that was started with the iPod – access to app installation is through the App Store only. Jailbreaking your iPhone is possible but verboten. People are already complaining — it doesn’t multitask! there’s no camera! For all that technology has advanced our personal feeling of freedom us, we feel simultaneously liberated and emasculated as a result. I read another quote by someone but I’ve misplaced the link, who said,

“…in the “applianced” world we are threatened by monopolists and potential dictators,”

for whom we could easily substitute Adobe, Microsoft, Google, Oracle, and Mr Steve Jobs.

Recently, Mark Pilgim, a writer an developer advocate at Google, published a blogpost commiserating the demise of the tinkerer; that breed of person who found out how a computer works by poking around the innards of its operating system, or its hardware. Activity seen very rarely these days. Because now, of course, such activity will at the very least get your warranty voided, and at worst get you arrested.

Pilgrim continues this theme in an interview at a great new (to me) blog, The Setup, which asks techies and nerds of all descriptions to describe the technology they use to get the job done. In describing how he wants to still be using his current desktop computer in 20 years, he says

“Commercial vendors have a vested interest in upgrading you to the latest and greatest; supporting the old stuff is unglamorous and expensive. Commercial open source vendors aren’t really much better than commercial proprietary vendors in this regard, but community-led Linux distributions can afford to have different priorities.”

So, does the black box of user-friendliness and usability necessitate a top down, authoritarian attitude to technology, or can the interests of individuals and the market not happily co-exist? There’s certainly an argument for the former when you look at some of the abysmal user experiences offered by open-source software that’s available — Ubuntu; the GIMP. With their vast number of contributors you would expect quality and consistency to improve. But perhaps in the vastly ambiguous area of usability and design a greater number of contributing authors dilutes the quality of a product or an experience. Maybe a lone, dictatorial voice is the only answer here, as in the case of Apple’s justly famous and evangelised user interface. But at what cost comes the power to control every user’s experience, even against their will?

LATE UPDATE: Two other quotes that caught my eye. As an interesting counterpoint, Dion Almaer, erstwhile Mozilla developer and now Developer Advocate at Palm, mulls over profits-based corporations versus goal-based organisations, and passes over the hyperbole about Flash’s rumoured death to express thanks that the Open Web (i.e. the web)

“…is amazing in that there is NO SINGLE VENDOR. If we are able to keep a decent balance between browsers (and thus the platform as we know it) then we have a balance of powers. Sure, in some ways you can’t move as fast as a dictatorship, but there is a reason we don’t want dictatorships in our government (even if the trains run on time!)”

And a former colleague of mine, Daniel Vydra, makes the succinct point,

“Commenters [on this Guardian article] need to decide if apple is a restrictive dangerous monopoly, or a 5% market share joke. They can’t be both.”

Why front-end developers are so important to the future of businesses on the web

Thursday, September 24th, 2009

or How traditional businesses who have moved to the web regularly undervalue their front-end web developers, and are worse off because of that

Distinction
The roles of web developers and web designers have been around for over 15 years now, and the role of a client-side or front-end web developer started to mature into a distinct entity around 10 years ago, as the content-presentation-behaviour layer paradigm became embedded in people’s working methodologies (and, with the introduction of Google’s then-new search algorithm, when the need for cleanly structured, easily indexable pages became, for businesses, not just an aspiration but a necessity). Unfortunately the perception of the front-end developer’s role remains somewhat coloured by an early association in observers’ minds with the other, loosely related role of the web designer. The role of web designer is an extremely important and valid one, but it is very different to that of the web developer, and the lack of a clear distinction between the two, in some people’s perception, is unhelpful and does both roles an injustice.

Skill set
The web developer (sometimes also called a client-side developer, front-end developer, web architect or front-end engineer) has a huge skill set and a job description to match. They are often expected and required to excel in many disciplines, and have good working knowledge of many others. They exist at the point where art, design, interaction, programming and behavioural and performance analysis intersect. Given the time, support and ambition of a good business, being a web developer can be an extremely fulfilling job. However, the role of a web developer is often misunderstood within even the most progressive and well-meaning of businesses.

Perception
The danger can be that front-end developers, working in a user-focused area, are seen as performing a superficial function — applying a polish to the heavy lifting done by another developer, say, or that dread comment, “making things look nice”. Let’s be clear, making things look nice is the sole responsibility of the designer. When front-end developers spend much of their time deploying underlying data received from a backend database into their views, or pages, they might mistakenly be thought of as merely translators or interpreters, transferring a graphical image — the Photoshop-ed design — into markup and style rules, purveyors of what is sometimes almost mockingly referred to as a ‘black art’ of making pixels lay out correctly onscreen. While this perception is perhaps unfortunate, it is understandable. It is a particular problem where a development workflow is — some might say artificially — segregated into database infrastructure/domain modeling/server side workflows/front-end workflows. In smaller organisations a front-end developer has the opportunity, if she wishes, to input into any of these areas. In larger organisations, the increased granularity of functional areas means those opportunities are greatly reduced, and as you can see from the segregation model above, the front-end development work comes at the end of a long chain of events and decisions which essentially shape and restrict the front-end developer’s choices.

Frustration
In such cases the development workflow is one-way, negates the developer’s architectural, organisational and behavioural skills and occurs late in the development process. This chronology minimizes the opportunity for the front-end developer to have effective input into, and feedback from, the interaction design they are now expected to code. This is a sad state of affairs and undoubtedly leads to frustration, feelings of being undervalued or ignored, and an extreme cases disenfranchisement and resignation, either in the figurative or practical sense. A good business will understand how highly-nuanced user behaviour is, and value skilled interpretation and shaping of that behaviour in the interests of improving their digital offering.

Value
The modern web developer has huge amounts of value to offer a business. Indeed the type of professional you often find in this role encapsulates the very best the web has to offer:

  • up-to-date knowledge of available and emerging technologies
  • extensive experience of implementing de facto web standards and programming patterns
  • database configuration and data manipulation
  • implementation across multiple platforms and legacy software applications
  • provisioning for mobile devices
  • data aggregation
  • graphics sourcing and creation
  • search engine optimisation (SEO)
  • a thorough understanding of the aesthetics and parameters of designing for the web

Further, the best web developers have wealth of knowledge and understanding around interaction design, user needs, hierarchies of data, navigation systems, user journeys, wireframing, design brief interpretation, focus group and usability testing and the art of a finely polished product. Largely gone are the days of HTML-monkeys, spending days on end converting Photoshop comps to pixel-perfect layouts. A web developer’s role is broad: from developing in what Yahoo!’s Nate Koechley calls ‘the world’s most hostile development environment’ — the browser — and ensuring cross-platform and cross-browser consistency, to working with art directors and designers and remaining true to their vision, to considerations and implementations of accessibility, usability and the overall user experience. A web developer is responsible for everything that sits on the client side of the web stack — the content, presentation and behaviour layers. Few other roles touch so many other key aspects of a business as does a web developer’s. Good businesses realise what an asset they have in their front-end web development team, and welcome their input into the product development process. Even better businesses have a User Experience team which encapsulates all those values, skills and judgements necessary to make great websites. Members of those teams are part of a feedback loop that results in great products, not just acceptable implementations of the first good idea that came up.

Slow
Large businesses and organisations move slowly. They may find it hard to understand they have developers whose skills and interests cross the boundaries their job descriptions impose on them. In addition, large businesses like to modularise their development teams into clearly segmented areas for planning and accountability. End-to-end developers don’t really fit this business model. Web development, certainly rapid prototyping at least, is moving away from monolithic relational database installs and towards schema-free, fluid data repositories like CouchDB and MongoDB. Many other layers of the application stack are now capable of being managed by a web developer. Most developers of this ilk, who are able to own the whole process from from domain and model definition, through to server infrastructure and on to a useful and appealing user experience, are running their own consultancies or are employed by the more enlightened web properties. Some examples of this type of person are Jeff Croft, Dan Rubin, John Resig, Jeffrey Zeldman, among many others. Functionality, data storage and interaction are increasingly moving to the client side (HTML5, Gears, RIAs, iPhone and Android web apps). The web stack sits on top of any technology, making the web developer one of the most versatile members of any business, let alone the technology department.

Undervalued
Unfortunately my experience has been that most large businesses massively undervalue their web developers, employing them in narrowly defined roles as the guys who make the site look nice, or fix the Javascript bugs that make the page break in IE. Larger business and the public sector have made moves towards working seriously on accessibility and usability, but the thinking behind such strategies remains superficial, those conceptual areas misunderstood. Too many people think of them in terms of awards and rating levels, not in ongoing process of improvement. Most of this work is also likely to be outsourced to a specialist third-party.

Career progression
One further, worrying, complication is the lack of clear career progression for front-end developers. Once you’ve spent a year or ten working in every nook and cranny of every browser out there until you can code progressively enhanced web pages blindfolded, what next? Economics and management structures mean there’s only so many architect or senior engineer roles to go round. The other option is to specialize in something and move forward from there. Current trends would seem to be leaning towards a big need for performance specialists in the next 5 years, as the client side moves ever further towards accommodating distributed, complex web applications. Page views will also continue their inexorable rise, placing stress and demand on infrastructure, databases and hardware, and thus even greater stress on a fast, responsive user experience.

Know your value
What does this mean if you’re a front-end or client-side web developer? Know your value. What are your skills? Are you a developer, an engineer, a User Experience architect or an Interaction Designer? Advertise your value. Shout about it. Don’t be knowingly undermined or ignored. Create a User Experience team within your business. If they’ve already got one, join it! Your job is incredibly important, and your present employer needs to realise that, as they stand to benefit.

Updated, 29th September 2009: just fixed a couple of typos

Wallpaper* Open House map is a prime example of awful Flash interface design

Saturday, September 19th, 2009

Further to my previous post regarding the Adobe-Omniture deal, and how it might improve the consistently awful Flash user experience people regularly have to deal with, this morning I found a very good example of bad Flash interface design to illustrate my point with.

The weekend of 19th and 20th September is London Open House weekend, when the public gets wide and varied access to the architectural pleasures of the City. Unfortunately, while Open House do publish a printed programme, the only way to discover locations of Open House participants online is through a fairly complex and ugly search form at http://www.londonopenhouse.org/public/london/find/. This method is not an intuitive way to find Open House locations, and does not encourage discovery or serendipity.

However, there is a map at Wallpaper magazine’s website. While this could have been a useful alternative to the official listings, it is instead problematic and discouraging. The Wallpaper site features a Google map, overlaid with a Flash map. There are several problems:

  • The Wallpaper Flash map features only a selection of the full listings. They call this the Wallpaper Edit. For the full listing you must still consult the printed programme or use the official search form.
  • The Wallpaper Flash map is extremely simplified, and lacks context, scale and travel information, as well as several other navigation aids.
  • The Wallpaper Flash map uses an entirely new and different navigation method. There is no drag control, and no zoom. Instead, the user needs to click on buttons near the top of the map which signify arbitrary areas of London. There is no option to show partial areas or the whole map at once.
  • The Wallpaper Flash map uses an entirely different scale to the accompanying standard image-based Google map. Changes in the orientation of one map are not reflected in the other, making switching between the two extremely disorienting.
  • The Wallpaper Flash map uses bespoke markers and a bespoke popup system, which opens a popup at the top left of the map, completely out of context of the click event. The Google map operates in an expected way, much as other web standards-based online maps do, by opening the popup at the location of the click event, where the user is focused.

The frustrating thing about Wallpaper using a custom Flash interface is that the Google map view already provides all the functionality the user needs, in an established, expected way, and in many ways in offers a superior user experience. Control of the Google map is more granular and direct, and the user benefits from the extra context and transport directions functionality. In addition, in case of the popup, the Google map provides more information, in the form of opening times. Even simple things, like the detail text being copyable, make the Google map a far more suitable implementation.

The Wallpaper Open House Flash map interface is a perfect example of the continued redundancy of Flash interface design, it’s ability to encourage design abuse, the lack of understanding of user behavioural patterns and the skewed importance of brand over usability.