
Rust Fundamentals
Master Rust programming fundamentals through clear technical deep-dives. Learn ownership, borrowing, types, error handling, traits, lifetimes, and testing. Build memory-safe, concurrent systems without garbage collection.
View Book🚧 We are still building the lighthouse. Hang tight!
projectlighthouseSign in with your Google or GitHub account to get started
learn by doing
beyond the framework and tutorials. hands-on, project-based, self-paced learning. no fluff, just practical skills you can use today.
Learn by building
Fundamentals first; practice & iterate
Instead of rushing through frameworks and libraries, we focus on building a strong foundation first. Understand the core concepts, then practice by building real projects, iterating as you learn.
builders, not watchers
Tired of long video tutorials ? Here, it's DIY, no copy-paste tutorials!
Books, text based approach
Books are a powerful way to learn. Find in-depth technical books on systems, networking, and more. Dive deep into concepts and build a solid understanding that lasts.
Validate your skills with lux
Hand-picked projects are designed to challenge you and validate your skills. Use Lux CLI tool to test your solutions and gain XPs.
Challenge yourself building real projects.
Compete with others and track your progress.
Review your annotations before a interview a quick look back.
Each project is carefully designed for production readiness.
Carefully crafted books to help you level up your skills

Master Rust programming fundamentals through clear technical deep-dives. Learn ownership, borrowing, types, error handling, traits, lifetimes, and testing. Build memory-safe, concurrent systems without garbage collection.
View Book
Master Go programming fundamentals through clear, technical deep-dives. Learn syntax, types, control flow, data structures, functions, interfaces, error handling, and testing. Build a solid foundation for systems programming.
View Book
Master the foundations of data structures and algorithms. This comprehensive course covers arrays, linked lists, trees, graphs, sorting, searching, dynamic programming, and more. Build a strong foundation in computer science concepts and improve your problem-solving skills with language-agnostic explanations.
View BookUnderstand why Go exists, what problems it solves, and how to install and run your first Go program. Learn about Go's philosophy, compilation speed, static binaries, and the standard library.
Understanding how Random Access Memory works and why it matters for data structures. Learn about memory addresses, bytes, and how computers store data.
Understand why Rust exists, what problems it solves, and how to install and run your first Rust program. Learn about memory safety without garbage collection, preventing data races, and Rust's ecosystem.
Master Go's type system, variable declaration, constants, and zero values. Understand how Go stores data in memory and the implications for your code.
Learn about fixed-size arrays, their memory layout, and basic operations. Understand how arrays store elements contiguously in memory.
Master Rust's type system, variable declaration, constants, and memory layout. Understand stack vs heap allocation, primitives, compound types, and how Rust prevents null pointer errors.
Learn Rust's ownership rules - each value has one owner, values drop when owners go out of scope, and ownership transfers on assignment. Understand move semantics, copy semantics, and the Drop trait.
Learn how Go programs make decisions with if statements, switch cases, and loops. Master Go's approach to control structures and understand why Go only has one loop keyword.
Build real-world projects from scratch and understand how things work
Learn the fundamentals of web servers by building your own HTTP server from scratch. Handle requests, parse headers, and serve files.
projectlighthouse comes from a necessity per-say. Back in the days, I found it difficult to build things from scratch. One of the reasons is that where I come from, folks unknowingly choose framework based web development as the main path to learn programming.
which is fine for who wants to walk that path, but for me, I wanted to be more of a Systems Engineer. Write TCP or DNS or a Kernel; or the software that landed us in the moon. Stuff like that.
for a time, I didn't know how to ! The problem isn't that I couldn't build it ( as it's not that simple ). But, I didn't even know where to start. I couldn't even imagine! And I think that is dangerous and sad.
sad in the sense that I am a programmer, a software engineer who doesn't know how to build ! But engineers built this world. And I want to be able to build too.
dangerous because, I was stuck. I was limited to using the tools and frameworks that was already defined. I was an user, not a builder. And that is a scary thought.
so.. I decided to create projectlighthouse to bridge this gap. I wanted to build a platform for my younger-self. You know, as they say, "be the person you needed when you were younger".
Yah.. so I hope you find this platform useful. If you are starting new or have spent a decade in a different field, I hope this helps you become a builder. Together, towards a better world.
some videos that motivated me back in the days,