.pageTitle {

Laravel vs Rolling Your Own

.published {

June 2026

} }

Don't start with a Framework

For the first half of my career, I built things from scratch. Not out of stubbornness — well, not entirely — but because when I started, frameworks didn't exist and it was the quickest way to learn. By the time they did, I already had my own way of doing things.

I built my own CMS. My own routing system. My own form handler. My own database abstraction. I learned about Cookies, Global variables, Validation. They all worked and I understood every line of them. When something broke, I knew where to look.

The case for rolling your own

There's something genuinely valuable about building from scratch. You understand what you're building. There are no hidden abstractions, no magic methods, no "it just works until it doesn't." When your code breaks, you know why — and it's your fault, as you wrote the bit that's broken.

It's faster to start. No package manager, no config files, no reading documentation just to render a form. You open a file and write PHP. And it doesn't have dependencies that may or may not be maintained in a few years.

The case for Laravel

Frameworks always existed. Symfony, CodeIgniter, Cake — but they were overcomplicated and cumbersome. Companies liked them. For developers it was like Marmite.

Then in 2011 along came Laravel. Simplified MVC. Understandable routing. Out of the box Request parsing. I watched it grow year on year — but never got a chance to use it. Then I changed jobs.

When it's just you, your own framework is fine. When it's a team — or when someone else needs to pick up your code — Laravel's conventions become an asset rather than a constraint. Any decent PHP developer can sit down with a Laravel project and understand it. Hand them your custom MVC framework and they're reading documentation that only exists in your head.

Laravel also does some things genuinely well. Eloquent ORM. Artisan commands. Database migrations. These aren't things you want to write yourself unless you have a specific reason to.

Where I've landed

I have landed firmly in the Laravel camp. I would choose it for any new web project unless there is a compelling reason not to. Hundreds of developers, thousands of hours of expertise — why would you not use it?

When I do custom work — I reach for this first and I am up and running without thinking. When I come back to a project after being away for a while — I do not need to remember the architecture, just the project. Everything is where it should be.

Oh yeah — it's also free. Honest! *

*MIT licensed.. Other Frameworks are available..

</