This year I reached several milestones. My revenue grew to over $1 million per year. Traffic increased to 1.4 billion requests per year and I'm serving over 1 million users per month. Over 20,000 people have paid for my products now. Nomad List and Remote OK are the main revenue generators responsible for 3/4 of revenue.
From the beginning of my little startup career I wanted to prove you can do things differently when building a company.
Without funding
I wanted to prove you don't need to raise venture capital investment: early on I was never able to get venture capital investment, and I discovered you don't need it. Instead of raising money you can operate extremely lean and scrappy and still succeed. My belief was customers would care about the story behind the product more than how it looked. And they would be okay that it wasn't immediately perfect and might have some bugs. Instead, they'd appreciate the authenticity of that more. As long as I'd improve based on customer feedback, I'd get a loyal and happy customer base and get more customers from word of mouth.
Without a team
I wanted to prove you don't need to hire a big team, but instead could do it mostly solo by learning how to things yourself. When I started out I could barely code, but I learnt it on the spot. From the beginning I've come up with the idea for, then coded and built every single feature on my sites. I've designed the layout, the logos and picked the colors (mostly looking at what the big startups like Airbnb and Product Hunt did). I've edited the landing page videos myself, sent newsletters and did all the marketing myself. (I did pay two part-time contractors: 1) to keep the server secure so I wouldn't get hacked and lose my customer's data; 2) a moderator to keep Nomad List's community a friendly place).
Without fancy technology
I wanted to prove you don't need to use the latest hipster JavaScript framework and a complicated hosting set up with hundreds of servers in a cluster so you could scale. I use a single VPS server on Linode for all my sites. I've reached the frontpage of Reddit multiple times with it. I don't use any framework except jQuery. And I use a language despised by most professional engineers called PHP, also without a framework. My code is mostly vanilla. Kinda like duct tape programming. My deployment process is extremely primitive: I write my code in Sublime Text, then I test it on my laptop (I have NGINX locally, so I open nomadlist.test for ex), then if it works I upload it with Panic Transmit via SFTP. I don't use Git and my versioning works by having backup services with infinite history running on my laptop. But I'd mostly just undo in my code editor. I said primitive, right :D
Without paid marketing
I wanted to prove you don't need to buy ads, but instead that the best marketing is organic and that if you make a product customers use and love, that word of mouth is your best funnel. I've used the story of my own life and building my products with all the ups and downs as my primary way of marketing. Instead of acting like a professional startup founder whose life and business is perfect, I've tried to be as transparent and vulnerable as possible. People like to go on a journey with you especially if you share all your imperfections and mistakes.
Normalization of deviance
This scrappy way of building also made me ship super fast. I saw it as a light form normalization of deviance:
Normalization of deviance is a term used by the American sociologist Diane Vaughan to describe the process in which deviance from correct or proper behavior becomes normalized in a corporate culture.
Vaughan defines this as a process where a clearly unsafe practice comes to be considered normal if it does not immediately cause a catastrophe: "a long incubation period [before a final disaster] with early warning signs that were either misinterpreted, ignored or missed completely".
Why prove it at all?
If it's possible to build million dollar companies without being able to code properly, without outside investment, without a team, without a network and without fancy technology, that means theoretically any person with a laptop anywhere in the world with internet access can now learn to code, find a problem, build a solution, (and with Stripe expanding around the world) charge money for it.
Building a company is becoming democratized, globally
I knew if I'd show this was possible, with me as an especially imperfect example, some people might try to do the same. And together with lots of other people doing the same, we could start a little wave of people building companies in a more organic and lean way without all the above. And I think that's happened by now.
As more people will realize this around the world in the next few years, more people around the world will try to start companies. And more will succeed. And the barriers to entry for starting a startup will decrease.
There's the easy attack vector of me coming from the Netherlands, a first world country, having a (free but) good education, all which contribute and none I'd deny. But that doesn't negate my argument completely. Building a company is becoming more democratic globally even if there might still be differences based on where you're from. And on a meta level, companies being built online by people around the world will help those differences gradually become less as they succeed and bring money back into their economies. Like a feedback loop.
Silicon Valley can now be anywhere.
And now for....normalization of non-deviance (or "the end of index.php")
Now that I've proved this up to a considerable amount of revenue and impact, by my own standards at least, I think it would be stupid to stubbornly try to do things scrappy and solo just because I did until now. I told my friend John from Ghost:
My sites are finally operating stable enough and I don't need to put out fires or fix bugs all day, so this month I've started to think about hiring people. For that I needed to clean things up. So I think my new focus is normalization of non-deviance. Instead of scrappy, I'll try to do things properly from this stage on, at least for Nomad List and Remote OK:
I'm now using Git
I've put my sites on GitHub, and I can now deploy my code from my laptop's local environment, push it to GitHub, which then pushes it to my Linode VPS. Working with Git makes sense because if I hire people, they'll need access to the code base easily. I've also started cleaning up some old code and technical debt so it'll be more easily understandable.
I'm now using Composer and NPM
I've learned how to use Composer and NPM to install libraries and even use GitHub's Dependabot to auto update my libraries. Before this I'd manually include and update libraries.
Building admin tools for the people I hire
I've started to create more admin tools for my sites. For example to edit a job post as an admin on Remote OK, I used to have to do it in the db. Now an admin can do it on the edit page. And on Nomad List, on the admin page new members can be screened for spam and easily flagged.
Hiring people
And I've actually started hiring: the first person I've hired is a customer support specialist. Most of my customer support is automated but I still get about 30 inquiries per month. Also the customer support specialist can help do other stuff like flag people joining Nomad List with fake/spammy accounts or remove stuff like NSFW profile photos. And other regular things I'd do like organizing Nomad List meetups remotely.
Raising money
Just kidding, I don't believe I need to raise investment though, the problem with venture capital for me is the same as it always was. I don't want the stress of having to grow my revenue to a $100M/y company or go to $0. I'm fine with how it's going now and I can cover costs fine.
From rusty to shiny
Before, my goal was to make my sites operate like this, built on-the-fly with scrap metal I found on the road, rough but effective and fast to build and iterate on. And it worked:
The goal now is to have my sites operate without me for a year or more. That means I can focus on what I think is most fun to do: building new startups, products and new features. And the objective is to make them operate more like the pic below, rough but now clean and shiny:
The end of solo
As my friend AJ from Carrd wrote this year, it'd be silly to just keep it solo for the sake of it. We've outgrown the stage of side projects and people do depend on our projects to get shit done.
With Remote OK, people pay a lot of money, anywhere from hundreds to thousands of dollars per month, to hire people. If the site repeatedly breaks and support doesn't answer, that means a lost customer who could have spent tens of thousands of dollars over the next year. With Nomad List, since it's B2C, the damage is smaller but still present.
Rest lightly, the deviance will continue, elsewhere
This isn't the end of the deviant scrappy life for me though.
When building something new, like an MVP or new feature, I think I'll still do things the old scrappy way though. No Git. Just FTP. No frameworks. Just solo. No outsourcing it to hired people.
I'm convinced doing things scrappy is the best way to validate new products or features and iterate towards making something that people actually want to use and pay for.
Instead of working with a big team far removed from your customers, burning through millions of dollars of funding that you spend on ads so you have no idea if people actually want your product, and losing yourself in overengineering technical solutions that customers won't care about anyway.
Scrappy is the closest you can be to the product and customer feedback loop. And since you're solo, it's super fast. No arguments, just shipping. Make, get feedback, iterate, get feedback, improve etc.
And that's one of my favorite things to do in the world.
P.S. I'm on Twitter too if you'd like to follow more of my stories. And I wrote a book called MAKE about building startups without funding. See a list of my stories or contact me. To get an alert when I write a new blog post, you can subscribe below: