Friday 25 March 2011

AppHarbor - Continuous delivery done right

So I've just joined a startup dev company - http://www.agilex.co.uk , and we were wondering what to do about environments.
We didn't really want to run a bunch of hardware out of our office, as we couldn't really afford it, nor could really be bothered with it.
We'd heard of, and used Heroku in the past in a non-commercial sense, and it looked pretty cool, but only supported ruby based apps. Then we fell upon AppHarbor - Heroku for .NET, or as they say "Azure done right" (cheeky little hook , but I love it !) .

If you know nothing about appharbor or heroku - the principle is this : we'll host, compile and deploy your code. Oh, and we'll also run your unit tests, and if they fail ... no deploy. Its all hosted on Amazon's EC2 clound offering, so can scale nicely.

So it sounded great for us, and to be fair we were only looking for a couple of things - we wanted to push our code somewhere where we didn't have to maintain the hardware.

But after a few days of using appharbor, it slowly started to dawn on me that appharbor is so much more than a hosting platform which compiles and deploys your code.
Its flippin' continuous delivery. With a single click (or git command). And they're doing it - right now. And you can too :)

As someone who's being in the agile space for a while, I'd always looked upon continuous delivery as a bit of a golden unicorn (or do I mean goose ?)- I've heard people do it, and wanted to get there, but the implementation was always elusive to me.
If you think about how hard continuous delivery is - its quite tricky. OK, maybe its not rocket science, but places I've worked in the past would have trouble implementing it.
Thats what is so amazing about appharbor - they've done all the legwork - they've automated the frick out of the whole process.
New IIS site ? Clickety click. Done. New DB ? Mysql or SQL Server sir ? Done. Deploy your code sir ? Push once again to the appharbor master, default master branch, with the build behaviour, with the build behaviour ....

I feel liberated - I don't care about system teams, DB teams, copying code to here, maintaining that CI server there -I just "push once again", and my code is live (and if you want to roll back the code, you just click "deploy" on a previous version. Yay !).

So its been weird - I suddenly have continuous delivery. And all I had to do was sign up to appharbor. Its that simple. It can be for you too : http://appharbor.com .
Their tagline is "Azure done right". I'm sure thats true - but for me, its more than that - its part of the agile journey done right.

BTW ...
@ferventcoder has some great videos on appharbor where he throws the magic of roundhouse & other chucknorris goodies into the mix : http://geekswithblogs.net/robz/archive/2011/02/18/appharbor---azure-done-right-aka-heroku-for-.net.aspx

If @appharbor is reading this - please find a way of pulling that chucknorris craziness into the DB space !

1 comment:

  1. It sounds like your enjoying this all far too much. Get back to the code mine ;-)

    ReplyDelete