The past few months, my side hustle and technical interview course AlgoDaily hit $3k USD MRR. It's a small amount compared to my software engineering position at a large tech company, but it covers rent and gave me something to work on during COVID. While running this project, I learned a ton of stuff that's been really useful for both the business, as well as for at work. Here's a small sampling.
This statement is of course being facetious, but not to a tremendous extent. Many outsiders will think that in a software project, engineering should roughly consume 50% of your time, and marketing/sales/biz dev the other half.
This is great in theory, but it turns out that marketing/sales brings in 100% of the money-- shocking, right? The old adage rings true: you can literally have the best product in the world, but if no one knows about it, it won't really matter. Likewise, when people are on your site or app, they just care that the button works when it's clicked. Only fellow developers will find it cool that you're using turbolinks or react-dom-router.
For the first year and a half of running AlgoDaily, I spent nearly all the time improving the product, and refining it technically. I built a daily coding newsletter and wrote hundreds of long-form, quality solutions. Then added an editor and runtime to the site so folks could execute solutions. Then I hired a team to add solutions in other languages. Then I worked with a team to create hundreds of beautiful visualizations and diagrams. None of these things improved sales dramatically.
You know what did work? Telling people about it! Sharing my work with communities (shout out Hacker News and dev.to), asking email subscribers to check out the premium course, getting and sharing testimonials, and spreading the word via social media/youtube/meetups-- getting people's attention was by far the most crucial thing for the sustainability of a small business.
One huge mistake I made in the very beginning was mistaking content plays with platform plays. It's too easy for a software product to just be labeled "software", and for its founder/maker to start listening to generalized advice that may not apply.
For example-- "it needs to be 10x better". Not if you're a content business! An online course, newsletter, or Youtube channel only needs to be marginally better to have users make the switch. Think about it-- if I have the option to watch Selling Sunset or Million Dollar Beachhouse, I'm picking Selling Sunset every time even though it's just a minor improvement in quality.
Another one-- "build an MVP first and iterate". If you're trying to offer articles, tutorials, videos, or podcasts-- an MVP is just episode one. You won't learn much until episode 100 or so!
AlgoDaily really started to take off when I got burned out after the first year for several months. I then started hiring people to help with nearly everything, and only then did it start seeing traction. If you're a solo maker, don't hesitate to hire!
The term "indie hacker" is kind of bull, largely because there's no such thing as a pure one-person business. Yes, one person may oversee or run things, but the second you need vendors (hosting, forms, newsletter, graphics, design), you've started to build a team. It may be a low-touch team, but if any part of your business depends on a third-party solution, you're no longer on your own.
I think the majority of entrepeneurial advice/content is largely useless in the moment that it's being consumed. I now strongly believe in favoring just in time advice versus just in case advice.
What's the difference? Just-in-case advice is when you peruse indiehackers.com or pick up a business book for entertainment. You'll read a case study to get motivated, or to get inspired, but it's probably not useful to you at that moment. There's nothing wrong with this-- in fact, I'm having a great time reading Reed Hasting's new book on Netflix-- but I know that it's infotainment.
Just-in-time advice, on the other hand, is when you don't know how to do something and look up a tutorial. It's when you feel chronic fatigue and see a doctor, or have a specific legal question and seek out a lawyer. I've found business advice to be much more useful here, because it's specific to the problem at hand.
It's cool to read up on how an ivy league grad launched a multi-billion dollar startup when she was 21, but almost none of what they did or said will ever apply to someone creating a small online course while trying to start a family. Learning about morning routines and what founders read is dope, but what will actually help your hustle is to try everything and learn from failures.
99.9% of AlgoDaily users are lovely. I've corresponded with hundreds, if not thousands of you at this point, and for the most part you're all great! I've made several mistakes along the way, and the AD community has been extremely forgiving and encouraging even during big mishaps.
However-- there really is a correlation between willingness to pay and customer quality. The nastiest emails I've ever gotten have been from folks who've bought a subscription during a sale, paid for a month (the absolute minimum), and then demanded a refund while deriding myself and the product. On the other hand, the folks who pay for the most expensive packages upfront, or stay subscribed for many years, never complain and are usually the first to give testimonials and praise in public.
I'm not sure what to make of this. I price AlgoDaily at a ridiculously low price. You get a daily coding email, hundreds of illustrations, and video solutions for what amounts to $5-6/month if you pay annually. I do this to try to help folks and give back to the dev community, obviously while also learning some things about running a business-- but why people will be rude and mean while getting so much value (and often completely free content) will never make sense to me. What a fascinating phenomenon.
As every thought leader now says, hope this brought you some value. If you're preparing for technical interviews, consider the best and most accessible course available.
Sign up for our newsletter list and join over 11,848 brilliant developers leveling up and solving the most common coding challenges daily.
Welcome to the most accessible guide to technical interviews. AlgoDaily was created to be a gentle, visual introduction to patterns around solving data structures and algorithms challenges.
We believe that technical interviews are a matter of practicing well. We've referenced hundreds of resources on habit change, education design, and algorithms to design the best and most streamlined learning experience.