Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Professional PHP

DragonBe
March 18, 2013

Professional PHP

This is a guest lecture given at Artesis Plantijn Hogeschool Antwerpen to promote and inform students about the possibilities of developing PHP applications.

DragonBe

March 18, 2013
Tweet

More Decks by DragonBe

Other Decks in Education

Transcript

  1. Who am I? Michelangelo van Dam Professional PHP Consultant [email protected]

    twitter.com/DragonBe facebook.com/DragonBe gplus.to/DragonBe dragonbe.com
  2. PHP & Open Source World wide community Best support ever!

    (IRC, mailing lists, forums, blogs, twitter, …) Source code available to learn, to modify, to fix Powers over 60% of the internet Free!!!
  3. PHP Key features Build for the web Glue & interoperability

    (Java, .NET, …) Open Source (free, customizable, …) Multi-platform support
  4. Why invest in PHP? Easy to learn Runs on Windows,

    Mac OS and Linux No compiling of code Easy to debug Quick time to market
  5. Example: a blog Set up your database Install Wordpress on

    your server Choose a ready-made theme Write first blog article 15 minutes
  6. Easy Moneytizing set up a blog around a viral meme

    put ads on it host it on a catchy domain e.g. funnyharlemshake.com earn ad revenue
  7. Lasting success start writing interesting articles a single topic (tech,

    life, …) become known as expert write more and get traction
  8. Framework features ease of development structural architecture loosly coupled <>

    full stack DRY (don’t repeat yourself) NIH (not invented here) maintenance friendly extendable, modular and feature rich
  9. Basic Prevention Filtering and validating input Logging and monitoring behaviour

    Tokenize forms Expect all data to be tainted Don’t use globals
  10. Boosting PHP apps scaling of PHP applications optimization of code

    using callback vs. foreach loop db optimization vs. normalization caching (code, components, pages, db, …) PHP Hip Hop
  11. Web servers in load- balanced setup Back-end gets called only

    a few times Proxies block 90% of the web requests Internet
  12. One billion monthly active users as of October 2012. Approximately

    81% of our monthly active users are outside the U.S. and Canada. 584 million daily active users on average in September 2012. 604 million monthly active users who used Facebook mobile products as of September 30, 2012. Source: http:/ /newsroom.fb.com/Key-Facts
  13. Design Patterns A solution to common coding challenges Tried and

    tested solutions Specific “lingo” for developers Increase of readability of code
  14. Coding Standards Increase readability of source code Consistent code usage

    for all developers Easier detection of flaws and security holes A must for corporate/enterprise developers
  15. Version Control Keeps track of development progress Merges changes on

    same codebase Multiple versions co-exists in the repository Enables release management Revert back to previous versions Backup of code base
  16. Testing Detects failures before they become an issue More tests

    is less debugging Increases quality Easier for refactoring and modifications Results in confident developers
  17. Certification bonus Become a professional Advance when searching for a

    job Get listed in Zend Yellow Pages Confirmation of skills
  18. Career in PHP? NOW is the time!!! More jobs then

    available developers All industries Good salary and benefits Paid training, conference tickets and more
  19. Make it as a junior Participate in open-source projects List

    ALL skills development, graphical, editorial math, science or other specialties List all tools you use List all interests and hobbies
  20. When applying Custom CV or resume per position Emphasize required

    skills List non-required skills Always display public achievements
  21. Why community A very tight community To share knowledge Connect

    with other developers Help in times of need
  22. Summary High performant, scalable apps With increased quality and security

    Using existing tools & frameworks In a mixed tech environment With a guaranteed future
  23. Creative Commons Credits decayed building: http:/ /www.flickr.com/photos/genista/4854012/ new residential: http:/

    /www.flickr.com/photos/axiomestates/ 3138432028/ space station: http:/ /www.flickr.com/photos/29239795@N06/5825772547/ high voltage: http:/ /www.flickr.com/photos/ddebold/3919527208/ security: http:/ /www.flickr.com/photos/adulau/7712545428/ Performance: http:/ /www.flickr.com/photos/gowestphoto/3921760653/ quality: http:/ /www.flickr.com/photos/jurvetson/156830367/ phpbnl BBQ: http:/ /www.flickr.com/photos/felixdv/3883257119 teaching: http:/ /www.flickr.com/photos/joshholmes/6774698389/ finish: http:/ /www.flickr.com/photos/stevensnodgrass/3926023483/