Archive for April, 2007

2007 Web Design Survey

Tuesday, April 24th, 2007

I just completed the 2007 Web Design Survey and wow was it easy. There is a distinct lack of quantitative data around about the web design industry, so if you are a web designer I encourage you to go to A List Apart and fill out the survery.

Whats more it only took me five minutes and I am in the winning for an Apple 30GB video iPod, an Event Apart jump drive, or a funky A List Apart T-shirt.

Come on you know you want to.

Technorati Tags: , , ,

SEO friendly Flash programming

Sunday, April 22nd, 2007

I have been thinking about search engines inability to crawl flash files for quite some time now, but then it struck me - use one content file to serve up both the Flash and HTML, then use JavaScript to embed the Flash. Wow, that is really quite easy.

Background

Programming an enter website in Flash is inherently hard for search engine robots to index. This is because all the website content is sitting inside a complied SWF file. This technique has disappeared to the backs of our minds (much like the 80’s) and has turned into an SEO no no. However, there is some light at the end of the tunnel because Google can actually read a flash file. But this technique is not foolproof - mainly because it is very hard to understand structure, context and semantics when reading a linear Flash file as a set of static HTML pages.

Take the following example : ‘Index Index action 92 anatomy 6 Arm band 127 Around the world 62′ - does not really make any sense to me.

Example

Here is an example of search engine friendly flash programming. Wow that is amazing I hear you exclaim, well I will tell you how I did it.

Solution

First of all there needs to be one main content file. The reason for this is that you don’t want to have to update both the Flash and HTML if there is a change to the content or you need to add an extra page. I did this with a PHP array, setting up each page (you could do it with any other server side scripting language):

//setup the pages array
$pages = Array();

//add each page to the main pages array
$page = Array();
$page['navTitle'] = 'home';
$page['img'] = '_img/home.jpg';
$page['content'] = "home content goes here";
$pages[] = $page;

$page = Array();
$page['navTitle'] = 'about';
$page['img'] = '_img/about.jpg';
$page['content'] = "about content goes here";
$pages[] = $page;

//ect...

Then next trick is to use JavaScript to embed the Flash into the HTML page. The reason JavaScript is used to embed Flash is because search engine spiders to not read JavaScript at all. This quirk enables only visual browsers (i.e. people using a web browser) to see the Flash, which is inevitably what we want. Now there are a number of ways to embed Flash using JavaScript, the SWFObject seems to be the popular choice at the moment. However, I recently read about Robert Nyman solution, which looks very promising and at a small 2.1KB, who could you go wrong.

Once we have both the content and the Flash setup, we need to build the website. The first step is to make a normal HTML website using the before mentioned PHP array. Then essentially you do the exact same thing in Flash, however, instead of using PHP you use ActionScript:

//load the nav from the PHP array
loadNavTitle = new LoadVars();
loadNavTitle.load('path to echoed out php file');
loadNavTitle.onLoad = function (success) {

if (success) {
navTitle = loadNavTitle.result;
navArray = navTitle.split('|'); //split up the echoed data into an array
buildNav(); //function to build the nav
}

}

function buildNav(){
for (i=0; i
//spawn clips
root.attachMovie('navObject', 'nav_mc'+i, _root.getNextHighestDepth());

//set instance names
var nav_mc:Object = _root['nav_mc'+i];

//setup an id
nav_mc.id = i;

//add the text
nav_mc.nav_title.text = navArray[i];

//on release
nav_mc.onRelease = function(){
getContent(this.id);
}

I have left out some steps, namely to PHP file to import the Flash data and the main HTML index page, but the essential structure is there.

Done and done!

Conclusion

So there you have it, a fully featured, animated website that is search engine friendly. And with no ajax! Who would have thought.

Technorati Tags: , , ,

Hot air ballooning in Melbourne, Australia

Sunday, April 15th, 2007

Hot Air Ballooning over Melbourne

This morning I went hot air ballooning over Melbourne. Wow, what an amazing experience! We flew with a company called Balloon Sunrise, I can’t speak highly enough of them - very professional, safe, efficient and funny. Whats more there was a glass of champaign with our 5 star buffet breakfast at the Grand Hyatt to finish off, how could it get any better.

Hot air ballooning was an inspiring experience, silently floating over Melbourne’s CBD enabled us to gain a birds eye view of some of Melbourne’s most famous landmarks - Port Phillip Bay, The Arts Centre, MCG and the Bolte Bridge. I was even considering become a hot air balloon pilot, although I think that whim was more full of hot air than anything else!?!

Hot air ballooning at sunrise provided some fantastic photo opportunities. I will upload them to my Flickr page, so watch out for some hot air.

Technorati Tags: , , ,

CSS Naked Day, does it affect usability?

Wednesday, April 4th, 2007

I am going to participate in the 2007 CSS naked day on April 5. The creator of CSS naked day, Dustin Diaz believes it is the ideal event to promote web standards. While everyone will be able to see my XHTML for its semantic and structural integrity, it may provide some usability problems. I think promoting web standards is a great idea, however, should we do it at the cost of usability? So I will run a small, very small, focus group. If you find it hard, confusing or just plain annoying to navigate my site on April 5, please let me know and I can try and make the necessary adjustments.

I will be away camping at Mungo National Park over Easter - more importantly CSS naked day - so I will 700 KM away from my computer. Consequently, I will not be able to show off my by disabling my stylesheets for the day personally. Hopefully, however, Guff’s Word Press: Naked Day plugin will handle the job for me, so everyone will be able to see me in my birthday suit, if only for one day.

Hopefully this will provide some useful comments on the structural usability of my site as well.

Technorati Tags: , , , , ,