Why I build code editors before I use one
Building a stripped-down code editor for C, C++, and Java taught me more about language tooling than any course did. A case for building the tool to understand it.
Software Engineer|
Eight years turning foundational computer skills into advanced, trending technology — one project, one language, one classroom at a time. Currently building at CodeZerra.
A technologist's path rarely runs in a straight line. Mine started with the basics — keyboards, file systems, the first "hello world" — and has stretched, year over year, toward the edge of what's trending in software today.
I'm Joseph Lahai Kanu — a software engineer and technical research specialist working out of Freetown, Sierra Leone. My work sits at the intersection of teaching and building: I write the tools I wish someone had handed me when I was learning, and I document the path so the next person's climb is a little shorter.
Over eight years I've moved from foundational computer literacy through the full stack — front end, back end, developer tooling — and into the technologies that are actively reshaping how software gets made. That range shows up in what I build: browser-based code editors, data-driven learning tools, and small platforms for the communities around me.
I care about African tech having a seat at the table, not as a footnote but as a source of ideas. Freetown is where I work from — it's not incidental to the work.
Growth that compounds: each stage built the footing for the next.
Core computer literacy, file systems, and the first lines of HTML and CSS — the unglamorous groundwork that everything else stands on.
A shift from static sites to logic-driven applications — JavaScript, server-side rendering with EJS, and the beginning of a habit: building small dev tools like in-browser code editors to sharpen my own understanding.
Working across the stack, consuming and designing APIs, and treating data — not just layout — as the core material of a good application.
Moving from "can I build this" to "what's the right way to build this" — research-driven engineering, staying close to emerging tools instead of catching up to them late.
Building and researching at CodeZerra, with an eye on what African tech looks like when it's given room to lead rather than follow.
Pulled live from GitHub, sorted by most recently updated. A few concept projects — clearly marked — round out where my thinking is headed next.
Loading repositories from GitHub…
Hover any skill for a sense of depth. Nothing here is a badge collection — it's what actually gets used.
Illustrative placeholder quotes — swap in real ones as they come in.
"Joseph has a rare habit of explaining exactly why something works, not just that it does. Our juniors learned faster because of it."
"He built us a small internal tool in a weekend that we'd been putting off for months. Practical, no fuss."
"What stands out is the follow-through — the code editors he built for teaching are still in daily use."
Placeholder articles — a starting shape for a future blog.
Building a stripped-down code editor for C, C++, and Java taught me more about language tooling than any course did. A case for building the tool to understand it.
Infrastructure, mentorship, and visibility — thoughts on what would move Sierra Leone's developer community from promising to self-sustaining.
On staying a beginner at something, deliberately, even after eight years — and why that's the actual skill that compounds.
Open to collaborations, research conversations, and interesting problems — remote or in Freetown.