I've recently overheard that one's developers' New Year's resolution was to finally finish those pet projects that have been sitting on the back burner for far too long.?
Let's face it: we've all been there, starting a new project with excitement and motivation, only to lose steam and move on to something else before finishing it.
I used to l deal with this problem massively, so I revisited how I work on my pet projects some time ago. I've found opinions suggesting the cause may be procrastination, time deficit, losing interest, etc. Some of what I read didn't apply to me personally, and some I've found helpful.
Let's look at some common mistakes we make starting a new project:
- Lack of clear goals. Not having a clear idea of what you want to achieve with your project will make it challenging to stay focused and motivated.
- Starting too many projects at once. We have a limited amount of free time and attention we can spend on our side project.
- Not breaking the project into smaller tasks or underestimating tech challenges. It can feel overwhelming and difficult to make progress if the tasks are too big. Especially when it involves new language/tools/frameworks to be used, we underestimate the time we'll spend solving a task. This results in not seeing any light at the end of the tunnel.
- Not prioritizing essential tasks. Following the later point, sometimes we spend too much time on the part of architecture/tool that isn't that important. This leads to running out of time or motivation to complete the most important tasks, some of which were actually the reason you started the project in the first place.
- Not using a schedule and a flexible plan. Not having a regular time set aside for working on the project can make it easy to put it off or forget about it. Having a too planned-out schedule limits your ability to adapt to changes or unexpected obstacles what makes it hard at finishing the project.
- Not eliminating distractions. Being easily distracted by social media, email, or notifications can slow down progress on the project. This is our free time, so it's normal to spend our time on other hobbies.
- Not seeking feedback and support. Not getting feedback from others on your work in progress can make it difficult to identify and fix problems and improve your work over time.
- Not rewarding yourself. Not rewarding yourself for completing tasks or milestones can make the process less enjoyable and make it harder to stay motivated. Without keeping track of progress can make it difficult to see how far you've come and how much further you have to go.
Does any of these mistakes sound familiar?
Being young, I didn't want to pick up "work" practices as I wanted my project to be all rock-n-roll. By now, I've developed a set of steps I follow to increase my chances of reaching the goal of my personal project.?
- Research. Do your research! There were times when I started a project from an idea without a web search first just to find out there is a repo with half what I'd already developed.?
- Goals.?Before you begin a new project, take the time to define clear and specific goals for what you want to achieve. It will give you a clear direction to work towards and help you stay focused. When doubt may come, you'll know why you've started the project and how it will benefit you or others.
- Smaller tasks. Large projects can feel overwhelming, but you can make progress one step at a time by breaking them down into smaller tasks. Dedicate some time to create a plan. One can use different boards or frameworks, but don't rush into a project with no plan and one giant task.
- Schedule. Set aside specific times each day or week to work on your project. This will help you stay on track and make progress. But keep it flexible. Remember, it's not a sprint; it's a marathon. Unless you're trying scrum :)
- Build core first. Focus on the most important ones and ensure they are completed before moving on to less important ones. Numerous times I've seen projects halfway finished because there is a library one decided to test or an idea to check. Make it to the MVP!
- Feedback and collaborators. Get feedback from others on your work in progress. This will help you to stay on track and improve your work over time. And do reach out for assistance! No person is an island. Others around us may share your passion or have the necessary expertise you may lack.
- Reward yourself: Reward yourself for completing each milestone. This will help you stay motivated and make the process more enjoyable.?
Does this sound less fun? It should. By now, there are more chances you may reach the goal.
Digital Transformation || ML Engineer || TedX Speaker || Aspiring Researcher
1 年Thank you for the post. For me, finding the motivation for pet projects is tricky, and keeping it long enough to follow through with it is even harder but I'm looking forward to implementing this practice, especially the collaboration and feedback part!
Former Mathematics Lecturer
1 年Thanks you for your valuable and useful sharing.
PhD, Principal Data Scientist || O'Reilly Book Author || TEDx/PyCon/GITEX Speaker || University Lecturer || LangChain, Large Language Models (LLMs) and Generative AI || 30K+ followers
1 年A version for medium, where I focus more on resources and a bonus part: https://medium.com/@ivanreznikov/say-goodbye-to-unfinished-pet-projects-1725c0fe1655
Next Trend Realty LLC./wwwHar.com/Chester-Swanson/agent_cbswan
1 年Love this.