Make Web, Not War - Building Interoperable Web Apps with PHP, PHP Quebec

1,020 views
967 views

Published on

In this presentation we will do an overview of what makes PHP one of the dominant technologies for web development. PHP is known to be platform and database agnostic and in this presentation Yann will try to answer questions like: Why should you consider developing web-apps with PHP? Which tools can help you accomplish this task ?

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,020
On SlideShare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
22
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Make Web, Not War - Building Interoperable Web Apps with PHP, PHP Quebec

  1. 1. Building Interop apps with PHP Make Web Not War June 10 th 2009 Toronto
  2. 2. Introduction <ul><li>About Me: </li></ul><ul><li>IT consultant </li></ul><ul><li>President & fonder of PHP Québec </li></ul><ul><li>Conference organizer “Conférence PHP Québec” </li></ul>
  3. 3. PHP Quebec <ul><li>Who we are? </li></ul><ul><li>Non profit organization created in 2003 </li></ul><ul><li>Passionate people about web development </li></ul><ul><li>A bunch of friends </li></ul><ul><li>What we do? </li></ul><ul><li>Monthly meetings </li></ul><ul><li>Networking events </li></ul><ul><li>CodeFest </li></ul><ul><li>IT JobFair </li></ul><ul><li>Conference organization </li></ul><ul><li>OpenSource Hub </li></ul><ul><li>Raise a horde of ElePHPants ! </li></ul>
  4. 4. Who are you? <ul><li>Do you program in PHP? </li></ul><ul><li>Do you create your applications with a platform agnostic MVC framework? </li></ul>
  5. 5. A few numbers <ul><li>PHP market share in Canada 29.29% (nexen.com) </li></ul><ul><li>Ontario : 30.92% (5 th ) </li></ul><ul><li>Québec : 28.92% (7 th ) </li></ul><ul><li>Community index June 2009 (Tiobe.com) </li></ul><ul><li>Java : 20.147% </li></ul><ul><li>C : 16.779% </li></ul><ul><li>C++ 10.594% </li></ul><ul><li>PHP: 9.675% </li></ul><ul><li>Visual Basic: 7.943% </li></ul><ul><li>Python: 4.756% </li></ul><ul><li>C# : 4.536% </li></ul>
  6. 6. Web servers stats
  7. 7. PHP Power Tools <ul><li>Development Tools </li></ul><ul><li>Eclipse </li></ul><ul><li>Zend Studio </li></ul><ul><li>Komodo </li></ul><ul><li>Xdebug </li></ul><ul><li>Vim ? </li></ul><ul><li>Vast range of OpenSource software </li></ul><ul><li>CMS: Drupal, Typo3, Joomla </li></ul><ul><li>Wiki: MediaWiki, TikiWiki </li></ul><ul><li>E-Commerce: OsCommerce, Magento </li></ul><ul><li>ERP/CRM: Dolibarr, SugarCRM </li></ul>
  8. 8. Who should consider building interop apps ? <ul><li>Software providers </li></ul><ul><li>OpenSource developers </li></ul><ul><li>Anyone that does not control the production environment </li></ul>
  9. 9. LAMP ↔ Windows, IIS, MSSQL <ul><li>Things to consider </li></ul><ul><li>Performance & Stability </li></ul><ul><li>Database abstraction: MySQL, MSSQL, PostGreSQL,... </li></ul><ul><li>SQL Abstraction : Doctrine, Propel, Ez-Components, Zend Framework, Pear:DAO </li></ul><ul><li>URL Rewriting: Apache,IIS </li></ul><ul><li>System calls: pdf2text,ffmpeg, ... </li></ul><ul><li>PHP Extensions & function calls </li></ul>
  10. 10. Other things to consider <ul><li>Resources </li></ul><ul><li>Team skills (DBA, Programmers, Sys Admin) </li></ul><ul><li>Training </li></ul><ul><li>Documentation </li></ul><ul><li>QA: Unit Testing, Functional testing </li></ul><ul><li>ROI !! </li></ul>
  11. 11. Budget Conferencing <ul><li>The company </li></ul><ul><li>Conferencing services </li></ul><ul><li>Small young dynamic company </li></ul><ul><li>Traditional LAMP development LAMP environment </li></ul><ul><li>Old code base </li></ul><ul><li>Various people wrote the code </li></ul><ul><li>Critical System </li></ul>
  12. 12. My Mission <ul><li>My personal goal: </li></ul><ul><li>Increase code quality </li></ul><ul><li>Restructure the code base with MVC in mind </li></ul><ul><li>Release more features </li></ul>
  13. 13. Getting things done <ul><li>First step </li></ul><ul><li>Put in place a software release process </li></ul><ul><li>Write some functional tests </li></ul><ul><li>Separate business logic from template </li></ul><ul><li>Encapsulate all Database queries </li></ul><ul><li>The Migration </li></ul><ul><li>Web services </li></ul><ul><li>IIS, MSSQL, Java, C#, PHP </li></ul>
  14. 14. Conclusion <ul><li>Great Opportunities </li></ul><ul><li>PHP as 30% of the web market in Canada </li></ul><ul><li>IIS & Apache share over 80% of the web server market </li></ul><ul><li>Caution </li></ul><ul><li>Frameworks will only do a small part of the work </li></ul><ul><li>You need to discipline developers </li></ul><ul><li>Write Unit Test </li></ul>
  15. 15. Useful links <ul><li>Frameworks: </li></ul><ul><li>Zend Framework  http://framework.zend.com/ </li></ul><ul><li>EzComponents: http://www.ez.no/ezcomponents </li></ul><ul><li>Symfony http://www.symfony-project.org </li></ul><ul><li>CodeIgniter:  http://codeigniter.com/ </li></ul><ul><li>cakePHP: http://cakephp.org </li></ul><ul><li>PHP: </li></ul><ul><li>http://windows.php.net/ </li></ul><ul><li>http://php.iss.net </li></ul><ul><li>http://www.phponwindows.ca </li></ul><ul><li>http://port25.technet.com/ </li></ul><ul><li>PHP Québec: </li></ul><ul><li>http://www.phpquebec.com </li></ul><ul><li>http://conf.phpquebec.com </li></ul><ul><li>htp://www.codefest.ws </li></ul>
  16. 16. Questions ?
  17. 17. Thank you! Email: yann@ylarrivee.com Website : http://www.ylarrivee.com

×