Yes, in the previous issue, I briefly mentioned that "[SEU] is perhaps the most significant practice that is keeping RPG programmers a generation behind their PC, Linux, and UNIX counterparts. Stop using SEU!"
I received a few letters that said, "OK, Bob, we will gladly stop using SEU, but what do we use instead?" Apparently, people want me to explain what I meant when I said, "Stop using SEU!" So here goes.
SEU is a line editor that was released to the OS/400 world with System/38 CPF Version 2. CPF was the predecessor to OS/400. It was created long before there were graphical user interfaces (GUIs) on every desktop. SEU is now a 20-year-old line-mode editor that only runs on a character-mode 5250 display. It isn't even true character-mode editor, since it only works with source lines and the Enter key instead of reacting to characters as they are typed.
GUIs are being used by programmers for virtually all other major computer platforms. In fact, I would bet that your programmers don't use SEU to write letters; they probably use Windows Write or MS Word or something like that. Why? Because it is so much more powerful than a character-mode editor could ever be. Fonts alone are impossible to implement in 5250 character-mode editors.
Let's look at some of the contemporary things that a programmer's editor should contain, and this stuff isn't rocket science.
- Cut/paste capability
- Drag/drop capability
- Tabbing to specification positions
- Smart prompting
- Smart editing
- The ability to open and edit multiple source members at the same time (without exiting the editor)
- The ability to compile directly from within the editor
- Integrated language help
- Edit source stored on the IFS
- Operating system API help
SEU does not offer any of these features. In fact, IBM no longer enhances SEU themselves. That task has been outsourced to a third party for a few years.
What Are the Alternatives to SEU?
Unfortunately, because few people have opted to move to a graphical editor, both IBM and third parties who have offered a GUI alternative to SEU have not done well. IBM, for example, originally sold the OS/2-based graphical editor called CODE/400 for more than $1,000 per PC. The Windows version was around $700 when it was shipped. I don't have access to IBM sales figures, but I heard that IBM sold approximately 1,000 units of CODE/400 at those prices.
Long before CODE/400 shipped for the Windows platform, I started writing a GUI editor for RPG and DDS. Originally, this editor was going to be used to format source code that I would then publish in my books and articles on RPG. A few people heard about it through the seminars and onsite training that I was doing; others found out about it when they asked what I used to format the examples in my book. So I turned the editor into a commercial product and named it Visual RPG. It was the first product out there named Visual RPG. I sold about 600 copies of this Windows 3.1 (16-bit) version of Visual RPG. It was priced at something like $500 per PC.
At one point, I was approached by IBM to enhance Visual RPG and turn it into a "CODE/400 Lite for Windows" product that IBM would market. But working with IBM may not be the best experience people have, and for me it was a learning experience. Needless to say, IBM decided to go in a different direction. Apparently, they had been working on porting CODE/400 to the Windows platform all along--but not to the 16-bit Windows 3.1 platform; rather, to the new 32-bit Windows 95 platform.
About the time Windows 95 started to be installed in AS/400 shops, the market for Visual RPG seemed to dry up. So I stopped marketing it at the end of 1995. Then, in 1999, I got a few emails from old customers who were wondering if I would upgrade the product to the Windows 98 environment. A year and several thousand dollars later, I released a completely new version of Visual RPG, renamed CodeStudio.
ASNA also has an editor/development environment and RPG "compiler" that they offer. They are no longer selling their standalone editor; instead, they offer a complete development environment that targets the MS Windows platform and uses ASNA extensions to the RPG language.
A recent entry into the RPG market is Eclipse. Eclipse is a free Integrated Development Environment (IDE). It is intended to be used to edit and build applications written in just about any programming language. Eclipse was funded as an open-source project by IBM reportedly to the tune of some $20 million. It was originally written in 100% Pure Java, but they couldn't get the Java user interface elements to perform well, so they rewrote much of the user interface code in native Windows C and C++ code. They have already started doing something similar for the Linux/Unix platform. Eclipse can be downloaded and used for free from the Eclipse Web site.
As I said, between late 1996 and early 2000, the market for GUI editors for RPG seemed to have dried up. There was little interest in using anything other than SEU and PDM. During this period, IBM started cutting the price of CODE/400. That didn't seem to help, as actual sales of the product seemed flat.
In the meantime, the SEU and PDM equivalents on other platforms--such as Windows, Macintosh, and Unix--jumped to light speed. Microsoft, for example, created their Visual Studio product, Borland had their Turbo C++ and IDE, and there were many other competitive development environments. All took advantage of the GUIs on those platforms. One of the most productive things I think you have with a GUI editor and IDE is integration. Since these IDEs are written in C or C++ (typically), the publishers can easily add new features. For example, Microsoft's and Borland's IDEs allow you to press a button and compile the source member that you have open. Can you do this in SEU? No, but both CODE/400 and CodeStudio provide that ability.
While I personally prefer CodeStudio over CODE/400 (it has a much smaller footprint and is a little easier to use, and after all, I wrote it), I really don't care if CodeStudio, CODE/400, or Eclipse becomes the de facto standard. Both IBM and I have realized that iSeries programmers will not purchase software for themselves to use at their place of employment, nor will they ask for it. They will wait until the employer gives them the next thing to use and tells them to use it.
So unless you tell your staff to move off SEU and onto a GUI development tool, such as CodeStudio, CODE/400 or Eclipse, iSeries programmers will cease to evolve, and, as any geneticist will tell you, when you stop evolving, your environment figures out how to destroy you, and your species dies off.
There is no excuse for continuing to use SEU. In OS/400 Version 5, IBM has bundled CODE/400 with the RPG compiler. In fact, all the compilers and development tools are now bundled together. So if you have the RPG compiler, you also have CODE/400 and Eclipse licenses. Granted, IBM could help make using CODE/400 and/or Eclipse much easier if they would do two simple things:
1. Ship a set of CDs or a DVD with the product on it, and ensure that it installs properly when you put it into your PC.
2. Stop changing the name of the product every six months. What's its current name? WebSphere Development Studio Client (WDSc), but I've heard they are changing it again.
If you're interested in just a raw RPG/DDS editor without all the extra stuff that comes with the WDSc product, install just the CODE Editor without all that other stuff, or go to www.rpgiv.com/codestudio and try out the $59 CodeStudio editor.