I create web applications. These days, I spend most of my time consulting with Ruby on Rails and specialize in helping teams improve their development, testing, and release processes. That’s to say that I help teams who don’t have any tests written improve their test coverage and code quality in an ongoing and sustainable manner.
I graduated from the University of Texas at Dallas in 2000 with a B.S. in Computer Science. From there, I spent the next eight years in consulting focusing primarily on front-end development and information architecture while dabbling in .Net and Ruby on Rails.
Over the years, I’ve worked in a variety of roles on sites and applications of all sizes. I currently work as an independent consultant helping SaaS applications with both front-end development and back-end development using Ruby on Rails.
Crested Butte Jobs
In 2021, after some time away from building my own apps after selling my business, my wife and I recently launched a small Rails app to help people find jobs in the Gunnison Valley in Colorado, aka Crested Butte Jobs. It’s been a lot of fun to build a tiny side project outside of the SaaS space to support our local community.
In 2008, I created Sifter, a hosted bug and issue tracking application built with Ruby on Rails. In July of 2010, I began working on Sifter full-time. In March of 2016, I sold Sifter to focus on recovering from medical issues that ultimately led to a left below-knee amputation.
Starting & Sustaining
In 2013, I wrote the first edition of Starting & Sustaining, a book that addresses the logistics and lessons learned of starting and successfully running a hosted web application as a solo founder bootstrapping.
After running Sifter through several years of health issues and ultimately selling it, there was a bit more to add. In 2018, I released the second edition that turned out to be a huge update. I also did a series of interviews with others around the SaaS industry focused on their struggles and overcoming those struggles.
Around the Web
A List Apart
- Password reset email design best practices
- Best practices for sending on behalf of your users
- Considerations for evaluating transactional email service providers
- Transactional email bounce handling best practices
- User invitation email best practices
- Comment notification email best practices
- Receipt and invoice email best practices
- Trial expiration email best practices
- Transactional email best practices
- Gmail Inbox Actions can improve your transactional emails
- How does SPF protect your domain from email spoofing?
- Inside Intercom
- Bootstrapped.fm Part 1 & Part 2
- The SaaS Bootstrapper
- Indie Hackers
- Hack the Entrepreneur
- Rocketship.fm - Getting Over the Fear of Starting a Business
- Churn Buster - Customer Success from the Bottom Up
- Product People - SaaS isn’t all rainbows and unicorns
- Chasing Product - Practical Product Transitions
- Your First Customers
- Founder’s Talk
- Ruby on Rails Podcast
- Peers Conf - Seattle 2017
- Refresh Dallas - Dallas 2017
- MicroConf - Las Vegas 2018
- Ruby FTW - Ft. Worth 2014
- SchnitzelConf - Austria 2010
- Webmaster Jam Session - Dallas 2008
- Webmaster Jam Session - Dallas 2007
- Web Visions - Portland 2007
- Web Visions - Portland 2006
- SXSW - Austin 2006
- Refresh Dallas - Dallas 2005