This is a collection of personal notes for Getting Real by 37signals. You can find the part one here.

There’s a myth that goes like this: we can launch on time, on budget, and on scope. It almost never happens and when it happens quality often suffers.

Personally I’m not very fond of worklogging on particular tickets. When you work on a project together with the team it often happens that you pair-program or even need a helping hand from guys from other teams. If you guesstimated some task for three hours with other people involved, you know, the estimation does not finish within the three hour-limit.

The second problem, at least for me is that when estimation is ‘burnt out’ and yo don’t see much progress, task still has to be done. Now being focused to finish it as soon as possible does not pay off. Yes, sometimes ambition takes over; you’ve got to be aware of that. It’s better to go out, take a break, get back, start working on a different task and then, with a clear mind, get back to the three-hour-guestimated task.

In web development you’ve got to be creative. You’ve got to go into the flow. It’s not 5-9 jobs. In order to create something (a project) out of nothing (concepts, ideas) you’ve got to accomplish small wins and successes, one by one. This is way when I don’t see any progress or I’m stucked with some task, going home, taking a nap, or having a short run works for me. Only then can I continue the work on the problematic task. Perhaps this way I do not always ‘score’ 40 hours per week, yet it is healthier for me and better for my clients’ money.

The ability to change is key. Having everything fixed makes it tough to change. Injecting scope flexibility will introduce options based on your real experience building the product. Flexibility is your friend.

Many motivational speakers encourage to plan ahead. Far ahead. Five, ten, or fifteen years ahead. While starting with the ‘end goal’ in mind (or ‘imagine who’ll be present at your funeral) is good, you should not plan everything up-front. Sure, planing this way is still omnipresent in educational systems all over the world (learning everything ‘just in case’ or ‘up-front’), the paradigm shifted. Now you’ve got to change, too.

Suppose that you’re a designer and mostly dabbles in design and CSS. Out of a sudden you’re company loses important clients and there’s not enough design job for you. The company, though, need you to grasp Ruby on Rails to support your colleagues. Were you able to plan that scenario? Does the goal to learn more about JavaScript matter now? Nope. You can only respond to that external circumstances either by embrancing the challenge to learn Rails or moan about it. Situation, thus, changes required information. Not the other way round.

An open culture that makes it easy to admit mistakes

Selleo embraced many Management 3.0 techniques by adjusting them, not following them blindly. It’s the place where ‘mistakes’ or ‘failures’ can be turned into lessons. Sadly educational system made us believe that mistakes are bad. ‘You didn’t pass the exam, you’ve failed’. Really? Failing over and over again is a natural part of life. From my perspective I can tell you that I’m amazed of how much productive you can be if you work in such open a company. How much you can grow just because the company embraced giving and receiving feedback on a daily basis.

For the first version of your app, start with only three people. That’s the magic number that will give you enough manpower yet allow you to stay streamlined and agile. Start with a developer, a designer, and a sweeper (someone who can roam between both worlds).

Three people are, indeed, enough to deliver a shippable product. The team has to become self-managing, though. No room for a ‘dedicated’ manager, support, or testers, all of them packed separately into cubicles. Manager can be replaced with a leader who, apart from coding, is the first to reach by the client. This does not mean that other team members are not allowed to make a Skype with the client. No, if the leader has to fix some urgent bugs, the other two should, if possible, attend the arranged meeting with the client. Every one, thus, takes the responsibility for the project.

Three is enough. Nine developers don’t deliver a project within one month. Each new team member increases time spent on communication. Treat ‘the three’ as a special operations forces.

Constraints are often advantages in disguise. Forget about venture capital, long release cycles, and quick hires. Instead, work with what you have.

Have you heard of Samuel Pierpont Langley? Probably not. Yet he was given 50,000 dollars by the War Department to build a flying machine. He had everything at his disposal: money, investors, brainiacs, and media following each his step.

Meanwhile Orville and Wilbur Wright, guys without college education, with no money, but with purpose to change the world and make it a better place than they found, were working hard in their bicycle shop. You don’t have to guess who’s forgotten now and who built the flying machine.

When you start reading biographies of other people, inventors in particular, you will learn that they were not geniuses with ‘talents’, but people who turned advertisities into advantages. Sweat, blood, tears and odds to build something other would use on a daily basis.