Sprinkle – Automated Infrastructure for the Rest of us

by Matthias Marschall on November 26, 2009 · 2 comments

by Photomish Dan

Automatically setting up and maintaining my servers is a must for me. Only if everything I install and configure on a server is scripted I’m sure I know what’s there and that it stays that way. Having automated infrastructure enables me to schedule a critical setup change at 3 am and be on the safe side even though my brain might already be half asleep. After having written a ton of capistrano tasks (and creating a mess with it), looking into puppet and chef, writing my own tool (carpet), my colleague finally gave Sprinkle a try.
Click to continue…

Kanban WIP Limits – The Fine Art of Focus

by Matthias Marschall on November 13, 2009 · 4 comments

by yellowcloud

If you want to get things done, focus is the key. Single piece flow (focusing on only one task at a time) might be too extreme, but limiting your work to your capacity is mandatory. No matter whether we’re talking about a team, an organization or about your personal productivity.
Click to continue…

Simulating a Scrum And a Lean Project In The Classroom

by Matthias Marschall on November 10, 2009 · 2 comments

by Kiwi Flickr

I will continue my course about agile methodologies at the University of Augsburg with both a Scrum and a Lean project simulation. The Scrum simulation will introduce the students to concepts like User Stories, Backlog, Iteration, etc.
After doing lots of Gantt Charts, Use Case Diagrams etc. in the waterfall simulation, it’s time now to break down the requirements into small and independent User Stories. The User Stories shall then be sorted by priority: The Backlog comes into existence.
Click to continue…

Back to the roots: Bridging the Deployment Gap

by Dan Ackerson on November 3, 2009 · 0 comments

Matthias and I started this blog over a year ago because we had first-hand experiences with the rift between developers and sysadmins. We knew this was a lose-lose situation not only for those directly involved, but the companies they were working for as well. We’ve described many real-life examples of how to overcome this rift, but were never sure how these ideas were resonating out there with our fellow colleagues. How many developers had moved into the operations realm? How many sysadmins knuckled down and wrote end-user code in a pinch?
Click to continue…

Simulating a Waterfall Project In The Classroom

by Matthias Marschall on October 24, 2009 · 1 comment

by Diego_3336

The first simulation in my course about agile methodologies will be waterfall style. Here’s how I plan to do it.

Before we go into the details of the waterfall simulation, I want the whole group (around 20-30 people) to come up with requirements for the product to build: an online office suite (maybe the most boring but also the most well known thing in the world). I plan to gather the requirements upfront because I do not want to burden the first simulation with this additional task – all simulations should start mostly from the same starting point. The team will be free to document the requirements as they like, no special format required (those special formats of recording and managing requirements will be part of the individual simulations). When we have a good set of requirements, we’ll start with the first project waterfall style.
Click to continue…

Kanban vs. Iterative Development

by Matthias Marschall on October 17, 2009 · 5 comments

by &_yo

Agile methodology builds on the concept of iterations – time boxes – in which you create a piece of working software. Each iteration starts with a planning meeting where the team takes stories from the backlog and commits to the sprint goal. If you use a tool like Pivotal Tracker, you even get emergent iterations – the tool automatically cuts your backlog into iterations based on your team’s velocity.
Click to continue…

Picture by WolfgangM

Currently, I’m preparing for teaching my next course on Agile Methodology. Again and again, I wonder what is the single most important thing my students should be able to take with them after four full days. One of my core messages is definitely that agile is more about principles than about practices. If you absorb the principles you have a good chance to get it right no matter which practices you decide to use or not. But, even teaching the underlying principles seems not enough to me. Tacit knowledge is far too important to be completely ignored in any course. So how can I transfer tacit knowledge in a course setting?
Click to continue…

Giving up – or not?

by Matthias Marschall on October 3, 2009 · 4 comments

Image by bennylin0724

“Never give up” is an advice we hear far too often. We’re taught that giving up is a failure. But nothing could be further from the truth if we’re caught in a dead end. If there is nothing left to reach, why should we bother to go on? It’s a waste of time and energy trying to move mountains. Better give up and go for something worthwhile. It’s the only reasonable thing to do. Not giving up is a problem. Wasting your energy where nothing can be gained is a bad decision. Giving up and focusing your power to reach worthwhile goals is the smarter strategy.
Click to continue…

Pair Programming: Staying within “the zone”

by Matthias Marschall on September 25, 2009 · 1 comment

by a2gemma

Today I spent the whole day debugging an elusive concurrency problem in ruby on rails running on JRuby. We start some threads during the web request and, usually sooner than later, all our database connections are blocked.

Getting deep into the details of multithreading, connection pooling and the like is nothing I enjoy doing. Especially not alone. I was really glad to have a buddy for the job.
Click to continue…

Open Communication Stops De-Motivating your Team

by Matthias Marschall on September 17, 2009 · 1 comment

by Mykl Roventine

Instead of motivating our teams, we should simply stop de-motivating them. Everyone you work with is highly motivated by default. But, bad information policies, countermanding orders or simply ignoring ideas will turn a highly motivated team member into a disgruntled road block.
Click to continue…