The IBM i’s stability, strong language support, and active developer community make it ideal for open source applications
by Pete Helgren
This article is excerpted from Open Source Starter Guide for IBM i Developers.
If you are new to IBM i, then welcome! I would guess though, that you probably already have an IBM i, or access to one, and you are hoping to leverage some of that IBM i goodness because …
- You want to have fun trying something new.
- You have a project and want to try something different (from a little different to way different).
- You’ve been given a mandate to learn something new.
- You’re curious what all the “buzz” is about.
- All of the above.
If you are new to open source software, frequently referred to as OSS, then welcome again! In addition to the list above, I would guess you might also have the following in mind:
- You want to add to your repertoire of skills with something more “cutting edge.”
- You want to add to those skills with a low cost of entry.
- You have a specific project in mind, and an open source solution has been proposed.
Why Open Source on IBM i?
You have come to the right place because, from my slightly skewed perspective, the IBM i is a perfectly designed open source machine. Why do I think that? Here’s why:
- It’s running the POWER8 chip. Best silicon in the universe!
- It has all the “legacy” (I really hate that word, but it fits) languages that solid business logic can be written in: RPG, COBOL, C, C++ (even FORTRAN).
- The ILE and PASE environments are two environments that can share resources seamlessly, which means AIX binaries can be leveraged with RPG business logic.
- Can you find a better database than DB2 on IBM i? I doubt it! And on IBM i, it’s completely integrated into the OS. No DB admin needed.
- Stable, secure OS. No patch Tuesdays. No classic buffer overflow exploits. You can sleep at night (or at your desk during the day like I do).
- There is a whole list of IBM-provided and supported OSS that will run on IBM i “out of the box.”
Ask any IBM i programmers or any IT managers running IBM i in their shop, and they can easily add to the list above. Then, on top of it all, you have a close-knit, vibrant community that not only includes IBM i owners but IBMers themselves. How many Microsoft executives have you spent time with at a user conference? Can you name Microsoft’s current Windows Chief Architect? How often do you get a nearly immediate email back from a Microsoft developer? How many Microsoft developers do you know who lurk on popular mailing lists and pop in with answers? I really don’t have anything against Microsoft. Really! I don’t. But the IBM i ecosystem is just awesome! Community members and IBMers all love the same platform for the same reason. It just doesn’t get any better than that! Yeah, I’m spoiled and I know it, but I’m still amazed by how engaged IBM as a company is with the community.
It’s All About the Community
Flash back to 1995. I’m sitting in a big tent in Redmond, waiting for the Windows 95 Launch to start. As a Windows 95 beta tester, I have been fully involved with every step of testing the operating system, loving the community effort. I even wore a vest made of beta installation CDs. Folks took my picture. That was my “15 minutes of fame!” Microsoft has long promised to get me the collateral that backs up my presence at the launch ... but alas! They are too big follow through (apparently).
At the time, I loved Microsoft for all the reasons I love IBM i and the community today: engagement and connection with a community with purpose. Very cool. Well, Microsoft got bigger and more distant and impersonal for me while the IBM i community got better and more “communal.” IBM hasn't yet lost its mojo when it comes to the IBM i platform and the community. And for anything to retain a personal feel in this electronic, Internet-connected world is an amazing feat. The IBM i community hasn’t succumbed to the siren of “all virtual” yet. You can still rub shoulders with everyone from IBM executives to propeller heads at conferences across the world. If you get the chance, do it!
I know what you’re thinking … something like this: “Yeah, it's cool, but any operating system can run open source stuff, and there are still plenty of in-person events I can go to. What’s the big deal about IBM i?” Well, OK, you can run PHP, Ruby/Rails, Python, Node.js, and plenty of other stuff on LUW (Linux UNIX Windows). I do it all the time while I am developing applications. But I would claim that you can’t do it with as much security and scalability and with the performance the Power chip brings to the table. Having survived the Great Recession, I am as happy to have a job as anyone, and I am a big fan of full employment, but I don’t see either the efficiency or economy of running a server farm.
Granted, with clustering, load balancing, failover, and other mitigation techniques, running a farm or Linux or Windows servers can keep your uptime up! But who wants the aggravation? Not me! So IBM i has been a great timesaver. I bounce my IBM i maybe twice a year, usually because there is some essential add-on I need, and in order to get what I want, I have to apply a Technology Refresh, basically a version step upgrade, and then bounce. But I can’t tell you the last time a “critical security update” was issued for my IBM i. It’s just that good.
OK. You probably already have an IBM i. Weren’t those paragraphs above stoking your fire about what a great platform we have? Man, get out there and tell folks. Not just because you are an IBM i “bigot” (we may be opinionated but not bigoted) but because you want people to have fun in their IT work! You aren’t?! Then read the rest of this book. There is a boatload of goodness that is waiting for you in the IBM i open source garden of goodness. Jump in!