Fabien Potencier
fabien.potencier.org · Personal blog · on HN since 2009
Fabien Potencier, creator of the Symfony PHP framework, writes about Symfony, PHP, Composer, dependency injection and templating.
What HN saysHN commenters recommend his well-designed PHP code and his post 'PHP is much better than you think' as counterweights to PHP's poor reputation.
31HN people shared it
13linked it in comments
22stories submitted
435story points
10 years agolast shared
2009people per year2026
Most-shared posts
- 1SensioLabs raises 5 million euros3 people · 12 points · first shared 2013 · 1 comments on HN
- 2PHP is much better than you think3 people · 12 points · first shared 2012 · 3 comments on HN
- 3Create your own framework... on top of the Symfony2 Components (part 1)3 people · 4 points · first shared 2012 · discussion on HN
- 4The symfony framework trademark policy3 people · 3 points · first shared 2017 · discussion on HN
- 5What is Symfony2?2 people · 94 points · first shared 2011 · 25 comments on HN
- 6The rise of Composer and the fall of PEAR2 people · 6 points · first shared 2014 · discussion on HN
- 7Symfony 4: Compose your Applications2 people · 5 points · first shared 2017 · discussion on HN
- 8Dependency Injection Container in PHP2 people · 1 points · first shared 2009 · discussion on HN
- 9Homepage2 people · first shared 2012
- 10Templating engines in php2 people · first shared 2014
- 11PHP is much better than what you think1 people · 248 points · first shared 2012 · 334 comments on HN
- 12Why Symfony (over framework X)?1 people · 41 points · first shared 2012 · 33 comments on HN
- 13Developers should be Artists1 people · 2 points · first shared 2010 · discussion on HN
- 14Automatic vulnerability notifications from creators of Symfony PHP framework1 people · 2 points · first shared 2013 · discussion on HN
- 15Stability over Features1 people · 2 points · first shared 2013 · discussion on HN
What HN people wrote when they linked it
jfaucett · 2012-08-29
I'd recommend reading Fabien Potenciers (Symfony2 Framework) code, he writes very well designed software in PHP. Here's his blog http://fabien.potencier.org/
Off the top of my head he's the only one I'd definately recommend. Robert Lemke (Flow3 Framework), writes well structured enterprise code as well, Here's his blog: http://robertlemke.de/blog/posts
jtreminio · 2013-09-23
Wordpress, Joomla and Drupal are not good examples of "good" PHP code. They work, and are used extensively, but experienced developers who care about code quality blow a gasket when they look at the source code.
To do proper PHP development you should have a local VM. I created something to help in that regard[0]. It's been fairly well received.
There's also websites like PHP The Right Way [1] that act like a collection of best practices. If you're not using Composer[2] you should start doing so. I wish Javascript had a package manager as robust and useful as Composer (I know of Bower, but imo it's not nearly as good!). PHP Developer[3] is a source of good daily blog posts. The ones I read on a regular basis are ircmaxell [4], fabpot[5], lornajane[6], philsturgeon[7], richardmiller[8], and phparch[9]. I also sometimes write some things[10].
[0] https://puphpet.com
[1] http://phptherightway.com
[2] http://getcomposer.org
[3] http://phpdeveloper.org
[4] http://blog.ircmaxell.com
[5] http://fabien.potencier.org
[6] http://lornajane.net
[7] http://philsturgeon.co.uk/blog
[8] http://richardmiller.co.uk
[9] http://phparch.com
[10] https://jtreminio.com
agumonkey · 2015-08-06
If he ever visit this page, some not too outdated articles about PHP:
http://www.phptherightway.com/
http://fabien.potencier.org/php-is-much-better-than-you-think.html
masklinn · 2014-10-12
That's because both are Jinja reimplementations (given the name, I expect Swig is a JS version of Twig[0], itself a PHP implementation of Jinja, and originaly started by Armin Ronacher — Jinja's author[1][2])
[0] http://twig.sensiolabs.org
[1] https://github.com/mitsuhiko/twig
[2] http://fabien.potencier.org/article/34/templating-engines-in-php
riquito · 2014-07-21
Twig syntax takes from Django/Jinja [1], not Ruby.
[1] http://fabien.potencier.org/article/34/templating-engines-in-php
adamors · 2014-07-07
This is a rather low effort post. PHP The Right Way [1] already covers the basics of modern PHP, without turning into a laundry list.
Today the most important thing is Composer, not frameworks, especially to those who are just starting out. Learning a full framework is pointless if they just want to see the basics in action. Fabien Potencier's Create your own framework series [2] is really good for this: it shows how much you can do with just a couple of Symfony components and a front controller.
[1]: http://www.phptherightway.com/
[2]: http://fabien.potencier.org/article/53/create-your-own-framework-on-to…
aram · 2014-04-29
Speaking about where PHP is heading, I think it's pretty important to mention the funding Fabien Potencier managed to get for SensioLabs (company behind Symfony):
http://fabien.potencier.org/article/71/sensiolabs-raises-5-million-eur…
I haven't seen any mention of that on HN.
Symfony components are used in Laravel and upcoming Drupal 8.
The funding above means that SensioLabs will continue to work on solid platform(s) that will bring higher quality development and standards to PHP.
Honestly, I'm pretty happy for that.
8ig8 · 2013-12-17
PHP related:
Sensio Labs (Symfony) announced a $7 million investment yesterday:
https://sensiolabs.com/en/a_propos/communique_de_presse_funds.html
More here:
http://fabien.potencier.org/article/71/sensiolabs-raises-5-million-eur…
hadem · 2013-05-23
If you found this interesting, you would probably also find Fabien's articles on writing your own framework on top of Symfony2 components interesting as well.
http://fabien.potencier.org/article/50/create-your-own-framework-on-to…
carloc · 2013-01-07
PHP offers a lot of choice.
You can use it rather nicely, but it also allows you to write some really awful code. Admittedly, it does not do much to help you write good (=understandable, maintainable) code.
This post is rather interesting in terms of using the good parts of PHP:
http://fabien.potencier.org/article/64/php-is-much-better-than-you-thi…
I have been using the author's PHP framework for 2 years now and have experienced huge improvements in the quality of the code I write simply by being exposed to his example. He basically uses a lot of objects but very little inheritance. He also is religious about the DRY principle.
phren0logy · 2012-01-10
You might be better off using a .ssh/config file, as in this tutorial:
http://fabien.potencier.org/article/19/quick-ssh-tip
It saves about as many keystrokes, also works in scp, and won't clutter up your shell dotfiles.
jauco · 2009-03-28
The topic link is a detour to this article: http://fabien.potencier.org/article/11/what-is-dependency-injection
throwawayG9 · 2013-04-06
I feel you, but it's just a matter of finding the right circles. I would never apply for a job just because it says 'php', you have to dig deeper. At this point in my career, I would never accept a freelance gig like the one you described, because I know how that goes.
You don't need to try other languages, do it only if you want to. If you wanna save time just take my word, Symfony2 has nothing to envy to Django or Rails (I have used them and also digged into their architecture). In fact, it's more modern and better designed.
I'll leave these links here, you might find them useful:
- http://www.phptherightway.com/ (general advice)
- http://getcomposer.org/ (composer, the dependency manager)
- https://packagist.org/ (the main composer repository)
- https://github.com/php-fig/fig-standards/tree/master/accepted (accepted conventions)
- http://www.slideshare.net/fabpot/dependency-injection-with-php-53 (if you liked MVC, DI will blow your mind)
- http://fabien.potencier.org/article/50/create-your-own-framework-on-to… (an amazing tutorial on how to create a framework, it will let you understand it inside out)
- http://symfony.com/download (what should become your next framework)
- http://silex.sensiolabs.org/ (minimalistic version of Symfony2, it's called Silex, and might be useful for small websites)
If you still want to try something else, try something that has nothing to do with all this, like Clojure. For example, Ruby/Rails is…