Friday, 16 April 2010

The First UK Election Debate: My Thoughts

So, the first ever televised Prime-Ministerial debate has been and gone.  ITV broadcast the 90 minute show last night (15th April 2010) to massive reaction and commentary on social networking sites, television and I'm sure in the newspapers this morning.  The polls all seem to indicate a significant victory for the Liberal Democrat's Prime-Ministerial candidate, Nick Clegg, and I for one agree that he had by far the best showing of the three on the night.  The question that is left echoing round in my head, though, is "Will it make any difference?".

More than Gordon Brown, and certainly more than Conservative candidate David Cameron, Clegg looked comfortable and even confident very quickly behind his podium. He conducted himself with grace and poise, and actually came close to really answering the questions - Not something we are necessarily used to from our politicians!

In a fashion rather reminiscent of American Election politics, the "Senior party members" rolled out by each party as spokespeople for the BBC's Question Time programme, which began shortly after the debate came to a close, were well briefed by their advisors and campaign bods to focus on their man's best talking points, and the "spin" was in full swing throughout this programme. Each of the three main parties were represented, and all attempting to spin their leader's performance to appear better, or less of a disappointment, than it was. This side of campaigning, and politics in general, most of us could probably do without. The endless posturing gets rather tiresome after a while, but unfortunately that is a side-effect of party politics.

The Liberal Democrats will, quite rightly, feel that last night was a good night for them. They have been handed a poor performance by David Cameron to attack, and Gordon Brown has the burden of having to defend 13 years of Labour policy - Not an easy proposition in the current political climate. Admittedly, with virtually no expectation on his shoulders, as by far the least well-known of the three candidates, Nick Clegg had an easy ride in the first debate.  It was in the interests of neither Gordon Brown, nor David Cameron, to launch an attack against a candidate and a party which they both would presumably have considered only as an afterthought up to this point, and maybe as a possible ally in the event of a hung parliament. In fact, there were large periods of time up on the stage during which Cameron and Brown appeared to forget that there was a third person up there with them as they fell back in to the all-too-familiar cycle of back-biting and one-upmanship.  Clegg though, to his credit, maintained his composure and continued to make his point clearly and concisely throughout the debate. His performance, combined with the lack of any weight of expectation upon him, will undoubtedly propel him into the public eye in today's newspapers. The real challenge will come in the next two debates where the public, and perhaps more importantly, the media, will have high expectations for him to acquit himself every bit as well as he did last night.

The problem, though, is that the Liberal Democrats have long been a party that we as a country love to love, but have been somewhat reluctant to actually cast a vote for. I remember back in the 1990s when Paddy Ashdown was leader of the LibDems - He was perhaps the most popular politician in the country, but still only comparatively very small numbers would vote for his party in a general election. In my opinion, this boils down in large part to the fact that we as the British public still have this misconception that the LibDems are the third party in a two party system. Nick Clegg came out in this debate and clearly made a concerted effort to convince us that his party are indeed a viable option, and to that end, I feel that he did well. I will be very interested to see how his opponents respond in the next debate - Clearly some changes need to be made to limit the damage the LibDems must be doing to their potential vote counts.

If nothing else, this debate has thrown the election at the publics' feet, has widened the field, and has even shown that, whilst it may lack that certain "shiny" quality that only comes from American politics, British politics can, indeed, be interesting. Hopefully, this will encourage more people to pay attention in the weeks leading to the impending election.

Friday, 27 April 2007

Oh Lord, Please Don't Let Web 2.0 Be Misunderstood

Web 2.0 has undoubtedly created one of the biggest buzzes on the Internet in recent times. The page linked to is actually the web 2.0 entry on Wikipedia - The most read entry on there last year. It seems that everyone involved with the net wants to jump on this bandwagon and "be web 2.0", as if it is some kind of moniker for being cool, but it seems that most people out there, even those involved with the web world, don't really know what it is. This is a problem that many designers and developers get faced with on a regular basis, as clients come to them and say "I want to look web 2.0", or something similar.

Some of the common misconceptions of what Web 2.0 "is" are summarised here:

Web 2.0 is a visual style

This is a misconception that a great many designers, or people looking to become designers, make. A certain visual style seems to have evolved with the web 2.0 revolution, but the ambiguous nature of peoples' understanding of what web 2.0 is has meant that for a great many people, all they can understand of it is what they see in front of them. This means glossy logos with drop shadows, soft gradients, diagonal line backgrounds, wet-floor reflection effects etc. I have been asked a great many times how to design "the web 2.0 look", and my response is always the same - "There is no such thing as the web 2.0 look... There is a set of effects that seem to go hand in hand with a large proportion of web 2.0 applications, but I would never suggest to anyone that they should design for that look. On the whole, I would say that it is a particular trend associated with this point in time, just as there have been other trends over the years. Ultimately, designing to this trend will only serve to date your product over time, and likely to dilute the message that you would usually hope to put across with your logo by having too many effects applied to it."

There are, however, some major examples of web 2.0 sites that do not conform to this current trend, and their logos are the stronger for it. Take MySpace, for example. Like it or not, this is one of the big daddies on the Internet at the moment, but look... No glossy effects, no wet-floor effects... Just a nice, clean logotype. Ultimately the same principles apply when a web 2.0 site is being developed as any other site. This stock set of effects seems to have become a crutch for bad design and lack of imagination.

Web 2.0 is a set of technologies

This is perhaps the most common misconception about web 2.0. So many people think "web 2.0 = AJAX" that it has almost become true just by the sheer number of people that believe it (This is a wonderful example of the crowning principle of the web 2.0 concept - That it is the people that define the Internet and its content). However, a misconception it is, and one that must be dispelled.

AJAX stands for Asynchronous Javascript And XML. It is a mixture of two technologies that have been around for some time to make a solution that allows web sites to send and receive information without reloading the page. This makes for a very "Desktop-like" feel, that has previously only been achievable through the use of Flash. The technology has been used in a number of web applications to facilitate certain functionality - But that is really all that technology is: A facilitator. It is a tool which allows people to do certain things. Web 2.0 sites can equally be built on plain old PHP - The AJAX has been introduced to the mix in an attempt to enable users to do more with the Internet, but thats all.

So what is Web 2.0?

Web 2.0 is a set of philosophies and paradigms for the way that we use and interact with, and using, the Internet. To summarize the key points, it is:

A participatory medium

The idea that it is users who make the content for the web - The web public at large, rather than the "elite" few who own websites. The idea that the Internet is no longer merely an information source for users, but an interactive medium where they can share their knowledge for the benefit of others. It is the idea that the harnessing of the collective knowledge of the world is more useful than that of a select few individuals.

It is also about the idea that users can be of more benefit to each other than a company or expert in a more direct manner. Ebay is one of the biggest websites in the world, and wes truly "Web 2.0" well before its time. It allows the collection of buyers and sellers on there to "self regulate" itself on the whole, trusting that users will express their opinions on their experiences. It has been proven that this philosophy works, too... Research shows that people trust the opinions of other "real" people much more than anything that a large company says. A perfect example of this phenomenon is seen on Amazon. I think that most people who read this blog will have used Amazon at some point. Let me ask you - How often, when you don't know specifically that you want to buy a particular item, to you purchase based purely on the content supplied by Amazon themselves? For most people, the answer to that is "never". Instead, they look straight to the reviews of the product by ther users. The idea that users can enrichen the Internet experience for each other through their mutual participation really works.

A global community

The idea that the Internet is becoming a community in its own right. Wynham Lewis coined the term "global village" years ago, as the Internet made breaking down geographic barriers easier and communication across great physical distances became not only possible, but normal, but now this term could be modified to be termed the "Global Metropolis".

We now have an Internet where we can find people we knew years ago, learn about people we have never met before, make new friends, converse on a regular basis (in many cases for the younger generation, on a more regular basis than in the real world), and much much more. MySpace and FaceBook have become massively successful sites used by millions not only to contribute content, but to find people like themselves, to share in a collective interest and more.

It has become possible for someone to look at a page on the Internet for five minutes and gain more information about you than they would likely gain in five hours of conversation. And these people can find you in any number of ways. You can search for people based on location, age, interests, favorite music and more. People around the world are becoming united by their similarities, as opposed to divided by their differences. This concept is perhaps the most positive thing to have come from the Internet since its birth.

More than this, it is now possible to live an entire alternate life on the Internet. There have been Massively Multiplayler online games for some years now, but now services such as Second Life have come and extended that concept. A user can now create a digital version of themselves online, and interact relatively realistically with other people and with their environment on-line. Second life actually gives users the ability to build homes and items, has its own currency system (which can be traded for real-world money with a real exchange rate), has meeting places and clubs and more. Perhaps more impressively is that most of the content on Second Life has been built by its users.

So the Internet really has, in the most literal sense, become a global community. Geography is no longer any kind of boundary to meeting people, interacting with them on a level that is very real to them, and having an effect on peoples lives. There are even some very significant real-world companies who now have stores on Second Life.

The Internet as a platform

The technologies mentioned earlier have enabled a number of companies to create powerful applications based purely inside a web browser. Google now offers an online word processor, spreadsheet, calendar and soon a presentation creation and display engine from its website. It is no longer necessary to have a copy of Microsoft Office (or similar) on your computer to be able to write an invoice, compose your CV, or organise your day.

This has lead to one of the trends I personally find most annoying right now - The idea of the perpetual beta. There are so many web sites and applications which carry "Beta" as a part of their logo... And its not true. A "beta" is a product that is in public testing. It does not mean a product that is constantly being improved. Most of these applications have been tested and confirmed as working. This is simply lazy application development - An excuse so that the developers can turn around and say "We're still only in beta" when something doesnt work for some reason.

One last thing Web 2.0 isn't...

A great many businesses at the moment seem to think that harnessing all of this will make them successful, make them more money, or similar. This is not true. Web 2.0 is not a gateway to success for big business. In fact it is possibly the antithesis for this concept.

The company I work for, a large travel company, has recently published an updated holiday search engine on their website. One of the features they have added to their search results and the information available to users is "Customer Reviews". The theory they had behind this was that, as people don't trust big business, they will make more money by showing visitors what other customers thought of their holiday.

What they failed to realise was that users distrust of big business is so great they they will not even trust that these reviews are independent. We just undertook a set of user testing, and asked whether the reviews would influence customers' decisions. Almost across the board, the answer was "No... I take it with a pinch of salt. They probably wrote it themselves anyway". In order for user generated content to be trusted, it must be seen to have a certain level of independence from those selling the product in question. For Amazon, this is easy. They buy and sell relatively low cost product that they do not make... They are merely a supplier. For a holiday company, it is much harder - We are seen to have a much greater vested interest in making a sale (And holiday companies are inside the top 10 most hated types of company for the English public).

So... Don't misunderstand what web 2.0 is and is not. Make sure you are clear on what it means before you go in to a project with the words ringing in your ears. Web 2.0 can be a great thing... But it is not a formula for success. Web 2.0 is facilitated by a set of technologies, but is not defined by them, and Web 2.0 is often accompanied by a certain distinctive visual trend... But this style is not a requirement.

Tuesday, 13 March 2007

Changing (or rather re-educating) The Old Guard

I read an article today from the latest edition of A List Apart talking about web standards, their importance, and different approaches to them. The article, entitled Where Our Standards Went Wrong, talks about these two opposing mentalities about web standards:

  • Standards must be adhered to rigidly. If you don't, then its just wrong.
  • Standards are there as a guideline, and can be a barrier to commercial development. Be pragmatic and break them if you feel it necessary.

The article makes for a good read, and the inevitable battle of opinions that follow in the comments is equally enjoyable, and does seem to split developers into those two ranks. However, as I posted in my comment on the subject, I think we need to add another category to the mix - And this is a category that needs to disappear over time:

  • Web standards should be followed. We know this because we are told so, but we are used to developing from our days before the semantic web, and so don't really understand the spirit of a great deal of it.

I happen to work with some people with this problem. They have been in the web development game for many years, and they keep up on what they need to in order to get work (as contractors, freelancers, or permanent staff). They haven't, however, really paid attention to the logic behind the rules. They have not adapted their methods of working from the days of table-based designs. Sure, the tags they use are different now... But that's about it; They have simply replaced trs and tds with divs and spans.

Symptoms of an old-guard coder should be fairly easy to spot mostly - Heavy, "tag-soup" style, non-semantic xhtml code and huge css documents are generally a giveaway. As someone being pulled onto a project half way through, and having to deal with this, it can make things slow and painful. It makes their pages heavy and slow, and eat up more bandwidth than they need to, too... But they don't know that they are doing anything wrong - Because the code validates.

It can be very hard to tell these "old-guard" developers that what they are doing is wrong. Often, they cling to the rules which they follow as an illustration that their practises are perfectly appropriate. They seem to struggle to understand that validation is not, in fact, the be-all and end-all that it can often be made out to be by "standardista evangelistas". In this sense, I feel that there being so much preaching about standards compliance has in fact harmed the quality of development from some of these individuals. It has made them short-sighted, and given them a set of rules to cleave to whilst they happily ignore the guiding principles that surround them.

Unfortunately, unless they are shown the errors of their ways, they will never change. They need re-educating in order to see what they have been doing wrong. But how?

Personally, I would start by sitting down and talking about semantics and their importance to us as web designers and developers. I am, in fact, hoping to run a series of "workshops" where I work to accomplish this goal, and this is where I intend to start. Using practical examples works well, too... If you can. I am in the (un)lucky position that I was handed a poorly coded UI and told to re-build it from the ground up as one of my first jobs when I got here... So I already have a "before and after" example that I can use to illustrate my points. Above all, I believe you have to be prepared for some level of resistance when trying to accomplish something like this - No one reacts well when they are told that they have been working the wrong way for the past 2 years, particularly when they firmly believe they have been following all the rules, and were doing just fine.

So from the old problem of "How do you sell standards to a business?", we now have a new problem: "How do you re-sell standards to the (badly) converted?" Again, it has to be about selling benefits - Both to the business (which is, after all, who they are working for, and who they have a duty to produce the best work possible for), and to them, as well.

For those of you who are reading this post and are feeling somewhat bemused as to the real nature of the problem (After all, they are following the rules, right?), then allow me to explain. This situation is quite similar to the old "letter of the law vs spirit of the law" argument: It is possible to follow all the rules to the letter, but completely ignore the reason those rules were set in place, and the intended effect. One of the primary goals of the xhtml standard was to separate content from presentation - Previously a page's content was surrounded by presentational markup: In-line styling, table rows and cells to dictate positioning etc. With xhtml the intention is to keep these things separate: The xhtml page should define the content, the sections that content falls into, what each section does etc, while the css that relates to those sections should define the look and feel of the page. When you start adding span tags all over the place to change the look of a link, and start naming classes "redtext" etc, you are destroying those boundaries. You are again putting presentation back into the html page.

Again, some people reading this may say "Why is that a problem?". Well, it's not... Unless you ever want to update the look of your site, make changes to layout or content, add or remove items - Basically do anything with the page once it is "finished". All the extra markup makes it much harder to find what you are looking for when wading through the html code, and classes and IDs that reflect the presentation of an item rather than its function can be extremely confusing if the style is changed later (Think of a class called "redtext" where the text is actually blue!).

On top of this, the extra code makes for extra data, and extra data makes for extra bandwidth costs. Businesses generally don't like to spend more than they have to. It isn't just the html that suffers from bloat with this antiquated approach, either - Usually you will find that you end up with massive CSS files, with several classes doing the same thing and no inheritance being made use of, making for heaps of redundant code. Once again, this will increase bandwidth, and also make the files harder to navigate (Trust me... I've had to work through a 4,000 + line css file before!).

There are other business benefits most of us know about, too, such as better accessibility, SEO (although this is far from clear-cut), future-proofing, more reliable rendering, device independence.... The list goes on and on. I won't go into these things here, because this post is already rather too large, I feel. Needless to say that if you look, you can find any number of articles talking about these important issues - And they are important. I'm just saying that they probably won't be quite as important to the developers in question as the direct benefits to themselves.

This is an important issue... No matter what you think, and it happens more than you might expect, too. It's something that needs addressing soon, as well, as every day these developers continue down this road, they are costing people money. Designers and developers need to know that whilst web standards are very important, it is the spirit of these standards that is most important. There is no point in producing valid code if you are not addressing any of the issues you are supposed to be.

technorati tags:, , , , , , , , ,