I see myself as someone who's really interested in programming, and computer science more broadly. Like the kind of person who's into it more as a hobby than a career choice; I was
almost one of those kids who start hacking when they're eight. But while I know I am really interested in that stuff, most of the time I just stare at the wall when I take my laptop to Starbucks.
Again, it's not that I'm not interested in it. Most of the time, I just have this insurmountable mental block. I don't know if it's depression, or what, but it's not merely a lack of energy. Many days I can barely even read; my brain just won't process the words on the page, or on the screen. The occasional, completely random good days I have are marked not only by energy, but mental clarity. Most of the time there's like an ugly fog hanging over my head. When that fog isn't there I'm a twenty-five year old version of that curious eight year old hacker, but when it's there I just stare at the wall.
I've tried all kinds of things, except professional help, which I can't really do right now because of reasons: vitamins, caffeine, no caffeine, exercise, meditation, not eating carbs, getting more sunlight. None of it works. Maybe someone can point me in the right direction?
That being said, I'd suggest being really, really specific in what you want to accomplish. Forget all the grand plans, just nail down one very small thing you want to get done and post it here (gives accountability) Also post the very first thing you need to do to get started on that thing. It may be something as simple as "open up my IDE on my laptop and create class Foo"
Get into a loop of tiny improvements. Make each loop only take a few seconds. If you are making a web page, get the simplest possible page up and running and then add just one more tiny thing to it and refresh the page. If it's something you can't see, create the simplest possible unit test and then code against that.
When you have so much stuff you want to accomplish, it feels overwhelming and distracting. Boil it down to one thing, anything, and start there. The same approach works for all kinds of stuff by the way - writing a novel? Just open your saved draft and add a single sentence. Exercising? Do nothing but put your running shoes on and step outside, even if you come back in right away. Trying to mentally plan the entire thing in advance is exhausting so don't do it, only do the simplest thing that you can possibly do to start - usually it's enough to do one more extremely simple thing, and another, but don't get ahead of yourself - you don't need to worry about any of that stuff right now, only the very first step.