These are a Few of My Stateful Machines – Curt Clifton

As app developers we have to deal with the challenges of stateful code every day. State machines are a powerful technique for managing state — but they’re underused in Mac and iOS development, in part because they can be awkward to implement in Objective-C. Swift changes that. Swift’s smart enums make implementing state machines quick, easy, and fun. In this talk we’ll look at how you can make your apps easier to write, debug, and evolve using state machines in Swift. Along the way, we’ll explore the power of enums, including associated values, methods, and properties.


About Curt Clifton:

Curt Clifton is a software developer with the Omni Group, where he primarily works on OmniFocus for Mac and iOS. Curt came to the Omni Group from Rose-Hulman Institute of Technology, where he was an associate professor of Computer Science and Software Engineering. Curt once procrastinated for three months on his PhD dissertation by scripting OmniOutliner to work as a task management system. Being a bright guy, the irony was not lost on him.

Curt blogs occasionally at When not programming or writing, Curt can be found on the roads and trails around Seattle wearing out another pair of running shoes or hiking boots.

@curtclifton /