Building a better web experience. An a-z overview. - January 08, 2009

written by: adam shore

ex·pe·ri·ence
Spelled Pronunciation[ik-speer-ee-uhns
noun, verb, -enced, -enc·ing.
–noun
1.a particular instance of personally encountering or undergoing something: My encounter with the bear in the woods was a frightening experience.
2.the process or fact of personally observing, encountering, or undergoing something: business experience.
3.the observing, encountering, or undergoing of things generally as they occur in the course of time: to learn from experience; the range of human experience.
4.knowledge or practical wisdom gained from what one has observed, encountered, or undergone: a man of experience.
5.Philosophy. the totality of the cognitions given by perception; all that is perceived, understood, and remembered.
–verb (used with object)
6.to have experience of; meet with; undergo; feel: to experience nausea.
7.to learn by experience.

For most of you, you've had some kind of experience using the web or having some kind of a presence on the web whether it be personal or business. For some, we're going to assume there are still a lot of intimidating concepts, jargon and technology bits you're hearing about.  Ever since the first generation of WYSIWYG HTML editors like Microsoft Frontpage, people have been churning out websites for their uncle's sister's brother's neighbors and so on. Many – if not most of these sites were built with the purpose of making an identity accessible and sharing information. Whether it's a business or a person, presence on the web has become a must. So is creating a valuable experience for all involved. For all of us, getting to the web is an experience which can vary quite a bit from person to person. That's part of the beauty of the web. So what sets sites apart? What is a valuable experience on the web? What are some of the trends going on right now? What knowledge can we leverage to help ourselves build a better web experience?

Knowledge of the process – what are those geeks doing in front of those computers? How will they help you get to the web? Some steps of the process may include: Branding – do you have one? Do you need to work with a web designer in order to create one?

Information Design – what are we going to publish? Will it be information about our products? Will we be selling things? Ideas? How are we going to organize it? These key decisions will help steer the outcome of your website.
Where some businesses are looking for functionality, organization, an attractive facade or marketing and sharing information, others may simply be looking at having a placeholder on the internet for people to find and make that call for purchase. There are social networking experiences and some sites exist to show one simple piece of functionality and create a following (twitter). The experience of the web is different for everyone. Sorting through expectations and creating a winning experience is the key to success on the web.

Generally when putting together a team for developing a web presence, you'll need to have some idea of a budget to work within. This is key in setting expectations. Can you afford to go with a content managed solution or will you develop a static site? You'll need someone to manage the job, someone to do your business case analysis and make sure what you want is doable, feasable and help steer the design, you'll want someone to do the visual design and someone to implement the technology. Somewhere in there, one of those roles will help guide you to use the right technology and present some options. In today's marketplace, there are many competitive solutions for creating your team. Some businesses like to hire their own full timers. Many will create a relationship with a designer or developer who will manage all of the subsequent sub-contracting. This is often a preferred model as it keeps teams lean, specific and skilled – with the client maintaining one relationship a key player.

As mentioned, one of the first things you can expect to decide is whether the site is going to be built of static pages or if a system will be implemented to handle content management. Generally, for us- the rule of thumb is that any site which is going to be changed at any interval should be based on a Content Management System (CMS) or Content Management Framework (CMF). A static site will require some technical expertise on your team to do your website updates. This person will require some HTML and CSS training as well as know how the pages all work together.
Getting to the point where you are using a CMS requires some training.

Does your budget allow for software license fees or will you be relying on Open Source software. When given a choice, most clients choose to go the Open Source route. The good news is that there are some amazing Open Source solutions as well as other affordable solutions for companies on a leaner budget.

You may be wondering – what is Open Source? To quote a web source : “In general, open source refers to any program whose source code is made available for use or modification as users or other developers see fit. “. Yes, there actually are free things out there. Some of them are actually amazing products, too. Some of the benfits are that Open Source software comes with all of the source code. The better Open Source systems are backed by a strong community of users, developers and gurus. In my experience, the systems we choose to leverage for our clients are well supported by their community. The community supports the tools by providing forums, chat rooms and handbooks so developers can jump on board and work with the tools and eventually become vauable assets to those Open Source communities themselves furthering the value of these systems.

So – once you open up a browser and start searching out Open Source Content Management Systems, you will find tonnes. While this isn't a talk on Open Source CMSs specifically; there are certain systems that seem to have really strong communities and features worth leveraging for your web presence. For simpler implementations – Joomla! is often a good solution. It makes publishing and managing content in sections and categories a breeze. With a flourishing community of developers, Joomla! is quite extensible. It's a tool aimed more at someone who isn't afraid to get spend some time learning how to configure  but doesn't really require custom development unless you need very specific functionality. For most tasks, there is something out there which is tuneable in to your needs. Joomla! is a Content Management System. One of its shortcomings is that the default user management system is quite limited and not all that flexible, so often times when it comes time to configure security for various roles, Joomla can fall short out of the box. There are various add ons to help you find your way, but when it comes to higher security , I recommend something more robust.

Enter Drupal. Aimed a little more towards developers with infinite theme flexibility, Drupal is well supported, secure and able to help you tackle pretty much any job. Drupal isn't for everyone as far as site development goes. The process of building out a site and some of the concepts have a bit of a learning curve. Once you're there, it's well worth the investment. The thing which sets Drupal apart from other CMFs is that there is a group of core developers who are actually paid to maintain security, develop core functionality, integrate community patches in to the Central Versioning System and help make sure that the product remains quality focused with great community of solid contributors. Contributions range from coding to writing handbooks, modules and trolling the forums for people to help; thus bolstering the content available to the community for search and assistance purposes. Projects are planned online and development teams gather on the web to help create an amazing product.

There are other not so expensive solutions available like ExpressionEngine. It's only $249 for the full commercial version and there are available plugins available. The user interface is clean and simple. The implementation is geared more towards blogging than most systems. Since this is a very current web trend, ExpressionEngine has managed to percolate its' way to the top of the heap for certain requirements.

So, that's a small handful of Content oriented systems for you, but what if you just want to blog or you just want a store? Speaking with someone who is informed can help you make sure that making a choice of online tools isn't setting yourself up for a nightmare because of future possible plans.

What happens when you run in to a problem with an Open Source solution? Firstly, part of your decision making process should be to work with an experienced and resourceful developer. This developer will debug and source out solutions for issues encountered throughout the experience.

So, you've got a development team, an information architecture, technology to run the site ... Now, you need someone to take care of the visual design aspect of things. Let's take a quick look at what this person is trained to do for website work. This person will take the information architecture and any branding work necessary and incorporate them in to a few mockups. These mockups aren't functional. They simply illustrate what the home page and an internal page or two resemble. The results of these meetings or emails are reviewed and incorporated in to another milestone part of the job : the XHTML/CSS template.

This still isn't a functional piece, but it's rendered from a simple photo to a template which illustrates different aspects of the menu functionality, text and image styling as well as containing the other styles which will be leveraged in to the site with other functionality. The template is “cut up” in to the XHTML/CSS piece with the purpose of forming the next piece of the puzzle. This piece is handed off to the developer. Some developers prefer to cut up their own pages.

Either way, now there is a template in the hands of the developer. What the developer then does is takes the template markup and builds a working template for whichever tool set. At this point, things are starting to come together. Working with the requirements documents, the developer works their way through building the site and incorporating it in to the design.

At this point, the client is presented for the first time with a working copy of the website. There may be tweaks and changes once the site is in working form; this is part of the process and should be expected. The developer will test through changes and present a final product for training. This is where the power of your site is presented in detail for the first time and like a course, the site training happens. The expectation should be to transfer enough knowledge to the client so that they can go ahead and build out the content.

Content is often an overlooked part of the website. We've got this design, all of these categories of information which suggest our layout and navigation, but we have no information. While the site is being built and planned, it is necessary for the client to be building content or arranging for it to be built. When the website is complete, unless other arrangements are made, it will only contain example content. Once the training occurs, there should be a resource or resources available available to populate content.

Populating content involves the writing and the other supporting media. By supporting media, you should evaluate whether you'd like your site to use images and or video. If you want to use video, what functionality are you looking for? Are you looking to simply post and embed videos or are you hoping to host your own videos and have them do certain things automatically like watermarking, custom players, intro/outro. These functions require the use of certain video libraries in order to get the job done. Make sure that your hosting provider supports this.

That takes us to hosting. Who is going to host. Someone as part of your dev team may be able to host your website for you. If this is the case, you may be saving yourself some time in support queues by keeping the hosting service within the development team. Often times, a reseller account with one of the larger hosting services is more than enough to handle most client requirements.

So, your site is up – how do you get people coming to it? There are standard forms of marketing as well as Search Engine Optimization. Around conferences like these places, there is a lot of buzz about it. One asset you should be looking for on your development team is that someone have reasonable working knowledge of SEO. This can be as much as building content which will be found by keyword when people search for terms relative to your business or hobby. Beyond that level of optimization, I would recommend involving someone on your team who is an SEO expert to keep things aligned with the searchability goals throughout the site building and content population process.

Without some sort of draw, your site is simply acting as a placeholder. There are various other ways to market your product from viral marketing to email campaigns and keyword advertising. Leverage these tastefully and properly in order to achieve a pleasant user experience not inundated by advertising, flash and detractive site elements.

The user's experience should be focused on getting your message across. If your message is information based, it should be well written, informative and up to date. There is nothing worse than antiquated content on the web. If you're stumped for content, have someone incorporated in to your team who can focus on the content aspect of things. A good creative or technical writer can rocketship your site's credibility and dramatically affect your site's ability to be found and indexed by the big search engines.

When focus turns to the user, other questions may arise. Is the user hearing or visually impaired. Does the site need to be readable by machines other than standard internet broswers. To achieve many of these goals, web standards are referred to and employed. These standards help us to maintain consistency for presentation of the website between devices.

Is the typical user on a fast connection? How will your typical user navigate their way through your information? Will they use the standard methods of navigation or will they leverage the search functionality.

This brings us to some points about design. While everyone wants to be exceptional and remembered when it comes to website design; there are some important things to remember. Allowing the user a clear method of navigation around your site will insure that their stay is meaningful. It's an utter atrocity seeing the product of an expensive budget spent on an implementation which baffles even advanced users. Try and stick to navigation which is usable and adheres to familiar standards.

Leverage social media sources. Tools like Facebook, Twitter, Youtube and other social networking platforms are there to be leveraged. In order to deliver extended functionality to your site which is found in ways that search engines won't necessarily catch, leverage these methods.

Facebook is handy as you can start groups and share your groups with other groups, sendingn invitations around and hoping your network grows and your message gets across.

By sharing status information like Facebook, but just status – you can join in the Twitter phenomenon of Microblogging. This is a way to simply share status information with followers in the hopes of extending your network by sharing interesting information and having the word spread about you and what you are doing on the web.

Using viral marketing by video and uploading it to social media sites focused on video is another way to market yourself. Millions and millions of people search some of these sites daily so your odds of being found and your videos passed around are increased if you can be interesting. This part of internet marketing opens up a whole new era and philosophy of marketing something almost intangible in to an experience which is tangible to some end.

When starting your foray in to leveraging the web, it's imperative to be informed. With so many options out there, it's easy to get stuck in a box. By that, I mean using technology which leaves you no room to upgrade or enhance your site's functionality. Often times with static sites, this is the case. None of the information is dynamic. This limits upgrading functionality to piecing together various tool sets. Sometimes all you need in order to fulfill your site requirements are a number of static pages, a forum and a gallery. By using static pages to build the bulk of your site information, are you then limiting the user experience to be that of a regular reader? Would you like to some day be able to allow your readership the ability to blog about the content on your site without having to re-write it? If so, then your choice to go static and save money may backfire when you have to re-enter all of the content in to a CMS/CMF in order to leverage the ability to blog or change the content easily.