RSSAmplifier

Blog

Jacob Zivan Design

Independent apps for families and everyday life, plus notes on Swift, Kotlin, and software design.

jacobzivandesign.comRSS feed ↗21 posts

Latest posts

Applying to, prepping for, and speaking at Deep Dish Swift

Deep Dish Swift issued a call for papers, and since speaking at a conference was on my list of goals for 2025 I applied to speak. As a first time presenter I didn't expect my talk to get selected, but it was! In this article I'll give you the run down on what the process was like; from application, to preparation, and rehearsals… all the way to after the talk.

Markdown links can do what?

Did you know that SwiftUI has Markdown support and you can put links in your text… and they work? Well that's old news now, in this article I'll show you how to hijack the SwiftUI Markdown link and treat it like a button to run any code you want!

Never Miss a Localized String Value Again

Managing localized strings can be difficult. But, there are some tools on how to manage localized strings in iOS to make sure we don't royally mess things up. In this article, we'll cover how to utilize compile time checks and prevent errors with localized strings.

Humans write code, and humans make mistakes.

One thing I've learned is to **just freaking** let the compiler prevent me from making mistakes. Sometimes that's hard to do, then I learned about something called a Domain Primitive and I decided to give it a try in Swift.

Goals are… hard.

Long-term goals are really hard. Why do some work and others don't?

Intelligent Navigation with SwiftUI

At WWDC 2022, Apple announced a new navigation paradigm that simplifies managing a user's navigation stack immensely! Take a look at the new Navigation Stack, available on iOS 16 and macOS 13

Deep Links

Set up deep linking in your SwiftUI app with ease! In this article we'll cover the apple-app-site-association file, associated domains, receiving the deep link, and parsing information off of it.

When Stack Traces Aren't Useful…

Swift Stack Traces are not very useful in most logs because they're obfuscated. In this article, we'll learn how to determine the call site in a usable way using Swift's #file, #line, & #function

Polymorphic Serialization in Swift

Learn how to use Codable enum's in Swift to handle Polymorphic Serialization.

Dependency Injection

SwiftUI comes with its own Dependency Injection framework. Learn what dependency injection is, and how to utilize the Setter Injection provided by swift.

Packaging your Custom Fonts in Swift Packages

A Tutorial for adding Custom Fonts to a Swift Package that can be consumed by another application. Allowing you to easily share fonts between your iOS, tvOS, MacOS, and WatchOS apps!

The Presenter Pattern

Clean up your views with the Presenter pattern in Swift UI. Some people call it "BetterProgramming" when the view contains a lot of `@State` variables and functions. It's really not. Let's take a look on how to write a presenter with Swift 5.5

Handling Dark Mode Elegantly in SwiftUI

Sharing dark mode capable colors in SwiftUI using @Environment(\.colorScheme), protocols, and extensions. Forget UITraitCollection.userInterfaceStyle. Learn how to create shareable, responsive colors using computed properties in SwiftUI.

Auto-Magically generate mocks using Mockingbird

Now that you understand Mocking and Stubbing, I'll show you how to avoid writing hand-rolled mocks using Mockingbird; an amazing framework that makes unit testing a breeze.

What's Mocking and Stubbing?

What are Mocking and Stubbing and how do those concepts help write write cleaner, more effective unit tests in Swift. We'll explore Protocol Oriented Programming and hand-rolled mocks.

Mirroring Kotlin's Elvis Operator in Swift

Unwrap or Throw - Make Swift's equivalent to Kotlin's Elvis Operator! A Tutorial for adding Custom Operators in Swift.

Scalable Custom Fonts in SwiftUI

A Tutorial for adding Custom Fonts in SwiftUI with Dynamic Sizes. Learn how to add fonts to an iOS application and set them up to scale with the user's preferred font size through SwiftUI Font extensions.

Responsive View Components

A Tutorial for Handling Accessibility in SwiftUI using a ViewBuilder, PreferredFont, and DynamicTypeSize.isAccessibilitySize. Updated for Swift 5.5!

Why We Work Matters

Become a better Software Engineer. Discover who your users really are, then, work with purpose and be diligent even in the little things.

Small Pull Requests

Large vs Small Pull Requests. How to make small pull requests and the benefits. Work faster, find more bugs, write better code, be a better coworker.

A Precise 5 Star Rating with SwiftUI

SwiftUI 5 Star Rating View Tutorial - Use SwiftUI to make a Star Review component from scratch!