Laravel 4, and the day PHP grew up
Composer turned PHP from copy-pasted snippets into a real ecosystem — and Laravel is the first framework that feels born in that world.
For two years, Yii has paid my bills and I've defended it in every forum argument. But I've just shipped my first real project on Laravel 4, and I need to be honest with myself about what just happened: PHP grew up, and it happened fast.
Composer changed everything first
The real revolution isn't any framework — it's Composer. Two years ago, adding a library meant downloading a zip, unpacking it into protected/vendors, and praying during upgrades. Now it's one line in composer.json. Packagist has turned PHP from a language of copy-pasted snippets into a language with a real ecosystem. Laravel is simply the first framework that feels born in that world instead of retrofitted into it.
What Laravel gets right
- Migrations as code. No more emailing SQL dumps titled
changes_FINAL_v3.sql. The database schema lives in version control and replays anywhere. - Artisan. Scaffolding, queues, tinker — the command line is a first-class citizen, not an afterthought.
- Eloquent reads like intent.
$student->fees()->unpaid()->get()is code a new hire understands on day one. - Blade stays out of the way — templating that doesn't invent a second programming language.
Frameworks don't win on features. They win on how quickly a stranger's code makes sense.
A fair word for Yii
Yii's Gii scaffolding is still the fastest CRUD generator I've used, and its performance story remains excellent. If I inherited a Yii codebase tomorrow I wouldn't panic. But starting fresh? The energy — the packages, the tutorials, the job postings, this new Homestead Vagrant box — has visibly moved to one place. The pragmatic call and the exciting call are, for once, the same call.