PivotalTracker: The Simple Steps To Start a New Project

by on September 15, 2010 · 2 comments

PivotalTracker is a great tool for organizing your work. No matter whether you work mainly in software development, operations, or in a shared DevOps environment, PivotalTracker keeps you up to the task. Over the last couple of years using it, we’ve seen some patterns for setting up projects and organizing stories with tags.
[Read more…]

Chef: RVM + Ruby Enterprise Edition as Default Ruby

by on September 7, 2010 · 15 comments

The opscode chef bootstrap installs Matz Ruby on the node automatically. There are cookbooks for installing ruby enterprise edition on a node, but they create a separate Ruby “universe” on your box: You will have to be very careful how you install gems to make sure they are used by either the default Ruby or by REE. As this really bothered me, I created a little cookbook which installs Ruby Enterprise Edition as the default Ruby using Ruby Version Manager (RVM) and Chef. This gives me the best of both worlds: REEs stability and speed as well as a sane way of managing gems.
[Read more…]

How to Deploy Ruby on Rails With The Opscode Chef Application Cookbook

by on August 25, 2010 · 2 comments

I already wrote about how to get started with the Opscode Chef Platform. In this article I want to show you a very elegant way to deploy a Ruby on Rails stack with Chef. One of the strengths of Chef is the decent set of available cookbooks. @jtimberman does an especially excellent job in writing them. His chef cookbooks really help you to configure your systems neatly. One of his cookbooks is the Application cookbook. It enables data driven application deployment. Currently, it supports Ruby on Rails apps. The preferred stack is currently Matz Ruby with Unicorn, but, in a later post, I’ll show you how to use it cleanly with Ruby Enterprise Edition (REE).
Let’s get started!
[Read more…]

A/B Testing with Webrat

by on April 23, 2010 · 1 comment

It all began a year ago. We wanted to introduce a new navigation bar, but gradually, gaining feedback (and confidence) that it was the right upgrade for our users. My idea at that time was a random cookie which would show 20% of our users the new navigation while giving them a separate google analytics code for tracking their visit. And it worked well. Within a few weeks we were able to increase the cookie up to 100% and then simply throw it away.

GUI Based A/B testing in a custom CMS

[Read more…]

Why your boss will love Capistrano

by on April 9, 2010 · 5 comments

Scaleability is a term near and dear to a CTO’s heart. It’s also the most important factor in growing a website. If you want to avoid the “fail whale” at right, you have to be able to scale your application to run on hundreds (and, if you’re really lucky, thousands) of servers. Let’s take a look at the typical scenario of ordering a new server.
[Read more…]

Continuous Integration with Hudson

by on April 2, 2010 · 2 comments

Wow – a big, fancy phrase that may seem intimidating at first. Let’s break it down: “Continuous” meaning constantly, all the time; and “Integration” – building smaller parts into a larger whole. “Constantly Building” ? Well, that’s pretty darn close. So, what are we constantly building here? Sure, we’re churning out new features regularly, but I’m not talking about development. I’m referring to the automated building, deployment & testing of our website.
[Read more…]

A Kanban Board for Features

by on September 4, 2009 · 0 comments

We’re using PivotalTracker as our agile planning tool. It’s great for maintaining a backlog of prioritized user stories and managing the flow of stories within an iteration. We’re really happy with it. But recently a new requirement came up: How can we manage our bigger features? How can we make sure all the stories we realize help us reach an overarching goal? The solution is to use an offline Kanban board.
[Read more…]

Agile Project Management Tools Evolving: Kanban FTW

by on August 14, 2009 · 11 comments

It’s been a while since we were using Thoughtworks Mingle as our agile project management tool. We liked their Kanban style Card Walls View a lot.

Nevertheless, we switched to PivotalTracker because of its superior support of prioritizing stories in a backlog and automated iteration planning. Unfortunately, PivotalTracker does not offer any Kanban style card wall view. Interestingly enough, Mingle has now caught up and is offering the possibility to “Prioritize and rearrange by drag-n-drop to reflect the actual order of execution of your stories“.

Kanban FTW

[Read more…]

Kanban for Lean Project Management with agilezen.com

by on July 16, 2009 · 8 comments

Zen is a brand new Kanban tool for lean project management. In contrast to PivotalTracker, which concentrates on automating iteration management for SCRUM like projects, Zen’s main view is a story board. The funny thing is, that I preferred the stroy board view in Mingle over the list view provided by PivotalTracker before I started to use Pivotal. I used to dream up a tool only featuring a great story board. Now it’s reality.
[Read more…]

Dev and Ops Cooperation

by on July 10, 2009 · 6 comments

John Allspaw and Paul Hammond did a great presentation at Velocity 2009 about the tools and culture at Flickr, which enable them to do 10+ deploys per day.

My favorite quote is:

Ops’ job is NOT to keep the site stable and fast [but]
Ops’ job is it to enable the business (this is the dev’s job too)
The business requires change

They go on by presenting the dilemma of discouraging change in the interest of stability or allowing change to happen as often as it needs to. This is where they introduce their tools and culture for lowering the risk of change.

In this post I want to share with you how we use some of the tools John and Paul mention.
[Read more…]