Friday, February 19, 2010

The secret to my web development productivity...

Can you see the secret to my web development productivity in this photo?




No it's not the red cup of coffee.

It's not the pieces of sticky tape on my laptop.

Follow the cable from my laptop...

and have a look under the desk.

...

... I'll wait whilst you have a look before telling you the answer.

...

That's right!!!

...

it's a joypad.

Using python and pygame, I've made a little app which listens for joystick events, and then deploys the website I'm working on.

With a mash, kick or prod of my foot, up goes my website. Deployed.

Deploy is just a fancy word for 'upload my website, do database migrations, restart app servers, run tests, rollback if there are failures... etc'.


For 5 british pounds, $7.8 USD, or 5.74 euros, you can get one of these joypads delivered to most places these days.

It's giving me too much pleasure pressing it every time I want to upload a new version of the website. Most live updates EVER today - and I have the joypad to thank for it.

The joypad is the secret to my web development productivity. Please don't tell anyone.



update: here's a slightly cleaned up, and slightly silly version of 'Joy to Deploy'...

Check out using bzr revision control:
    bzr co lp:joytodeploy
Or you can view joytodeploy.py source code.


joytodeploy.py deployment_program

for example:
joytodeploy.py deploy.sh with great justice

joytodeploy.py echo 'ninjas are better than pirates'

9 comments:

Sushant Srivastava said...

Cool

Tom said...

what kind of laptop are you using?

showoff said...

cool post!

best deployment tool I've seen so far :)

Vlad Gurgov said...

LOVE THAT THING!
Can you publish your code?

illume said...

hey, updated the post with a link to a cleaned up version of the code. cu.

Archatas said...

out of the box :D

Incubuss said...

My "joypad" is the the thing that decreases my development productivity the most ;-)

Pete said...

How about using a DDR pad instead? Better control and possibility of more options. Shows up fine in pygame.

Charles Roper said...

How does the voice recording device fit into your workflow?