I'm interested in storytelling, projects that better people's lives, meaningful human interactions, good design, workflow and product improvement, and delivering new technology to the public at large. Good ideas keep me up at night.
Currently I'm working on the maps team at ForeFlight.
Updated Part 141 Flight Schools on this list This is a collection of colleges and universities in the United States with FAA-approved Part 141 flight school programs that accept the GI Bill, based on the Institutional Authority List published by the Federal Aviation Administration. Graduates of these schools can become eligible to apply for the
I want to share my experience in getting a tailwheel endorsement, what I learned about flying, and about the general aviation community. If you’ve been thinking about getting your tailwheel endorsement, hopefully my story can help separate the facts from myths, and help you know what to expect along the way. Not long after I
One of the issues I often face, whether I’m optimizing a page for performance or when gutting old pages is the need to get only the used CSS on a page. Chrome has a tool which can show you how much of your JS and CSS is “used,” which is tremendously helpful. It can tell
Weev is a super minimal real-time anonymous collaborative text editor I created as a fun experiment. Everything about the design of Weev was meant to emulate WordPerfect 5.1. I also designed the site to not require any information about a user in order to start creating documents or collaborating with others. It’s sort of like
BetterSession is a web analytics platform I created that allows people to start a conversation with their site visitors while monitoring site activity like a video feed.
Cardigan is a project I started building in 2016 that blends e-commerce and a personal touch. It’s my goal to offer a way to send greeting cards to people in the mail all through a web interface, including shopping and personalization, stamping and sending.
MySQL has the ability to retrieve a list of rows sorted by a manually defined order through the use of the FIELD() function. But what does that look like when using ActiveReceord’s Arel to compose SQL queries? If you’re very committed to using Arel’s design-specific language, there exists a way to use it for this
Sort of out of nowhere, I decided this summer that I wanted to become a pilot, and began compulsively researching what it would take to start training the next day. Similar urges have occurred many times throughout my life, and has led to me riding motorcycles and owning a parrot, among other things. My research
I came across the need to limit the words in a string to a certain list of words. This turns out to be a little more complicated than blacklisting a list of words, such as profanity, from a string. Parameters Assume the whitelist is foo bar baz. Match whitelisted words in any orderPass: foo bar