About this Blog

My name is Andrew Wagner and I am a software developer focussed on iOS and web development. I have a passion for product and user experience development. I don't care what technologies or skills I have to learn as long as they allow me to shape the products I develop to provide the best experience possible for its users.

My main skills are in programming and user experience, but I have dabbled in graphic design, product design, marketing, business development, and everything else involved in turning an idea into a marketable reality.

On this blog I write about the practical things that I come across while working as a freelance developer and building my own app business.

For more information you can visit my about me page.

Featured Posts

Learning Swift, Server-Side Swift, and the Future

I have been extremely busy so I haven't made the time to write any blog posts. In this post I give a brief overview of what I have been up to and what my short-term plans for the future are.

What is an Optional in Swift

A summary with examples of what an Optional is in Swift

Recent Posts

The Most Difficult Thing I've Ever Done - Writing a Technical Book

An in-depth discussion of my experience writing a technical book about learning Swift.

Practical Use for Curried Functions in Swift

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

Swift KVO Substitute: Observable Variables

My attempt to implement a KVO replacement purely in Swift

Getting Started With Swift

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

Uses for Implicitly Unwrapped Optionals in Swift

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

7 Cool Features in Swift

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

Swift’s Weird Handling of Basic Value Types and AnyObject

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.

Testing Asynchronous Code in Objective-C

Testing asynchronous code in Objective-C can be a real pain unless you make one simple change to the way you program it in the first place.

Better UIAlert Handling and Easier Testing

A more declarative and testable way to display alerts in iOS.

Be A Better Indie - 5. Listen to Podcasts

A list with descriptions of the main podcasts that have made me a better developer and keep me informed.

All Posts