Earth Class Mail Review

I ran Earth Class Mail as CEO for a couple years and loved my time there.  I am still a customer for our business and finally got around to writing a review for it, including a bunch of screenshots, pricing, and a breakdown of the features (including their check deposit).  Check it out here – Earth Class Mail Review.

Quick aside about their check deposit service – I used to love it, but for the two checks we get per month, $10 per check was just enough to dissuade me not to use it.  Instead I just print out a Chase deposit slip and mail it in.

Posted in Uncategorized | Leave a comment

Of Course I Have Another Side Project

What fun is life without a few side projects?

Ladies and gentlemen, I present to you a super-easy way to run SQL reports in Slack,

What’s you say?  You’d rather use sp_send_dbmail  instead because you love MS SQL Server more than life itself?   Well, go for it.   For those of us who enjoy saving time and aggravation, give a spin.

Right now we support SQL Server, Postgres, MySql and (can you believe it) Amazon Redshift.    You can schedule reports or call them real time right from within Slack using the SQLBot slack bot.   Fun stuff.  Enjoy!


Posted in Uncategorized | Leave a comment

Rails 5 – how to create a child before a parent

I’ve been hacking away on a personal budgeting app on my train rides and ran into a squirrely problem in rails 5.   My budgeting app uses the spectacular Quovo API ( to pull transactions from my Chase accounts.  Quovo rocks, it’s like Plaid or Yodlee, but has a free plan that gives you 100 free connections.

Anyway, the Quovo API brings back connections  and accounts, among other things.   The problem was that the webhooks came with the account information before the connection info.  I have my models set up with the connection as a parent to the child accounts.    Every time I tried to save the account without the connection created first, I got this error:

ActiveRecord::RecordInvalid: Validation failed: Connection must exist

30 minutes of diligent Googling led me to this great YouTube video by Ruby Thursday (

The answer?  The optional: true parameter, set like this:

class Account < ApplicationRecord
  belongs_to :connection, optional: true 

I added that and bang!  No more issues.


Posted in Uncategorized | Leave a comment

Build a ShareASale Website for $0.10 per month

One of my favorite co-workers in the last few years is my good friend Steven Maguire.    He’s one part hilarious, one part brilliant, and one part pragmatic.  One of my best coding memories from the last few years was figuring out how to fill in pdf’s using prawn, rails, and a handful of other gems to power form filling at EarthClassMail and to help people file medical claim forms online.

Steven loves to build fun things with a minimum of cost, and recently launched his newest funny venture,   If you’re in the market for Wisconsin Badger crop tops, this is the site for you!

On a dev note, if you’ve ever wrestled with the ShareASale API and ShareASale coupon feeds, check out Steven’s article on how he elegantly handled both.   He gives a full rundown on how to use Github pages, Jekyll, AWS Lambda, and a handful of other tech to host a dynamic affiliate site for (basically) free.    Amazing stuff.

We thought about reading in ShareASale’s coupon feed for moving boxes for (if you’re looking for Chicago movers, Orlando movers, or movers in any other city check it out!), but punted b/c we found it too hard to be worth it.  Kudos to Steven for figuring it out!



Posted in Uncategorized | Leave a comment

Back in business helping Moving Companies

It’s been waaaaaaaaay to long since I’ve posted.   A lot’s happened since then.   Let me recap:

  • I took over as CEO of
  • We shut down
  • At HomeFinder, we launched an internal startup called
  • I left to be CEO of in 2015
  • I ended up buying from HomeFinder in 2016

Phew!   I am happy to report that is alive and well, and doing better than ever.   It’s a really great site to find mover – we verify every review with a moving receipt (called a bill of lading), so consumers can trust the reviews they read on site.   For example, check out our Boise, ID movers.   We don’t have a ton of reviews there yet, but Big Boy Movers is a quality company that treats people right.

We’ve got some great features coming out – including giving consumers free pizza on their move days.  Who doesn’t love free pizza?

We’ve also got some great free moving leads programs for movers, as well as a killer review collection product where movers can give free coffee to past customers, and a cool “recommended movers” page that gives top real estate agents free advertising and exposure.

More to come soon!

Posted in Uncategorized | Leave a comment

Bang that Gong Again

Time to bang the gong again, we’ve got a new customer live!   If you need Huntsville Al Movers or Fayetteville TN Movers, then head on over to     General Moving Services serves the Huntsville Alabama and Fayetteville Tennessee areas.

Like all of our moving sites, visitors can get an instant online estimate without having to give up personal information.  We think that’s a pretty cool feature, hopefully it’s one that drives more business.


Posted in Uncategorized | Leave a comment

Read wikipedia content into your Ruby on Rails app

I am playing around with a new site that helps people find horses for sale, aptly named  I wanted to provide searchers some background on the particular horse breed they were looking at, so I decided to provide the first few paragraphs from the wikipedia page for that horse breed, and then link off to the full wikipedia page.  For example, see the content on the lower left of the paso fino horses for sale page.

After some searching around, I found the perfect tool – the wikipedia-client gem on github.   As Judge Smails from Caddy Shack would say, “top notch, top notch!”

Here’s some quick code:

      page = Wikipedia.find(horse_page_name)
Posted in Uncategorized | Leave a comment

How to import a lot of records into a Ruby on Rails application quickly

I stumbled across this today after hacking around for hours trying to figure out import hundreds of thousands of records into a sqlite database in minutes –   Super simple, and pure awesome.   Works for sqlite, postgres, and mysql.

Posted in Uncategorized | Leave a comment

The Kayak/Orbitz/Expedia for buying Moving Boxes online

Been hacking away the last couple weeks building an online price comparison search for moving box kits.   Check it out at, the design has a ways to go, and we still have to add a bunch of providers, but it’s getting there.

We did manage to do one neat thing, we’ll buy $5 worth of Starbucks coffee for anyone who buys moving boxes through us.   Within an hour or two of buying his/her boxes, the person will get an e-giftcard in their email inbox from Starbucks for $5.   Who couldn’t use a little coffee on their move day?

UPDATE: didn’t make it, but check out for finding a great mover and moving boxes.    Since I mention Orbitz in the title, check out what happened to, which wasn’t related at all to   Here’s a quick legal explanation on how they got away with using the Orbitz name.

Posted in Uncategorized | Leave a comment

LAUNCH! – American Accent Rating and Training

What do you get when you mix Twilio‘s awesome telephony API, Amazon’s Mechanical Turk workforce on demand, and Recurly‘s dead simple subscription billing API?  A killer American accent training service –!  Here’s how it works:

  • A person, let’s call him Joe, wants to improve his or her American accent
  • Joe signs up on, and gets a free trial accent training lesson
  • Joe starts his lesson. calls his phone, and has him record a couple of sentences that we pull from a recent newspaper article.
  • Once Joe is happy with his recording, we have 5 native US speakers listen to his recording, transcribe it, and rate his accent.- Here’s the cool part
  • Each US speaker also records himself/herself recording the same sentences, so Joe can compare his accent to to real native speakers speaking the same words

    Accent Rating

    Example accent rating, with recordings

  • Here’s another cool (and geeky) part – we have Twilio transcribe Joe’s recording, and each US speaker’s recording, so Joe can measure how well automated translation understands his american accent, vs. US speakers

    example rating transcription

    Example accent rating transcription

  • We notify Joe when the US speakers submit their ratings, and present him with the cornucopia of information mentioned above.
  • Here’s an example individual accent rating, and an example accent lesson.

Why start such a service?  Simple.  I am a huge geek, and wanted to see if it could be done.  Ok, that’s not the real reason, but I did enjoy the challenge.

The real reason arose when a good friend, who grew up in India, and I were talking about business ideas awhile back.  He wanted to a startup to help Indian students get accepted to US colleges, and the conversation meandered into a discussion of how poor many students’ American accents were.  Fresh off of building a website usability testing service based on Mechanical Turk (, the thought popped in my head that an accent rating and training service was a perfect use of the turk.   Who better than everyday American residents to help people with their American accents?

Now you’re probably muttering to yourself, “that’s mildly interesting, but who’s going to pay money for this?”   Great question.  I am not exactly sure yet, but here are my initial thoughts:

  • students wanting to get into US colleges
  • students at US colleges who want to get a job here
  • Foreign born people in the US who want to do better at work, school, whatever
  • Workers on outsourcing services like,, etc.
  • People visiting the US on vacation
  • the ~600,000 Indian or Philippine residents who work in call centers serving US markets

So who knows where it will go from here, but we’ll see.  Stay tuned for more posts on how things go!

Posted in Uncategorized | Leave a comment