Getting Real is one of the books that helped me look at software development from a different perspective. The title of the book is “The easier, smarter and faster way to build a successful web application”, but it’s really the manifesto of 37signals, a web application and design company that’s been influential to the whole community with successful products like Basecamp and by creating the Ruby on Rails web framework.
The book is provocative and explains 37signal’s philosophy about creating simple solutions. You’ll read suggestions like “Keep it simple, keep it small” or “Perfect is the enemy of good, do it quick. Not perfect, just do it.” I can tell you that these principles apply to graduate school as well :)
Some of the lessons I’ve learned are:
- Ignore details, perfect it later
- Constraints help you figure out your priorities, guide you to creative solutions
- Your advantage is agility, ability to change, lower cost of change by building less software
- Bigger problem isn’t scaling, it’s getting to the point where you have to scale
- Take sides, don’t try to please everyone
- Best programmers are the ones that can determine what just doesn’t matter
Each chapter is short and simple, and contains good advice. They were kind enough to provide an online copy for free if you’d like to start reading this book.
There’s a funny anecdote in the book: They launched Basecamp without the ability to bill customers. They had 30 days to figure it out, which forced them to come up with a simple solution. I think it’s really a bold move :)
In a talk at Startup School, a developer asks a question:
Q: I’m in front of my computer 10-14 hours a day, supposed to be working on writing code, but I spend a lot of time distracted surfing the web. What advice can you give?
The reply he gets is:
I think the problem is you’re trying to work 14 hours a day. Who the hell gets anything productive done for 14 hours a day? Try working 5 hours a day, if you had only 5 hours a day to spend on something, you’d focus your time a lot better.
I’ll do my best to change my lifestyle according to this philosophy.