Friday, February 18, 2011

Confessions of a PHP advocate: Hey Java, I’m sorry if I hurt your feelings…

This article looks at what several members of the PHP community are up to, and more...

Is PHP ready for enterprise? I say yes but why not let the community answer and vote with their feet! People have been using PHP as a programming language for several years to manage content and now mission critical data entry applications. People in various technology religions tend to focus on a single point in an effort to attack a technology. That’s OK as people with a limited perspective should be allowed to focus. The point of this blog article is to broaden the perspective of all developers and essentially say, use what you feel is the correct technology that applies to your application. If PHP is a strong candidate then great! If Java makes more sense for you because of your current shop skill sets then have at it. Ultimately, it is nice to know we have choices.

I won’t engage directly into the religious wars of Java and PHP but I am guilty of playfully poking at other technologies. I have been accused of disparaging Java in a few forums. Obviously these folks don’t know me very well because I disparage all languages simply because each language has its own strengths and weaknesses. In my presentations I am certainly guilty of having fun at the expense of Java, RPG, and COBOL. I have even taken a shot at Paschal, FORTAN and PL1. I kind of liken my playfulness with programming technologies as Mel Brooks tends to poke at nationalities. I have a healthy respect for Java and please keep in mind that our workbench Zend Studio is Java based (Eclipse is a Java project) If I offend anyone that is not my intention and I apologize. But my method of communication is doubtful to change any time soon.

With regard to some recent forum posts about dynamic vs. static typing, please use your own judgment. If you were not aware of a “pro-PHP” perspective on the topic, please check out this posting from a prominent member of the PHP community and very good friend Kevin Schroeder. Kevin's blog article explores what he views are the myths and misconceptions many folks have when comparing strongly typed languages vs. dynamically typed languaes. i encourage folks to review it before taking an extreme perspective, one way or the other. After all, 1/3rd of the internet would not be running on PHP if it sucked and would roughly 7 of the top 10 internet sites by WWW traffic be running PHP?

What I will comment on is the diversity in the community as PHP continues to grow its following. If you happen to check out some of our recently released Case Studies then you can see that some folks are taking more than a passing interest in PHP. Corvette America and Value Drug Mart widens the perspective of some long time PHP advocates for IBM i like Allied Beverages and Aarowcast.

And furthermore, there are these crazy guys at iDevCloud! I have known Jim Oberholtzer and Larry Bolhuis for some time and their latest escapade has really struck a note. iDevCloud is all about making IBM i affordable to those who need a place to develop or learn but can’t afford their own box. Jim and Larry are world renowned for cleverly assembling IBM i hardware and software to suit their needs and sharing those precious resources with folks looking to learn more about IBM i. Zend has partnered with iDevCloud to provide the full version of Zend Server for each of their environments so that folks looking to learn PHP on IBM i not only have the environment, but also the best tools for developing PHP applications. Jim has reported that the overwhelming majority of the customers using iDevCloud have purchased a contract so that they could learn PHP! This is huge!

Furthermore, Jim has written the management of the iDevCloud site in a PHP framework known as Zend Framework (ZF) and it is running 100% on IBM i. If anyone tells you that something cannot run on IBM i, please send them my way. I tend to believe that anything is possible, although something just may not be practical like running a VB application on IBM i. But I digress. Jim is in the process of developing content for a series of presentations where he will be talking more about the MVC architecture of ZF and PHP for IBM i developers. This is a good thing as many IBM i shops want to use ZF but struggle on basic concepts and where to get started. Zend offers training, of course, but assumes you have a solid foundation in Object Oriented principles. This creates a bit of a gap as most RPG and COBOL developers have a procedural background and have avoided OO for years. Jim along with several other folks in the community are looking to close that gap and enable RPG and COBOL programmers with the tools and concepts to adopt all kinds of PHP concepts.

Yes, having a choice is a nice thing!