You're currently on IBMSystemsMags Archive. Click Here to view our new website

POWER > Business Strategy > Open Source

IBM i and Open Source

Open Source

IBM has a long history of supporting open-source technologies on IBM i, from Apache to PHP and Node.js to Git, but the message still hasn’t reached everyone. The fact is, open source is a key element in the success of IBM i and will play a vital role in its future.

Seasoned IBM i developers are aware of the power, security and stability of their OS, but many don’t know just how versatile IBM i can be when they use the open-source technology supported by the system. Developers need to take advantage of these technologies to position IBM i as a vital part of their organizations' IT and business future.

The Importance of Open Source

Open source is key to the long-term future of IBM i as a modern computing platform. IBM is committed to open source on IBM i. For instance, IBM i 7.3 includes support for Git (in addition to well-known support for Apache, PHP, Node.js and others). Also now supported are the open-source C compiler GCC and IBM’s open source project ibmchroot. IBM’s strategic direction includes support for more open-source technology on IBM i, according to Jesse Gorzinski, business architect, IBM i Development Lab. “As we all know, the ‘i’ in ‘IBM i’ stands for ‘integration,’ a celebrated aspect of our platform’s heritage. Now, thanks in part to open source, we have more integration than we’ve ever had before. When we deliver new languages, we deliver integration with IBM i. The languages come with communities that have given us integration with cognitive technologies, social media, analytics, cloud and more.”

With these and other open-source technologies flourishing on IBM i, the platform increases the opportunities for your business—including the applications you can create, the level of productivity you can achieve and the skilled developers you can attract. Open-source solutions can interface with your existing IBM i applications and languages to deliver hybrid solutions that leverage the best of both worlds.

Where to Start

Traditionally, green-screen developers handled both the back end and the front end of the application. For the back end of a web application, you might choose a purpose-built language such as PHP or Node.js. As you get comfortable in the language you can start to expand the sophistication of your approach. For instance, you can start writing procedural code with open-source scripting language PHP and then move on to object-oriented coding with an open-source framework such as Zend Framework. Zend and IBM also provide exceptional PHP support as they understand how it underpins many mission-critical business applications. All these open-source languages allow you to interface with languages and programs already in use in your application.

When it comes to front-end web development, the browser environment provides capabilities that are orders of magnitude greater than the 5250 interface. To unlock these capabilities, it's vital for developers to learn the primary client-side languages for the web: HTML, CSS and JavaScript. This task can be simplified using open-source libraries or frameworks, such as jQuery or AngularJS.

APIs and Application Lifecycle

As you grow in experience, you’ll notice that modern web applications tend to be built around APIs and web services, so familiarity with Ajax and REST is helpful. As you become comfortable developing web applications, you can start to turn your attention to the application lifecycle with git, a leading source control management (SCM) system in the open-source community. Git manages and distributes code, enabling team collaboration that makes it easy to push or roll back changes and resolve conflicts.

The wealth of options comes with a risk: A developer can get lost in the sea of possibilities. Just pick one language or technology and get started. These ecosystems all borrow many of their concepts from each other, so once you know one, the next one becomes significantly easier to master. Keep in mind that these open-source ecosystems come with almost unimaginable volumes of online resources to help new developers get started.

Attracting Web Developers

Experienced web application developers typically have little difficulty adapting to IBM i when they realize it supports the open-source technologies they are already familiar with. Many will be pleased to know their UNIX* skills can also be leveraged to a great extent.

Having a mix of experienced web developers and experienced green-screen developers can yield the best of both worlds. Each group can mentor the other in the areas they are most familiar with. The web developers can pull back the curtain on how a web front end can be built, and the green-screen developers can spearhead the integration with existing programs and capabilities.

Greg Patterson is a modernization specialist at BCD, a division of Fresche Solutions.



2019 Solutions Edition

A Comprehensive Online Buyer's Guide to Solutions, Services and Education.


IBM PowerAI Brings Together AI Solutions for Enterprises

Business Essential

Business Essential

IBM Systems Magazine Subscribe Box Read Now Link Subscribe Now Link iPad App Google Play Store