• Save
Look beyond PHP
Upcoming SlideShare
Loading in...5

Look beyond PHP






Total Views
Views on SlideShare
Embed Views



15 Embeds 1,803

http://www.symfony.es 1463
http://blog.julienviard.name 139
http://coderwall.com 108
http://www.sfexception.come 38
http://symfony.es 25
http://us-w1.rockmelt.com 10
http://www.sfexception.com 6
http://www.linkedin.com 3
http://translate.googleusercontent.com 3
https://twitter.com 2
https://twimg0-a.akamaihd.net 2
http://zootool.com 1
https://abs.twimg.com 1
http://localhost 1
http://www.php-talks.com 1



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • How I monetize my searching skills. Complete guidance at makecash25.com
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Look beyond PHP Look beyond PHP Presentation Transcript

  • Look beyond PHP02/29/2012 | fabien.potencier.org | @fabpot
  • Why?
  • A Web Developer http://www.flickr.com/photos/dunechaser/160405823
  • A Web Developer http://www.flickr.com/photos/dunechaser/142079357
  • Master PHP first
  • levenshtein()
  • http://twig-project.org/extend
  • spl_object_hash()
  • $o1 = new stdClass();$o2 = new stdClass();spl_object_hash($o1) !== spl_object_hash($o2);spl_object_hash($o1) === spl_object_hash($o1);
  • Traits in PHP 5.4?
  • Learn the basics
  • JavaScript
  • HTTP / RFC 2616http://tools.ietf.org/wg/httpbis/
  • Use the right tools...
  • IDE / Editor
  • Use the right tool for the jobUse software written in other languages... dont reinvent the wheel
  • ConFoo - Migrating MVC to the front-end using Backbone JS by Martin Drapeau
  • JuggernautConFoo - Realtime Web Apps with WebSockets by Igor Wiedler
  • ConFoo - Build more with LESS CSS by Jake Smith
  • ConFoo - High traffic website search with Apache Solr by Satish TallapakaConFoo - ElasticSearch [R]evolution: Welcome by Andrei Zmievski
  • VarnishConFoo - Varnish, the easy way to speed up your websites by me
  • ConFoo - Scaling with MongoDB by Rick Copeland
  • ConFoo - Redis - Your advanced in-memory key-value store by Jordi Boggiano
  • Learn from others code... whatever the language
  • Python
  • from bottle import route, run@route(/hello/:name)def index(name=World): return <b>Hello %s!</b> % namerun(host=localhost, port=8080)
  • Jinja2... Twig
  • Logbook... Monolog
  • Webassets... Assetic
  • http://www.flickr.com/photos/davemorris/3431970729
  • http://www.flickr.com/photos/hawkexpress/328322067
  • Symfony2ZFCakePHPDjangoRails
  • This also applies todocumentation and processes
  • PEP vs PSR/RFC
  • PEP 20 - The Zen of Python Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases arent special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess.There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless youre Dutch. Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, its a bad idea. If the implementation is easy to explain, it may be a good idea. Namespaces are one honking great idea -- lets do more of those!
  • PSR-0“Mandatory requirements that must be adhered to for autoloader interoperability.” https://github.com/php-fig
  • Javadoc vs Phpdoc
  • ReST / Sphinx
  • What can we learn from others?
  • What should you learn now?
  • Be curious Be passionate Be Curious
  • Thank You