Friday, December 29, 2006

Happy New Year to all PHPers!

The yearly PHP community summaries are already appearing throughout the blogosphere. Every year they just get better and better and it becomes clear that the PHP community's accomplishments outshine those of the previous year.

PHP for many years has been the leader in Web development. In the past couple of years though this leadership has become even more noticable. Evans Data Corporation has estimated that over 4.5M developers worldwide use PHP today. Not only is that an impressive number on its own, but when you dig into the numbers you can see that in 2007 PHP is expected to surpass Java in areas like Europe; and that includes all permutations of Java usage including in environments where PHP doesn't attempt to be relevant such as the desktop.

2006 has clearly been a very exciting year for PHP. It comes at a time where the Web, Web applications and Web services are changing the way we communicate and do business. A large amount of the flagship Web sites are running PHP including Yahoo!, Facebook, Flickr (now Yahoo!) and many more. The blogosphere is heavily dependent on PHP applications such as Wordpress, Drupal and others (most of which provide far more value than just blogging). The PHP community is clearly a movement of great sharing and collaboration. Just by looking at the number of available scripts on Hotscripts.com one can see not only the sheer size of PHP but also how that compares to other technologies.

PHP and the community have evolved significantly in 2006. Here are some of the highlights in no particular order:
  • PHP 5 adoption tipped in 2006. While there have been various opinions on the matter, judging by the metrics that I have personally seen which are based not on installed base but on what people are actually developing in, I have no doubt that around 75% of the PHP community today develops on PHP 5. The big change seems to have happened with the release of PHP 5.1.
  • The development of PHP 6 has made tremendous progress with the main new feature being native Unicode support. We are going into 2007 with a pretty solid core code base which already has most of the Unicode work completed. The community is also making great progress in getting all extensions up to speed. Have no doubt, this is a big effort and I believe the release cycle for PHP 6 will be especially long due to the huge amount of changes that were made. The feedback loop with the user base will also be especially important. That said, don't expect another Perl 6 (any news on that?). We've always been very pragmatic in making progress and getting major releases out the door.
  • 2006 is no doubt the year of the PHP frameworks. With the Web growing up, increasing migrations of traditional applications into the Web browser, and with the facing of a new wave of three-tier architectures (DB, PHP, Javascript) frameworks are an important piece in making it easier and more efficient for people to deliver such applications. While we now face the challenges of three tier architectures with Javascript in the browser being the third-tier I don't envy J2EE developers who have to now get used to a four-tier architecture (DB, Java Application Server, Servlet/JSP, Javascript in the browser). We launched the Zend Framework project back in October 2005 in order to provide the necessary building blocks and best practices to the PHP community. While already quite a few frameworks had existed at the time, I have no doubt that the launch of this project has significantly increased the interest and discussions regarding frameworks in the PHP community.
  • On the commercial side, 2006 was a great follow-up year to the 2005 announcements with IBM's Information Management and Oracle's Database teams. In 2006, we announced two important partnerships:
    • The first with IBM's System i division (AS/400) where PHP will be used to Web-enable the platform. There are a large number of computers and applications in the System i community, applications are mainly written in RPG & Cobol using the DB2/400 database, and Web enablement has always been a challenge for that community. Due to the ease-of-use of PHP, and with the help of language and DB2/400 connectivity APIs we're providing, we believe that PHP will be a great success on the platform. We have already seen great interest in 2006, but I believe 2007 will be the year where we will see the first set of solutions being rolled out on the platform.
    • The second partnership we announced was with Microsoft. More info on one of my earlier blog entries. In the past few months we've already made huge progress in getting PHP to run better on Windows and have contributed those patches to the PHP source tree. In addition, Microsoft has been making very good progress on developing a FastCGI solution for their IIS Web Server. All pieces will be shipping in 2007 and will be made available to all.

  • On March 1st we launched the Zend Developer Zone. The creation of this new site was also part of the PHP Collaboration Project which is a three project initiative to further the art of PHP. The goal of this site is to deliver best practices and information which will be valuable to PHP professionals.

  • The third piece in the PHP collaboration project was the launch of the PDT (PHP Development Tools) project at Eclipse. The goal of this project is to provide the Eclipse eco-system with the necessary framework (not to be confused with Zend Framework) for supporting the PHP language enabling the development of professional tools that leverage this project. Many companies have development tools based on Eclipse including IBM, SAP and BEA and will now have an easier time in supporting PHP if they wish to do so.

  • Last but not least are the Zend products. We've had many important releases this year including Zend Studio 5.5, our industrial-strength runtime environment Zend Platform 2.2, Zend Core for i5/OS, Zend Guard 4, numerous Zend Core for IBM & Oracle refreshes, and more... Coming early in 2007 is Zend Platform 3 which is already in beta and has some very cool new features like Job Queue and High Availability session clustering, and some major Zend Core revs including one which includes a lot of the Windows work we have recently been doing.

All of these efforts and many others which have happened within the PHP community and Zend will guarantee an even more exciting and successful 2007.

On a side note, when a technology becomes as ubiquitous like PHP, skeptics always appear. The mantra of dynamic languages is to get the job done, quickly. That is the big commonality between their communities and is what's driving them deep into mainstream use. While I believe PHP will continue to lead the pack, no doubt that its success has opened the door for other languages to follow. I believe the big winners coming out of 2007 will be dynamic languages which is the reason why many of the big players have started to invest in them including IBM (who as usual were way ahead of the pack), Oracle, BEA, Sun & Microsoft. I even think that Redhat (JBoss) might start embracing dynamic languages in 2007, depending on whether the Redhat leadership itself gives its blessing. In addition, it will be interesting how open-sourcing Java will play out in 2007 but many believe that it's too little too late. It seems that these efforts are always being made a bit too late after the respective technology already starts to loose steam. Solaris had the same issue although I think it has benefited from having been open-sourced. However, it will not likely be able to reclaim world dominance despite it being a very good and proven OS. End of side-tracking... :)

In addition I believe you will see the following happening in 2007:
  • PHP 5 will continue to expand and mature in parallel to the work on PHP 6.
  • The community will make significant progress on PHP 6. I believe we will get a lot of helpful feedback once we get a preview out the door.
  • Zend Framework 1.0 will ship H1/2007.
  • The native PHP MySQL driver might be released (?).
  • Windows Server "Longhorn" will ship with FastCGI support.
  • The community will continue to invest on all levels in dealing with the security challenges Web infrastructure faces including best practices, tools, and PHP enhancements and fixes.
  • There are still some vendors out there who are doing little to actively engage the PHP community and work on better interoperability between their solutions and PHP. I believe we'll have at least one more in the mix.
  • We will see a significant improvement in tooling and best practices around PHP & Ajax development.
  • I demoed a proof-of-concept of what we called phpBlox in my php|tek 2006 keynote. We are continuing to work on this and some more concrete work should appear in 2007.

If you got this far you really deserve a very happy and restful new year!
Thanks to everyone in the PHP community and its supporters for making 2006 such a successful year. I apologize ahead of time for anything significant which I mistakenly left out.
We have a busy and exciting year ahead of us!