Getting Real is a book by Basecamp, full of advices for anyone building a web app.
This is my second time reading it, and I felt I’m seeing some lessons for the first time. So this time, I wrote them down so I can refresh my memory later on.
This is my own list from the book. And I highly recommend you read it if you’re building a product. And btw, the book is completely free.
- Under-do your competition: Do less than your competition. Less means: less features, less options… Solve the simple problems, and let others solve the bigger ones.
- Build software for yourself: Start by solving your own problems. If you have a problem, there are likely hundreds of thousands others in the same boat.
- Fund yourself: You can get something up and running without external money. Invest in yourself.
- Time and budget are fixed. Scope is flexible: If you can’t deliver something on time, do not push the date, reduce the scope. Time and budget should be fixed. Only the scope can change.
- Pick an enemy: If you’re building something and have a competitor already there, pick it as an enemy. Then remove everything bad about your enemy in your product. Keep it simple, anti-enemy.
- Be yourself: Differentiate yourself from bigger companies by being personal and friendly. Smaller companies are closer to the customer by default.
- Define the one-point vision for your app: What does your app stand for?
- Ignore details early on: Work from large to small. There’s plenty of time to be perfectionist, later.
- Don’t waste time on problems you don’t have yet: Do you really need to worry about scaling your app? Do you really need to turn it on 12 servers? Don’t waste time and energy optimizing something you’re still not sure about it.
- Hire the right customers: Find the core market for your application and focus solely on them.
- Make opinionated software: Limit features. Don’t try to be all things to all people.
- Essentials only: Write what you want your product to be, then remove half of it. Repeat this until you have a list of essential features. The majority of features are nice to have but not essentials.
- Build software for general concepts, then encourage people to create their own solutions.
- When you receive a feature request, read it, then forget about it. Say no more often. Don’t be a yes-man when it comes to feature requests. The important ones will keep coming. They will remind you until you can’t forget them.
- Ask people what they don’t want in your product
- Get something real up and running quickly. Nothing beats something real and working.
- Work in iterations. Don’t expect to get it right the first time. Let the app grow and speak to you.
- Avoid Preferences: Decide details so your customers don’t have to. Preferences are a way to avoid tough decisions.
- Test your app via real world usage. Nothing beats real people using your app.