Here is an overview of my open source contributions in GitHub
Trello iOS Assisted Onboarding
I work on Trello’s iOS apps. In 2019, I worked on a project to implement an assisted onboarding experience for our apps that supports accessibility, localization, size adaptation and is written in a pure Rx-MVVM style that results in a declarative ViewController and a stateless ViewModel. We open-sourced the VC/VM and unit tests in a sample app.
In July of 2019, I spoke about this project at SwiftFest.
I added eigenDecompose and unit-tests to Surge in February 2019.
Surge is a Swift library that uses the Accelerate framework to provide high-performance functions for matrix math, digital signal processing, and image manipulation.
ListOMat Update / Skillshare course
In January 2019, I updated the NerdSummit app. It now has server customizable session tracks, a slightly better session view, and the sponsor page is fed with server-side JSON.
In October 2018, I added a feature to bluepill to support my work at Trello. Bluepill is a project that makes iOS GUI Testing easier by orchestrating the simulators and tests. My feature allows bluepill to call user scripts after it boots a simulator, but before the test is run. In my use-case, this allows me to install HTTPS certificates into the simulator so that it can connect to our mocked server setup.
Smashing Magazine 2018
In April 2018, I wrote an article titled Will SiriKit’s Intents Fit Your App? If So, Here’s How To Use Them. The source code for a simple to-do app with Siri support is here:
In June 2018, I covered WWDC 2018. To explain Siri Shortcuts, I added support to List-o-Mat and put it in a branch.
In March 2018, I made a minor commit to fix a bug in how fastlane parses workspaces (via Cocoapods’s Xcodeproj), and I wrote up a case study about it on App-o-Mat.
In March 2018, I updated the NerdSummit app (which I forked from my EventOMat). The main feature was to load the schedule from their website instead of including it in the app.
Smashing Magazine 2017
In April 2017, I wrote an article titled Simplifying iOS Game Logic With Apple’s GameplayKit’s Rule Systems. The source code is here:
In May 2017, I wrote an article titled Building Killer Robots: Game Behavior In iOS With Fuzzy Logic Rule Systems. The source code is here:
In July 2017, I wrote a summary of WWDC 2017 with code samples. The Face Detector app from that article is here:
NerdSummit 2017 / EventOMat
In March 2017, I gave a talk about practicing iOS development. As part of that talk, I released EventOMat, a simple app to use to practice app development. It implements a conference app which you could customize for any event.
If you want to use it as a basis for practice, there are exercise branches to checkout which remove a single feature and give overview instructions to help reimplement them.
iOS Swift Playgrounds
- PlaygroundSupportMock: a mock version of the PlaygroundSupport framework to use during authoring.
- pgbookc: a Playground Book “compiler” that can extract a Contents folder from a host app (used for authoring) and turn it into a .playgroundbook bundle.
- ShapeSearch: a book I am writing that teaches binary search.
Talking to the LiveView (bugfix of WWDC talk)
At WWDC 2016, there was a code-sample published along with a talk about how to “talk to the LiveView” of a Swift Playground on iOS. As more iOS10 betas were released (and Swift was updated), this code-sample became out of date. Here is my fix of TalkingToTheLiveView.
Hack for Western Mass 2015
On June 6-7, 2015, I participated in the Hack For Western MA on a project for Gardening the Community to help them engage their community and supporters. The project was a pair of native apps (iOS and Android) to send alerts related to volunteer opportunities, events, vegetable availability, and requests for supplies. I built the iOS app and set up Parse integration for push notifications.
Hack for Western Mass 2014
On June 6-8, 2014, I helped organize the Hack For Western MA. I participated on a team that took a Hampshire/Franklin labor study and built visualizations of it. The work for that is here:
We used GitHub Pages to deploy it here:
It is ongoing work that the Hampshire/Franklin Regional Employment Board and Career Center will help guide.
Smashing Magazine 2014
In March 2014, I wrote an article for Smashing Magazine, titled Getting Your App Ready For iOS 7′s New Dynamic Interactions. The source code is here:
App-o-Mat: training for cordova and jQueryMobile
In February 2014, I started work on App-o-Mat, which is a tutorial site for jQueryMobile and Cordova. To support that I created a app starter template here:
Cordova file plugin pull request
While working for a client on a Cordova problem in June 2014, I found a bug in the file plugin. I patched that here (only the last commit is mine):
Hack for Western Mass 2013
In June 2013, I participated in the Hack For Western Mass, on a team that built a web-based application to manage a distributed seed library. The code is here:
The site is deployed in Heroku here:
Hello! iOS Development
In 2013, I co-authored a book called Hello! iOS Development. The source code from the book is here: