TFA has some good points. I'd go even further on the situation where you quit your job to work on an indie game -- if you ever find yourself doing this, and you've never built a game by yourself before, you'd better have several years of runway.
> Q: You said you worked on many projects before Braid which didn't quite get completed. What was special about Braid which made you complete it?
> A: What was special was it had been a long time since I'd finished anything on my own, and I sat down and decided that "Dammit I'm going to finish something this time". And, "To that end, so I can finish this, I'm gonna make something that is technically pretty simple"...
For some of us, it's REALLY HARD to complete a side-project while working full-time job. For most of my career I had completed a real game only when it was for a job (or for a client) and I worked on it full-time.
The single reason I hadn't made a game as a side project was because I'd quit before I finished. I finally figured out something that worked for me, and it was counter to all the advice I'd heard. I'm sure this is different for other people, but for me the key to working day after day consistently (not quitting) on a project while working full-time was to eliminate all the "shoulds".
When my conscious brain is always telling myself that I should do the project a certain way, my subconscious rebels and suddenly I become unproductive. There's a ton of great advice out there such as: "Don't reinvent the wheel, build your game not a game engine." The problem is sometimes my subconscious wants to build the game engine, not the game. I can coerce it to do the right thing when it's for an employer, but it's a different story for a side project.
Ever since I stopped "should-ing" myself, I've become much more consistent and productive on side projects. If you want to make games on your own as an engineer, but are having trouble forcing yourself to spend a couple hours every day on it, then I'd suggest that you try to just code whatever the hell you want to code instead of the thing you're supposed to code. You may find, like I did, that it's better to gain some coding velocity, because this velocity gives you the momentum fly over humps that you weren't able to overcome back when you were trying to start working on your game from a standstill.
Yeah, totally resonates with my experience. I went further and have several, completely independent side projects. That is: Build a game with a custom engine (doing that since 2019 now), do some stuff on my car, do some stuff on my pc, write a blog post from time to time or simply just play games. And I'm alternating between them, as my brain pleases. That, personally, gives me the counter-balance to my job as a software engineer, where I HAVE to stay focus on ONE thing for several hours/days.
This is more or less how I got into programming, I just liked games and wanted to make mine! By the time that I had started to be skilled in writing code, I realised that I found it more interesting to build the foundations (graphics, physics, logic, AI, all those systems) compared to the game itself. It bothered me for quite a while that I didn't manage to finish anything very substantial (a lot of small jam games and whatnot, nothing commercial), but eventually I reconciled with the fact that I'm just interested in building the engine, not the game. And that's all fine!
I can relate. Similarly, I ensure I put some time into my side-project on a daily basis, but don't coerce myself into very narrowed down optimal path. Once I gain momentum, I have easier time tackling the not-most-fun "shoulds".
> Ben Fountain did not make the decision to quit law and become a writer all by himself. He is married and has a family. [...] “When Ben first did this, we talked about the fact that it might not work, and we talked about, generally, ‘When will we know that it really isn’t working?’ and I’d say, ‘Well, give it ten years,’ ” Sharie recalled. To her, ten years didn’t seem unreasonable. “It takes a while to decide whether you like something or not,” she says. And when ten years became twelve and then fourteen and then sixteen, and the kids were off in high school, she stood by him, because, even during that long stretch when Ben had nothing published at all, she was confident that he was getting better.
Just a few months ago I read a blurb (in Scott Young's Ultralearning) about Eric Barone's 5 yr effort to build Stardew Valley. Amazing story. Imagine resisting the pressure to take "a real job" for 5 years so you can work on a game.
For many years one of my favorite talks about indie games development was Jonathan Blow's speech at UC Berkeley CSUA (2011) (http://the-witness.net/news/2011/06/how-to-program-independe...)
Initially I loved his main message during the talk: "You have to be brutally effective to finish a project in a reasonable amount of time."
But there's a part in the Q&A that later grew to be even more poignant to me:
https://www.youtube.com/watch?v=JjDsP5n2kSM#t=1h13m8s
> Q: You said you worked on many projects before Braid which didn't quite get completed. What was special about Braid which made you complete it?
> A: What was special was it had been a long time since I'd finished anything on my own, and I sat down and decided that "Dammit I'm going to finish something this time". And, "To that end, so I can finish this, I'm gonna make something that is technically pretty simple"...
For some of us, it's REALLY HARD to complete a side-project while working full-time job. For most of my career I had completed a real game only when it was for a job (or for a client) and I worked on it full-time.
The single reason I hadn't made a game as a side project was because I'd quit before I finished. I finally figured out something that worked for me, and it was counter to all the advice I'd heard. I'm sure this is different for other people, but for me the key to working day after day consistently (not quitting) on a project while working full-time was to eliminate all the "shoulds".
When my conscious brain is always telling myself that I should do the project a certain way, my subconscious rebels and suddenly I become unproductive. There's a ton of great advice out there such as: "Don't reinvent the wheel, build your game not a game engine." The problem is sometimes my subconscious wants to build the game engine, not the game. I can coerce it to do the right thing when it's for an employer, but it's a different story for a side project.
Ever since I stopped "should-ing" myself, I've become much more consistent and productive on side projects. If you want to make games on your own as an engineer, but are having trouble forcing yourself to spend a couple hours every day on it, then I'd suggest that you try to just code whatever the hell you want to code instead of the thing you're supposed to code. You may find, like I did, that it's better to gain some coding velocity, because this velocity gives you the momentum fly over humps that you weren't able to overcome back when you were trying to start working on your game from a standstill.