Matt Hackmann

MattHackmann

The thoughts and goings-on of some programmer dude.

Old Dogs Can Learn New Tricks, It Just Takes Longer

As I sit here whiling away the time trying to put the finishing touches on my Awwnime Bracket app, I realize that the infernal clock ticks away at the minutes, much as it always does. Of course, not that any of this matters since my server is still running in Central time and the dates will be messed up anyways.

As stated, I sit here coding in that which I have tried several times before: writing apps for iPhone using the abominations that are Objective-C and Xcode. Now, this isn't my first time in this rodeo. Indeed, in 2012 or 2013 (before LinkedIn was a thing I considered a thing), I purchased a Mac mini in hopes of carving myself a space in the ever expanding "app-o-sphere" and some of those tantalizing dollars that could come with. I did my damnedest to follow learn Obj-C and tried to follow the Stanford iTunes U course, but it was just too much all at once for my brain to process. I quickly got discouraged and gave up. Shortly after the move to California (or perhaps slightly before), I sold the mini and forgot all about that shit.

Then, mid-last year, one of my fellow webdevs at work organized a weekly session in which we would all meet for an afternoon and learn ourselves some iOS development. This arguably went much better, though my mind still had trouble wrapping itself around all those fucking square brackets and the hierarchy of views and view controllers and what have you. Despite being one of the handful that "graduated" that class, I barely pounded out a semi-functional app. Seriously, that thing was (and is) a piece of shit. It was supposed to be an "offline" client for the music page, but never quite made it entirely to that offline mode. I still would like to complete it so I can track my music listenings while biking or driving.

Fast forward to a few months ago. I don't recall how it came around, but as LinkedIn's membership continues its drive towards mobile devices, so too are we trying to scrounge up mobile support internally. One thing lead to another and my name hit a list of people that they wanted trained in iOS. I accepted (perhaps a little begrudgingly), and for one week in August, did nothing but iOS training. Perhaps it was all the repetition, but something about that class made everything stick. Perhaps it's because we were writing actual apps that did actual things and each of those exercises themselves had much repetition. But, when I came out of that class, it was as if the clouds had lifted and the chorus sang out from the heavens. I'd finally grasped these ever elusive concepts that had me so worked up in the months and years prior.

That's not to say I'm an amazing iOS developer. Far from it. However, I've been putzing away at this bracket app with relative ease, only looking up particular things for particular cases when needed. It's odd to see how even the way I've been writing javascript has changed in only the last few weeks. I find myself using Obj-C/Foundation style nomenclature when writing methods (initWithXYAndZ).

So, that's that. I was hoping to get this app submitted tonight, but I just profiled the thing and it's eating up a healthy 500MB+ (all in images), so I need to figure out how to mitigate that.

I do love doing this shit...