Sentimental Code
Donn

Donn @donngraphics

About: Aspiring to become a “Full Stack Developer” or whatever that means!

Location:
United States
Joined:
Nov 24, 2019

Sentimental Code

Publish Date: Jul 28
4 1

Around 2013 my father gifted me an iPad Mini; he himself was gifted the tablet from his job as a “thank you for the years of service” reward. He thought it would aid me with the freelancing graphic design I was doing at the time. It was a tremendous help as I would essentially use it as a second screen since I only had one monitor; I’d use it to watch videos or answer emails while doing my work on my desktop.

The seasons changed as did my life and goals, and time bore hardware and software that left the little iPad in the obsolete category. I recently came across the iPad again while rummaging through my belongings, and was flooded with memories of my Dad; he wasn’t tech savvy and always text in full caps; but he always had my best interest at heart. It’s strange to say I’m sentimental over an electronic, but it’s undeniable, and probably the main reason it’s still in pristine condition.

There’s not much I can use the iPad for nowadays, so I decided to dust it off and use it as an eReader. Though it’s a mini, the screen is a nice size for reading and I can easily zoom in when needed. But there was something nagging me in the back of my mind; sure an eReader is nice, but could I do just a little bit more with the tablet? With the experience I have now, could I create a simple app using ancient (by today’s standards) technology?

The short answer is ”yeah, but…”, and the long answer is a rollercoaster of luck, workarounds and dead-ends, and I mean a LOT of dead-ends. I was set on this challenge, and decided the easiest task would be to create a to-do list. Now I know, “not another to-do list”, but I needed to just create something simple, just as proof that this objective was even possible, and this app would at least be personal and my own creation. My dad once told me “...you’ll figure it out, you always do” and like hell was I going to prove him wrong.

The first task was to figure out which version of Xcode I needed; the iPad Mini maxed out at iOS 9.3.5, and after a quick search Xcode 8.2.1 was the winner. Great…well not so great because none of the modern OS supports 8.2.1. I could have attempted to use a virtual machine and hassled with that, but as luck would have it I have a mid 2009 MacBook Pro that maxed out at El Capitan 10.11.6, and it just meets the criteria for Xcode 8.2.1. Amazing fortune to have such a deprecated laptop that’s going to get quite a work out with helping me achieve my goal.

I have the hardware I need, armed with Xcode and Swift 3.0.2, which brings me to my next obstacle, using UIKit instead of SwiftUI. I’ve been learning Swift for a while now, and diving into SwiftUI off and on; that gave me some confidence to attempt this task, though I’ve probably spent all of five minutes looking into UIKit. “SwiftUI is here and now, why bother with UIKit?” was my thought process, and here I am, staring UIKit right in the face. At least I’m not working with Objective-C.

Thanks to Sean Allen, I was able to learn just enough Programmatic UIKit so that I would be somewhat familiarized with the code and know what I would need to search for on my own. Fast forward to me working out my code; learning how to add a splash screen and presenting different views, I felt like I was making progress (though UITableView made my head HURT). Rough, unfinished versions of the app were running on the simulator just fine, but I needed actual proof on the iPad itself. I connected the iPad to the Mac, and attempted to run the app.

“No matching provisioning profile found”, I would see this message over the course of two days, not really understanding what’s happening, even after countless searches. I needed to actually focus and understand what was going on, and came to the realization that I actually haven’t committed to being a developer. In the sense that I needed to have a paid developer account, because the workaround of saving out a profile from my modern Mac/Xcode wasn’t doing the trick. I didn’t want this issue to stop me in my tracks and I have machinations of app creation for mobile development; I made the commitment, and this is just the first step in growing pains as a developer.

I cleared another hurdle after obtaining full control of Identifiers and Profiles creation, but stumbled again when I hit another legacy landmine with the “dyld: Library not loaded:... Reason: image not found” error. This was another multiday adventure; I checked folders, hidden folders, verified things through the command line, and made sure they were embedded. As it turned out, I had a certificate issue in the Keychain, meaning the Mac didn’t trust the certificate it currently had and wasn’t embedding things as it should have; I needed to actually download a current and valid “Apple WWDR Intermediate Certificate”. Once I updated the cert, the build was successful and the app loaded onto the iPad. It was a thing of beauty.

I could focus on the actual code after that point, and honestly the code was the easiest part of this process. After finalizing how I wanted the app to look and behave, the last step was to actually download it to iPad, not just simulate. Of course it wouldn't be easy, as I couldn’t find an early version of “Apple Configurator” and even Brew wouldn’t properly download to the MacBook because of the obsolete OS.

I was out of options at this point, frantically looking for any workaround whatsoever. It’s said that it’s better to be lucky than good, and I have to agree because I stumbled upon MacPorts, an open source community, and the last piece of the puzzle. MacPorts had exactly what I was looking for, I was able to properly load the final version of the app onto the iPad.

Home ScreenA thing of beauty, seeing your app icon
Splash ScreenSplash screen
ListThe list will continue to grow

So much trouble for a simple to-do list, using deprecated code for an obsolete hardware. Possible? At least I know I can breathe new life into the iPad Mini, for as long as it’ll last. Worth it? It was quite the learning experience that’s for sure, and something that’ll always remind me of my dad. Definitely worth it.

Dad
Love you dad

Comments 1 total

  • Valerie
    ValerieJul 28, 2025

    It’s 640am. I should be getting up with our “kids” 🐾 but here I am; willingly accepting a headache 🤕 trying to create an account just to give you your flowers and praise! I’m so proud of you hun! This is groundbreaking! I admire you for always doing the hard thing! You triumph well! You take on fights of the impossible and WWE smack down them ALL! …even when don’t hear those words “flawless victory” ….or whatever they say on that street fighter game 😂
    I love you! Time spent doing this to honor your dad annnd to do something pretty hard was well worth it! I’m so proud of my genius of a husband! When people as me what you like to do I usually say read, or learn…imma add “make the impossible POSSIBLE” to the “to do list” now! Cause baaaaaby you ate this one UP! 🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉

  • Jamey H
    Jamey HAug 21, 2025

    Nice posting!
    Could you share your email address to discuss the collaboration?

Add comment