Adding a Fully-Bootstrapped Mono
Published in 2024, this chronicle by @e12e details the mechanics of building a profitable, self-funded business without venture backing.
Core Principles for Independent Builders:
Charging customers from day one acts as the ultimate filter for building software that solves genuine, high-urgency problems.
Keeping fixed overhead low and leveraging lean infrastructure allows founders to stay alive until market tailwinds kick in.
Small, repetitive improvements in customer retention and conversion rates yield massive returns over multi-year horizons.
Community Debate Themes:
The community focused on B2B customer acquisition channels, cold email vs SEO distribution, and balancing full-time employment with side-project development.
CATEGORY Bootstrapping & MRR →
HISTORICAL ERA Post-ZIRP & AI (2023–2026)
COMMUNITY SCORE 40 points
TOTAL DISCUSSIONS 3 comments
Wow what a great writeup. I remember back in 2001 when .NET was making huge waves, when Miguel and his Mono project seemed (to me) the only thing standing between Microsoft and absolute world domination (they also had Project Hailstorm (oAuth), SilverLight, PowerShell, and this Windows Vista/LongHorn thing which was supposed to use SQL Server as it's file system.
SCO UNIX was suing IBM (IIRC) because of some code that was found in the Linux kernel but they said it belonged to them (turned out to be comments, basically).
Oh and everything I wrote was in Flash ActionScript and Perl, or i had to make multiple versions of each web page because rendering on web browsers was so different across vendors, versions, and platforms.
Good times.
Unfortunate sequence of events :(
Mono must not be used on desktop environments. I wish the author explored the source build of the normal .NET more - on standard environments it’s usually just a few commands (it has improved quite a bit).
Given that Guix is a Linux distro the is no reason to avoid attempting this.
Edit: I guess the specific source build requirements is the reason why it’s so painful.
unmush, nice work! With respect to alternate submodule URLs, try something like:
``` git config url."https://github.com/username/repo.git".insteadOf ↗ "gif://github.com/username/repo.git" ``` Which doesn’t are about the hashes allowing you to use submodule commands directly.