About Me

Posts

JSON Encoder Change in Swift 5.1

written by Andrew Wagner on

While updating my app for the iOS 13 SDK, I came across a change in JSONEncoder that broke some of the logic in my code. It now supports encoding top-level values.

more...

Swift Quiz – Boolean Expression

written by Andrew Wagner on

What is the value of result after doing: let result = false && true || true

more...

Singletons and Shared Instances in Swift

written by Andrew Wagner on

A couple very common programming patterns, especially in the Apple world, are Singleton and Shared Instance. People often confuse the two and there's also controversy around them. Let's clear these things up.

more...

Careful with Fancy KVO Callback

written by Andrew Wagner on

Be warned: there may be a bug in the fancier version of Key Value Observering. I discovered it while implementing a progress callback in my Decree web request library.

more...

Keyboard Field Prompt

written by Andrew Wagner on

I walk through how I solved the question: How do I display a text field directly above the keyboard to prompt the user for some text?

more...

Decree – A Declarative URL Request Framework

written by Andrew Wagner on

Decree allows you to make HTTP requests in a clear and type-safe way by declaring web services and endpoints. It supports all Apple platforms as well as Linux. It is the culmination of a technique I've developed over many projects. Some of those projects even include both a frontend and backend implemented in Swift that get to share a single source of endpoint declarations.

more...

Deploying Server-Side Swift

written by Andrew Wagner on

There are many ways you could choose to host a Swift website or web service, but here I share what has worked well for me.

more...

Deploying Server-Side Swift

written by Andrew Wagner on

There are many ways you could choose to host a Swift website or web service, but here I share what has worked well for me.

more...

5 Core Swift Competencies Before You Get a Job

written by Andrew Wagner on

A list of skills, beyond just the ability to get the job done, every Swift developer should know before they get paid to develop.

more...

Practical Use for Curried Functions in Swift

written by Andrew Wagner on

An practical example of how curried functions in Swift can be useful for implementing a logger

more...

Swift KVO Substitute: Observable Variables

written by Andrew Wagner on

My attempt to implement a KVO replacement purely in Swift

more...

Getting Started With Swift

written by Andrew Wagner on

A list of key concepts to know when getting started with Swift and links to resources to stay current with its development.

more...

Uses for Implicitly Unwrapped Optionals in Swift

written by Andrew Wagner on

A list with concrete examples of when and when not to use Implicitly Unwrapped Optionals in Swift.

more...

What is an Optional in Swift

written by Andrew Wagner on

A summary with examples of what an Optional is in Swift

more...

7 Cool Features in Swift

written by Andrew Wagner on

Concrete examples for some cool and practical new features in Swift that will improve the daily lives of iOS and OS X programmers.

more...

Swift’s Weird Handling of Basic Value Types and AnyObject

written by Andrew Wagner on

Basic value types like String and Int can be secretly converted to Objective-C types like NSString and NSNumber. This has some interesting effects and implications.

more...