Before creating tutorials for this iOS development series, I wanted to share my path to releasing an app. I come from a programming background, but I felt that the iOS world was unapproachable. Hopefully, my story can be a motivator that makes iOS development seem friendly.
I’ve always been a big Apple nerd. I always watch WWDC, and I often stay tuned in to Apple events. So, since I started programming, and really since I was a little kid, the appeal of making an app has always stood out to me.
I felt there was an allure of app development that was unique. Perhaps it stemmed from growing up during the there's an app for that era. Does anybody remember those ads? Whatever the cause, becoming an app developer always felt aspirational.
I started programming in earnest in high school with AP Computer Science. I built my programming skills in AP Computer Science. However, because it is a Java-based course, I didn't learn much about iOS app development.
I discovered that I loved coding, so I went off to college to study computer science. I learned more about Java, and I stumbled into other classes that taught me Python, C++, and C. Along the way, I dabbled in some Android development, but I never got the chance to create the iOS app that I always wanted to.
Unfortunately, Swift is a bit of a niche language. Apple is a huge company and its devices are ultra popular. However, programming is so vast that many other languages get taught first. Additionally, as far as programming languages go, Swift is new. It only emerged in 2014.
I was busy with school, so I never took the time to learn Swift. Another road blocker in my way was UIKit. UIKit is very popular but obtuse for the beginner to learn. I come from a programming background, and UI isn’t my strong suit. These obstacles were by no means insurmountable, but I always found some reason to not pursue a dream of mine.
I think a few key factors finally pushed me to complete my dream of creating an app.
- First, I had just graduated college and hadn't started my job, so I had free time.
- Second, the advent of SwiftUI, a declarative way of creating interfaces, removed my anxiety about creating a user interface.
- Finally, I discovered Hacking With Swift. Hacking With Swift is the best place to learn about app development. It provided so many excellent and free resources to learn from.
Once the stars aligned for me, I started studying Swift and working on an app. After just a couple weeks, I had created and launched my first app on the app store. It's called Compound Interest Solver and it calculates compound interest.
I must admit I felt really proud of myself for completing my long-term goal of creating an app. My one regret is I wish I had focused on it sooner. Everything that I thought held me back, only turned into minor obstacles.
It didn't take me nearly as much time as I thought it would, and Swift was far more digestible than it looked. I wish I had measured the time commitment, but I'd estimate it was perhaps 20 hours of work that I spread across two weeks. That's it.
If you're interested in app development, go give it a try. I think you'll find it easier than you fear and even more enjoyable than you thought.