This is the Way
The deeper my dives / experience / experimentations go with SwiftUI the more I appreciate its efficiencies and strides for a better developer experience. Granted, there are still shortcomings when compared to it’s predecessor, UIKit, the tone / tenor has been set…this is the way.
It has been awhile since my last experiment in “can this be done in SwiftUI”, and so much as improved since SwiftUI 2.0 has been released.
The deeper my dives / experience / experimentations go with SwiftUI the more I appreciate its efficiencies and strides for a better developer experience. Granted, there are still shortcomings when compared to it’s predecessor, UIKit, the tone / tenor has been set.
Pre iOS 13 if one wanted to run and sync a group of asynchronous requests they had their choice of the following:
While each of these techniques provide very powerful versitality, implementing thread-safe, edgecase / error proof code, in many instances, isn’t trivial. Most of the examples, tutorials and uses cases showing how to sync multiple asynchronous “operations” fell under the category of networking.
In order to “round out” my SwiftUI journey I decided to create a MacOS email prototype. The differences between this project and the BankingUI / DashboardUI where much less than I thought. Though this is just a prototype and not a full fledge, it gave me an insight as to the different mindset(s) and consideration(s) for building a MacOS app vs an iOS / iPad.
I wanted to add in a bit more functionality, but my main hustle and updates to Significant Other have been up taking most of my time.
Now that I have created and iPhone, iPad and MacOS prototypes, my predication of “SwiftUI as the future” is even higher. AppKit, much like UIKit, isn’t / shouldn’t go away, but SwiftUI bridges the framework and paradigm gap between Apple’s platforms.
Back in September I had planned to have 2.1 released by Christmas, unfortunately due to deadlines from my day job and a few other side hustles I didn’t get around the updates I wanted until a month ago.
But alas, it is here.
Dark Mode arrived last September to much fan fair and while it was on the top of my priority list of features to add to Significant Other time took its tool, but now that 2.1 has been released I couldn’t be happier with the results.
Up until now videos were limited 30 seconds and filmed within the…
“We don’t rise to the level of our expectations, we fall to the level of our training.” — Archilochus
Who doesn’t love a good challenge? Writing iOS apps everyday provides it’s own sets of interesting problems to solve. Some for me are easier to solve than others, but I’ve been doing it for awhile now so I feel comfortable with my experience and knowing the toolsets that are provided. With **SwiftUI**, as with any new technology, everything can seem daunting.
I decided to challenge myself by picking a few mockups that I really liked and implement them in SwiftUI. Last…
As I continue my journey on learning and mastering SwiftUI I came across Ghani’s nice wallet / banking UI and decided to recreate it. It isn’t 100% pixel to pixel perfect, but my goal was to focus on SwiftUI concepts and strategies rather than perfection. I had a lot fun making this and just as many “ah ha” moments.
The delegate pattern has long been very prominent on Apple’s platforms. Delegation is used for everything from handling table view events using UITableViewDelegate, to modifying cache behavior using NSCacheDelegate. The core purpose of the delegate pattern is to allow an object to communicate back to its owner in a decoupled way. By not requiring an object to know the concrete type of its owner, we can write code that is much easier to reuse and maintain.
While I was working on the SpokestackRSSExample I wanted to leverage as many of the new iOS 13 API’s as possible, while…
As someone how has been in a position to hire people, the old saying “Good people are hard to find” is more than a truth, but an axiom. What is harder to find when doing consulting are good clients with interesting problems to solve. The meeting with the CEO of Spokestack (formerly Pylon) at the end of 2018 would lead to a year of interesting / challenging problems to solve and I got to work with some of the smartest people I’ve encountered in my career.
Spokestack for iOS
Spokestack provides an extensible speech recognition pipeline for the iOS platform…
Like most iOS / MacOS developers, I saw SwiftUI as one of the biggest announcements since Swift itself back in 2014. It allows a developer to move away from Storyboards / IB, as well as, write UI code that isn’t weighted with step-by-step directions on how the UI should display on the device.
I personally stopped using IB after 6 months of doing iOS development 10 years ago. I never liked, nor used Storyboards for any of my personal projects over the years as well. I wasn’t dismissive right away. …