PHP is an old friend, going back close to 15 years. It was the first language I used. Back then it was the obvious choice for web development if you were running Linux/Apache, it was free and it was popular.
Over the years other languages/frameworks have appeared which have definitely captured the “cool” factor. The two obvious ones are Ruby on Rails and Python/Django. It’s possible to argue that Ruby and Python are more aesthetically pleasing languages to code in but their real draws are the MVC implementations of Rails and Django.
From a business stand point PHP makes a lot of sense. The more recent versions are dramatically improved and it’s incredibly well supported. There are far more PHP developers which helps keep costs down and it scales. If it’s good enough for Facebook chances are it’s good enough for you.
The challenge has always been finding the right MVC framework. Laravel solves this problem. It provides a best-in-class MVC implementation for PHP.
Reading the tea leaves it’s clear that I’m not the only one who feels this way. This is from Google Trends and leanpub.com. It feels good to be excited about PHP again.
As a side note, using puPHPet, Vagrant and VirtualBox to create virtual machines to play with Laravel makes me feel like a programming super hero with the power to create worlds.
I agree with you. But they three frameworks are so similar, so why not learn them all
That’s a fair question.
I think there’s tremendous value in having experience with all three frameworks. Learning the features of one framework can very often shed light on the limitations of another.
The challenge though is limited resources, in this case time. Although there are plenty of ‘Learn X framework in 24 hours’ books, in truth it takes building many applications with any framework to really understand how it ticks.
While it’d be great to be an expert in as many frameworks as possible, generally we need to focus our energy and try to choose as wisely as possible which technologies to learn.