Recently I had a period of intense travel working in different cities around Europe. I spent much of my time in stations and airports so that I could work with several teams each week, and Saturday was my only day off.
In preparation for this adventure, I decided to set some objectives for myself. I didn't want all these business trips to turn into something frustrating or stressful. My experience traveling had helped me understand my priorities for how to live comfortably while traveling for business. I set four objectives:
- Have a social life;
- Continue to study;
- Keep up my physical training for swimming;
- Eat healthy food.
On this trip, I take my usual suitcase and backpack (fig 1). I pack to fulfill my objectives: enough pants, shirts and sweaters for work and for possible dinners out; a couple of books to study or use as reference with the teams I work with; all the things I'd need for swimming and working out: swimsuit, bathing cap, a mini hair dryer, a light terrycloth robe for the pool, all folded up neatly in the pouch of the suitcase, plus a sweat suit and sneakers for the gym; because my Coach would have my hide if he saw me out of breath after my first lap in the pool! There's still some room left in the suitcase. Perfect, I can bring along some apples and rusks so I can bypass the hotel food, at least for the first day. Toiletries, my travel umbrella, everything in my suitcase is organized efficiently. My laptop, a notebook, and a book to read on the way go in the backpack. I'm ready to go.
In the first week I'm off to Milan and then to Bari. Here we go.
My days are full of pre-planned activities: yoga in the morning, then rush to work with the team, followed by swimming laps in the pool or working out in the gym, rush back to the hotel to study, then bedtime. Each day that goes by is full and organized and efficient, no matter in which city I find myself.
It's Friday: I'm heading home. When I'm almost to the train station in Rome, I hear from my fellow passengers that there's a taxi strike today. Not all over Italy, just in some cities. Taxis were running in Bari, but not in Rome. I hadn't heard anything about it.
At 11:45 pm I arrive in Rome. It's raining and windy. There aren't any taxis, the metro isn't running. There are a few night buses and I've got a heavy suitcase and a heavy backpack. I take out my travel umbrella. I manage to catch the only bus that goes out to my neighborhood, the last one for the night!
The bus stop isn't far from my house. But once I get off, I realize that before I can climb into my warm, comfortable bed I have to first climb up two long flights of steps to get up to my street. Normally I wouldn't bat an eyelash, but tonight things are different. The wheels of my top-of-the-line suitcase weren't designed to roll up the old flight of steps and my backpack is heavier than usual: three new hardcover books from the bookshop in front of the office in Bari that I couldn't resist buying. But I don't give up! I start up the first flight: one step at a time.
The wind and rain are so strong that the umbrella is completely useless. I'm soaking wet and I struggle to drag my suitcase up every step. Just look what I'd gotten myself into! I'm only halfway up the steps. Step by step I start experiencing a series of revelations. "Why on earth did I bring four books to study when I've only been able to get through forty pages of one book during the entire week?" and "Why did I bother to bring all these pants, shirts and sweaters for each and any occasion when I didn't even go out once?" Then, thinking about the sweatsuit, t-shirts and sneakers warm and dry in the suitcase while I was more sweaty than wet from rain: "Was it really neccessary to go to the gym? To pay a fee to work out and take up a half hour to get there and a half hour to get back?" "I even brought a hair dryer when I could have used the one at the pool". Out in the rain, one step at a time, common sense and simplicity surface spontaneously. My backpack is heavy: "and those three books I bought in Bari on the last day!"
The rain and steps carry me home. When I get there I'm exhausted and angry.
I spend Saturday picking out a new suitcase (fig. 2). I want a light one this time! I have to find some way to carry less. I still hadn't understood the lesson from Friday night, but I followed the instincts of my aching arm.
Preparing for my next trip, the new suitcase was an interesting challenge: what shouldn't I bring? Would I have to give up one or maybe all of my healthy objectives? Then it would be easy to reduce the weight and volume of my luggage. But I decided not to do that. I wouldn't sacrifice a single one of my objectives.
I decide to change everything. I don't want to reduce weight at all costs. I had to reach my objectives in a simpler, lighter way. Isn't there an simpler way to pack a suitcase? I remember the way I felt on those steps out in the rain, dragging the suitcase and the backpack. Instantly I get some ideas. Shirts for the first two days only. "There must be a cleaners in Bari or maybe I'll buy a shirt there." Not more than one book. If I finish it I could always print out some articles at the office. With the teams I can present suggested reading using Internet. And I can simplify my work-out and do it in the hotel: by not going to the gym, I'll save time going back and forth, save money for the entrance fees and I won't have to bring the sweatsuit and sneakers. With the money I save I can buy gym shorts and super-thin flip-flops for the pool. I can ask my swim Coach to give my a variety of exercises so that I can do more swimming if I want to. The notes feature on my cell phone is perfect for taking down the title of any book, giving me time to reflect on whether to buy it in Rome or online. Simple. Use mind power.
I pack my new ultra-light suitcase with an air of challenge. There's still room for a mini umbrella. But this time I don't pack it. I think about how I got soaking wet no thanks to my umbrella. So I leave that extra room in the suitcase! "If it rains, I'll manage, I'll figure something out, I don't want to carry any extra weight". Simple. Use mind power.
The next week in Bari is full of discovery. While looking for a cleaners I meet some people who tell me where I can find an open-air market to get some good fruit for my diet. As I'm heading over there, not in any rush to get from one planned activity to the next, I happen upon a homemade poster for drum lessons held in the evening. Not having to go back and forth to the gym, I now have some free time and so begin my first conga lessons. I meet some friendly people there and we have a great time going out together at night - even out in the rain, without umbrellas, figuring out how to stay dry as we go along.
Not only had I achieved all my objectives, I'd had fun doing it and I was more satisfied too. Incredibly enough, by emptying my suitcase I'd let a lot of things into my life. It's a "magic suitcase": the less you pack the more fits in!
When I get back to Rome I'm enthusiastic but not fully satisfied. I want to test out more of the possibilities of the "magic suitcase". To figure out solutions that are simpler instead of easier. But it'll take another two weeks of self-observation to completely eliminate the new, ultra-light suitcase, meeting new people, exploring and experimenting (fig. 3).
As a metaphor, the suitcase is our system of behavior - it could be our software system, our way of making decisions, or even our refrigerator at home - and trips are the requirements/objectives that we have to achieve. The lighter the suitcase, the less effort and cost is expended. The lighter the suitcase, the greater the agility and effectiveness of the solution, on the condition that the solutions are simple, and not easy.
The metaphor of the suitcase suggests how often we look for easy solutions instead of making an effort to find the simplest one. It's easier to put a couple of IFs in our code in order to deliver a feature on time. And it's easy to think that we can take care of all of our present and future needs by adding things to our suitcase.
Why do we tend to pack our suitcase with the easiest solution? Often our fears of uncertainty and the illusion of being able to control everything leads us to fill up our suitcases with the things that protect us from those fears. The more fears there are, the more the suitcase grows by weight and volume. The larger and heavier the suitcase gets, the greater the effort and cost to carry it.
These efforts and costs increase in a terrible way when unexpected obstacles arise.
Far too often in the field of software development the programmer generally reacts to uncertainty by pumping up his arm so that he can carry heavier and heavier suitcases. And what happens is that programming degenerates into a useless and infinite weight lifting competition.
"I can apply these ten frameworks just to do this simple data entry," "I can fulfill this requirement in one pomodoro just by using a couple of IFs" "I can manage a program of a million lines of code all by myself," "I can fix every bug in the log in a couple of pomodoros using a different table for each kind of transaction".
But in truth these "solutions" are really ways of complicating the systems. They make things heavier, and when the day comes to struggle up an endless flight of steps in the rain that same programmer will have to face the consequences.
How do you choose what to pack in your suitcase? Well, thinking about that night out in the rain on those steps, it was simple to find effective solutions to achieve my objectives: by using mind power not body power. Ask yourself: Is putting this item in the suitcase the simple solution or an easy one?
The metaphor of the suitcase has helped many teams improve their processes and increase their results. This metaphor always inspires many and various reactions.
Alessandro, Programmer: "My software is a huge suitcase that I've packed with any and every possible framework out of my fear of taking responsibility."
Giorgio, Gourmet :-) "My fridge. Every week I fill it to bursting. Always the same things. I live by myself so I end up eating the same things and throwing out half of the stuff I bought. But every week I still keep filling it up with the same things."
Mark, Manager: "My suitcase is full of my need to control everything and everyone. I have to micro-manage everything and so I'm not able to innovate in a simple way."
Fabio, Development Manager: "I've begun to realize now that I don't do TDD. TDD is as small and light as a fanny pack."
Stephen, Anti-IF Supporter: "Refactoring is being able to take the same trip over and over with a suitcase that's smaller and smaller."
Luca, Manager: "To make my ROI magic I don't need to keep cutting costs, but sometimes increase them if they allow me to find simpler solutions."
How can you make your suitcase into a magic one?
Note. Don't get upset with the airlines who charge you a fixed fee for every checked bag and have an extra charge based on luggage weight. They are giving you the opportunity to make your suitcase