Limbo is a great party game, its played by seeing who is the most flexible with the best balance by bending over backward and shuffling under a horizontal bar. Too bad we sit at desks all day bent the other way, making us terrible at this particular game… Then again, I’d like to see any of your fellow party-goers do the Flash/HTML limbo!
What am I talking about? The ability of a good web designer or programmer to make a really great site, balancing the needs of your client, the usability of the website, and search engine visibility. It often feels like doing the limbo, bending over backward until you fall down, dizzy and light-headed. For all the clients out there, be gentle with us.
So lets be honest now, HTML is all you really need for a web site. In fact, the less HTML the better. The latest trend is more CSS to control formatting, and less HTML to control formatting. That means avoid table layouts, use styles instead of font tag properties, and stick everything in a div. The smaller the file, the cleaner the layout, the better. Make the CSS external to allow browser caching, reduce file downloads, and reduce future site maintenance time. I have even read that the smaller the page size a search engine sees the happier it will be, and the faster it will index and rank your site!
Usability is all about how someone viewing your website gets around. Can they easily see the navigation? Do the products, articles, and ads make sense visually? Be careful to follow what has become a standard on the internet: a main consistent navigation bar on each page and a strong division between navigation, content, and advertisements.
Another usability problem I have seen often is the lack of a solid url structure. It helps users and search engines to have the url be related to what is really on the page. If possible create sites that use the url to specify the content, not a query string. To maximize natural linking to your site (a powerful SEO tool), a solid and obvious url structure is necessary. The urls on a site should return the same content every time. If a site’s structure changes, the previous urls should be redirected to the new locations (via a 301 redirect header).
What about the client that wants the “bigger/better” site? You can do some really amazing things with CSS and layouts and even manage to keep the files tight and small, but to really crank a site up to eleven (note the Spinal Tap reference) you need to use Flash.
Flash is the dominant animation plug-in on the internet. Flash 1.0 was introduced when Macromedia acquired the software in 1996 (Adobe acquired Macromedia in 2005). It originally was nothing more than a vector based frame animation program. What’s a vector you ask? It’s a series of points that are used to generate lines, arcs, and splines. The reason to use vectors is file size and scalability. Unlike normal images which increase in size relative to width and height and can become pixelated, vectors can be scaled without changing file size and are lossless (they look the same at any dimensions). This allows Flash to perform better animations at much lower bandwidth than other alternatives such as animated GIFs or mpeg movies.
These days Flash is a lot more than just a vector animation plug-in. It has its own built-in scripting language, it can stream video, audio, and images, has many user interface methods, and can communicate to remote servers. It can even be executed outside a web page and can open/save files to a local computer like a real desktop application. In all, a very impressive package.
So why not use Flash exclusively when building a web site? Not everyone has or wants the Flash plug-in installed, so some users would not be able to access your site (although this continues to be less of a problem, some of the latest polls show a majority of users already have Flash - Flash Player Poll). This may become an issue in the future as more mobile and text-only browsers begin accessing the web, but even current HTML-only sites will need to be modified to provide good content to these browsers.
Also, search engines have trouble dealing with Flash. Some search engines are able to parse out some of the content in your Flash file, but the linking structure and sub page content of your site will be lost. Flash is also not as simple as HTML, so the development time and cost can be much higher (keep in mind that the results can also be much more impressive).
There are many options to avoid the pitfalls of Flash. For people who do not have the Flash plug-in and do not want it, you can offer a pure HTML version of the site. You can also detect if the user has Flash installed and swap in alternate content (the best place to get an up to date detection script is direct from the software developer at Flash Detection Kit). Having a full HTML version of a site will also allow the search engine spiders to find everything they need, and non-Flash users to navigate to the information they need.
If you are creating a full page Flash site, add footer links in HTML that allow the search engines to spider your site easier. Also break up your Flash content into unique pages so the spiders can view the content separately on each page. Your real site can be contained all in one large Flash movie, but I would recommend making a series of HTML sub pages with an approriate section of your Flash movie in each page so people wanting to link to a specific part of your site can do so. This will also allow search engines to easily index your site.
Hopefully you’ll be doing the limbo a little better after reading this. There are a lot of ways to use the internet, and it’s growing incredibly fast. HTML and CSS are all you need, but Flash is the best alternative if you want that extra boost to make a site an eleven. Just keep in mind the major usability and search engine visibility requirements. Beyond that it’s up to you how far you can bend in this game of limbo.