I’m available to speak at conferences and meetups, so please feel free to drop me an email email@example.com.
Anything you can do, I can do better
Monoids, Predicates and Sorting Functions
April 2017: At the 2017 Functional Swift Conference in Brooklyn I spoke about small atomic units of abstractions can piece together to build surprisingly complex, yet expressive, components. In particular, I used semigroups and monoids to build an expressive algebra for predicates and sorting functions. This talk is roughly based on the article I wrote “The Algebra of Predicates and Sorting Functions”.
Finding Happiness in Functional Programming
Oct 2016: At the 2016 Functional Swift Conference in Budapest I spoke about how embracing simple, pure functions above all other abstractions has enabled my colleagues and me to build a well-tested, well-understood codebase. I first covered the basics of pure functions and the ideas of identifying effects and separating them from your functions. I then described how these ideas allowed us better our testing suites, enabled us to replace simulators and storyboards with Swift playgrounds, and ultimately a better working relationship with engineers, designers and product managers.
Lenses in Swift
Dec 2015: At the 2015 Functional Swift Conference in Brooklyn I described the basics of lenses and how to implement them in Swift.
Proof in Functions
Feb 2015: At the Brooklyn Swift Meetup I described how we can use the Swift type system to prove simple mathematical theorems. This talk coveres most of everything I discussed in my post “Proof in Functions”.
Functional Programming in a Playground
Dec 2014: At the 2014 Functional Swift Conference in Brooklyn I used Swift playgrounds as a highly interactive way for exploring functional programming ideas. In particular, I developed the ideas of transducers and show how they lead to highly composable data transformations.