Archive for May, 2008

Singularity web conference speaker spotlight: Tim O’Reilly

Tim o Reilly speakering at the Singularity Web Conference

I'm honored and humbled every time I look through the list of stellar speakers we have confirmed to present at the Singularity web conference. As such, I want to take a moment every week to highlight a new speaker, starting this week with Tim O'Reilly.

I had the honor of meeting Tim several years ago during a talk he was giving in London on the Open Source Paradigm Shift. In his talk, Tim predicted the mainstream commoditization of the web. Four years later, we stand as witnesses to the birth of the Commodity Web with Google's release of Google App Engine. (Simon Wardley, recently chronicled this very subject with great eloquence at his keynote speech at XTech.)

Several years later, I was in an elevator at the Venetian hotel in Las Vegas, heading to watch the keynote. There was one other person in the lift with me and I turned to ask him if he knew where the keynote was (the Venetian is huge). He told me that he was heading over there too and that I could follow him. Looking closer, I recognized Tim (he had a beard that hadn't been there in London) and re-introduced myself. Only later did I realize that Tim's conversation with Bill Gates was to be the highlight of the keynote. I guess it made sense that he knew where the keynote was after all.

Tim O'Reilly truly doesn't need any introduction. He is, of course, the founder and CEO of O'Reilly -- the most highly-regarded computer book publisher in the world. He is a true visionary who has both predicted and helped craft the state of the art on the world wide web -- not least by coining the term Web 2.0 to describe the social web of open data and applications that the World Wide Web has evolved into. (Few memes have had such lasting mindshare on the web today as Web 2.0 has.)

Find out more about Tim and our entire line-up of stellar speakers on the web site for the Singularity web conference and read Tim's thoughts on his blog.

The Singularity web conference is everywhere October 24-26, 2008. Tickets are scheduled to go on sale this month at $99 to coincide with the launch of the new web site on Google App Engine.

Google App Engine SDK 1.0.2

Google released version 1.0.2 of the Google App Engine SDK two days ago. If you're using Google App Engine, you should definitely upgrade.

You can find a list of fixed issues in the release notes, including the template cache issue that I was running into.

Also, it's not in the release notes but I just confirmed that the app.yaml skip_files issue has also been fixed. So you don't need the patch any longer.

I also tested the latest version of The GAE SWF Project and it works out-of-the-box with version 1.0.2.

Verifying SHA1 checksums on downloads

If you download development tools you will probably have come across SHA1 or MD5 signatures for downloads in the past.

It's very easy to test the download to make sure that the checksum is valid. For MD5 signatures, you simply type:

md5 name_of_file

And for SHA1 signatures:

openssl sha1 name_of_file

However, both those methods require you to manually verify that the signatures match. Which is a pain.

I was downloading the latest Google App Engine SDK release (version 1.0.2, which was released two days ago apparently) when I decided to whip up a very simple Bash script that verifies SHA1 checksums for you. I'm not sure if there's existing functionality that does this for you but it was simple enough to write.

Save the following script as sha1 and set it as executable to use it (chmod +x sha1)

#! /bin/bash

hash=$(openssl sha1 $1)
if [ "SHA1(${1})= $2" = "${hash}" ]; then echo "Key is valid."; else echo "Key is _not_ valid!!!"; fi

The script is very simple and doesn't do error checking for arguments, etc.

To use it, simply type:

./sha1 name_of_file SHA1_KEY_FROM_WEBSITE

So, for the latest Google App Engine SDK release, you'd type:

./sha1 GoogleAppEngine_1.0.2.dmg 105506c6c75badfaecfe912929ffb724b5d349b1

And it should respond with Key is valid.

Exposing a spammer: First-Rate.com

I hate blog spammers. Unfortunately, you normally don't know who exactly is responsible for blog spam and so there's usually very little you can do about it beyond getting angry, deleting the comment, and feeling wholly inadequate about the whole thing.

However, today, I saw some spam on my blog from a company called First Rate (seo blog spammers based in New Zealand and Australia), promoting the web site of a photographer by the name of Stuart Riddell, who does glamor photography in New Zealand.

I'm almost entirely sure that Stuart has no idea that the firm he hired to market his web site is engaging in spamming blogs in his name but that is exactly what First-Rate are doing. The email address in the blog spam is for stuartriddell {at} first-rate(.)com. And I'm very sure that Stuart Riddell is not currently having trouble with his TextArea component as he purports to in his spam comment.

What this company, First Rate, is doing is stealing space from my blog. They are advertising their message without compensating me.

I hope that this blog post raises awareness about their activities and I hope that their current and future clients think twice about employing a company that engages in spamming blogs.

I'd love to hear your thoughts on what, if anything, we can do to hold companies like this responsible for their unethical actions. Naming and shaming them whenever possible appears to be a good start.

Update: Stuart emailed me today. As I'd thought, he had had no idea that First Rate was spamming blogs to advertise his business. Here's what he told me:

Thank you for letting me know as I was completely unaware of this. I have got someone looking into it right now and will come back to you as soon as I have some more info. Please accept apologies in the mean time.

And this is exactly why it is so important to name and shame these companies that engage in such unethical behavior: people have no idea of the underhanded tactics they use when they hire them. It's my hope that if they do know, they'll take their business elsewhere.

I'm sure this is not the kind of publicity that First Rate were looking for when they spammed my blog.

XTech, Singularity, and AMEE

In the last few years, I've been making a very conscious effort to attend and speak at a variety of conferences both within the Flash world and in the greater world of web development, web standards, and open source. This has meant that in the last year or so alone, I got to opportunity to present to plethora of different audiences at conferences as diverse as MacWorld, Wizards of OS, Flash on the Beach, and d.construct. XTech, however, was very different to any of my previous conference experiences and I have to thank Jeremy for suggesting that I speak at it. (Jeremy also live-blogged several of the sessions from the conference and you can find several of the session slides online at SlideShare.)

XTech, at its birth, was a conference about XML. Although, as I understand it, the focus of the conference has shifted somewhat in recent years to embrace other web technologies and the crazy/sexy world of Web 2.0. Shifts in focus notwithstanding, I still had the pleasure of meeting and conversing with delegates from a variety of interest areas that I hadn't had the chance to at previous conferences, from people who make dictionaries to government representatives.

XTech was an intimate, and very geeky. After several days, I had learned heaps simply by conversing with the wonderful people I met and my brain was aching. Needless to say, I'm very happy to have taken part and I want to take this opportunity to thank Edd Dumbill of expectnation for organizing it and having me as a speaker.

During the conference, I attending a series of excellent sessions, starting on the workshop day with Simon's excellent tutorial on JQuery. Simon is one of the brightest minds I know and, as is sometimes rare in such cases, he is also an excellent and engaging presenter. To summarize what I got out of the session, if you're doing JavaScript, you could do far worse than to use JQuery! I know which JS library I'll be using from now on. (It has a very simple and consistent programming model, is hugely practical, extensible via plugins, and it handles all sorts of browser incompatibility issues for you behind the scenes. It's also lightweight and I'd urge ActionScript developers to look into the code for inspiration in taking advantage of the dynamic nature of ActionScript.)

The first day of the conference kicked off splendidly with Simon Wardley's amazing keynote presentation. Wow! I was in awe of Simon's presentation and I'm not too often in awe (for a list of other speakers that have blown me away with their presentations and their unique presentation styles in the past, see the speakers list for Singularity. I kid you not, first-hand experience is my main criterion when selecting speakers). Presenting is part performance, part teaching, part stand-up comedy and Simon masterfully blended all three. And, I'm honored that he has kindly accepted to present a session at Singularity. Don't miss it! :)

I also finally got the chance to meet one of my heros, Douglas Crockford, in person. Douglas is, of course, the creator of JSON, the native data format for JavaScript which, among other things, inspired me to create SWX last year.

He is also one of the best JavaScripters I know. Douglas groks JavaScript. He really does.

I've been programming ActionScript for close to a decade now and, during his talk, I learned several _fundamental_ concepts that I hadn't even thought of. Needless to say, I feel that every ActionScript developer needs to hear Douglas talk. And, I've been immutably excited ever since he graciously agreed to present his session at the Singularity web conference.

(Expect more speaker announcements for Singularity in the coming days. We've actually got more confirmed speakers than I've had the chance to announce on the conference web site.)

I'm also very happy to announce that AMEE, the world's energy meter, will be supporting Singularity as a technology partner and we will be using their carbon data and calculation technology to visualize exactly how much carbon Singularity will be saving by not having thousands of people fly out to a single location to attend the conference.

I was psyched to meet AMEE's founder, Gavin Starks. We share the same concerns about the environment and what AMEE is doing is of fundamental importance to the future of humanity. Gavin gave a riveting and informative talk at XTech and I'm delighted that he will be presenting at Singularity also. His call to action is probably the most important there has been in the history of mankind: We only have one planet and we need to start treating it better if we want it to continue being habitable.

I am happy that Singularity, in its own small way, will help to lead by example to prove that online conferences (global conferences?) are a successful model. And I hope that others will emulate our success in the future. The carbon savings alone in a shift towards global/online conferences will be phenomenal when you consider the number of conferences across the globe that take place annually. I envision a future where global conferences like Singularity will be the norm rather than the exception.

I'm heading back to the UK in a few hours and I can't wait to throw myself back into developing the new Singularity web site which I will be launching this month on Google App Engine, along with ticket sales. We are also going to be announcing our stellar line-up of sponsors in the next few days. Needless to say that I am exceptionally excited and humbled by the magnitude of support we are getting from everyone. Words can't express my gratitude or how blessed I feel to have such amazing friends and colleagues around me.

You wanna piece of me?

Aral Moo Mosaic

I love trying new things with Moo cards whenever I run out of a batch.

This time around, I thought it would be fun to take one large image and break it up into a hundred small cards to create a Moo card mosaic.

I started with a lovely photo of myself as The Phantom of the Opera that Jane Dallaway took last year at my fancy dress Friday 13th housewarming party and sliced it into a hundred pieces with Photoshop. (I also applied a little Smart Blur to it to so that you would not be subjected to too much detail of my overly-magnified facial pores!)

If you want to create your own Moo card mosaics, grab this Photoshop file (.zip; 0.5MB) that's set to the correct dimensions and comes pre-sliced for your convenience. (Just do a Save for Web after adding your own picture to it and you'll get a hundred images that you can zip up and upload to Moo.)

So if you see me around, feel free to ask for a piece of me -- you might just get one! :)

Relly has a much nicer close-up of the cards than my pic (using my camera, no less, which is now her camera) :)

Google App Engine hackathon at XTech?

I'm heading over to Dublin in a few hours to present at XTech and I'm wondering if anyone wants to meet up informally to meet/talk/hack Google App Engine.

I've set up an event on Upcoming. Please add your thoughts + tell me if the time is good. I think we should hold it at the hotel where the event's taking place for convenience.

Let me know your thoughts here, express your interest on the Upcoming page and/or contribute to this thread on the Google App Engine forums.

Pistach.io entering beta testing

Pistach.io is entering beta testing.

You've probably noticed the Pistach.io ad on my site for a little while now. Peter Elst was helping us alpha test the ad rotation. Seb's got his badge up as well and the other beta testers from the Pistach.io Flash Pack will be adding theirs shortly.

So what's Pistach.io and the Pistach.io Flash Pack? We're a group of highly regarded and influential Flashers who are banding together to monetize our web sites in an elegant way: With a single ad, prominently displayed across all of our web sites. (Read more about Pistach.io here.)

Dave and I have been working for the past few months to build a system that is massively scalable and can handle any number of packs. We're kicking things off with the Flash Pack and we're open to suggestions about new packs. Dave will no doubt be blogging about the technical side of things in the future and it should make for an interesting read as we've built Pistach.io on Amazon's EC2, S3, and SimpleDB systems. We are also going to be using Amazon's Persistent Storage for EC2.

We're starting to sell ads during the beta period. If you are interested in advertising on the Flash Pack, contact me at aral {at} pistach(.)io.

I will be posting more information, including rates and the list of Flash Pack sites that are taking part in the beta test, in the coming days.

We also still have room in the Flash Pack. If you're a top Flash designer or developer and want to join an cool group of your peers and monetize your site in a way that respects your users and actually reinforces your reputation instead of tarnishing it, get in touch with me at aral {at} pistach(.)io.

Enabling incompatible extensions with FireFox 3 Beta 5

I just upgraded to FireFox 3 Beta 5 and immediately felt the loss of FireBug. Although FireFox can't automatically locate an update for it, FireBug 1.1 works in Beta 5 so grab it now!

Also feeling the loss of my del.icio.us bookmarks, HTML Validator extension, and Alexa rating graph, I googled for a possible solution and came across this useful tip:

Enter about:config into your address bar, right-click in the window and select New -> Boolean and enter extensions.checkCompatibility for the preference name and false for the value.

Now, go into Tools -> Add-ons and manually disable your non-essential plugins (no need to tempt fate) and restart. You can enable your existing plugins one by one and see which ones work. All of my essential plugins work well under Beta 5.

Update: I've gone back to using the release versions of FireFox 2 and Firebug after running into issues with the JS console.

Accessibility and Flex: we can do better.

By default, Flex Builder creates inaccessible SWF files.

Bad decision. This needs to change.

Enabling accessibility features for The GAE SWF Project resulted in an 8KB file size increase in the SWF file. I can live with that. Creating inaccessible SWF files to save a couple of KB is no savings at all.

The Flex accessibility overview page feels woefully outdated and mention Adobe Flash Player 7. We're on 9 now. Let's update these, guys!

It also reads more like marketing talk then factual information for developers with phrases like "designers and developers can create powerful, exciting, and engaging experiences on the web that are accessible to all" and "it's never been easier to design accessible Rich Internet Applications." Let's cut out the marketing talk and concentrate on the facts. If we feel that we need to dilute or detract from the facts with marketing talk, maybe we need to concentrate on changing the facts.

The Accessibility Best Practices for Flex document, on the other hand, does an admirable job of disseminating important information that is useful for developers.

It is also important to note that the accessibility features of the Flex components have been optimized for use with JAWS on Windows and that users will need to install additional JAWS scripts to enable these features. Why aren't these scripts included by default in JAWS?

The best practices document is very useful but I feel that we would benefit for a short, succinct and no bullshit summary to quickly inform developers on the state of accessibility in Flex. Something along the lines of:

The State of Accessibility in Flex

  • Accessibility is not enabled by default for Flex applications (ideally with a note stating: "We will be changing this in the next release.")
  • Accessibility in Flex is optimized for JAWS on Windows. (This is not necessarily a bad thing; better to have great support for one accessibility aid than shoddy support for several.)
  • JAWS users will need to install additional scripts to take advantage of advanced accessibility features.
  • Accessibility is more than adherence to standards and screen-reader support. For a full discussion, read Accessibility Best Practices for Flex.

Finally, bookmark the Accessibility Resource Center on Adobe.com and keep checking back for new articles (and bug Adobe if you don't see any!) :)






Bad Behavior has blocked 0 access attempts in the last 7 days.