My Journey Into iOS Development

##My Journey Into iOS Development##

###Prior to iOS Development###

I began working in the securities industry as an intern when I was in college. I started off clipping newspaper articles affecting my employer’s coverage universe from anywhere I could find them. It got to a point where I got the work done pretty quickly and didn’t want to lose the hours, so when people needed computer help, I’d give them a hand. I became known as the “IT guy” in the office and I took on additional roles. I was fixing computers, installing new ones, setting up networks, administering networks, maintaining the e-mail system, maintaining the PBX, etc.

I graduated from college with a finance degree that my IT skills had paid for. The little company I started at with 30 people had grown to over 500 people. I didn’t want to continue working in a support role, so I took a job as a research assistant prior to graduating. I held a few different jobs at my former employer, but once you’re branded as the “IT guy”, it’s hard to shake. I stayed as far away as I could from support, but I did end up overseeing a lot of mission critical projects at my former employer.

My last job was as a sales trader. I was a liaison between my firm’s trading desk and those of its clients. When I started, trading wasn’t as automated as it currently is. As trading technology advanced, it got to the point where I was basically babysitting algorithms to ensure they didn’t make silly decisions executing trades.

I left the industry partially out of boredom and to spend more time with my kid, as being a trader entails a LOT of travel. I funded a business, got it off the ground and I’ve been Mr. Mom ever since.

###Self Study###

A few of years ago, I started tinkering with Python, but I found it kind of boring. Then I stumbled into Kevin McNeish’s book, iOS Development for Non-Programmers. Upon seeing I could do it, I was hooked. I found Objective-C much more interesting than Python and Ruby.

After finishing that series, I discovered Stanford University’s CS193P course on iTunesU. I got through the first lecture of Stanford’s iOS Development course, but I kept bumping into the boundaries of my knowlege. I decided to backtrack and learn the foundational aspects of object-oriented programming before moving forward.

I ordered Objective-C Programming: The Big Nerd Ranch Guide and set about starting at the beginning. I followed up with “iOS Programming: The Big Nerd Ranch Guide” and THEN I circled back to Stanford University’s CS193P course. The course made a lot more sense after learning the basics of Objective-C. I also picked up Tim Roadley’s “Learning Core Data for iOS: A Hands-On Guide to Building Core Data Applications”, as it seemed like a good idea to learn how to use a framework for constructing object graphs and persisting data.

###Enter Bloc###

As anyone newish to coding soon discovers, once you take the “training wheels” off, you quickly discover it’s not as easy as the tutorials seem. I’d invested so much time in learning iOS that it made sense to fill out myself-taught knowledge with a structured course and mentorship for when I got “stuck”. Bloc was perfect.

Bloc’s course is project-centric and starts “at the beginning” by teaching Git. I’d never worked with source control management software before and in hindsight, it should be any aspiring programmer’s starting point. Version control software makes life a LOT easier.

From there, I completed series of projects and I was able to consult with my mentor, Bjorn Chambless, as I progressed. He was invaluable in teaching me how to find solutions to issues I encountered along the way. It was also immensely helpful to have someone looking over my shoulder as I progressed and guide me on industry standard best practices.

###After Bloc###

I completed the course last year and I’ve now got a couple of apps in the iTunes App Store.

StretchApp 2

NA Jingles

It’s been a lot of fun learning how to program and as a result of Bloc’s project-based mentor course, I learned how to learn. As with most things in life, the only constant with development is change. I learned that lesson when after learning the basics of Objective-C, Apple decided to roll out Swift. That said, I love Swift.