That's how programming has been for me, honestly. At first everything was awesome. Each and every little "intro" tutorial would yield a small but huge success, and the vast amount of knowledge available was awe-inspiring. I wouldn't hesitate to show off my simple programs (Hello World, anyone?!?!) and revel in my awesomeness.
But after a few months of continuous study, fun time is over, and the real work begins. You get to the intermediate tutorials (good ones are relatively more difficult to find, I might add) and now you are looking at weeks of work. No more freshly finished programs every hour or so, we are talking days and weeks! This is where I start to lose interest. The instant gratification is waning, the results appear to be slowing; the fun is gone. So I stop. I find something new, or just do nothing new for a while.
If you know what I am talking about, then you know how it feels looking back on all the times this has happened, and seeing a bunch of unfinished dreams and ideas that were never realized. I started to believe that this was just the way things were, and the way they were gonna be for me.
All it takes is grit.
See, I have been learning how to code for almost 6 months now. I am well into the "work" stage, and I haven't given up. It's hard! Every day I make what feels like inches of progress. That tutorial I am working on: 8 days in, averaging 5 hours a day of work. Not even half-way finished. But I know that the end product is going to be exponentially more gratifying than those initial programs.
What's more, just the fact that I can say that I am still at it feels amazing. Knowing that I am pushing myself further than I can ever remember in the past, and that there is something waiting for me on the other side of all of this: a career.
This is about more than learning a skill to better myself, this is about bettering myself by doing things differently than I always have.
Back to work!