home

>

our blog

Blog

our blog

On Flash, SEO and “old school” web

September 20, 2007

In past few days I’ve been working together with a web start-up which is building their site entirely in Flash. I know there is a lot of other companies out there taking exactly the same path.  But nevertheless I’m still not really convinced that building entire site in Flash is a good idea.

Before I start, let me share with you with an interesting observation. Did you notice that Flash has been used mostly by visual artists, creative types like designers etc. and not by “hardcore programmers” (yes, of course there are exceptions from that rule, but still… we’re talking about cold statistics here). And that the whole Internet, HTML, websites, Google, SEO etc. resemble more an IT project led by programming geeks than by creative designers? Perhaps this is the main reason why those two world doesn’t work together that well? Designers are put off by the ugliness and practical manners of developers, and developers don’t really understand why designers want stuff to look great when it _works_ already?

I think the main reason why people decide to build their sites entirely in Flash, is that using ONLY Flash and not doing any HTML coding etc. gives designers ultimate power over the project. They don’t have to deal with IT geeks, programmers etc. and they can have as many super-cool animating effects as they want. The problem however, is that this approach is an ultra-design approach which creates a presentation, not a website. A website is a set of pages, each connected with others by internal links and website’s internal structure. Flash website lack that structure. Its just one index file with one “object” - flash presentation. How do you handle deep-links, SEO strategy etc. with such website?

Well, you don’t. Or eventually you lie to yourself that its possible - when it isn’t.

When I’ve searched for  informations on how to SEO flash websites, people have a whoole lot of work-arounds. You can have deeplinks by passing FlashVars from GET to flash object. You can output flash content in hidden DIVs so that google can spider it. You can do thi, you can do that. There’s always a work around.

Cool.

But all these are just that - work arounds. They might work, but did any of its inventors noticed that they take 2x as much time as following the “good old just like everyone else is doing it” path with HTML pages and content stored on each of them? With SEO deep-links, spiderable content etc.?

I believe Flash is great tool. I really do. I love Flash. It gives enormous power - both to designers and actionscript developers - letting them create web applications and UI that were not possible ever before. But hey, is that reason good enough to use Flash as the “only medium” out there? Wouldn’t it be more interesting to stick with common standards of the web, and build HTML pages WITH Flash objects (not Flash sites with website hidden pages inside!), with proper site structure, cross links, deep links and everything else that SEO and the rest of the web needs to connect with your site? (and send you some traffic too!)

Look at Adobe site. They should be first to promote Flash, yet they didn’t build their entire site in Flash! They know very well the SEO damage it would  cost them - that’s why they build their entire page following the “old school” web standards - with separate pages,  cross links etc. And they just use Flash objects as part of their site - not as the holy grail of web, the medium which should in fact replace the web itself.

My advice to Flash designers and developers? Follow the standards which everyone else is respecting. Don’t try to overcome the site structure by building it entirely in Flash. After all, following this way of thinking, the whole web should be a giant Flash movie, and your site should be only a loadable Flash module. Would you like that? I’m sure not. (I bet it would be sooo slooooow ;-) ). Instead, split your site to as many HTML pages as its logically possible. Introduce standard cross-links and deep-links to any valuable content on your site. Follow the Adobe-way of doing websites. Its a website you know, its not a PowerPoint or multimedia presentation…

To outsource or not to outsource

September 17, 2007

A company I know for a long time told me recently that they decided not to be interested in offshore development and managed outsourcing. The main reason behind? Their CTO was not convinced outsourcing was a good idea, mainly because of bad past experience as well as preferring to work with in-house people.

I generally disagree with the above reasoning (I believe its possible to guarantee comfortable level of interactivity between in-house and off-shore teams), but I had to give up when it came to the argument that its extremely hard to find good offshore developers. Take the following cite from a story featured recently on slashdot:

“Just to give one example: we opened a test center in China. The first time we asked them to do release testing, they asked us what the test results were. Hm. We didn’t know. We hired them to run tests. How could we know what the results were if they hadn’t run the tests yet? Turns out that it’s not always a good idea to report that tests have failed when management has already decided that they’ve passed, so they weren’t willing to give us the test results from the software until we gave them the test results from the management meeting. How much is it worth to be able to tell your testers to test something and have them give you the actual test results?”

The more you search on web, the more similar stories you will find. There’s a growing group of people convinced that if their project #1 which they run through some semi-amateur team in India of China didn’t work - then all of the outsourcing companies out there must be just one big mess.

I couldn’t disagree more.

The business world is half-full of success outsourcing stories - just like it is half-full of horror outsourcing stories. The real question therefore is not if to outsource but what (low level data-entry? high-level development and supporting?) and with whom. In world that is getting more and more “flat” and connected, where more and more developers from countries like India, China or Pakistan are able to compete for global IT jobs, what will really become a crucial skill is ability to select the right business partner for the job.

But how to do that? Obviously, the easiest route here (and the most common in business world, I guess) is to… ask for recommendation from other businesses which are successful with their outsourcing activity. Search for offshore companies who can show you portfolio of happy clients and serious skills. Never hire offshore developers (or companies) without testing their abilities first (e.g. by giving them first a small projects or skills tests). Think if you want to loose control on your applications - maybe its better to outsource just low-level jobs like quality assurance and simple development? Find a good outsourcing management consultant and ask for some help organizing interaction between your in-house and off-shore teams.

Outsourcing is here and it is not going away anywhere. So better learn how to make a proper use of it before others do.