I don't always know the best way to do something, but so long as I know some way to do it, I can make progress. Tough bugs are just a matter of perseverance. And hey, if it's still not working, just drop the feature. In a personal project, you can do that and nobody can stop you.
One more thing: don't talk about your projects until they're 95% done. Seeking early validation is a poison pill.
> I don't always know the best way to do something, but so long as I know some way to do it, I can make progress.
This helps a lot. Thanks! One of my issues is being able to be ok with feature gaps or bugs. I can solve them if they were created by me, but there are some that need outside help as they are likely bugs in external software or even drivers. But maybe it makes sense to press on and revisit later.
> One more thing: don't talk about your projects until they're 95% done. Seeking early validation is a poison pill.
Is this because you draw attention to an unfinished project, get distracted by feature requests or praise, or something else?
> Is this because you draw attention to an unfinished project, get distracted by feature requests or praise, or something else?
If you get a bad reaction, you'll be demotivated. If you get a good reaction, you'll feel satisfied and not have the drive to keep working. Either that, or you'll devote more and more time to posting on social media, getting less work done in the process.
This is so important, and not only for sw dev but anything.
Anyone who is struggling with completing personal projects, try starting the next one with the explicit goal to not speak about it - with anyone - until it's either complete, or very near. It may be hard to do at first but ultimately worth it.
Lately, I seem to manage 1-3 days of coding on my hobby project after work, provided I have some features where I can see meaningful success within 90 minutes of coding (+ the same time for debugging or researching new libraries, if needed)
Regarding time, I have thinking periods and coding periods. On thinking periods I'll take a 30-60 minute walks and figure things out in my head. On coding periods, I'll spend 1-2 hours in the text editor per day, sometimes more, at whatever time suits me. It's pretty laid back and I don't beat myself up if I stop.
I would encourage you to ask here on HN and maybe also over at reddit (i.e. https://old.reddit.com/r/cscareerquestions) for feedback on landing a software dev job. Getting the foot in the door can be tough, after that it get easier. I wish you best of success in landing a job! :)
Edit: It might be a good idea to mention your current job search in your most visible comments here in this thread. Also, you could mention it on your website! ;)
Now, imagine you've been playing the same game for a couple days in a row. And you're getting kinda sick of it. Not that it's bad, it's got its good moments. You've just had enough of it, for now. Would you continue playing it?
The answer is (hopefully): Of course not! You'd move on to something else you enjoy more. If the game was truly engaging, you'll come back to it anyways, maybe a few days/weeks/months later, when it captures your interest again.
Since a few years this is my attitude towards side projects. The flipside is that you have to accept the fact that 99% of the things you start will never get finished. But that's ok, as long as you enjoy the work itself. Of course that doesn't mean there aren't difficult moments. But there has to be a genuine, intrinsic motivation, which is independent of shipping something.
Keeping a journal/todo-list for every project (I use an infinite bulleted list like Dynalist) really helps, since you can just come back to a project anytime by looking at the end of the list.
The key is to have a project you know is worthwhile and will tickle your curiosity for long periods of time... So even if you burn out, you come back to it.
I go through intense weeks of productive work followed, sometimes, by months of dust covers.
Also it's important to understand that creative energy is hormonal. Some weeks you can't look at a youtube video because you have to do X; some weeks you can't open a code editor if you're not paid for it and just want to netflix and chill. It's normal.
But if the problem at hand is worth your while, if it's interesting to you personally, you'll go back to it and resume intense focus work; maybe with a different approach.
If you totally gave up and you don't want to look at it anymore, it's probably because your inner-senses tell you it's not worthwhile. So you might need some re-convincing or maybe it's just a dead fish, move on. Money is a great motivator, so when the work is unpaid, the value has to come from somewhere else, and that's usually the importance of the project to you personally.
It seems this is a theme in the replies, and it's refreshing to hear because it matches my experience. But it's nice to hear since I was worried this was abnormal.