4 ms·
Agree. PHP is actually still my goto language for web stuff, even if today its more or less moving to the backend only. The language itself isnt very nice but i
by kayoone 13y ago
Agree. PHP is actually still my goto language for web stuff, even if today its more or less moving to the backend only. The language itself isnt very nice but i simply love the symfony php framework. Ive been using it since 2007 and the 2.x version produces very clean code, is extensible in any way imaginable and just lets me get stuff done really quickly.
I think not many people know how mature the tools in the php ecosystem are today, many people that switched to rails or whatnot years ago still think of PHP as it was 10 years ago, and yes that was horrible.
- jiggy2011 13y agoThe biggest problem with writing PHP is picking up projects from other developers who have built massive systems as if it was 10 years ago.
- cranklin 13y agoisn't that the same problem with any language? C for example?
- kryten 13y agoHaving picked up both knackered PHP and C projects, PHP is usually worse as the barrier for entry is much lower meaning that the code barely works in most cases. Plus it's usually plugged into turds like WordPress. Currently dealing with helping someone upgrade a wordpress+buddypress nightmare. Yuck. C stuff is easier to refactor as well as you have a strict compiler and valgrind on your side.
- kayoone 13y agothats bad and i have always avoided using limited systems like CMSes or Blogs to use as a basis for big systems because of it. But you are right, alot of the PHP community is based around Wordpress, Typo3, phpbb etc but i have been using PHP for 10+ years and apart from installing Wordpress for blogging i have never used that stuff ;)
- kryten 13y agoLucky you :)
- heidar 13y agoI use Symfony 2 a lot myself and more recently Laravel 4. While they are definitely solid frameworks I find that the Java-esque level for abstraction in the code base makes debugging a big pain at times. Especially in Laravel 4 which is mostly a layer of static methods on top of Symfony 2. Also developers who split the project into many bundles...all those directories and namespaces. Really irks me. At least Laravel 4 solved that problem though.
- hugofirth 13y agoWhat you are referring to is not "just" static methods. It is known as the Facade pattern and was utilised entirely for the increased testability it provides. In light of that - the comment about debugging rings slightly hollow. Furthermore Laravel 4 uses the whoops error framework - which provides very in depth errors.
- heidar 13y agoYes, just quoting the docs: "Facades provide a "static" interface to classes that are available in the application's IoC container." Your comment on Whoops rings a bit hollow because it was only added a few weeks ago. I was using it before it was added but it certainly helps. That was before Laravel hit 4.0 stable though. Whenever something didn't work for some reason, digging through the abstraction that is Laravel+Symfony could be frustrating. Thankfully Symfony 2 has good API docs.
- sbarre 13y agoYou are using a proper IDE with XDebug or Zend Debugger installed, right? I don't mean this in a snarky way at all. If you're not, and you work with some of the more complex frameworks like Laravel, do yourself a favour and investigate XDebug, and an IDE like PhpStorm that can take advantage of it. It will change your workflow for the better. The first thing I do with any new framework (which I did with Laravel a few weeks back) is set up a really simple Hello World app and then step through a request loop, start to finish, to get a feel for how the framework sets up a request, dispatches it, and then tears down.. Just from that first exercise, I am immediately more productive with the new codebase..