Back to videos

Why I Build Messy Code on Purpose

Overview

Most developers try to perfect one part of a project while the rest does not even exist yet.

In this devlog, I explain why I intentionally build messy code at first. I share my philosophy of horizontal vs vertical development, and why drafting fast and refining later works better than trying to design the perfect architecture upfront.

I also share updates on Pascal, our 3D home editor, including our first open source contributor, our first real contract, and why I am about to rewrite the entire editor.

Horizontal vs Vertical Development

Vertical development means going deep too early. You polish one feature until it feels perfect, while the rest of the project is still empty. It feels productive, but it often leads to rework once real use cases expose flaws.

Horizontal development is the opposite. You build the whole system in a simple and rough way first. You focus on making everything exist before making anything perfect. Once the big picture works, you refine step by step.

That is how we built Pascal. We shipped fast, tested real scenarios, and learned what truly matters. Yes, the code became messy. Some architectural decisions do not scale. But now we rewrite with clarity, based on real experience instead of assumptions.

Build First, Refine Later

If we had spent days trying to design the perfect architecture from the beginning, we would have delivered nothing and still needed to rewrite it later.

Building horizontally gave us speed and insight. Now it is time to clean up and improve the foundation.

Messy code is not failure. Sometimes it is proof that you moved fast enough to learn.

Resources/Tech Stack

#threejs #js #devlog

Need help with this tutorial? Join our Discord community!