- Spend some time warming up before jumping into things
- Your progress seems exponential as a beginner, but...
- It takes time and effort to get reliably good at something
As a general rule, I try not to fill the first page of a notebook with something creative. There's far too much pressure to produce something worthwhile -- and I find that I end up getting crippled by the thought that someone might open it up to that page and see my worthless, in progress, or abandoned idea.
There's also the aspect where I can get hung up on it too. There are times when I can't move beyond that idea to a better one because I'm too busy thinking about how crappy that first one was. It's easy to get discouraged.
Lately, I've been finding that the more I try to branch out in my work, the harder things become. There are so many things I'd like to be able to do, and it never seems like I get better at any of them fast enough.
One of those things I'd like to get better at is programming. I feel like I'll really be able to contribute something of value by being more technically proficient. The funny thing though, is that in hindsight, I was probably a better contributor when I had very little technical knowledge. I think the big secret was that I was willing to work hard to get things to work and I gave a damn.
It's getting harder and harder to put in extra hours to really build something spectacular. When I lacked the technical skill, any small amount of learning produced a huge payoff. Now that I know a bit more than I did when I started, I have to spend an even longer time learning to get what seems like an even smaller payoff. The thing I need to continue to remind myself is that it's not going to happen overnight. I need to take time and work hard at it. It takes hours, weeks, and months. Eventually, after spending lots of time on something, it will start to click and I'll begin to understand it. I'm just starting to get to the point where certain programming fundamentals are starting to feel natural.