You have brainstormed topics then researched a few.
Now it is time to choose a topic. How do you choose?
You can be logical and choose the topic with the most opportunity or most expected up-side.
I like the "Choose" method from Ryan Levesque for logical niche selection.
This is probably the way to go if you're not experienced.
If you've built niche sites before or you've been on the net for a long time, you know that pretty much any niche is big enough to support one person full time.
This means it comes down to an emotional decision.
Pick the niche that you want to work on the most.
There are few more considerations to help with this decision.
You will be the expert on the topic.
This means that you still:
- Want to read all of the books on the topic.
- Want to read all of the blog posts on the topic.
- Want to try out all of the API calls in the standard library.
- Want to explore third party libraries.
- Want to talk to people having problems with the topic every day.
If any of these are no longer the case, consider abandoning the topic.
Also, consider what it would take for a developer to transition from an intermediate level to being an expert on the topic.
- Are the resources out there sufficient for them?
- What is missing?
- Where would you send them and in what order?
- If you were developing a self-study program or workshop, what would it include?
You will basically have to follow this program yourself, then teach it to others.
Your goal is to create the destination for the topic.
Consider this for a moment. What would it look like and what would developers expect?
- It is the place everyone points to when someone on the team has a problem on the topic.
- It provides a summary better than any other book or website.
- It provides access to solutions more efficiently than even the API docs.
- It provides code that is ready to use.
- It is more helpful.
- It is the place where people that are interested in the topic want to hang out.
If it was the perfect place, what would developers do?
- They want to come during their lunch break to check what is happening.
- They want to subscribe so they don't miss out on new tutorials and new books.
- They care about the topics that will be covered next.
- They want to know more about the people behind the site.
Do you want to build and manage this site? Do you want to be the face of this site?
Take these questions seriously.
Put yourself in the future and see if you like it there.