So I have a problem, something I'd imagine most, if not all programmers have had an issue with, but mine is quite deep. I'm finding it impossible to keep my mind on my projects.
I enjoy programming, I quite do, but it's almost impossible now for me to stare at a text file and /do/ anything for more than five minutes until I get almost restless and annoyed, and I just want to go do something else.
It wasn't always like this either, I used to be able to really put time and energy into a project, and have made incredible progress on stuff in a very short period of time for things like game jams.
This almost completely applies to programming. When I work on hardware or general software/system configuration projects, which I tend to do quite often, I will have boundless attention, to the point where I will put
more time into trying to get things to work than most people would consider even remotely reasonable (I just spent around 6-7 days straight trying to get a FreeBSD installation environment boot over PXE and /still/
don't have it working).
I do know that when I am in an environment where I have absolutely no other distractions, I will end up getting things done, but this isn't particularly easy for me to do. Transportation takes a lot of time, and my portable
gear is not pleasant to work on. (Would you want to program everything on a 14" tablet?).
I do also think that I might be setting some of my projects to be too lofty, but it's also one of the few ways to motivate me in general. If I don't think something is worth doing, I won't end up doing it, and most of the things I
consider worth doing tend to be quite complex and take a lot of time and effort to put into it.
I'm not exactly sure what I'm looking for here, mainly suggestions as to how people have solved this problem, experiences in general to see if I can extract something that works for me. Maybe I should just keep trying to go back
to it and not give up until I get somewhere. Maybe I literally should just work on things in five minute spurts, better than getting no work done at all I suppose.