5 essential tools for the
    Windows PHP developer
                    Stefan Koopmanschap
                      29-05-20...
This presentation
•   PHP stack
•   IDE
•   Framework
•   Content Management System
•   Tools




29-05-2009   5 essential...
Who is Stefan?
•   Ibuildings
•   symfony
•   PHP best practices
•   phpBenelux




29-05-2009   5 essential tools for the...
PHP stack
• Single installer for full stack
    – Webserver
    – PHP
    – Database server




29-05-2009   5 essential t...
PHP stacks
• Microsoft Web Platform Installer
• Zend Server
• Other packages




29-05-2009   5 essential tools for the Wi...
Microsoft Web Platform Installer
• 1.0
    – .NET
    – IIS
    – SQL Server




29-05-2009   5 essential tools for the Wi...
Microsoft Web Platform Installer
• 2.0 beta
    – 1.0 +
    – PHP
    – popular ASP.NET and PHP apps




29-05-2009   5 es...
29-05-2009   5 essential tools for the Windows PHP developer   8
Microsoft Web Platform Installer
• Stack++
    –   Drupal
    –   Gallery
    –   Silverstripe
    –   Wordpress




29-05...
29-05-2009   5 essential tools for the Windows PHP developer   10
Microsoft Web Platform Installer
• IIS integration
• Easy installation of popular software




29-05-2009   5 essential to...
Microsoft Web Platform Installer
• Little documentation




29-05-2009   5 essential tools for the Windows PHP developer  ...
Zend Server
•   PHP
•   Apache or IIS
•   Performance tools
•   Server Management




29-05-2009   5 essential tools for t...
29-05-2009   5 essential tools for the Windows PHP developer   14
Zend Server
•   Apache and IIS
•   Commercial support
•   Performance and monitoring tools
•   Community and Enterprise ed...
Zend Server
• Dependency on vendor




29-05-2009   5 essential tools for the Windows PHP developer   16
Other packages
• XAMPP
• WAMP Server




29-05-2009   5 essential tools for the Windows PHP developer   17
XAMPP
•   Apache, PHP, MySQL
•   phpMyAdmin
•   Management interface
•   FTP server




29-05-2009   5 essential tools for...
WAMP Server
• Apache, PHP, MySQL
• phpMyAdmin
• Simple configuration




29-05-2009   5 essential tools for the Windows PH...
References
• http://www.microsoft.com/Web/
  downloads/platform.aspx
• http://www.zend.com/server
• http://www.apachefrien...
IDE
•   Integrated Development Environment
•   Editor
•   Debugging
•   Additional development support




29-05-2009   5 ...
IDEs
• VS.php
• Zend Studio
• Other IDEs




29-05-2009   5 essential tools for the Windows PHP developer   22
VS.php
• Visual Studio add-on + stand-alone
• Adds PHP support
• Includes Zend Framework support




29-05-2009   5 essent...
29-05-2009   5 essential tools for the Windows PHP developer   24
VS.php
• Familiar environment for VS users
• PHP code highlighting




29-05-2009   5 essential tools for the Windows PHP ...
VS.php
• Commercial add-on




29-05-2009   5 essential tools for the Windows PHP developer   26
Zend Studio
• Eclipse-based IDE
• Integration with other Zend tools




29-05-2009   5 essential tools for the Windows PHP...
29-05-2009   5 essential tools for the Windows PHP developer   28
Zend Studio
•   Excellent PHP support
•   Install Eclipse plugins
•   Integrates with Zend products
•   Commercial support...
Zend Studio
• Price




29-05-2009   5 essential tools for the Windows PHP developer   30
Other IDEs
• Activestate Komodo
    – Commercial IDE with commercial support
    – Variety of VCS supported
    – Code com...
29-05-2009   5 essential tools for the Windows PHP developer   32
Other IDEs
• Netbeans
    – Free (as in beer)
    – Support for PHP and several frameworks
    – Java-based (uses lots of ...
29-05-2009   5 essential tools for the Windows PHP developer   34
References
•   http://www.jcxsoftware.com/vs.php
•   http://www.zend.com/studio
•   http://www.activestate.com/komodo/
•  ...
Framework
•   Project environment
•   Libraries
•   DRY
•   Common project structure




29-05-2009   5 essential tools fo...
Types of frameworks
• Full-stack frameworks
• Component libraries
• Special Purpose frameworks




29-05-2009   5 essentia...
Full-stack framework
• Project environment
• Offer most common functionality
• More strict structure




29-05-2009   5 es...
Symfony
•   Automation for common tasks
•   Flexible plugin system
•   Excellent documentation
•   ORM for databases
•   P...
Component Library
• Set of libraries
• Easy to integrate
• Pick what you need




29-05-2009   5 essential tools for the W...
Zend Framework
•   Extensive functionality
•   Includes MVC structure
•   Easily call external services
•   Task automatio...
ezComponents
• Smaller, more mature
• Specialized components




29-05-2009   5 essential tools for the Windows PHP develo...
Special purpose framework
• Specialized
• For integration or stand-alone




29-05-2009   5 essential tools for the Window...
Doctrine
• ORM
    – Database access
    – Code (Model) generation
    – Schema management




29-05-2009   5 essential to...
ATK
• Business applications
• Content management interfaces
• Data management




29-05-2009   5 essential tools for the W...
Content Management System
• Manage a website
• Workflow integration
• Authentication / authorization




29-05-2009   5 es...
Wordpress
•   Most popular weblog system
•   User levels
•   Massive amount of plugins
•   Install using Web Platform Inst...
Drupal
•   More extensive CMS
•   More complex websites
•   Massive amount of modules
•   Very active community
•   Instal...
Silverstripe
•   Relatively new project
•   Built for extending
•   Worldwide partners for support
•   Aimed at profession...
References
• http://www.wordpress.org/
• http://www.drupal.org/
• http://www.silverstripe.org/




29-05-2009   5 essentia...
Tools
•   Database management
•   Deployment
•   Version control
•   Performance




29-05-2009   5 essential tools for th...
Database management
• Server administration
• Individual database management
• Query execution




29-05-2009   5 essentia...
Database management
• SQL Server Management Studio
• SQLYog
• phpMyAdmin




29-05-2009   5 essential tools for the Window...
Deployment
• Transfer files to server
• Keep track of dependencies




29-05-2009   5 essential tools for the Windows PHP ...
Deployment
• (S)FTP
• Pear installer
• Microsoft Web Deployment Tool




29-05-2009   5 essential tools for the Windows PH...
Version control
• Keep track of changes
• Work on the same file without overwriting
• Branch and Merge




29-05-2009   5 ...
Version Control
•   CVS
•   Subversion
•   Perforce
•   Git
•   SourceSafe




29-05-2009   5 essential tools for the Wind...
Performance
• Speed up application
• Data/output caching
• Opcode caching




29-05-2009   5 essential tools for the Windo...
Performance
• Data/output caching
    – DB query caching
    – memcached
    – file cache
• Opcode caching
    – Zend Opti...
Getting started
• PHP|Architect May 2009 issue
• http://windows.php.net/
• http://iis.net/php




29-05-2009   5 essential...
The secret 6th tool




The Community

29-05-2009   5 essential tools for the Windows PHP developer   61
The community
•   weblogs and aggregators
•   IRC
•   Mailinglists
•   PHP usergroups
•   Conferences




29-05-2009   5 e...
The community
• Pierre Joye
    – http://blog.thepimp.net/
• Elizabeth Marie Smith
    – http://elizabethmariesmith.com/
•...
Questions?




29-05-2009   5 essential tools for the Windows PHP developer   64
Thank you
http://www.ibuildings.com/
http://www.leftontheweb.com/
Upcoming SlideShare
Loading in...5
×

5 essential tools for the PHP Developer on Windows

10,727

Published on

These are the slides that I couldn't use for my presentation at Microsoft DevDays 2009 in The Hague due to computer failure.

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

No Downloads
Views
Total Views
10,727
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

5 essential tools for the PHP Developer on Windows

  1. 1. 5 essential tools for the Windows PHP developer Stefan Koopmanschap 29-05-2009 29-05-2009 5 essential tools for the Windows PHP developer
  2. 2. This presentation • PHP stack • IDE • Framework • Content Management System • Tools 29-05-2009 5 essential tools for the Windows PHP developer 2
  3. 3. Who is Stefan? • Ibuildings • symfony • PHP best practices • phpBenelux 29-05-2009 5 essential tools for the Windows PHP developer 3
  4. 4. PHP stack • Single installer for full stack – Webserver – PHP – Database server 29-05-2009 5 essential tools for the Windows PHP developer 4
  5. 5. PHP stacks • Microsoft Web Platform Installer • Zend Server • Other packages 29-05-2009 5 essential tools for the Windows PHP developer 5
  6. 6. Microsoft Web Platform Installer • 1.0 – .NET – IIS – SQL Server 29-05-2009 5 essential tools for the Windows PHP developer 6
  7. 7. Microsoft Web Platform Installer • 2.0 beta – 1.0 + – PHP – popular ASP.NET and PHP apps 29-05-2009 5 essential tools for the Windows PHP developer 7
  8. 8. 29-05-2009 5 essential tools for the Windows PHP developer 8
  9. 9. Microsoft Web Platform Installer • Stack++ – Drupal – Gallery – Silverstripe – Wordpress 29-05-2009 5 essential tools for the Windows PHP developer 9
  10. 10. 29-05-2009 5 essential tools for the Windows PHP developer 10
  11. 11. Microsoft Web Platform Installer • IIS integration • Easy installation of popular software 29-05-2009 5 essential tools for the Windows PHP developer 11
  12. 12. Microsoft Web Platform Installer • Little documentation 29-05-2009 5 essential tools for the Windows PHP developer 12
  13. 13. Zend Server • PHP • Apache or IIS • Performance tools • Server Management 29-05-2009 5 essential tools for the Windows PHP developer 13
  14. 14. 29-05-2009 5 essential tools for the Windows PHP developer 14
  15. 15. Zend Server • Apache and IIS • Commercial support • Performance and monitoring tools • Community and Enterprise edition 29-05-2009 5 essential tools for the Windows PHP developer 15
  16. 16. Zend Server • Dependency on vendor 29-05-2009 5 essential tools for the Windows PHP developer 16
  17. 17. Other packages • XAMPP • WAMP Server 29-05-2009 5 essential tools for the Windows PHP developer 17
  18. 18. XAMPP • Apache, PHP, MySQL • phpMyAdmin • Management interface • FTP server 29-05-2009 5 essential tools for the Windows PHP developer 18
  19. 19. WAMP Server • Apache, PHP, MySQL • phpMyAdmin • Simple configuration 29-05-2009 5 essential tools for the Windows PHP developer 19
  20. 20. References • http://www.microsoft.com/Web/ downloads/platform.aspx • http://www.zend.com/server • http://www.apachefriends.org/en/ xampp.html • http://www.wampserver.com/en/ 29-05-2009 5 essential tools for the Windows PHP developer 20
  21. 21. IDE • Integrated Development Environment • Editor • Debugging • Additional development support 29-05-2009 5 essential tools for the Windows PHP developer 21
  22. 22. IDEs • VS.php • Zend Studio • Other IDEs 29-05-2009 5 essential tools for the Windows PHP developer 22
  23. 23. VS.php • Visual Studio add-on + stand-alone • Adds PHP support • Includes Zend Framework support 29-05-2009 5 essential tools for the Windows PHP developer 23
  24. 24. 29-05-2009 5 essential tools for the Windows PHP developer 24
  25. 25. VS.php • Familiar environment for VS users • PHP code highlighting 29-05-2009 5 essential tools for the Windows PHP developer 25
  26. 26. VS.php • Commercial add-on 29-05-2009 5 essential tools for the Windows PHP developer 26
  27. 27. Zend Studio • Eclipse-based IDE • Integration with other Zend tools 29-05-2009 5 essential tools for the Windows PHP developer 27
  28. 28. 29-05-2009 5 essential tools for the Windows PHP developer 28
  29. 29. Zend Studio • Excellent PHP support • Install Eclipse plugins • Integrates with Zend products • Commercial support and training 29-05-2009 5 essential tools for the Windows PHP developer 29
  30. 30. Zend Studio • Price 29-05-2009 5 essential tools for the Windows PHP developer 30
  31. 31. Other IDEs • Activestate Komodo – Commercial IDE with commercial support – Variety of VCS supported – Code completion / phpDoc 29-05-2009 5 essential tools for the Windows PHP developer 31
  32. 32. 29-05-2009 5 essential tools for the Windows PHP developer 32
  33. 33. Other IDEs • Netbeans – Free (as in beer) – Support for PHP and several frameworks – Java-based (uses lots of memory) 29-05-2009 5 essential tools for the Windows PHP developer 33
  34. 34. 29-05-2009 5 essential tools for the Windows PHP developer 34
  35. 35. References • http://www.jcxsoftware.com/vs.php • http://www.zend.com/studio • http://www.activestate.com/komodo/ • http://www.netbeans.org/ 29-05-2009 5 essential tools for the Windows PHP developer 35
  36. 36. Framework • Project environment • Libraries • DRY • Common project structure 29-05-2009 5 essential tools for the Windows PHP developer 36
  37. 37. Types of frameworks • Full-stack frameworks • Component libraries • Special Purpose frameworks 29-05-2009 5 essential tools for the Windows PHP developer 37
  38. 38. Full-stack framework • Project environment • Offer most common functionality • More strict structure 29-05-2009 5 essential tools for the Windows PHP developer 38
  39. 39. Symfony • Automation for common tasks • Flexible plugin system • Excellent documentation • ORM for databases • Performance 29-05-2009 5 essential tools for the Windows PHP developer 39
  40. 40. Component Library • Set of libraries • Easy to integrate • Pick what you need 29-05-2009 5 essential tools for the Windows PHP developer 40
  41. 41. Zend Framework • Extensive functionality • Includes MVC structure • Easily call external services • Task automation 29-05-2009 5 essential tools for the Windows PHP developer 41
  42. 42. ezComponents • Smaller, more mature • Specialized components 29-05-2009 5 essential tools for the Windows PHP developer 42
  43. 43. Special purpose framework • Specialized • For integration or stand-alone 29-05-2009 5 essential tools for the Windows PHP developer 43
  44. 44. Doctrine • ORM – Database access – Code (Model) generation – Schema management 29-05-2009 5 essential tools for the Windows PHP developer 44
  45. 45. ATK • Business applications • Content management interfaces • Data management 29-05-2009 5 essential tools for the Windows PHP developer 45
  46. 46. Content Management System • Manage a website • Workflow integration • Authentication / authorization 29-05-2009 5 essential tools for the Windows PHP developer 46
  47. 47. Wordpress • Most popular weblog system • User levels • Massive amount of plugins • Install using Web Platform Installer • Code is messy 29-05-2009 5 essential tools for the Windows PHP developer 47
  48. 48. Drupal • More extensive CMS • More complex websites • Massive amount of modules • Very active community • Install with Web Platform Installer 29-05-2009 5 essential tools for the Windows PHP developer 48
  49. 49. Silverstripe • Relatively new project • Built for extending • Worldwide partners for support • Aimed at professional market 29-05-2009 5 essential tools for the Windows PHP developer 49
  50. 50. References • http://www.wordpress.org/ • http://www.drupal.org/ • http://www.silverstripe.org/ 29-05-2009 5 essential tools for the Windows PHP developer 50
  51. 51. Tools • Database management • Deployment • Version control • Performance 29-05-2009 5 essential tools for the Windows PHP developer 51
  52. 52. Database management • Server administration • Individual database management • Query execution 29-05-2009 5 essential tools for the Windows PHP developer 52
  53. 53. Database management • SQL Server Management Studio • SQLYog • phpMyAdmin 29-05-2009 5 essential tools for the Windows PHP developer 53
  54. 54. Deployment • Transfer files to server • Keep track of dependencies 29-05-2009 5 essential tools for the Windows PHP developer 54
  55. 55. Deployment • (S)FTP • Pear installer • Microsoft Web Deployment Tool 29-05-2009 5 essential tools for the Windows PHP developer 55
  56. 56. Version control • Keep track of changes • Work on the same file without overwriting • Branch and Merge 29-05-2009 5 essential tools for the Windows PHP developer 56
  57. 57. Version Control • CVS • Subversion • Perforce • Git • SourceSafe 29-05-2009 5 essential tools for the Windows PHP developer 57
  58. 58. Performance • Speed up application • Data/output caching • Opcode caching 29-05-2009 5 essential tools for the Windows PHP developer 58
  59. 59. Performance • Data/output caching – DB query caching – memcached – file cache • Opcode caching – Zend Optimizer – APC 29-05-2009 5 essential tools for the Windows PHP developer 59
  60. 60. Getting started • PHP|Architect May 2009 issue • http://windows.php.net/ • http://iis.net/php 29-05-2009 5 essential tools for the Windows PHP developer 60
  61. 61. The secret 6th tool The Community 29-05-2009 5 essential tools for the Windows PHP developer 61
  62. 62. The community • weblogs and aggregators • IRC • Mailinglists • PHP usergroups • Conferences 29-05-2009 5 essential tools for the Windows PHP developer 62
  63. 63. The community • Pierre Joye – http://blog.thepimp.net/ • Elizabeth Marie Smith – http://elizabethmariesmith.com/ • Port25 – http://port25.technet.com/archive/tags/PHP/ default.aspx 29-05-2009 5 essential tools for the Windows PHP developer 63
  64. 64. Questions? 29-05-2009 5 essential tools for the Windows PHP developer 64
  65. 65. Thank you http://www.ibuildings.com/ http://www.leftontheweb.com/

×