Work in iterations

As Chicago software firm 37 Signals say in their excellent book ‘Getting Real’: “Don’t expect to get it right the first time. Instead of banking on getting everything right upfront, the iterative process lets you continue to make informed decisions as you go along. ... You don’t need to aim for perfection on the first try if you know it’s just going to be done again later anyway. Knowing that you’re going to revisit issues is a great motivator to just get ideas out there to see if they’ll fly.”

If you build or deploy things your users don’t need, you aren’t just wasting your time, you’re wasting your users’ time too. How many times have you found yourself wading through unnecessary content and features looking for the one thing you want to find? Streamline your platform by asking users what they need first, and then showing them as much as you can before and after you deploy it – preferably with formal user testing.

Don’t try to do everything at once. Give yourself the space to bite things off piece by piece, solving little problems with lightweight technologies and adding to your feature set incrementally. Your project structure and technology strategy should be designed to give you the flexibility to break problems down and part-solve them wherever you can.

Getting everything right all at once is an impossible task. The trick is not to try.