iOS. Apple. Indies. Plus Things.

Remembering My First App

// Written by Jordan Morgan // Jul 18th, 2022 // Read it in about 2 minutes // RE: The Indie Dev Diaries

With 2022 over half way done (sidenote: wat) I found myself glancing at my calendar to see what the rest of the year has in store for me. It’s necessary for planning, since at The Morgan Household we end the last five months of the year in a row with birthdays!

  • August: My daughter 💸.
  • September: My wife.
  • October: Me.
  • November: My middle child 💸.
  • December: My oldest child 💸.

As such, with my kids being in their prime “Birthdays are amazing!” ages, I try to think ahead to save some coin. While planning it all out, I found myself becoming quite sentimental. By year’s end my oldest turns 9, my middle is 5 and my youngest will be 4. I started doing all of this silly math, “Years Bennett will still think I’m cool”, “Years left with them all in the house”, and on and on.

Life comes at you fast, as the internet would say.

What made me feel even older and address the brisk winds of time was doing my annual tech clean up list. Part of the process was taking stock of my Github repos, and while doing so I found my very first iOS app.

There it stood, frozen in time and untouched for many, many years. It’s not like I had forgotten it existed, but like many things in life - that part of you comes and go, and you don’t really think about it that much. It’s been in the back of my mind here and there, but by and large - forgotten.

It’s a little surreal, though, that as programmers we can come across these bits of code we wrote a decade (or longer!) ago and they read much more like a diary than they do random assortments of words like they might for someone else.

I remembered how I put basically all of the app’s logic in one view controller: An Objective-C implementation file with a lot of imports, more than is probably necessary.

Or, how I embedded the actual press kit as part of the app’s binary for some reason: A screenshot of Spend Stack from 2011's press kit .pdf.

Of course, every great M.V.C. architecture in iOS apps reaches into the app delegate within every view controller for….things:

self.delegate = [[AppDelegate alloc] init];

Another fun one - the entire app’s data graph was stored in user defaults! Boom, easy iCloud sync, baby. All of this fun stuff, and I haven’t mentioned the app’s interface which had quite a few issues (putting it nicely). But, to Jordan of Yore, it looked beautiful:

A of Spend Stack from 2012.

I look back at all of it and I can’t help but think:

Dang, I freakin’ loved that app and every minute I spent on it.

I had the rose colored glasses on. I had only one child. Free time was there for the taking. Of course, you know how the story ends already. The first version sucked, the other one went better. But it was the process…my goodness! Remembering the process is what had me all up in my feels. It was so…pure?

That’s something I’m trying to recapture a little bit more of these days, that feeling of infinite opportunity. We always mention that we gain experience as grow in our trades, and by doing so we get better at our craft which is, no doubt, true. But! We also tend to become a little bit cynical about the whole thing. I know I have at times.

So, bring me back, man. When I was amped to use up any ounce of free time to just make something cool. The feeling that, after I hit release, literally anything could happen. Waiting like it’s Christmas morning for press reviews to come in. In other words, the good ol’ days.

So today, whether you just got here or have been here since iPhoneOS - do yourself a solid like I did and take a second to remember that there is no shortcut to any place worth going. So, ship that first app! Even if it sucks, and you know it sucks - do it! Or, if you’re in a spot where you haven’t shipped in a few years due to the 83,430 reasons you’ve come up with not to, do it anyways!

The world needs your app. And, if you’re lucky, they’ll end up needing it just as much as you do.

Until next time ✌️


Spot an issue, anything to add?

Reach Out.