When I’m working on a project I always write a few things on the wall. I write short phrases which represent decisions my team has already made about what is important. When I am evaluating a feature or a design I can always look up and check to see if the work we’ve already done helps me answer my question. It helps keep me on track, it keeps things simple, and I’m a total believer in this system.
Whatever you want to call ’em — I always write them on the board/wall/desktop wallpaper–anywhere and everywhere. They help me quickly re-orient myself and make decisions faster. I’ve done a lot of the mental work up front and so now I can leverage it every day.
For example, think about the Amazon Kindle. One of their goals seem to be: to make a seamless replacement for the paperback book (should be as easy to use, use in the same way, etc etc etc). You can phrase this principle in a lot of ways (and how your phrase can make your principle vastly more or less useful), but for now we can stick with “like a paper back book.”
Decisions about features can be really complicated because they come with a lot of pros and cons. For our Kindle example — perhaps there could be a feature that would allow you to read the local newspaper of wherever you are in your native language. Lots of users have expressed interest in such a feature. It would come at a cost of battery life, and a price increase. But is this feature right for the Kindle?
Having already decided that the Kindle be “like a paper back book” will help us decide about this feature. It will ground our discussions, and keep us from having to do all of the work about why being “like a paperback book” is important.
On the surface location aware newspaper sounds like a fantastic feature that users want — but does it really fit the product? We can also compare other features that might make more sense for the product (we can only build so much per cycle). Or maybe we should change the feature so it better suits our product and falls in line with our principles.
Products rarely only have one principle, and it is super important to prioritize them. In or Kindle example, another principle might be to “leverage the Amazon store” which might be less important than making the Kindle “like a paper back book.”
When talking about a feature if you find yourself saying that a given feature supports more than one principle, especially the highest priority ones, you can feel really confident that it’s a great feature without much mental effort at all. If you find yourself trying to shoehorn a feature into a principle and it’s not working, maybe the feature isn’t right. If you’re having trouble with a lot of your features maybe you’ve strayed from your product. Maybe the reason is because you’re features belong to an entirely different product (Kindle Fire for example?) and that can be really exciting.
Leveraging these principles can be great to keep you grounded and productive. They can also help keep your entire team on the same page during feature discussions, and making decisions towards the same ends.
Tips for great principles:
- Don’t have too many
2-4 seem right. It’s best if they are memorable, but at worst they should be glance-at-able
- Prioritize them
You’ll get more out of this process the more you put into it. Know what’s more important.
- Be specific and concrete enough
Too specific or too general and they don’t help analyze every question
- Make sure everyone is on board
Part of the power of this process is that it can ground conversations and get everyone in the same direction. This only works if everyone agrees on the principles. This process allows you to do work up front to save time and energy later, your team must still do the work to come to a consensus.
This isn’t a new idea or even specific to (software) product development — it’s seen all over the place: frameworks in design, axioms in mathematics, the Bill of Rights to the US Constitution. Fixing as truths what were complicated decisions (that have been made and agreed upon by all parties after much discussion and thought), allows us to then focus our mental energies on different challenges. It’s powerful and allows us to make even more complex decisions built atop these foundational ones.