Archive

Archive for February, 2011

Mike's IBM i PHP blog and more... › Confessions of a PHP advocate: Hey Java, I’m sorry if I hurt your feelings…

February 18th, 2011 Comments off
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!


Read the original at Mike's IBM i PHP blog and more....

Categories: Blogs Tags:

RPG and Programming › The Last GOTO

February 6th, 2011 Comments off

I have been reading and thinking about the future of my favored programming language and the computer platform upon which I use it. The latter has been the subject of an extended discussion in LinkedIn. Some feel that the naming of the machine is of little consequence, unless you use the wrong one. It is felt that to call it the AS/400 is inaccurate, since the AS/400 is not called that anymore- which is, of course, true. It is felt that RPG will not survive for an extended period of time because of its intimate connection via DDS (Data Description Specifications) with the 24 X 80 character display green-screen terminal. Others feel that newer innovations may allow it to survive, but only if it dispenses as quickly as possible with the fixed-format (“punch-card”) calculation specifications and move quickly to free-format. There are not many defenders of fixed-format RPG around, and those that use it are probably expected to turn in their coding sheets soon and retire. And, as always, proponents of each view have their own facts and anecdotes to support their view.

I could not hope to make much of an impression on that forum and accomplish anything more than stir up the pot of contention. It is much better to make a one-sided argument here. :-) Anyone who cares to argue may feel free to do so.

The matter of the naming of my favorite machine is to me a matter of importance. As some in that discussion pointed out, that machine continues to be called AS/400 even today, even though IBM gave up on that name a long time ago; but the name still appears in IBM documentation along with other names for it (iSeries, for example) that IBM has given up on.

The Ford Motor Company long ago created a vehicle it called a Ford. It also makes, or has made other brand names like Mercury and Lincoln. The Ford Model T was a roaring success. When the time came to upgrade its model line, did the company take the attitude, “This model will look nothing like the Model T, and certainly nothing like the first cars Mr. Ford created. We don’t want people thinking of those old cars when this new one comes out. We need to call it a Henry! Or perhaps use his initials- the HF1900+”? No, they recognized the value of a brand name. To give another example, very soon after they discontinued the Ford Taurus, they brought the name back and gave it to another car, to give that car credibility.

To call the machine we use an AS/400 is recognition of its stability, which is likely a function of both hardware and operating system software. Only ignorant people outside the computer business would seriously think that calling it by its original name would imply that it only works in a dumb-terminal environment. I prefer to think that people in the computing business, in the world’s IT departments, are not that stupid. It’s a computer, for heaven’s sake. We can make it do whatever we want it to. People who run Windows XP, Windows Vista, or Windows 7 do not expect to encounter the General Protection Faults they encountered in Windows 3.1, just because they are all named Windows. If people who think like that are actually in responsible positions in the IT departments of their companies, I fear for the future of those companies.

That is probably enough about marketing stupidity. I am not a marketer, and I have not had training in it. It just seems obvious to me that if they felt there was such a burning need for a name change, they could have come up with some name that held onto the good reputation and name recognition it had engendered. Perhaps some variation that held onto to the “AS” prefix.

Readers of past entries may perhaps be aware of my feelings on some other topics I mentioned, like free-format languages. The C language, for example, is one of the most non-intuitive languages I have ever looked at. Its only claim to virtue is its popularity, which stemmed from from the fact that C, which really is an “old” language, came riding in as a free language used in association with Unix, and its use was seeded way back when by free distribution to college Computer Science students.

Free- format, as represented by C and other languages – as well as freeform RPG- is not a virtue in itself. See my earlier discussions on this subject.

It has been a problem that RPG is viewed as an IBM midrange language only. It may be too late to dispel that impression. I think it would be a great idea if IBM would release VisualAge RPG to the open-source community. The community would expand its use with a whole lot more vigor and enthusiasm than IBM seems ready to do. I think they would have an Internet HTML-style interface ready very quickly – much more quickly than IBM could or would by itself- and IBM could borrow the ideas back for use with the midrange box. The file access operations even now available in RPG (fixed format or free) are much more rich and elegant than just about any other language. Another language often used for data access is SQL; while I like its ability to pull together data sets, its single record access syntax (not to mention actual speed) to me seems positively kludgy compared with RPG.

But what do I know? I’m just a grunt programmer in a small town in the center of the U.S., old enough to retire, though I probably won’t, as least voluntarily, for a long time. My range of experience is nowhere as wide, and my education not nearly as deep, as that of many whose opinions I read and often value, though I have been in the business for over 30 years.

I view RPG pragmatically; compared with any other language I can conceive of on the midrange, it is a supremely elegant file access and data manipulation language, especially in its RPGIV incarnation. Any further attempts to make it look like another language like Java or C or Pascal would be positively a waste of time and energy. It is bloated enough already.

I think there is no reason why RPG could not be known and used by a wider range of the computing community. I can only wonder why this has not been so. People will not come to the IBM midrange to use PHP or Java. Programmers need to understand the virtues of RPG. And I can say that even though I haven’t the faintest idea how to go about doing it.

If someone does not do something to encourage the use of RPG, it will mean the eventual asssimilation of the IBM midrange (read AS/400, IBM i, iSeries, or whatever you want here) into the IBM conglomerate, since RPG has been so intimately connected with the individuality of the IBM minicomputer since its inception. The oldtimers will have to support RPG until it fades away, and I may be the last RPG programmer, being called in to fix one last program, to determine where that last GOTO goes to.


Read the original at RPG and Programming.