At this point, you may have a whole bunch of good ideas for your project, but still be a little unsure as to how they all piece together. Focus has been a predominant theme throughout this blog thus far, and is exactly the approach we should apply here, but this is easier said than done. Just as important as knowing what to do, is knowing what not to do. Steve Jobs once said: “People think focus means saying yes to the thing you’ve got to focus on. But that’s not what it means at all. It means saying no to the hundred other good ideas that there are. You have to pick carefully. I’m actually as proud of the things we haven’t done as the things I have done”.
Before we can identify the finer details of our project, we must first visualise the big picture. This step requires a fair bit of intuition. Gather all of your notes from this chapter onto a single page, and take some time now to scan over them collectively. Try to identify any sort of common themes or directions they may be suggesting. It could be that many of the difficulties developers are experiencing lead to one core problem, or perhaps people are simply unaware of any alternative methods to what is currently accepted. As you pick up on these themes, start brainstorming a few simple, one-liner descriptions of the possible libraries or applications you could write. Don’t let yourself be discouraged if you find that some notes don’t fit into any of your descriptions, it is precisely the aim of this exercise to filter these out.
Once you have collected a few high-level concepts for your project, this is where saying no can get tough. You should really try to centre your attention onto one project at a time, right up until it’s release. This way, your mind can fully focus on the immediate task at hand, allowing you to work most effectively by channeling your thoughts towards one clear objective, while at and away from your desk. Another recurring theme throughout this blog has been the importance of interest in anything you do. Interest is the great motivator, and motivation is crucial when finding time after hours to work on your project. With this in mind, from the few ideas you now have, pick the one that interests you the most. Don’t worry about the level of complexity or familiarity of your options at this point, simply pick the one that you think you’d have the most fun with, and go with it.
Congratulations! You are now ready to start designing and developing your open source project. Don’t throw away your notes from this chapter just yet. Once you have taken your project through to release, you may want to come back to these for your next one.