Exploring the Unknown: My Programming Journey



Hey Reader,

Last night, I had a breakthrough. The weeks of effort exploring different options finally paid off – it felt fantastic. I was tired, but accomplished.

Below, I will share three stories about the unknown and how to push through even if you're unsure what to do.

Programming can be hard. It can be fun. And it can be hard again. I have been busy traveling and had family visiting. And I have been wrestling with build issues around legacy code.

Sometimes when you learn something new, you struggle. You're on the tip of what you understand, and it can be frustrating when things don't work like you expect.

When this happens, sometimes you need to believe that you can do it or that something is possible.

The struggle makes it difficult when you're unsure how to do it.

Recently, I overcame a challenging bit of code. It reminds me of a few other times in my programming career when I didn't know if my code would work, but I pushed on.

Cross-Platform C++ Code

About 9 years ago, I ported a Windows C/C# threaded server to cross-platform C/C++ code that ran on Windows and macOS. There were weeks of compiler errors I had to fix for macOS. I fixed one error after the next until one day, when everything compiled.

And that was just the tip of the iceberg. To make it reliable, I had to fix concurrency issues using the Xcode Thread Sanitizer to protect shared mutable state. Huge functions with nested if/else conditions did not make it easy to see all the potential code paths. That code was error-prone and could deadlock the entire server.

To mitigate stability concerns, I built a test app in Swift that could stress test the C++ server with 100s of requests per minute to verify it worked (while I slept).

And that is one of the reasons I love Xcode. It has tools for debugging challenging problems, while Visual Studio did not.

Genetic Artwork

In 2009, I started working on a genetic algorithm to create artwork. It started on the Mac and had mildly promising results, but was only monochrome. When the iPad was announced in 2010 by Steve Jobs, I decided to port it to iPhone and iPad, and the results were ok . . .

. . . But after using the app more and more, exciting patterns emerged.

It's that push into the unknown that you sometimes need to do, day in and day out. Making incremental progress until all of a sudden, you have something working.

It can be non-stop problem-solving until you figure it out. That is the challenge of software and cutting-edge technology.

SwiftUI Challenges

Some things are easier, like SwiftUI, to see immediate visual results. It feels fun and exciting. But sometimes you run into edge cases like I did with GoPro's Quik app. In 2022, I wasn't sure if SwiftUI was stable enough – and it wasn't entirely — that came later with iOS 16 and more SwiftUI bug fixes.

You don't know until you try, and you won't have confidence that it will work out exactly how you expect. But if you never try, you'll never enjoy the progress and satisfaction of making something new from an idea, and learning along the way.

SwiftUI Challenges

I love working on UI and I am planning to share new SwiftUI tutorials to help push your UI design skills later this month.

As you practice more SwiftUI design challenges, you will build a SwiftUI toolkit that you can use in different scenarios.

It feels weird to practice something so small, but in the few coding sessions I have done, I keep learning new things. Or I'm confronted with a design problem that I have not solved before.

Here's a sneak peek at an upcoming tutorial. How would you build this widget using SwiftUI? How should it work? Is the text dynamic?

What are you working on?

I'm working on legacy C, C++, Objective-C, Swift, and SwiftUI interoperability and migrating from Cocoapods to SPM. There are many moving parts, but I solved the last big obstacle . . . that I can see right now . . .

Hit reply and let me know what you're making in SwiftUI or iOS.

Talk soon,

Paul Solt
Paul@SuperEasyApps.com

P.S. Need a challenge? Try my last SwiftUI Challenge. How would you implement the design?

Super Easy Apps Weekly - Paul Solt

Join 5,712+ developers learning iPhone app development and App Store publishing. Every week, I share iOS tips on how to create polished, intuitive apps—backed by insights from shipping seven apps and working at GoPro, Apple, and Microsoft.

Read more from Super Easy Apps Weekly - Paul Solt
video preview

Hey Reader, How do you translate your app into multiple languages? At GoPro, I partnered with the localization team to establish best practices—and with the new String Catalog, you can extract all your Text() strings at build time so nothing slips through the cracks. 🎥Watch SwiftUI iOS Localization Tutorial: Master String Catalogs in Xcode 16 You’ll learn: Best practices for localization How to test translations in both iOS apps and widgets How to Preview different languages in SwiftUI How to...

photo

Hey Reader, I just saw this post from Mario—who makes Astro for App Store keyword research (ASO). Mario 🏴☠️ @xmarioapps Just a reminder that you can make money with simple 1 page app. Just draw a page in Canva and turn it into app 4:21 AM • Apr 2, 2025 1 Retweets 59 Likes Read 10 replies What's stopping you from working on your app idea? Checkout Mario's latest app that stylizes photos with AI.Happy coding! Paul SoltPaul@SuperEasyApps.com

SwiftUI Animations Not Working? Try This Simple Fix!

Hey Reader, Yesterday I streamed for 4 hours and got stuck trying to get to the bottom of an issue with implicit animations. One line of code was causing the problem... Which lines of code are creating implicit animations? When it comes to animations in SwiftUI ... they're great until they don't work like you expect. SwiftUI Animation Glitches Watch my latest video and learn how to better control implicit animations on state changes. SwiftUI Animation Bugs? Here's How I Fixed Them! I did this...