Over the years, I’ve had a few instances where I needed to limit the potential of a variable. For instance, maybe I have a shopping app and I need to limit the maximum price of any given item. You may be surprised to learn that there’s no built-in way to tackle this in the Swift Standard Library. There are many solutions, but most come with glaring caveats.
I have a UICollectionView. In this collectionView, I only want to display a maximum of 2 cells. This collection view’s count is based on an array that could have thousands of entries. …
Xcode barked at me as my app crashed. It was right after I created my first test view using a new Framework that my friend, Aaron Cleveland developed for programmatic Autolayout. I wanted to blame the way he was linking constraints in one of the convenience methods. But that was all standard best practice-y stuff there.
I looked over the convenience initializers I had added to his framework for
UIStackView numerous times. Everything seemed in order there. “Hmm, the problem must be somewhere else in his framework,” I thought.
I headed over to StackOverflow and looked over this thread for…
Using strings as a way of controlling the flow of an app, whether it be some condition you’re checking, an identifier, or a number of other things just isn’t a great experience. Especially as your app grows in size.
At one point or another, I know we’ve all spent time thinking, “what was the name of that identifier again?” … then you go back to look, and by the time you find it and copy it, you forgot what you needed it for in the first place. …
In my many years of working with different programming languages, I’ve come across the “R-Word” (recursive!) more times than I cared to count. Until it clicked for me as to what recursive functions were doing — I always ran in the opposite direction!
Recursive? Uhhh... what?
Recursive: “relating to or involving a program or routine of which a part requires the application of the whole, so that its explicit interpretation requires in general many successive executions.”
Right, ok… Uhhh… what?
Don’t worry, I didn’t understand that either. The easiest-to-understand way I’ve heard recursive functions explained is:
“A recursive function is…
I’ve been making apps for years. Mostly apps for friends and personal use, some with teams of developers, and I’ve worked on plenty of other people’s codebases. One thing is a constant in every one of these experiences — problems.
I sort of developed my own problem-solving framework over the years, and it was hit and miss. I was recently introduced to UPER through Lambda School and it’s changed the game entirely for me.
If you’re like I was, when faced with a problem, you probably do some form of restating the problem in a way that you can understand…
The first electronic game I ever played (Zork) was text-based…
Maybe it’s because it’s reminiscent of my early days. Maybe it’s because I don’t have to worry so much about logic, and can focus more on the user experience.
Or maybe it’s because I just love the experience of watching my creation come to life, and when It comes to life from my words, it’s exactly how I imagined it in my head. When it’s visual, there’s always some compromise I end up having to make, and it no longer feels like 100% “mine”.
My inner-voice is very narrative. I…
Building something as seemingly simple as a knob that you can rotate isn’t a simple endeavor using UIKit. Thankfully, SwiftUI makes previously complex UI operations a breeze.
Drawing a circle in Swift using built-in APIs is a fun exercise — but only because I’m a glutton for punishment.
Disclaimer: I don’t understand much about Geometry, so it makes it that much more difficult.
Want to make a circle in SwiftUI? Cool, just type Circle() anywhere you can render a view.
Whether you’re self-taught, you studied…
You may think there is no safety net when you force-unwrap an optional. You’re telling the compiler, “I know what I’m doing, this value isn’t nil. I guarantee it.” If it is nil, your app crashes. What you may not know is this is actually a safe way to unwrap optionals.
“But Kenny, if I force-unwrap an optional and it contains a nil value, my app will just crash. This means it’s unsafe!”
Well, you’re right, but you’re also wrong
According to Swift Standard Librarian, Karoy Lorentey in his WWDC 2020 talk, Unsafe Swift, there’s no guarantee that your app…
I’m a Full Stack iOS Developer with a passion for writing clean, reusable code.