Collaboration at COMMON

The 2015 COMMON annual meeting and expo, now in its first day, is helping speakers and attendees create innovation through IBM i integration: open source, closed source, IBM and vendor solutions. For example, of my six presentations during this conference, two are collaborations:

The Art of Performance Diagnostics, with IBM’s Dawn May, allows us to show, among other topics, how IBM i’s integrated performance tools complement green-screen tools and third-party tools (in this case, Zend Server) to pinpoint and solve performance issues (here, PHP-and DB2-based applications).

PHP Tricks for RPG Developers, a talk jointly created by RPG and SQL expert Birgitta Hauser and me, combines RPG, PHP, and DB2, allowing RPG to achieve graphical (charts and graphs, PDF and Excel files) and internet (json-based web services, flexible email) functionality using native functions.

Conferences such as COMMON serve a need that’s difficult to replicate back at the office—brainstorming and sharing possibilities among interdisciplinary peers, or sitting side-by-side with like-minded colleagues who work for different employers, to try something new. This week, for example, some of us plan to share knowledge on compiling binaries in PASE and to further the potential of open source on IBM i. I’m looking forward to presenting my talks (both joint and solo) and helping to realize new ideas with forward-looking colleagues during the conference.

Birgitta Hauser and Alan Seiden collaborate on their talk at COMMON 2015

Birgitta Hauser and Alan Seiden collaborate on their talk at COMMON 2015

Free webinars sponsored by COMMON Europe (open to all)

Starting January 27, 2015, I’ll be giving three free Tuesday webinars:

  • January 27: Strategic Modernization with PHP
  • February 17: Bring RPG/COBOL business logic to the web with the PHP Toolkit
  • March 10: Speedy PHP on IBM i

All three one-hour webinars will be held at 14:00 Central European Time (CET). That’s 8 AM Eastern Standard Time (EST). The registration page includes a time zone converter.

Details and to register: http://www.data3.se/?p=5287

Thanks to Torbjörn Appehl of Data3 (COMMON Sweden) for organizing these.

January newsletter

I’ve relaunched my PHP and IBM i newsletter. Here is the January 2015 edition, out today.

To subscribe and receive this free newsletter each month, go here: alanseiden.com/tips.

Comments welcome. Happy 2015–

Alan

Learn to combine RPG+PHP at Toronto user group, Jan. 21, 2015

I’ve recorded a special message about my upcoming presentations at the Toronto Users Group for Power Systems evening meeting on January 21, 2015:

In the video, I discuss the two sessions I’ll be presenting:

  • Bring RPG/COBOL business logic to the web with the PHP Toolkit
  • PHP Tricks for RPG Developers

Hope you can make it to the Toronto meeting, Jan. 21, 2015, Markham, Ontario. Details: http://tug.ca

Zend Framework 2 performance optimization: it works

Zend Framework 2 (ZF2) provides optimization techniques that are often overlooked by published performance tests. One excellent source for such techniques is a presentation by Gary Hockin. I was thrilled when my client and friend King Harrison IV of K3S began testing the effect of these techniques on his ZF2 application running on IBM i.

King’s initial tests produced a 600ms reduction in load time, obtaining respectable performance for his database-heavy application. He plans to update his blog post with further speed improvements as he implements them.

Read King Harrison IV’s blog post about ZF2 performance improvements.

Performance Tweet chat Monday, online workshop Thursday

Join me for two events this week sponsored by COMMON, a Users Group:

Details on online workshop: http://www.common.org/index.php/webinars.html

PHP Performance on IBM i: Tuesday, Dec. 10 (limited-time discount)

Update: a recording of this class is available at http://iprodeveloper.com/let-your-php-apps-fly-ibm-i-high-performance-php-demand

————-

This Tuesday, learn how to Let Your PHP applications fly on IBM i. Busy? You can attend while getting your work done, with three one-hour class segments separated by breaks.

“Our process now runs 30-50% faster, thanks to one tip from Alan’s presentation.”
—Mike Meszaros, Software Developer, Specialty Pipe & Tube

You’ll learn to quickly improve your application’s performance, including:

  • Give your app that “snap” by optimizing its front end as well as PHP
  • Configure Zend Server for performance
  • Diagnose bottlenecks
  • Leverage unique IBM i performance tools
  • Optimize DB2 and the IBM i toolkit

I’ll be there to answer your questions. What’s more, the presentation will be archived for 60 days so you can review the material afterward.

“Alan is the performance guru of PHP on IBM i. When we encountered unexpectedly slow queries and program calls, Alan showed us a configuration change that helped our application run 3x faster, creating happy users. Thanks, Alan!”
—Adam Chuk Shirley, PHP Developer, Sabel Steel Service

What: PHP on IBM i performance eLearning event
When: Tuesday, December 10, 2013: three one-hour segments with two one-hour breaks, starting 11AM and ending 4PM (ET).
Where: Online
Cost: $150 (but discounted to $99 through Friday, Dec. 6)

Details and registration: http://iprodeveloper.com/let-your-php-apps-fly-ibm-i-high-performance-php

High-performance PHP on IBM i this Tuesday (July 30, 2013)

For the first time, I’m teaching how to Let Your PHP applications fly on IBM i, including how to configure Zend Server for performance, diagnose bottlenecks, leverage unique IBM i performance tools, optimize DB2 and the IBM i toolkit, and improve performance of front-end javascript, style sheets, and the like. You’ll come away with knowledge that you can use immediately to improve your application’s performance.

I’ll be there to answer your questions. What’s more, the presentation will be archived for 60 days so you can review the material afterward.

What: PHP on IBM i performance eLearning event
When: Tuesday, July 30, 2013: three one-hour segments with two one-hour breaks, starting 11AM and ending 4PM (ET).
Where: Online
Cost: $150 (group registrations available)

Details and registration: http://iprodeveloper.com/let-your-php-apps-fly-ibm-i-high-performance-php

Questions: Get in touch with Alan

Other upcoming events from Alan:

August 22, 2013: At NESTU (user group in Fairfield, N.J.): “At ease! Relax your neck-back-shoulders at the keyboard”: A special presentation from Alan to help computer workers (such as all of us) avoid repetitive strain injury and stay poised at work. Fun and unusual.

September 9-11, 2013: COMMON Fall 2013 Conference and Expo in St. Louis, Missouri. The Premier IBM i event. I’m presenting 5 talks on PHP and web performance.

October 7, 2013: Full-day, in-depth PHP on IBM i Performance Workshop, 9:30-4PM (PT) at  ZendCon (the PHP conference). Register for both parts of this tutorial (room 6) for Oct. 7, and the full conference, which goes till Oct. 10, in Santa Clara, California. I’m presenting several talks on PHP for IBM i in addition to the full-day performance tutorial.

Alan’s event page: http://www.seidengroup.com/presentations/upcoming/

 

How to prevent Easycom from loading

Several clients have asked me how to prevent their older Easycom components from loading, now that they’ve migrated from the Easycom toolkit to the new open source IBM i Zend toolkit.

Here are instructions based on suggestions from Rod Flohr of Zend Support. These tips have worked for me on Zend Server 5.6 for IBM i and will probably work on older releases as well.

Prevent Easycom extension from being loaded by PHP

1. Go to the Zend Server administration interface in your browser: http://yourIBMi:10088/ZendServer/.

2. Navigate to the Server Setup -> Extensions tab.

3. Find Easycom on the list of extensions. If the extension is On, click the “Turn off” link on the same line to turn it off.

4. You should see this message: “The extension ‘Easycom’ will be turned off after restarting your PHP”. You don’t need to restart PHP now if you plan to do so later, at the end of “Prevent I5_COMD daemon…” (below).

5. Also look for an extension called ‘pdo_easycom,’ which you may see if you had downloaded or purchased the Easycom product directly from the vendor. If it is there, turn it off as well.

Prevent I5_COMD daemon from starting in ZENDSVR

If you see a job named I5_COMD running in the ZENDSVR subsystem, but no longer use the Easycom toolkit, you may wish to follow these steps:

STEP 1: Rename the startup program that launches I5_COMD. From a 5250 command line:

RNMOBJ OBJ(ZENDSVR/ZCCSTREACD) OBJTYPE(*PGM) NEWOBJ(ZCCSTREACX)

This renaming will “hide” I5_COMD’s startup program from Zend Server’s startup procedure. (Don’t worry—the “missing object” message is monitored—no errors.)

STEP 2: Stop and start Zend Server from the menu. From a 5250 command line:

GO ZENDSVR/ZSVMENU

Use option “2. Stop Zend Server Subsystem”

Verify that subsystem ZENDSVR has ended and that there are no jobs named ZENDSVR in the QHTTPSVR subsystem.

Next, use option “1. Start Zend Server Subsystem.”

Verify that subsystem QHTTPSVR is running and contains the usual ZENDSVR jobs. Verify that subsystem ZENDSVR is started, but without I5_COMD inside.

Which version of Zend Server for IBM i do I have?

Here is the easiest way to determine which version of Zend Server is installed on a given IBM i system.

From a 5250 command line, follow these four steps:

1. GO LICPGM
2. Take option 10 (Display installed licensed programs)
3. Scroll down to the licensed program 2ZSVRPI 
     (on my system it's the last entry)
4. Read the product description,
     containing version numbers for Zend Server and PHP
     in the form "Zend Server for IBM i [version] ( PHP [version])"

On my IBM i, I see:
2ZSVRPI   *INSTALLED   Zend Server for IBM i 5.6.0 ( PHP 5.3 )
so Zend Server is at 5.6.0 and PHP is 5.3.

Thanks to Zend’s Sam Pinkhasov for this tip.