We all have so many half-baked projects that we don't want to go back to. Still, we have unicorn ideas that we can't wait to start. In turning that unicorns to donkeys we all become developers.
But how do you stay motivated in creating those donkeys? Well here are some of my opinions and learnings.
Side projects are for learning at your own pace.
Most of my programming experience comes from my side projects. I learnt multiprocessing and process queues in python when I thought about gifting my friend a mosaic image. Even though it was a bummer, later it helped me at my workplace. Similarly, I touched on so many things (unfinished) just to learn something new.
What makes learning at workplace different from side projects is working at your own pace. And personally I feel more confident about my knowledge when I learn it in my own way. Most of you might agree on this one, so if you like learning at your own pace, start a new side project around what you want to learn.
No matter how small your side project is, sometimes it helps you or someone else at the right time. Whether it's 10 lines automation script, or 1000 lines of code, when time comes, you appreciate yourself. This may not always happen, but keeping your projects code accessible will help you in solving the problems that you already solved once.
So while starting a new project, just make sure you keep the code accessible. May be push it to a private repository, or make a new secret gist.
Ideas are so powerful, they start small and when given enough thoughts and time, they can solve real world problems.
All side projects starts with some idea. Whether it's useful or not, unique or copied, dumb or smart, but there will always be some idea that you try to implement. Many times one idea lead to another, whether its small improvements or your unique signature, it helps you in exploring many things. With time and exploration, you'll understand if an idea is worth spending your time. Every idea you understand, will help you with some new ideas and solutions. Remember, at the end of the day, it's your ideas that solves the problem and not the number of languages/libraries/frameworks you know.
So, keep pushing your brain to process more ideas, and to generate more ideas.
These are just my opinions on what I learned through many of my side projects. Comment down below your experience and learnings :).