Going Full Time on My SaaS After 13 Years

In January 2010 I soft-launched launched Preceden, a web-based timeline maker tool, followed a few weeks later by a larger launch on HackerNews:

Today – almost 13 years to the day since the initial launch – I’m going full time on it and I couldn’t be more excited.

A brief history of Preceden

At the time of Preceden’s launch, I was serving as a first lieutenant in the US Air Force and about halfway through a 5-year service commitment I incurred by attending the Air Force Academy, a military college. I knew I didn’t want to make the Air Force a career, so decided to start learning web development with the hope of eventually working full time on a startup after my service commitment ended in 2012.

The first web app I built during this time period was Domain Pigeon (a domain search tool), followed by Preceden, followed by Lean Designs (a WYSIWYG web design tool), followed by Lean Domain Search (another domain search tool I built while deployed to Iraq), plus a few smaller ones not worth mentioning.

By the time I left the Air Force, I had shut down all except Preceden and Lean Domain Search. I did go full time for a few months, but focused entirely on Lean Domain Search. That tool was eventually acquihired by Automattic in 2013, where I joined full time as a software engineer helping with the domain name experience on WordPress.com.

With Lean Domain Search in Automattic’s hands, I was left with just Preceden, which at that point was about 3 years old. It didn’t make much money at the time, but I decided to continue working on it as a side project and see where it went.

Four years later in 2017 I left Automattic to join Help Scout as their first data team hire (during my time at Automattic, I gradually shifted away from software engineering to more of a data analyst/analytics engineer role). I continued to work on Preceden (then 7 years old), and in 2018 I switched to a contractor role so I could put more time on Preceden.

And now, after 4 years of contracting, I’m finally going full time on Preceden.

Here was my announcement at Help Scout from a few weeks ago:

Why not sooner?

It was a combination of things:

  • I made a lot of rookie mistakes over the years that limited Preceden’s growth including not focusing on a specific niche, not spending enough time marketing, not talking to enough customers, trying to do too much myself, and just in general picking a difficult product and business to build (something I didn’t give any thought to initially).
  • I was learning a ton, doing a lot of interesting work, and enjoying the camaraderie I had with my teammates at Automattic and later Help Scout.
  • Financially it made more sense to keep Preceden as a side project.

On the last point – it’s much easier to launch a SaaS than it is to grow it to the point where it can replace your income. As the sole breadwinner in our household with 4 young kids, I was not comfortable going full time and merely being ramen profitable or anything close to it. I wanted to replace or mostly replace my other income, and with Preceden’s SaaS metrics being what they were, it just took a really, really long time to do that. The long slow SaaS ramp of death is something I now have a lot of experience with 😂.

But here I am, finally.

Preceden in 2010
Preceden in 2019
Preceden today in 2023

What’s next?

I plan to focus mostly on Preceden, but will spend some percentage of my time on other pursuits. I recently launched LearnGPT.com, a fledgling GPT education site, and will likely work more and more on AI projects including integrating it into Preceden itself.

Also, it’s been a busy few years, and I’m very much looking forward to relaxing more and spending more time with my family including my two younger kids who aren’t in school yet.

I don’t know what my future holds long term. Preceden’s finances are good enough for now, but not at a point where I can just stop working on it and coast for years. With a little luck, Preceden will continue to grow and will continue supporting me full time to either focus on it or other pursuits. There’s also some chance I get bored with it or stumble across some promising new startup and I wind up going back full time somewhere else. We will see!

I do hope to blog more frequently so if you are interested in following along, you can subscribe via email, RSS, or just follow me on Twitter at @mhmazur.

Thanks for reading 👋.

Comments on HackerNews

Building a Startup in 45 Minutes per day While Deployed to Iraq

deployment.png

You may one day find yourself in a position where you’re eager to work on a startup but limited by the amount of time you can put into it due to a day job, family or other obligations. In this post I would like to share with you all the story behind Lean Domain Search, a domain name generator that I built in about 45 minutes per day during a 5-month deployment to the Middle East. If you’re struggling to find time to put into your startup, I hope this convinces you that you can accomplish a lot over time by putting a small amount of work into it each day.

Background

In the summer of 2011 I was a 26-year-old freshly pinned-on captain in the Air Force serving as a project manager at Hanscom Air Force Base in Massachusetts. I was 4 years into my 5-year service Academy commitment which meant that I had to serve one more year to pay back the Air Force for my education and training.

At the time I also had two moderately successful side projects that I had built on nights and weekends in the years prior: Preceden, a web based timeline maker, and Lean Designs, a drag and drop web design tool.

Everything was going smoothly until my Unit Deployment Manager called me into his office one day and informed me that I had been selected to go on a six month deployment in August.

This presented quite a predicament. As a solo founder, I didn’t have anyone I could turn my two projects over to maintain while I was away. I also had no idea what the internet situation would be like wherever I was headed, but more importantly I didn’t want to be distracted by these projects while I was out there.

I was contacted by the officer whose position I was going to take over when I arrived. He filled me in on some of the details and I eventually learned that there was limited internet access where I was going to live, but it was slow, had a firewall, and I’d probably be moving bases several weeks after I arrived anyway. I asked him if he could check to see if he had access to sites like Heroku (where my sites were hosted) and Github and he confirmed he did, but that still didn’t guarantee I’d have access to make changes to my sites, time to work them, or even internet access for the entire deployment.

I decided to keep the sites running, but to stop working on them several weeks prior to the deployment. That would provide time for any bugs to surface which would allow me to head out on the deployment knowing that the sites were in good shape. I also decided not to work on them at all during the deployment so that they wouldn’t distract me from my job.

A small deployment side project

During the pre-deployment training one of our instructors suggested we pick up a hobby or something else to work on during downtime. For example, some officers use downtime during their deployments to take online classes towards a master’s degree. I wasn’t interested in that, but decided that I would try to work on a small software project when I had time.

Back in 2009 I had another domain search tool called Domain Pigeon. I was just getting started with web development so I couldn’t figure out at the time how to do what I really wanted to do which was to allow users to enter a keyword and pair the keyword with lots of other terms to generate and quickly check the availability of quality domains. Instead, I built Domain Pigeon, a service that simply listed interesting available .com domains:

domain-pigeon.png

Domain Piegon, Lean Domain Search’s predecessor, in November 2010

I eventually shut Domain Pigeon down to focus on other projects, but the original idea stuck in the back of my head. By the time my deployment came around, I had a pretty good idea of how to implement it so I decided that would be what I would work on.

My daily schedule

I wound up getting assigned to lead a team that oversaw communications (network, radio, satellite, etc) for the aviation unit that supported special operations forces in Iraq.

We worked 12-hour days every day for the entire deployment including weekends. I need roughly 8-9 hours of sleep to function at full capacity which left me with about 3-4 hours at the end of each day (typically around 6am) to have a meal, exercise, shower, chat with my wife, hang out with my coworkers, unwind and maybe work on my side project. In practice, that usually was about 45 minutes per day. Sometimes more, but often not at all.

Fortunately, there were never any major issues with my other projects during the deployment. A few small bugs surfaced, but nothing that impacted many users. I still had access to my email so I could respond to support requests when I had time. And because I was working on the new domain name generator locally on my laptop, I could work on it without worrying that there would be issues in production.

Piggy-backing on the popular lean startup movement as well as the name for my existing Lean Designs tool, I decided to call the new domain name generator Lean Domain Search.

Due to the drawdown of US forces in Iraq at the end of 2011, I wound up coming home after 5 months instead of six – in January 2012 instead of February 2012 like originally planned. I had two weeks of R&R after I got back, the first of which I spent with my wife on vacation in Maine, the second of which I launched the first version of Lean Domain Search.

leandomainsearch-launch.png

Lean Domain Search when it launched in January 2012

I continued working as a project manager at Hanscom Air Force Base until my commitment ended in September 2012. My wife and I then moved back to Florida to be closer to family and I decided to work on Lean Domain Search full time.

Acquired

Remember I mentioned Domain Pigeon, my original domain name generator? When I launched it in early 2009, Matt Mullenweg, co-founder of WordPress and now CEO of Automattic, saw its launch on HackerNews and shot me an email saying he thought Domain Pigeon was neat and that if it didn’t become a full time job there were a lot of opportunities to work on domains at Automattic.

We chatted briefly on Skype, but I was a second lieutenant at the time and still had over three years left on my Air Force commitment so it didn’t go anywhere.

In early 2013 after I had been working on Lean Domain Search full time for several months, I remembered Matt’s old email about Domain Pigeon. I checked out Automattic and WordPress.com and decided to reach back out to Matt to see if there was still an opportunity. I found his original email and responded to it again, this time 4 years after he sent it. I reminded him who I was, explained that I was working on a new domain name generator, and that I saw an opportunity for it to be put to use on WordPress.com to help users find better domain names. He encouraged me to apply for a developer position which I did and in the end Automattic wound up hiring me and acquiring Lean Domain Search.

leandomainsearch-today.png

Lean Domain Search today

That period from August 2011 when I deployed to June 2013 when I started at Automattic was probably the most intense period of my life. I am extremely grateful that things worked out the way they did. In the end I wound up with a small acquisition, an amazing job at Automattic, a deployment that I’m really proud of, and experiences that will stay with me for the rest of my life.

If you’re considering working on a startup but can’t make the leap to do it full time for whatever reason, remember that even a few hours per week can have a huge impact in the long run.

Stick with it. Amazing things can happen.

Discussion: HackerNews, /r/startups, /r/entrepreneur

Lean Domain Search Launch Report

Yesterday I launched Lean Domain Search, a new domain search engine, on HackerNews.

You can read the discussion here: Review my Startup – Lean Domain Search – The fastest way to find a domain name.

It started with Domain Pigeon

Lean Domain Search is a follow up to Domain Pigeon, my first Rails project which I launched (also on HackerNews) a little less than three years ago.

Lean Domain Search is what Domain Pigeon was supposed to be: you type in a search phrase and the app pairs it with other words to generate domain names and instantly shows you which are available. I even kept a notebook in my car and when I saw a company name that started or ending with something that would also work for a domain name, I’d jot it down. One problem though: I didn’t know how to do it.

It’s not hard to programatically check whether a domain name is available, but doing it in bulk and doing it fast is. When I started trying to implement bulk search for Domain Pigeon, I couldn’t figure out a way to do it well. I decided to pivot slightly and simply listed available web 2.0-style domain names instead.

Domain Pigeon did well, but I made a bunch of mistakes which eventually led to its downfall. I remember thinking foolishly “Man, making money with web apps is easy.” Domain Pigeon was never supposed to take off. It was a something I undertook to learn web development; it wasn’t supposed to be what I became known for. Yet I’d go to Philly on Rails meetups and I’d be the “Domain Pigeon guy”. And so I started working on other projects, one of which eventually became Preceden. I kept working on Domain Pigeon on the side, but as I became more and more involved in Preceden’s development, I let Domain Pigeon slide and eventually just said screw it and shut it down.

Looking back, my two big takeaways from Domain Pigeon where:

1) It’s hard to make money with web apps. If you are lucky enough or talented enough to find something that people like and will pay for, double down.

2) If you do decide to work on new projects, don’t abandon your existing ones. If you don’t have the discipline to maintain existing projects while building new ones, then don’t build new ones until you do.

Lean Domain Search aka Domain Pigeon 2.0

I launched Preceden and eventually Lean Designs, but I still had the domain name itch. I really wanted to build that original search tool and continued brainstorming ways to do it. About five months ago I decided to take a break from Preceden and Lean Designs development and go for it (without abandoning either — see #2 above).

Lean Domain Search is the result. It’s better that what I originally envisioned: it generates and checks the availability of 1,000 domain names in about 2 to 3 seconds (go check it out!).

The HackerNews launch

The launch on HackerNews went well, but it was not without issues (launch day never is).

The biggest problem was the accuracy of the results. I estimated beforehand that about 1 in 1000 available results would be actually be registered due to some quirks with the way they were being checked. That turned out to be a tad bit optimistic: it was more like 1 in 20. As an extreme example, the results for “cloud” returned 10 results, none of which were actually available. This was understandably frustrating to anyone who searched for “cloud”, found domain names that he or she got excited enough to register, and then found out it was actually registered.

As a temporary solution, I added a “Double-check availability” button that let folks confirm an available domain name was indeed available before going off to register it. This worked great on my local computer, but there was a bug in production that caused it to say that every result was registered. I didn’t notice this until a few hours later by which time 800 people had double-checked the availability of a domain name and Lean Domain Search said the equivalent of “Oh, actually it’s registered. My bad.”

There was a hectic hour of hacking after that where I troubleshot and fixed the double-check feature, but it still felt sloppy. Everyone searching for “cloud” still got those same 10 incorrect results. Eventually it clicked: why not track the double-check results and stop showing ones that come back registered?

After another few hours of hacking, I had a decent solution in place: if you double-checked the result of an available domain name and it came back as registered, Lean Domain Search would remember that and it would no longer be shown in the available search results for you or anyone else. This way the results become more and more accurate as more people use it. 1 in 1000 might never be possible, but the false positive rate should eventually be closer to 1 in 100 than 1 in 20 (and thanks to Mixpanel, I can actually track that over time).

This morning I spent a few hours cleaning up the code and making other improvements. For example, when you click a domain name it will now automatically double check the result so you don’t have to.

I also found a typo today in the Namecheap affiliate link that caused my affiliate code to be dropped so I didn’t get credit for who knows how many domain name registrations yesterday. Fun!

But it was still a good day. All in all folks used Lean Domain Search to make about 14,000 searches yesterday thanks to it sitting on the HackerNews front page for almost 20 hours. Launch day traffic is always inflated though (don’t be fooled!); the trick is getting it back up to that point over the next few months.

The mentions on Twitter about Lean Domain Search were very positive too — thank you to everyone who Tweeted about it.

Here’s a screenshot from today:

On a final note, I should be blogging a lot more in the future. If you’re not subscribed to the RSS feed, you should.