This months .Net Magazine had an interesting article by Derek Powasek entitiled Keep Your Web 2.0 Community Happy.

Running a web community can be fun and rewarding, but you’re always reliant on the good faith of your members. So what happens when rogue elements threaten to disrupt, even destroy, the foundations of your society, often behind the cloak of anonymity? How do you rest back control from the ’supervillains’?

Powasek’s article elaborates on 5 scenarios to keep the community happy. These relate to various defence mechanisms that he has employed on websites like kvetch.com and are summarised below.

The eyeball defence

People behave better when they think someone’s watch their every move. It is human nature that people become more trustworthy when they are being watched. Whether it is a ‘pay for what you think it’s worth’ type service, or a web community, people become more honest if there is a modicum of Big Brother about the website.

The probation defence

Block ‘angry’ users from posting content for a period of time. Once that period has expired, allow the user to again fully interact with the website.

The community boot defence

Give members the ability to report the bad members. Members can flag bad content or people. After a certain number of flags, the content can be programmatically removed or the person banned for a short period of time.

The denial of existence defence

Since deleting a troublesome user’s account will just prompt them to sign up with a new username, write a tool that degredates the performace of the site for those members who are causing the problems. You could even go as far as show a version of the Twitter Fail Whale. Websites are known to break, so it won’t be out of the ordinary for a person to experience a badly performing website. It just happens that that person is a nuisance.

The dig your own hole defence

Deleting a person account is sometimes the only answer. Therefore, giving the user the ability to delete their own account and optionally take all their generated content with them will provide a release mechanism. Always provide a friendly fairwell message: We’re sorry to see you go. You’re welcome back any time.

Buy .Net magazine to read the full article.

For many web developers, whenever JavaScript is mentioned it provokes a rye smile; JavaScript is one of those programming languages that is rather avoided than embraced. This is not the fault of the language itself, but rather the browsers. A few years ago, the landscape of client-side scripting was a bleak scene. Browser inconsistencies, particularly with the dominant Internet Explorer, implementation bugs and numerous target platforms made developing client-side JavaScript a tricky undertaking.

To the consternation of these same developers, the landscape changed and Web 2.0 hit the mainstream. Almost overnight, every website on the internet wanted to use or was using AJAX. Marketers joined the bandwaggon and every feature requested had to involve something dynamic and revolutionary. Thus JavaScript development quickly hit the forefront of peoples minds and became as important as any server-side technology available at the time.

Over the next few blog posts, I will be using the popular frameworks jQuery, Yahoo! User Interface Library (YUI), ExtJS and Adobe’s Spry with ColdFusion to demonstrate various techniques, such as autocomplete and form validation.

BBC Homepage LogoI’m not a big fan of the BBC’s recent website redesign! While I believe that a few structural and hierarchical elements could have been addressed better, the overall result of this redesign is too “Facebook” and Web 2.0 for my liking; exactly what an online news site does not need. Who are the BBC trying to appeal to? They have gone from being content centric to design and technology centric. This in itself isn’t a bad thing, but I don’t understand the BBCs motivation for doing so.

Richard Titus, the Acting Head of User Experience at the BBC was a key driver of the project.

From a conceptual point of view, the widgetisation adopted by Facebook, iGoogle and netvibes weighed strongly on our initial thinking.

Titus identifies the key features of the new homepage as being:

  • Simple, clean and beautiful, the final design, … visually striking yet unpretentious.
  • Personalization: you can choose the content that interests you by adding and removing the content boxes via the “Customise Your Homepage” tab.
  • Localization: Users can now set their own location, enabling them to access local sites, weather, news, radio and TV schedules without the hassle often associated with user journeys to local content.
  • Simplicity: the customization is intuitive and includes an interactive demo and tips to guide users through the process. It is also unobtrusive if the user has no desire to customize their page their experience won’t be compromised.
  • Search: The site is much easier to read and scan at a glance. At the top of the page there’s a search function (now reduced from two search boxes to one), and at the bottom a full directory of all BBC sites and a link to the A-Z, allowing users to quickly find what they’re looking for.
  • Nostalgia: the new homepage also manages to incorporate eccentricity alongside innovation.

Aesthetically bold and bright.

Aesthetically, the new homepage looks nice. It’s big, bold and bright - a far cry from the old days when BBC sites had text almost too small to read and a fixed-width design optimised for tiny monitors. But at the same time it appears far too clunky! I’d prefer something that would look a little more elegant and understated. Something that doesn’t appeal to The Facebook Generation, who are less likely to read the BBC pages at lunchtime, than update their Facebook, Bebo or Twitter profile during that ‘valuable’ hour. This begs the question, does the BBC know who their core audience is?

Confusing interactions.

The homepage makes great use of AJAX, but at the same time, there are a number of confusing interactions going on. For instance, the ‘Edit’ button next to each area of customisable content seems like the wrong label text. I’m not editing the news, the weather or blogs - I’m selecting which news categories I want to see, where I am and which blogs I want to read. These types of button ought to be contextual rather than generic. Edit is simply too vague.

Also, what’s the idea behind those plus and minus buttons for news? Strange idea. Add or remove articles from the displayed list? Why would you want to remove them from view sequentially? If the idea was to allow the user to asynchronously update a short list of available headlines, then why not move back/forwards in blocks of five? Plus and minus are often used as metaphors for creation/deletion in software, so the usage doesn’t seem right.

Personalisation vs Simplicity … an uneasy relationship

BBC Customise Homepage

The ability to personalise a website is, in general, a good thing. Google has done it with their iGoogle, Yahoo! with My Yahoo and Microsoft with Windows Live. But I think the balance here is gone too far towards design and borrowing from succesful Web 2.0 sites. The BBC website has always been an impressive destination for (relatively) impartial news and current affairs throughout the world, not a Web Portal. Or is this the point? Does the BBC want to become a destination for all your information needs and compete with Google, Microsoft and Yahoo?

The BBC should consider that 14-25 year old users, what I term The Facebook Generation, will require far greater scope for adding their individuality than is currently available. The social networking generation are page-savvy. They want control of their interface to information, their screen is their window on the world and I don’t think that you have gone far enough in divesting control of the display of that information to the user.

But for those who aren’t part of The Facebook Generation, the people who care about getting to the content fast and with little fuss, is the ability to personalise the homepage worthwhile or even simple? I’m not so sure.

Who needs a clock?

BBC Homepage Clocks Finally, the clock and date. What an important waste of webpage ‘real estate’, even though in the BBC’s case I understand it was a throwback to the old clock that preceded individual TV programmes. If you’ve got a modern computer capable of displaying the clock with the Flash plugin, then you’ll almost certainly have the date and time visible to you anyway. It’s needlessly superfluous on a website.

Microsoft is finally making real efforts to woo the designer community who have traditionally worshipped the Adobe and Mac product ranges. One new product that addresses this previously overlooked community is Silverlight, which uses the XAML technology and is touted as Microsoft’s Flash killer. For anyone who is keen to listen, Microsoft proposes that Silverlight will achieve similar results to Flash, but it does so in an entirely different way and has different aims. So, the big question is, will Microsoft be able to break the dominance of Adobe’s Flash platform, that is available on the PC, Mac and mobile devices alike? I’m sure the jury is out on that one, but it can be said it is an uphill task.

So what is Silverlight and XAML proposition? How does it vary from Flash?

Microsoft Silverlight is a proprietary runtime for browser-based Rich Internet Applications, providing a subset of the animation, vector graphics, and video playback capabilities of Windows Presentation Foundation. The runtime is available for Microsoft Windows and Mac OS X, with Linux support under development via the third-party Moonlight runtime.

Not much difference to Flash so far…

Extensible Application Markup Language (XAML) is a declarative XML-based language used to initialize structured values and objects. XAML is used extensively in the .NET Framework 3.0 technologies, particularly in Windows Presentation Foundation (WPF), where it is used as a user interface markup language to define UI elements, data binding, eventing, and other features, and in Windows Workflow Foundation (WWF), in which workflows themselves can be defined using XAML.

Not much difference to Adobes’s MXML

Browser support…

A frequently asked question is which browsers and operating systems will it run on? If XAML is limited in this area, its usefulness in the web world will also be significantly limited. Previous encarnations of XAML, were limited and justifiably criticised as it would only work with an ActiveX control. However, this has now been resolved with support for Firefox, Opera, Safari and Netscape, Windows and OSX alike. Support is provided by a downloadable plugin, much like Flash!

Like Flash…

Silverlight enables web developers to create visually rich user interfaces and animations, play video clips and stream media within the web page, again, much like Flash! But it is different! The comparison doesn’t end there. Animations are organised using timelines and frames within the tool…how else would you organise an animation without timelines?!

Like Flex…but not!

Where things differ from Flash are the tools used to develop the Silverlight applications. Silverlight is supposed to be a way of designing and building rich user interfaces. However, standard HTML elements are missing. The way you design a particular interface is to build a standard HTML form in your favourite editor, e.g. Dreamweaver CS3, and then open this page in Silverlight to add the visual enhancements that your design requires. This sounds complicated to say the least. In comparison, Flash has a brilliant tool and framework called Flex that does this far more gracefully and with the development of Thermo, designers can really feel comfortable in the web application development mix.

Silverlight applications will also run on mobile devices, but the plan is for the applications to only run within a mobile web browser. This is unlike Adobe who are feaverishly developing the AIR runtime to allow Flash applications to run independently of the browser environment and offline.

So, Web 2.0 and beyond with Silverlight and XAML may be somewhat jumping the gun. You may say that there is nothing new or innovative with the Silverlight offering. It does, however, serve to emphasise how important the Rich Internet arena is becoming or indeed has become.

Both Web 2.0 and Software-as-a-Service (SaaS) almost always depend up on the browser as a common denominator. It is with the web browser that web-based applications are accessed and run, yet the browser model is rapidly reaching its limitations.

Adobe thinks it has the answer and so now does Mozilla.

A year ago, most web developers had to think about Firefox, Internet Explorer, Safari, Opera and perhaps WAP for mobile devices and widget development for one of yet more platforms. Today the horizon is changing and web developers are afforded more opportunity and possibly with that more complexity, through offline development.

Browser extensions now exist that allow for the creation of offline web applications with Dojo Offline, Google Gears, Firefox 3, and other options on the market, pioneering the way and making it possible to take your web application with you on an aeroplane or an underground train.

The drive to make these offline applications desktop applications has also been thrown into the mix, with examples coming from Apple with WebKit Cocoa bindings, Adobe with AIR and Microsoft with Silverlight. Now it is the turn of Mozilla to enter the foray with a project called Prism.

Mozilla Prism

Prism is part of an experiment by Mozilla designed to “bridge the divide in the user experience between web applications and desktop applications“. Essentially, Prism will allow you to create a desktop-like application out of individual websites. These site-specific applications are a growing trend and a trend heavily marketed by, not only Adobe, but now Mozilla, as ‘the future’.

While traditionally users have interacted mostly with desktop applications, more and more of them are using Web applications. But the latter often fit awkwardly into the document-centric interface of Web browsers.

In its current form, Prism doesn’t have the ability to function as a desktop application without access to the Internet, but Mozilla says it is “working to increase the capabilities of those apps by adding functionality to the Web itself, such as providing support for offline data storage and access to 3D graphics hardware.

Instead of needing to run a browser to, for example, access Google Calendar, a simple icon can be clicked on the desktop. The icon will launch the Google Calendar application inside a Prism window, without any of the additional web browser bloat. This can have its benefits, especially when designing workflows and securing applications as the developer’s pain, the back button and address bar, are removed from the equation.

Prism-based Google Calendar

Although Mozilla may be excited about the concepts behind Prism, and Adobe about AIR not everyone shares the same enthusiasm, or has the working habits that require such an application-based approach. For some, the advantage of web applications is that they inherently aren’t desktop applications and everything can be handled in a single application almost anywhere on the planet, assuming a computer with a browser and web connection. However, Prism, AIR and Silverlight could end up offering the best of both worlds.

Companies need to make the most of Web 2.0, and web content management, collaboration and networking tools can help firms meet user demand for interactive websites. These tools aren’t simply restricted to the standard content management systems (CMS) used to publish text to a website, but tools that include file sharing, information sharing and instant messenging among others.

Effective web content management requires the capability for business leaders to take full control of the web as an interactive platform, rather than just treating it as another publishing medium. Keeping website visitors satisfied is a tough job. Currently, few corporate websites succeed with static, lifeless pages that lack interactivity. In contrast, pioneering websites, such as Amazon, Google and eBay set user’s expectations high with their compelling and dynamic content.

Because of these pioneering websites, the average visitor now expects targeted and personalised interactions with each and every company with which they come into contact on the web. In recent years the web content management franchise has expanded significantly beyond the 1990s paradigm of creation, management and publishing of content and other ‘resources’. As a result the tools are changing.

Ismael Chang Ghalimi has created an interesting list entitled Office 2.0 at IT|Redux. On this list, Ismael details a wide variety of web based business tools from bookmarking to business intelligence, calendars to contacts, databases to development tools, and beyond. What this list demonstrates is a shift towards new ways of data management, personalisation and targeting. New ways to interact with each and every interaction.

A recent survey from the Economist Intelligence Unit found that, despite early scepticism, “serious businesses” are starting to see that social networking technologies are not just for consumer sites such as YouTube and Facebook, but may also provide a major way for other brands to attract new customers and boost revenue.

 A compelling web experience is no longer based around simple web interactions, but around interactive tools.  The uptake of these tools, however, has been limited and we are only just seeing applications, such as wikis and blogs, join the corporate fold and become a generally accepted business tool.

The Web has long promised to be a conduit to connect a business directly with its sales prospects, clients and partners. Yet often the Web fails to live up to its expectation due to limitations of the traditional, prohibitative HTML page-based model.

While Rich Internet Applications (RIAs) apply across a broad spectrum of industries and uses, one of their well-established merits is to allow a company to reduce the complexity that stands between where they are today with their traditional Web applications and where they want to be in the short to medium term. RIAs are consistently bringing companies closer to their vision of their application, closer to their customers, and closer to the business impact they believed the Web could actually have on their overall business model. This is expressed most clearly in what RIAs have allowed or enabled companies to do, namely provide Software as a Service (SaaS) as part and parcel of a Service Orientated Architecture (SOA).

Software as a Service

Companies have considered and are choosing RIAs because provide the following:

  1. Develop new kinds of applications with features or capabilities that would be extremely difficult or impossible for a developer to create using traditional Web technologies.
  2. Engage, guide and listen to their customers on-line more intimately or more closely to how they would do it in person to increase loyalty, improve service, deepen the customer relationship, distinguish the company, or guide product development.
  3. Create compelling, attractive and interactive Web sites using audio, video, text and graphics that generate leads, increase sales, simplify communication and create a unique online experience worth returning to.
  4. Simplify typically complex processes like registration, configuration or purchasing leading to increased leads, sales, bookings, time on the site and repeat visits.
  5. Present information to their employees, management and partners in clear, innovative, intuitive and effective ways to increase productivity, information sharing, decision-making and competitive advantage.
  6. Provide an engaging, highly interactive presentation layer to underlying Web Services.
  7. Reduce bandwidth costs associated with frequent page refresh for high traffic sites.
  8. Dramatically increase sales of their products and services through their Web channel; and
  9. Build an engaging, highly interactive Web site or application at a reduced cost compared to using alternative Web technologies.

The term Web 2.0, first coined by Tim O’Reilly back in 2004, describes a cluster of web-based services with a social collaboration and sharing component, where the community as a whole contributes, takes control, votes and ranks content and contributors. Web 2.0 services include social networking sites, wikis, communication tools, weblogs, social bookmarking, podcasts, RSS feeds (and other forms of many-to-many publishing), social software, and folksonomies. Central to this new Web is the idea of tagging — the adding of keywords to a digital object (e.g. a website, picture, audiofile or videoclip) to categorise it. This activity is effectively subject indexing but generally without a controlled vocabulary.

The following list provides examples of sites which include some form of user-based tagging:

Blogs
Technorati: http://technorati.com
Bookmarks
Delicious: http://del.icio.us
Books
Librarything: http://www.librarything.com
Emails
Gmail: http://mail.google.com
Events
GoingToMeet: http://www.goingtomeet.com
People
Tagalag: http://www.tagalag.com
Pictures
Flickr: http://www.flickr.com
Podcasts
Odeo: http://odeo.com
Videos
YouTube: http://www.youtube.com

Folksonomic Websites

Tagging of course is not a new concept, especially to librarians, indexers and classification professionals. What is new is that the tagging is being done by everyone, no longer by only a small group of experts, and that the tags are being made public and shared. This is the concept of Folksonomy.

A folksonomy is a user-generated taxonomy used to categorize and retrieve web content such as Web pages, photographs and Web links, using open-ended labels called tags. Typically, folksonomies are Internet-based, but their use may occur in other contexts. The folksonomic tagging is intended to make a body of information increasingly easy to search, discover, and navigate over time. A well-developed folksonomy is ideally accessible as a shared vocabulary that is both originated by, and familiar to, its primary users.

In contrast, in the realm of the Web, taxonomy can be defined as:

the laws or principles of classification;

controlled vocabulary used primarily for the creation of navigation structures for websites

The development of the Internet and the Web, and of search engines, led to users doing their own searching. In the Web 2.0 environment users are now also doing their own content creation and information management.

Because folksonomies develop in Internet-mediated social environments, users can often discover who created a given folksonomy tag, and see the other tags that this person created. In this way, folksonomy users often discover the tag sets of another user who tends to interpret and tag content in a way that makes sense to them. The result is often an immediate and rewarding gain in the user’s capacity to find related content. Part of the appeal of folksonomy is its inherent subversiveness: when faced with the choice of the search tools that Web sites provide, folksonomies can be seen as a rejection of the search engine status quo in favour of tools that are created by the community.

Folksonomy creation and searching tools are not part of the underlying World Wide Web protocols. Folksonomies arise in Web-based communities where special provisions are made at the site level for creating and using tags. These communities are established to enable Web users to label and share user-generated content, such as photographs (e.g. Flickr), or to collaboratively label existing content, such as Web sites (e.g. Technorati), books (e.g. LibraryThing), works in the scientific and scholarly literatures, and blog entries (e.g. WordPress).

The day of the emasculated Web 1.0 where the client-side was functionally poor, where the user interface was akin to the days of the mainframe computer, is rapidly diminishing and the new era of the Web 2.0 has yielded a new way of thinking. The demand for web applications, particularly in the business arena, is increasing at an exponential rate as the benefits of new technologies and paradigms are comprehended by the CTOs, CIOs and decision makers. Web interfaces have significantly restricted the interactive user experiences possible on the Web, and the ability of those Web applications to present increasingly complex information to the user, to date.

To solve a myriad of today’s problems, modern web applications must be able to solve an equal myriad of requirements.  These requirements provide the principles behind the emerging Rich Internet Applications (RIAs) and include some, if not all, of the following.

  1. Run unchanged across multiple platforms
  2. Deliver engaging user interfaces with high levels of interactivity
  3. Restore processing power and rendering capabilities to the client
  4. Execute well across varying connection speeds (broadband rather than the  archaic dial-up)
  5. Utilise audio, video, images and textual content in a seamless mannor
  6. Support mobile workflow by allowing users to work on- and off-line
  7. Allow the client to decide what content should be accessed and when that content should be retrieved (asynchronous execution)
  8. Access any number of middle-tier services (e.g. .NET, Java, ColdFusion) and data stores
  9. Provide powerful and dynamic user interfaces
  10. Use standards such as XML-RPC, SOAP and REST in Web Services-based applications
  11. Integrate with legacy applications
  12. Allow for incremental addition of functionality to enhance the Web application environments
  13. Be accessible to all
  14. and, Utilise ubiquitous content

Candidate technologies for these solutions are developing primarily in the form of AJAX, Flex/Flash and XAML. They do not simply address the limitiations of the page based model as seen in Web 1.0, but provide the above capabilities whilst also empowering developers and designers to create new kinds of engaging and innovative applications and user experiences.

Microsoft finally unveiled its new product, Silverlight. But is it actually a product? Not really. It is more aptly described as a runtime system for a cut-down version of the .NET Framework and just-in-time (JIT) compilers. The runtime is tiny, designed to be a plugin to a web browser much like Flash is also available as a plugin. Microsoft see this technology as a potential “Flash killer”, although it is unlikely to achieve such a status, at least in the short to medium term. They have stiff competition from Adobe with the AIR/Flash/Flex combination which is engrained into the designer/developer community.

Microsoft Silverlight Logo

From the Silverlight website, it is clear that the project is heavily graphics-orientated and can do interesting things with video streams. Somewhat more interesting is that Microsoft have said that it will be consistent across multiple platforms, running on both Windows and Macintosh operating systems. It may even progress to Linux through the partnership with Novell, not to mention support for Windows smartphones and other Windows embedded devices. This is intriguing, yet promising for a company that historically has shunned competing technologies.

Microsoft described Silverlight as “a cross-browser, cross-platform plug-in for delivering the next generation of Microsoft .NET-based media experiences and rich interactive applications for the Web”. The emphasis is on rich interactive applications delivered over the web. The result being applications which offer a new level of user interactivity to rival that of the desktop and firmly banish HTML-based website to the bin. Sounds familiar? Flash?

So how is it different from AIR/Flash/Flex? Essentially, you can use any of the languages supported under the .NET framework, which means that Silverlight applications can be written in C# or Visual Basic, as well as other languages such as Ruby and Python. Like the AIR/Flash/Flex combination, Silverlight has its own set of development and debug tools in Visual Studio and a complete Expression suite for visual designers.

The Killer Application?

Silverlight on its own will not be the killer application so-to-speak. It is the services behind Silverlight, the data streaming services, that will be a key differentiator. Combining Silverlight with Microsoft’s new initiative, quietly referred to as “Live 2.0″, will provide video storage and streaming capabilities worthy of a Google-styled offering. These streaming services will clearly carry some form of advertising. You don’t have to use the Microsoft service, but the intention is clear; high-bandwidth, high-availability streaming of video data requires huge investment and Microsoft is making that investment to take its own slice of a huge, fledgling market.

Video streaming isn’t the only part of the service. Microsoft plans to develop facilities such as server-side data and credit card processing. This opens up possibilites for an application developed in Silverlight to be hosted, managed and distributed by Microsoft or another partner. I hear alarm bells … hosted, managed and distributed all by Microsoft! This is clearly putting all your eggs in one basket, but prudence is key when choosing which services to sign up to.

The Future Is Online.

With Silverlight, Microsoft has shifted its emphasis and signalled a firm intention that the future is online. It will be offering end-to-end solutions that allow the design and development of systems, and the management and distribution of those systems based around web services running not only locally but out in the etha of the Internet. Utimately we will be able to choose when, where and how we access applications and information. Whether Microsoft’s vision can be successful is dependent on whether this behemoth of a company can metamorphose from a conservative institution into a dynamic one. They have the money, the intellect and the technology, they now need the spirit of a precocious of a teenager.

« Older entries