Spread Too Thin

Ever since I could remember, I was always so ambitious. There were so many things that I wanted to do and so many things that I wanted to learn. As you might guess, I never quite got around to the majority of the things in mind. In fact, of the few that I got around to doing, only a fraction ever got completed.

Back in high school, when I first got my camera I wanted to do all these projects. I wanted to make a stop motion video similar to one I saw on YouTube, I wanted to take long exposures, etc. I’m sad to say that I never got around to most of those ideas. The problem wasn’t as clear then because it was just a hobby of mine with no real bearing on anything. However, the problem became slightly more concrete when I started doing that with my coding projects. I would often start one project, get distracted and think of another idea to start on. I had too many ideas and too short an attention span.

I realized that I had a problem early on. However I didn’t do anything about it and today I sat down and went through my GitHub account cleaning out repositories that literally held nothing. It was a bit hard to delete them because I kept telling myself that I’d get around to it someday, but I knew that someday would most likely be never.

I thought I should stop because it was affecting my learning. As an amateur I can safely say that my desire to learn everything is only hindering my education. For example, although I was able to limit myself to Ruby at first, I thought I should expand even before I had mastered Ruby. I picked up Python, I started messing with CoffeeScript preprocessing for JavaScript, I tried to learn Go, and I wanted to take a stab at C++. I can tell you that it didn’t work out so well for me. In the end I barely knew any of them and even then would confuse one language with another. It was the same way with projects. I start on a website to geocode, then hopped over to a project for creating a CSS base template for flat designs, when suddenly I had the urge to try to create Tetris on command line. It kept going like that until I had at least 15 repositories that I never touched since I made them.

So I’ve decided to try to focus on one thing at a time. I deleted all of my repositories and resolved to keep my account clean of any empty ones. If I wasn’t going to work on it, I wouldn’t start it at all and what I did start, I’d finish. I’ve also decided to focus on Python for now and Flask. I chose Python despite my initial choice of Ruby because I’m learning it in school and the place I intern at uses Python. Also, Google uses Python. In terms of web development, I still need a backend and Flask seems ideal as I’m learning Python now.

Hopefully, I can actually stick to my plan because this whole thing is just too detrimental to my learning and working. My current project is to learn how Grunt really works and scaffold out a base configurations to use in all my future projects. I’ve found making shell scripts and doing tasks manually gets old really quickly and takes too much time.

One step at a time.