Professional PHP: an open-source alternative for enterprise development [Kortrijk]

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    4 Favorites

    Professional PHP: an open-source alternative for enterprise development [Kortrijk] - Presentation Transcript

    1. Professional PHP an open-source alternative for enterprise development Thijs Feryn Felix De Vliegher 19/11/’08, Katho Kortrijk
    2. About us • Thijs
Feryn • Support
manager
&
senior
developer
at
COMBELL • PHP
developer
for
about
5
years • Zend
PHP5,
cerGfied
engineer • Felix
De
Vliegher • Senior
developer
&
sysadmin
at
COMBELL • 
PHP
developer
for
about
7
years • 
Zend
PHP5,
Zend
Framework
cerGfied
engineer • 
Co‐founder
PHPBelgium • 
Contributor
to
the
PHP
project
    3. About COMBELL • Founded in 1999 • 30 FTE and growing • +25 000 customers • Premium / Quality hosting segment • Leading hosting provider in Belgium concerning hosting & domain names in the SME market • + 60 000 domain names • + 20 000 websites • + 600 servers, owned & managed by COMBELL • + 400 resellers
    4. You? • Experience with programming • Experience with PHP • Experience with PHP based applications • OOP in PHP? • Professional experience? (read: not katho)
    5. Open source software • Development methodology • Source code is available • Use, change, improve • Collaborative • Common licenses: GPL, LGPL, MIT • Free “as in beer”
    6. LAMP stack • First used in c't magazine in 1998 • Linux, Apache, MySQL and PHP • Open-source, free software • Available everywhere Application • Proven track record PHP Apache MySQL Linux
    7. Why PHP? Easy to learn
    8. Why PHP? • Flexible in webserver environment • Platform independent • Lots of libraries, frameworks • Huge community • Code is freely available • Documentation • Commercial support • Short TTM
    9. PHP vs other languages (let’s say Java?) • Dynamically typed • Low entry barrier • Stateless • Platform independence (vs .NET) • Interpreted language • Extensions and libraries • Built-in • Pecl • Pear
    10. PHP is community friendly
    11. PHP is community friendly • Lots of PHP conferences / PHP UG’s • Initiatives to contribute and learn • Active and friendly support: • forums • irc • twitter
    12. Shiny statistics (sort of) Yahoo IBM & Oracle Microsoft PHP 4 goes PHP PHP 5 endorse PHP endorses PHP PHP 6?
    13. PHP Applications
    14. Used by
    15. COMBELL customers using PHP
    16. Support by
    17. PHP in the enterprise Evolution from a functional approach to enterprise fundamentals
    18. The fundamentals
    19. Functionality • Language choice based on features • Often the first and only concern • Evolution towards: • Frameworks • Testing & debugging
    20. PHP Frameworks • Eases development • More structure • Glue (component) vs full-stack • DRY • No maintenance • Extend or plugin where needed
    21. PHP Frameworks • Zend Framework • Component library and framework • Symfony • Full stack framework • eZ Components • Component library • Loosely coupled • Code Igniter • Fast web application framework
    22. Security 1: Thou shalt filter input and escape output
    23. Security • php.ini settings • Areas of importance: • Form processing • Databases • Sessions • Error handling / reporting • Suhoshin / SAPI filter
    24. Performance • Micro optimizations? • No premature optimization! • Caching • Opcode caching • {Page|Database|Module|...} caching • Database • Optimized database design • Indexing strategy • Writing good SQL
    25. Performance • Profiling: optimizing code • Optimalization of PHP as a language
    26. Scalability • Shared nothing: independent and self-sufficient • Design patterns - MVC • Database scaling - sharding • Development methodologies - agile, scrum • Version control • Documentation!
    27. Testing I pity the fool who doesn’t write tests!
    28. Testing • More testing == less debugging! • Applications should work as expected • Actually takes less time • Provides higher quality • Easier to refactor and change • Makes confident developers
    29. Testing and coverage
    30. PHP Tools and utilities • Editors • Eclipse PDT - http://www.eclipse.org/pdt/ • Zend Studio - http://www.zend.com/studio • Continuous Integration • phpUnderControl - http://www.phpunit.de • Debuggers / Profilers • Xdebug - http://www.xdebug.org • Testing tools • PHPUnit - http://www.phpunit.info • Selenium - http://selenium-ide.openqa.org/
    31. Certifications • Zend PHP 5 certification • Zend Framework Certification • Why: • Differentiate yourself when looking for a job • Get listed in Zend Yellow Pages • Confirmation of a decent PHP skillset
    32. PHPBelgium user group • Point of information for PHP • For developers, education, businesses • Bi-monthly meetings (with a drink) • Organizing PHP-related events • PHP Bug Hunt Day http://www.phpbelgium.be | http://bughuntday.org
    33. Learn more about PHP • Books: • All of php|architect • Power PHP 5 programming • Advanced PHP Programming Magazines: • php|architect magazine
    34. Learn more about PHP • Websites: http://www.phpdeveloper.org http://devzone.zend.com http://planet-php.org • IRC (irc.freenode.net): #phpc, ##php, #php_bnl • Training: PHP|Architect Ibuildings (http://www.ibuildings.nl)
    35. Applied at COMBELL • Service oriented architecture • Highly integrated with hosted solutions • Using Zend Framework, Symfony • Development workflow with: • Subversion • Unit testing • Continuous integration (Cruisecontrol)
    36. Others are hiring too • PHP is becoming big in enterprises • Valid career choice, not everything needs to be done with Java or .NET • PHP Engineers are in high demand!
    37. If our presentation were a book
    38. Thanks! Any questions? More info: felix@combellgroup.com thijs@combellgroup.com

    + combellcombell, 2 years ago

    custom

    3180 views, 4 favs, 2 embeds more stats

    A presentation on Enterprise PHP development for pe more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 3180
      • 3053 on SlideShare
      • 127 from embeds
    • Comments 0
    • Favorites 4
    • Downloads 119
    Most viewed embeds
    • 124 views on http://blog.combell.com
    • 3 views on http://www.opensourcespeak.com

    more

    All embeds
    • 124 views on http://blog.combell.com
    • 3 views on http://www.opensourcespeak.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories