Seiden Group Helps Bring Community PHP To The Japanese Market
October 5, 2020 Alex Woodie
The new community edition of PHP is gaining interest from IBM i shops around the world. Now one of the biggest IBM i service providers in Japan, Chubu Systems Corp., is working with Seiden Group to ensure that Japanese IBM i shops have the latest, greatest distribution of PHP to work with.
As you may have heard, there is a new open source PHP runtime for IBM i that is being distributed via RPM, which is IBM’s preferred method for sharing open source software on IBM i. The new community edition of PHP is free, and essentially replaces Zend Server Basic, which is the free PHP runtime that IBM and Zend (now owned by Perforce Software) provided to the IBM i community for so many years.
IBM stopped distributing Zend Server Basic with IBM i on June 30 of this year, ending the longstanding deal to includes the PHP runtime and one-year of support from Zend. On June 30, 2021, Perforce will stop providing technical support for Zend Basic Edition users.
That means IBM i shops that have adopted PHP face a choice: They can either move to the community edition of PHP, or upgrade to one of Perforce’s commercial PHP distributions, including Zend Server Professional and Zend Server Enterprise.
The option of sticking with the free PHP community version is looking better and better, thanks in large part to the work that Seiden Group has doing to clean up the open source distribution of PHP on IBM i and fix or update various components, including legacy database drivers like ibm_db2 and PDO, SSH2, LDAP, GMP, Xdebug, ZIP, the mail() function, and more.
“We’re building and fixing and writing tests for more modules as we see demand,” says Alan Seiden, the principal of the New Jersey company, which also offers a technical support package for community PHP on IBM i. “We have the skills and the tools and the passion to take this on ourselves. We’re also actively maintaining the PHP toolkit and once again bringing life back there.”
Seiden’s reputation as a PHP on IBM i expert — not to mention the critical work his team does to maintain critical open source components — reached across the Pacific Ocean to Japan, home of the second-largest IBM i market. There are upwards of 10,000 IBM i shops in Japan, with about 4,000 of them using PHP (most likely Zend Basic), according to some estimates.
Yoshiki Ushida, the technical architect at Chubu Systems Corp. (CSC), recently reached out to Seiden to see if the two companies could collaborate. The discussion led to the creation of a formal partnership between Seiden Group and CSC, as well as a joint services offering. Called CS^2, the offering includes migration to community PHP, access to Seiden Group’s repository of community PHP modules, as well as technical support.
One of the big reasons that CSC selected Seiden Group for this partnership is that Seiden Group did the work to upgrade the ibm_db2 driver to support double-bit character sets (DBCS), which is required to support Japanese and other Asian languages.
“We quickly realized that Seiden Group was the right team to help us bring this amazing technology to Japan’s IBM i community,” Ushida says in a press release. “CS^2 incorporates the only repository that guarantees DBCS compatibility. It’s also the only repository that provides the additional security of signed RPM packages. Through this partnership, the number of secure, supported, DBCS-compatible packages available with CS^2 will continue to increase.”
According to Seiden, the intersection of the shift from a 32-bit runtime in Zend Basic to 64-bit in Community PHP, as well DBCS enablement, created a fertile area for problems. “The move to 64-bit, which is what community or open PHP has, means internally the variables were expanded and have twice the size now,” Seiden says. “We need to make sure that the double bytes are in the right place.”
Seiden actually encountered an issue with Big-Endian and Little-Endian ordering in the ibm_db2 module, and fixed it. He donated the fix to the community, allowing the entire IBM i community to benefit from his work.
Seiden Group has developed the skills to build, fix, and support the PHP and all its components, not only at the application level, but working in the PASE environment, Seiden says. Knowing how all these parts work together is important, particularly when writing test cases for fix requests that are submitted to IBM when changes are needed in the system, he adds.
“This is the first time the ibm_db2 module has been actively maintained in some years,” Seiden says. “We want all users, including DBCS users, to have a positive experience with 64-bit PHP and IBM Db2.”
Supporting community PHP isn’t the only thing that Seiden Group does, of course. The company is actively involved in developing and training in Python and Node.js as well. How does Seiden find time to maintain the community PHP code on behalf of his clients and the IBM i community, and get all the other stuff done?
“I do devote a lot of my attention to this new line of business, not only working on the application development side – we’ve always installed Zend Server before and helped upgrade it – but now we’re actually building PHP and helping people succeed with good quality documentation,” Seiden says. “It’s another level of responsibility, and one we’re well-positioned for. But I admit I do have to drink more coffee for this.”
A stack of Starbucks gift cards apparently is in Seiden’s future.