Friday, January 2, 2015
This past year was a busy one, and with busy times comes a reduction in spare time. When that happened I was forced to do my side-projects in short periods of free time. Specifically, I've been trying to resurrect my old project that involves making teams for sports games in real life. At the moment, it's being built for sports that can only have two teams. You see, I started it a long time ago and managed to get a really basic version going by putting in a string of long hours when I could. Unfortunately, I found that it almost immediately needed to be changed after it was used for a real game, so I had to make changes. The problem was that I wanted to work in long stretches, which is of course relative, but sometimes those long stretches didn't amount to much. Long story short, I got discouraged and abandoned the project. One sunny day I decided I wanted to see this project through, and demo it at my local DemoCamp. The only obstacle was spare time. I still don't have much of it, but I've been trying to make it work by spending an hour here and there and taking notes to remind myself what I was doing once I had another chance to get back to it. So far, it's working and I feel I've been more effective in my efforts to make progress. The short amount of time I have forces me to plan ahead and to stick to a given plan. In essence, it makes me more focused. Sure I spend some more time planning, but in the long run it pays off. By the way, the original name of my application is Team Maker, but I'm still in the process of trying figure out a better name, because that names is already taken. I feel like I need to add an Ultimate, Super, or something to that effect to the beginning of the name, you know, so people know that's it's a quality product...
Anyways, this small success in my project has cemented the idea that great (at least great to me) things take time to build. Not just in software development, but in anything that I do. I can't expect to have long stretches of time available to me, because that doesn't happen often. I have to deliberately make a long-term plan to accomplish things in small steps. If I do have an unexpected long stretch of spare time, I can just work on a bigger group of small tasks, or I can take that time to reflect on what I've done so far. Now that I think of it, the latter is probably a better use of time, if there isn't anything pressing with my projects. Not enough time is devoted to reflection.
I suppose what I'm trying to say is that this year my modus operandi will be to consistently build with small amounts of time. I'm not just talking about software either, I'm talking about anything that I want to do. Whether it be exercise, learning, personal finance, or whatever can seem daunting if I try to take it in big pieces. This concept isn't new to me, what's new to me is that I have fresh example of a personal success story (in my mind) that has cemented the idea to me. I feel that I often need a real concrete example of a concept in order to fully trust it. Like the time I rode a bus in Bolivia to go to a tour of Lake Titicaca and had to hold in my pee for what felt like 4 hours. (Fun Fact: Since the lake is shared by Bolivia and Peru, the Bolivians say Titi Bolivia's side and caca is Peru's.) That day I learned, that if I was going to use public transit anywhere in the world and if there wasn't an accessible toilet, then I would stop drinking any kind of liquids prior to boarding. I never ever ever want to experience that situation again. And that was my concrete example of never drinking liquids before a long public transit ride.
Anyways, this year's gonna be great, because that's what I always tell myself.