in 2008 James Molloy wrote a free tutorial that taught people how to build a UNIX like operating system from scratch in C and assembly
it is called "Roll Your Own Toy UNIX Clone OS" and walks through building a real kernel step by step
bootloader, GDT, IDT, interrupts, paging, heap management, filesystems, multitasking and user mode are all covered
this is not just theory every chapter includes code you can compile run and experiment with in QEMU
After 3.5 years building GreptimeDB (@Greptime ), here's what I wish I knew before starting:
The harsh reality: We jumped into execution without proper business validation. Our idea wasn't wrong, but we skipped the unglamorous work of talking to 50-100 potential customers first.
What this cost us:
1. Chased SaaS/PLG strategies that looked good on paper but didn't match market reality for data infrastructure
2. Built features for "someday" instead of "today's customers"
3. Underestimated what it takes to build a database - it's a 5-year minimum commitment
What actually worked:
1. Finding co-founders with resilience, not just skills, couldn’t have asked for a better partner than @Sunng
2. Treating everyone as adults - transparency over "protecting the team"
3. Listening to the harshest critics first
The biggest lesson: Find 5-10 design partners who will run with you before writing code. The fear of "custom work" is pointless when you haven't proven PMF yet. That’s like worrying about scaling before you even have users.
Building infrastructure is a long game. Snowflake spent 8 years before their IPO. MongoDB built community for 9 years before cloud revenue mattered.
For data infra founders: the path is longer and messier than it looks. But find the right people, stay honest about what's working and what isn't, and keep shipping. ✊
#startups #databases #opensource #productmarketfit #founders #datainfrastructure #lessonslearned
Ten years after Rust 1.0, we need to stop thinking of it as just "systems programming." That label carries historic baggage and scares away teams who could benefit from Rust.
https://t.co/dyouAAQSjJ
#rustlang#rust
🎉 Microsoft open-sourced injectorpp, a crate that lets you easily change function behavior at runtime for unit testing, eliminating the need for extra traits or code refactoring. 🦀
Say goodbye to messy test-specific code! #Rust#rustlanf#programming
https://t.co/UtSRyqfxfz