And do the Same Thing
At my old job, I spent a significant amount of my time taking care of tasks that weren’t programming. I took photos, I did retouching work, I shot video, provided tech support, and a whole lot of other things that are probably best described as “miscellaneous.” Along with that the project of the moment often changed and I almost always had 2 or 3 balls in the air so spending a solid month doing a concentrated effort on a project was rare.
At my new job, I’m nearing the end of somewhere around month 4 of coming into the office, opening the exact same project, and picking up right where I left off.
If you want to be picky it’s 3 projects spread across 3 development environments and 2 computers, 5 git repositories and 4 programming languages, but it all talks to each other and while I concentrate on different bits on different days, it’s all one increasingly large project that I’m trying to keep modular.
The interesting thing is, for almost every metric I use to measure my skill level I’ve seen more improvement in my general programming skills and my command of Objective-C and UIKit than I have in at least the past year, if not longer.
Part of it is that I feel a need to prove that I either can do something or that it would take an unreasonable amount of man hours before I say no to any feature . So far I’ve mostly been pleasantly surprised and I only have one feature that I feel is leaning too hard of UIKit, and one truly hateful bug that I can’t get to the bottom of (which is visual only, not functional).
A second part is just that I’m practicing my craft. I’m doing lots of “load data, sanitize data, present data.” In theory most of this should be using similar or even the same code, and I’m getting better at figuring out how to do that whenever I can, but there’s a massive number of cases that need some sort of special handling. This means large amounts of code, and most of it in the realm of not “boiler plate”, but close.
So now that I feel all clever and ready to take on a medium sized personal project, the next step is to step up and do it. I have a project in mind that I think is achievable, now I just need to start it.