
Sweats the details, especially in the UI. Likes working on cool things. Prefers being part of a team but can cowboy code until the cows come home.
Currently: iOS (Swift and Objective-C), Android (Java and Kotlin), Ruby (but not Rails), CouchDB. Previously: JavaScript, browser stuff, relational databases, and a little Node.js.
Technology is cool and everything but it’s only really neat if used to make the world a better place and improve lives.
Would you like to know more?
My strengths are:
- Empathy for users and their experience
- Helping people so they can do their best work
- Writing the kind of code that helps the rest of the team write less code
- Making complex and rich applications easily usable
- Championing automated testing, builds, and as many other things as possible
- Application architecture
I like my code clean, my tests fast, and my reviews honest.
While I am currently employed full-time I am always interested
in hearing about cool projects that are looking for a little extra
freelance help. Don’t be afraid to
get in touch
and talk with me about what you’re working on. Collaboration
is cool!
- Classroom Solution iOS Swift Objective-C
-
An iPad app used by teachers in the classroom to run lesson plans, interact with students, and more.
A great example of a “legacy” codebase. Mix of modern Objective-C and Swift. Constant change from many hands. Rich with features. Lots of fun to refine the architecture as we improve and add functionality.
Learning Solution Android Java Kotlin
An all-in-one classroom app that runs on phones, tablets, and Chromebooks for students and teachers alike. Unique features for teachers and students.
Leveraging modern Java, Kotlin, RxAndroid, and more this codebase is surprisingly flexible. Everything works seamlessly between platforms which is pretty rad.
Academic Solution iOS Swift Android Kotlin
Used to review the performance of Amco products and those administering them. A webview wrapper app that makes login and session persistence simple and elegant.
Different native apps each for iOS and Android means these apps blend seamlessly into their host OS, making their login and loading processes delightful and unsurprising.
Bēmstrēm iOS Swift
A message aggregation app for parents, administrators, teachers, and anybody else that needs to stay up-to-date with announcements, field trips, and other school activities.
Lots of work went into making the UI fun and rich while avoiding confusion and surprises. Some neat uses of UIKit under the hood that users will never have to see.
Lifesquare iOS Objective-C
Seemingly abandoned, which is a shame. A novel idea to bridge the gap between emergency response and hospital check in that used patient-supplied information available via QR code.
This was a rare freelance project completed in an absolutely mad dash. Geolocation, QR scanning, profile management, and more.
Constellation iOS Objective-C JavaScript
An electronic book platform available across browsers and mobile devices with seamless syncing.
I was responsible for initial mockups, planning, storyboarding, and generally getting this project going. Although most of my work was on the browser side I worked with the systems and mobile teams to make sure everyone played nicely together. I haven’t been involved in this app since 2011 which is kind of wild to think about. Looks like Bridgepoint is still pushing updates so good for them!
- danger-swiftlint creator
- A Danger plugin for displaying SwiftLint issues in your PR
- Font creator
- A Swift library to make custom fonts in iOS play nice with Dynamic Type
- My Objective-C style guide creator
- Definitely some unpopular opinions in there but I think it makes for pretty and predictable code.
- enhance creator
- enhance is a simple image viewer with zooming and UIDynamics for maximum fun.
- loudspeaker creator
- An AVQueuePlayer-backed audio player for iOS with a modern, minimal UI.
- riverss contributor
- Steven Frank (yes, that stevenf) was working on an RSS aggregator but the setup process was a bit clunky. I contributed a setup script to make that first use experience a bit nicer.
- librato-iOS creator
- A delightful and easy librato library for iOS.
- SSZipArchive contributor
- Contributor to SSZipArchive, a simple utility class for zipping and unzipping files.
- clangformat.com creator
- An in-progress tool for understanding
clang-format
and building your own .clang-format
file. Feel free to submit a pull request.
- Batman contributor
- I've contributed to Batman fighting crime and kicking apps.
- sanity creator
- A flexible, easy way to check configuration settings at app startup and control app flow.
- tiltShift.js contributor
- a jQuery plugin using CSS3 filters to replicate the tilt shift effect
- backbone.abide.js creator
- Manage multiple AJAX submissions and backbone views
- Polite Focus creator
- A nicer way of asking for focus on a form element