In the previous post in this series I introduced two of the tools I use to manage the development and deployment environments for this blog. Today I will share with you my Fabric deployment script and give a quick overview of what each action does.
At Europython 2008 I gave a presentation of how we were using Capistrano for deploying the Pylons based widgets.opera.com site. When rewriting this blog in Django I decided to look again at more pythonic alternatives. This is the first part of a two part blog post, in this part you will learn the tools I use to create a sane, reproducible deployment. The second part will tie the tools together with version control to perform one click deployment.
Most developers will probably agree that the shower is a magical place. During a morning shower you're (usually) alone, refreshed after a good nights sleep and don't have the noise of a whole day's thoughs going on in your head. Strange ideas can come along during this part of the day and here is a brain dump of one an idea I recently had, using the Reddit engine to prioritise a Scrum backlog.
When I moved to Norway one of my favourite chocolates that I couldn't find here was the Terry's Chocolate Orange. Every Christmas at least one present from my family is a product from the Chocolate Orange range. In the build up to the easter holiday over here a very similar looking product started to appear in a few stores. I had to investigate...
This week a fellow colleague posed the question of whether to return null or throw an exception when looking up an entity from a repository by id. This blog post describes in more detail why I generally prefer to throw an exception.