Hello, friend — welcome to my quasi-informal personal/professional page.

I have worked as a research scientist, startup executive, and software manager and engineer. I have a lot of experience building product, as well as a strong scientific background. I am passionate about working on analytical and technical problems in order to create things that are noteworthy and, ideally, useful. My focus is machine learning and mobile development.


Recently I built a mask-tolerant sleeping driver detection system for an autonomy startup (one you've heard of, if you're in that space). I built the training infrastructure, organized the training data, evaluated and defined appropriate model performance metrics for the business, trained models, over a few architectures and many augmentations, and finally, developed custom benchmarking and conversion tools. These allowed deploying the model to run in realtime on iPhone devices by making use of Apple's Neural Engine.

I spent four years as the CTO of Topology Eyewear, a San Francisco startup which uses iPhones and its own ML computer vision models to make glasses custom-fit to your face. I started when the company had no app and one employee, and helped bring it to the point point where it has sold thousands of glasses in shops and directly to consumers, has a solid engineering department, and works in partnership with a major international retailer.

In general, I enjoy projects which allow me to draw on my mixed background in science and engineering to analyze a real problem, to do original modelling work to solve it, and to execute the engineering necessary to produce a solution that deploys in the real world. Great work requires great teamwork. But I'm proud to have assembled all the skills to play a kick-ass one-man band when the situation requires.

I now live in San Francisco, where I was born and raised. But I have also lived and worked in Cambridge, New York, Milan, Oxford, and London for about 20 years, mostly in Europe. I enjoy working with diverse teams.

For more info on my work history, education, research, and books and articles I've written or edited, etc., please check out this mostly up to date resume.


Perhaps you came here looking for some of my talks? Here are three of them:

Value SEMANTICS (not value types!)
This is not a talk about value types in Swift. It's a talk about value semantics, how that's different, and why "copy-on-write semantics" is a misnomer. Explained via Alan Rickman and the thought experiment of the Mutation Game.

Talking to Swift
A talk about the hype versus the reality of chatbots, about the design of conversational user interfaces, and how to use cross-platform Swift to build them on iOS and on the Amazon Echo. In this talk I design and demo a chatbot based on the works of the 17th century moral writer, François de La Rochefoucauld.

Protocols with Associated Types and How They Got That Way
A deep dive into Swift's protocols with associated types, their roots in other languages, and why they have a surprising relationship to Objective-C protocols (namely, almost none at all). This talk introduced the term PATs and got 25k+ views on YouTube, which I like to hope is solid "dog riding a skateboard" territory for a niche, unpromoted PL talk.

More talks are listed at my resume page.

What I hope for

I have a weakness (or a strength?) for projects which are grand, fundamental, or pathbreaking in some way. My PhD research, for instance, was on the likelihood of the evolution of complex life. That said, I have also spent meany years as the person in charge of getting down to brass tacks, figuring out what can actually be done, and just getting on with it. To be frank these two impulses live in a constant state of productive (but mildly uncomfortable) warfare within my heart.

Books, social media, etc.

I've coauthored a couple of books, on ML and on Swift, and tech edited dozens of articles, all described on my resume.

I used to give answers on StackOverflow, mostly on the finer points of auto-layout, but also not entirely.

However, you can find me on twitter, sometimes talking about tech, but mostly not!

Official Me

If you're looking for something more like a professional resume, here's a resume.