I found that there are many people who are learning in computer science programs stuck on in both finding jobs. Even they have attended to several classes, online courses, bootcamps, I found many people stuck on delivering things or even starting out new ideas.
I think one way to achieve excellence on tech field is to “do more things”. But in the world where are many things was done, even I felt sometimes having “a stuck” on starting something. These are some principle I found useful when trying to do side project.
- Objective — setting a correct goal will lead to less stress e.g. do things for learning but really trying to build thing that is product-market fit would not be right expectation.
- Start small, iteration matters — it’s okay to have a high-concept idea like Christopher Nolan movie but starting that things right away is painful. We can try prototyping then make improvements as iteration.
- Use mix of comfortable things and new things — this is specific for learning projects. Having something we know and try to learn is the way to expand your comfort zone. This can be either technical concepts or tools or even domains.
- Consistency — I think it’s ok to move on as long as we’re building things along the way. Useless or useful? That’s doesn’t matter.
Let’s take some examples from these principle. I’m not sure if these are good examples but I’m sure that you would understand how made some moves.
- Make svg template for user ranking e.g. chess.com (Knowledge on API + 3rd-party API Integration + SVG Template)
- Implement MCP server to interact with google sheet (Knowledge on google sheet API + Concept on MCP)
- Make component library for component that used in the map (Map library + fundamental on web frameworks)
Aside from those concepts, I think the key factor for doing side project is to have fun while doing it. I personally think that doing side project with money as first principle would lead to toxic relationship on yourself (too much focus on outcome or lead to burnout). In my case, I’m interested on exploring new domains that could be stepping stones to other opportunities. Either it goes well or flop, I still learning something from it.