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