• 2024-12-03
How to Create Dynamic iOS Apps: Remote Styling with SwiftUI

Remote styling in iOS apps is becoming increasingly important for modern development workflows. Picture this: you're finalizing a banking app with remote UI configuration capabilities. From the project's inception, you've implemented a robust remote styling system with SwiftUI view modifiers that make UI updates seamless. Your codebase includes well-structured style…

  • 2024-06-08
How to build a robust and scalable modular iOS app?

Recently, modularity has gained a lot of popularity in our field over the years. Architectures like TCA and VIPER pride themselves on their inherently modular design. Compared to a monolithic design, modularity offers various benefits: efficient work parallelization (especially in large teams), interchangeability, superior separation of concerns and responsibilities, and…

  • 2024-05-01
Why the best mobie apps need Software Craftsmanship?

What distinguishes a top 10% iOS developer? How can we draw parallels with the craftsmen of old? In what ways can we refine our skills following their lead? How should we select our projects, clients, and companies? Once involved in a project, how do we initiate change to ensure its…

  • 2023-08-09
How to implement scalable and testable SwiftUI navigation?

Although SwiftUI is a great framework, it’s not without its limitations. If you’ve ever had to implement a complex application, utilizing branching navigation flows, you probably know what I am talking about. Yes, navigation components in SwiftUI have been a constant source of headache…  An iOS 16 addition, the NavigationStack,…

  • 2023-06-09
How to test UIKit & SwiftUI views? Explained with memes.

The benefits of having an exhaustive automated tests suite are obvious to anyone who ever worked on an app for more than a few months. We’ve all seen what lack of code maintenance might do: duplication, hidden side effects, convoluted business logic. A project codebase is like a garden -…

  • 2023-03-21
Why should you KISS your SwiftUI views? Explained with memes

If you've been a software developer for a while, you've likely heard about the Keep it Simple, Stupid (KISS) design principle. It suggests that our systems should be implemented in the simplest way possible across all application layers: persistence, services, business logic, and the UI. For all non-user facing app…