Thursday, 25 June 2009

On winning...

18 months ago a few of us started work on something rather special. 12 hours ago, we won the advertising industry's biggest award.

It is sometimes the ones who shout the loudest that get the praise, so I want to take a moment to thank those that worked incredibly hard on an amazing product. To the small core of us that sat in that cosy, sunny room, developing a language of our own: Mark, Harald, Stuart (who pretty much became my wife), James, Richard S, Tristan, Martin, Zahid, Kevin - you rock! We can now, officially, get a woop woop.

To the guys who worked so closely with us the whole time, crafting words, designing t-shirts and making everything look wonderful: Chris, Richard B, Andy - you guys were the best creative team a bunch of geeks could have ever asked for.

Alison, you made the complicated simple. James and Nick, the branding was amazing - the video was a masterpiece.

Thanks to Bonnie, Eli and Livia for kicking things off and keeping them going. Deep gratitude to Neville and Miriam for all your advice.

And not forgetting our client - Luis. Without such a visionary and passionate figure sitting on the other side of the table, none of this would have happened.

That is enough gushing for now - I'm off to bed. Ciao!

Tuesday, 9 December 2008

Signing Adobe AIR files with Authenticode Certificates

There are some things that always seem a little trickier than they should be. Renting an apartment in London that has working heating and hot water is one of them, converting an Authenticode certificate from SPC and PVK files to a format that you can sign Adobe AIR files with is another.

Since I still haven't figured out the former, I'm going to write about the latter.

First things first, if you're going to get a certificate solely for signing AIR files, then buy one from Verisign or Thawte specifically for AIR. It's just easier.

If, however, you want to use your certificate to sign .NET applications as well, then get a Microsoft Authenticode certificate. You can use that certificate to sign AIR apps and well as .NET apps. We got our Authenticode certificate from Verisign, but there are other vendors. If this is what works for you, then the following might be helpful. If you have haven't already done so, go away and buy the certificate now - I'll see you again when you have downloaded a PVK file and an SPC file.

So, let's skip forward a few days. You've got your PVK file (the private key), and the SPC file. You're probably wondering how to turn those files in to a PFX file that you can use with ADT to sign files. Hopefully, these steps should help. Oh, I'm assuming that you're using a PC here...

Firstly, you need to ask yourself two questions:

  1. Do you feel lucky?

  2. Can you find a tool called pvk2pfx on your machine. This is a pain to get hold of, but lives in bin directory of most Microsoft SDKs.

If you're lucky AND you can find pvk2pfx, then skip forward a little. If you can't find it, then read on.


I don't have pvk2pfx, I need something else


Worry not, this is still completely possible...

  1. Get a tool called pvkimprt. You can download it from Microsoft. Run the self extracting whatsit, then run the installer, and make a note of its final resting place.

  2. Open up a commmand prompt (Start, Run, "cmd").

  3. Change to the directory where pvkimprt ended up.

  4. Run:
    pvkimprt -PFX <path\to\cert.spc> <path\to\key.pvk>

  5. Choose the following options:

    Choose to export the private key...

    Choose the PFX format, choosing to include certificate chain and use strong protection.

    Choose a password...

    Select a location to save the pfx file

    This is what success looks like...

  6. You can use the resulting pfx file to sign an Adobe AIR file with adt.


You're done! You might want to ignore the rest of this post, it will make you wish you were luckier. Any questions/mistakes/omissions, feel free to ask...

I'm lucky, I have pvk2pfx

This is much easier. Simply:

  1. Open up a commmand prompt (Start, Run, "cmd")

  2. Change to directory where you found pvk2pfx.

  3. Run:
    pvk2pfx -pvk <path\to\key.pvk> -pi <pvk password> -spc <path\to\cert.spc> -pfx <path\to\output.pfx> -po <new password for pfx file> (all on one line)

  4. You can use the resulting pfx file to sign an Adobe AIR file with adt.



I hope that was helpful!

Thursday, 4 December 2008

The Anatomy of a Seriously Sophisticated AIR Application

As promised, I've uploaded the slides that Rick Williams and I presented at Adobe MAX Milan on December 2nd 2008. Enjoy!

Tuesday, 2 December 2008

Thanks to all those who came to see us talk...

Just a quick note to say thanks to all the folks that came to see Rick and I present "The Anatomy of a Sophisticated Air Application" at Adobe MAX in Milan. It was also great to speak to so many people who loved Fiat eco:Drive.

We will the get the slides up ASAP. Over the next few weeks, I'll blog about some of the topics we covered in a bit more detail - leave a comment if there is something specific you would like to know about.

Thanks!

Friday, 14 November 2008

The kind of waterfall development I like...

The process cynic in me says you don't often hear the words "waterfall" and "innovation" in the same sentence... This, however, is an exception.

Tuesday, 11 November 2008

Web Sequence Diagrams: It doesn't get any more exciting than this...

Ok, a slight exaggeration. You might even accuse me of lying, but I find this pretty damn cool.

Last year I stumbled upon an ingenious tool - Web Sequence Diagrams. By using a markup language, you can draw sequence diagrams without the fuss of Visio, or even Gliffy.

A day in the life of a builder, sequence diagram style...


In just a couple of hours, you can be in diagram heaven. You could flood your desktop with exported versions of the diagrams. You could fill your office with print outs (but consider the environment kids). But there was something missing. There just wasn't an easy way to store them in their raw text format, and view the results... The tool was SCREAMING out for a wiki plugin.

So, I set about writing one. And got no further. Life, well actually work, intervened, as usual.

But fear not (for I know you are trembling with fear and anticipation), others have come to the rescue with a plugin for Confluence and a plugin for the rather wonderful Trac. On top of all this, you can also find a whole set of example scripts for Python, Java, and Ruby. Apparently, you can even render inline markup by using a bit of JavaScript magic, but I haven't quite got that working yet...

Genius.

Friday, 7 November 2008

A prediction about projection...

This morning, news about a tiny projector dropped into my inbox.

To summarise, this is a battery powered projector, perfect for showing movies from your ipod. Great. The author of that article got it right, this is game changing stuff. Very cool.

But I think it is bigger than that.

You see, when the MP3 format first came on the scene, the people rejoiced. "Woo", said Bob, "I can burn a CD with 200 songs". "Amazing", said Esmeralda, "I can FTP this song in just 1 hour!". "Holy crap!", said Justin, "I can make a fortune out of writing a media player". No one (that I knew) said: "Wow, in just a few years we'll have changed the way we listen to music. Oh, it'll be much prettier too." Very few really saw the true potential of this breakthrough. And I think the same is true here.

Right now, we're using desktops and laptops as much as ever. Sure we're using mobiles to access the web, but we're not using them as a replacement. We use them where we wouldn't use a regular computer. With a few improvements, we'll start to see these small projectors converge with mobile devices. Add to the mix the inevitable rise in processing power, and a new breed of device will start to replace the desktop computer, and indeed the laptop. We'll be able to forget about the small screen, and use a projected larger one. Add a futuristic input mechanism, and you'll have a pocket powerhouse.

I'm guessing this is why Google never bothered trying to make a desktop operating system - mobile will be the new desktop.