|
Hi! It's Alex, creator of Refactoring.Guru. A few weeks ago, I emailed you about my new project GitByBit. This is its origin story: how an indie dev with no team, no ad budget, and one aging traffic source tried to build something useful while the dev world was being torn and rearranged all around the globe. If you've ever wanted to launch something of your own, you may find some useful insights into how to pick an idea and what to consider when you begin, along with a few real numbers. Skip this if you don't like postmortems or cringy humor.
The hook |
|
In the winter of 2023, I had a Up until that point, I'd been living the bumpy life of an independent developer and educator, trying to stay afloat while making cool educational materials for developers and surviving never-ending, life-altering events such as a revolution, the birth of a child, a pandemic, and a full-scale war in my country. Luckily, my recent project Refactoring.Guru was all the rage at that time, and despite many challenges, it felt like, after two decades of trying, I'd finally managed to produce a hit. But like everything good in life, that sense of stability didn't last long. Make something useful, publish it, wait for people to find it, hope enough of them come back to support your work. Until very recently, this was the go-to strategy for small creators, publishers, and educators. Let's see if it still works. Choosing the direction for a new productAt the start of 2023, there was only a hint of what was yet to happen. ChatGPT 3.5, a very silly model from today's perspective, but a GENIUS-level AI at the time, made me wonder whether any purely information-based product was pretty much doomed. I'm looking at you, my silly books and websites!
If plain explanations were becoming cheap, maybe guided practice with REAL tools still had value. Yes, ChatGPT could explain most stuff, but it was still just a chat: there was no way to run anything in it, and there weren't any illustrations or videos either. Besides, I'd always wanted to move the learning environment closer to where the actual work is done. Instead of learning on a website or in simulated web editors, I thought it would be cool to have some sort of tutor right in your IDE.
So, I had a rough idea of the desired format: a practice-based course inside a code editor. But which editor? There were two major editor families around: VS Code and JetBrains IDEs (IntelliJ IDEA, PyCharm, and the like). I decided to start with VS Code, since it was open-source, free, and popular among beginners. It's also based on the JavaScript stack, which I knew well and which would let me get something up and running relatively fast (it was early 2023, remember, so there was no Claude to write code for you in any esoteric language). Luckily, later on, new IVEs (integrated vibe environments) such as Cursor, Windsurf, and then Antigravity were all VS Code forks, so my little thing became compatible with all these editors without much extra effort.
The tech was chosen, but what about the topic? My main option was to develop a new version of the Refactoring course, requested by so many people over the years. The current version is web-only, and practicing refactoring right in your IDE would likely be a killer product. However, by that time, I'd already attempted several unsuccessful redesigns of that course and was burned out on the topic. Besides, it was likely to be huge in scope, and I wanted something smaller to try out this new practice-based educational concept (btw, I'll return to that topic in later parts of this series, so stay tuned if you're interested). So, of all things in the world, I chose Git. Why, though? Business considerationsBeing a solo indie dev means constantly sweating over such nonsense as:
Coming up with something that would tick all the boxes is tricky, because you often have zero clue about the grand scheme of things. You're just a single person, often without a huge budget or powerful friends. There are tons of ways to test product ideas, yes. But sometimes, by the time you've tested and verified your product idea and shipped 1.0, the market changes again (business lingo for oops, nobody writes code by hand anymore). In the end, you just try to place one decent bet before the table moves again. Nevertheless, if I've learned anything over the last two decades as an indie dev, it's this: always start with distribution, meaning how you're going to get users for your precious creation. Btw, let me know if you want me to explore this in the next emails. In this particular case, I decided to copy what worked for me in the past and bet on SEO as a primary channel. Most people who know about any of my work learned about it through search. I know how it works and know how to make a resource that both 1) ranks AND 2) is not a complete dumpster fire from the user's perspective. |
|
Google Trends is a nice starting point for exploring any niche. It's not super accurate, but you can get a ballpark number. It's especially useful for comparing a new term against an existing one whose real data you know. So... looks not too shabby? But I had an unfair advantage (business lingo for things like trading stocks while being a son of Trump or using your search engine to promote your web browser). Proof of work |
|
Glorious design trends from 2011! I refreshed the design a couple of times, most recently in 2023. Apparently, I had an SVN tutorial too! You've got to hedge your bets! 😅
In 2023, that resource still had a steady stream of 30K monthly visitors (mostly from SEO, thanks to being online for so many years), so I naively thought that:
|
|
Here's a comparison of the old website's visits in 2023 (dashed line at the top) vs. 2026 (dotted line at the bottom).
But at that time, the number was high enough to convince me that the market was still there: people were still learning Git (and they still are). Monetization-wise, that old resource was free, but based on my prior experience, if you provided a cool, non-hostile premium option, enough people would buy it to support past and future development.
In any case, my plan was to use that old project as a staging area (get it?) and a bridgehead for creating Next stop:
|
|
Have you shipped something of your own lately? Vibe-coded or not, if you're proud of it, let me know. I'd love to see! Also, if you're in a tough spot with your project, let me know too, maybe I can suggest something useful Oh, almost forgot: if there's a thing or two about Git that you struggle to remember (for example, what's the difference between P.S. If you replied last time but are still waiting for my answer, please check the SPAM folder (I do my best to always reply back). I think there was a misconfiguration in my domain's DNS last week that could have caused this issue, but it's now fixed. |