The HATS team is excited to announce our very own HATS HotSpot, part of the Rational Cafés. We’re aiming for it to be a place where all HATS and WebFacing users, Business Partners, and developers can share and discuss ideas and experiences. Our own development team will also be blogging there. We’d love to hear from you, so please do come on over and join the community!
The RPG Café is now open for business. Modeled on the EGL Café and located in the same general area, the RPG Café provides a place for the RPG community to gather and share experiences and serve (we hope) as a single point of departure for news about RPG and related tools. There you’ll not only find RPG alone, but RDi, EGL and their relations.
As a result, this blog is moving, lock, stock, and barrel over to our new home. The posts and advice that are here will remain here, but new posts will be on the new blog.
Join us over there!
I’m heading to Wisconsin to present at the Winsonsin Midrange Computer Professional Association (WMCPA)’s Fall Conference. I’ll be covering 3 presentations (Customizing the RSE, Debugging, and What’s New in RDi 7.1 and WDSC 7.0) and one open lab (Using RSE, Customizing RSE, and Working offline with projects).
These are standard presentations I have given before, but I get to use and discuss RDi 7.5 publicly for the first time :) WMMCPA has a good lineup of speakers for this event, so if you are in the Wisconsin area then come on over on Friday and learn something new, network, and say hi.
I met Jim Buck (president of WMCPA) for the first time this summer in Rochester at Summer School (education for College and University teachers / professors). This was part of the IBM Academic Initiative, a program for sharing knowledge, support, and software with colleges and universities. I was quite amazed by the number of shcools teaching IBM i and Power systems courses; ranging from RPG through to DB2 on IBM i. If you teach at a College or University (IBM i or otherwise) you should definitely get hooked up with this program.
The IBM Enterprise Modernization Sandbox for IBM i that is! We often hear that developers want to try out RDi but don’t have the time to do it at the office and don’t have access to an IBM i box at home. So we created the Enterprise Modernization Sandbox for IBM i; an set of tutorials and access to a demo system that can be run from anywhere. This includes things like (under “architecture”):
- Using the Remote System Explorer (RSE)
- Using i5/OS Projects
- Using EGL
- And various Web services tutorials using RDi SOA
And of course you don’t need to buy RDi or RDi SOA first. You can download the trial editions for playing around.
The debugger webcast went well yesterday and the recording is available here under Webcast Recordings. I did a live demo instead of using slides (I used 3 slides). It’s always a bit tricky doing live demos for webcasts given screen resolution and network latency issues, but the recording looks pretty good.
Ease of use (including ease of learning) and following Eclipse Workbench standard behavior are two of many things we try to include in all our designs. However, sometimes these two things are at odds and we have to choose one or write extra code to compromise on a solution. Over the past few weeks we’ve run into 3 good examples of this working on RDi 7.5 which I’m going to include here for comments on:
1. In Eclipse 3.4 (or Eclipse 3.3) the Plug-in Development Environment (PDE) added a new keyboard shortcut: Ctrl + Shift + A to open a plug-in artifact. RSE users will recognize this keyboard shortcut as the “Open Member” dialog. So now when you press Ctrl + Shift + A, Eclipse detects the conflict and pops up a little conflict dialog:
We (the RSE development team) had 3 choices: (1) Change our keyboard shortcut, (2) attempt to write some code to disable the PDE action, or (3) leave the conflict. Option (1) was ruled out because changing our action will make existing users frustrated because they are used to the old key sequence, and it doesn’t guarantee there won’t be future conflicts. Option 2 is out because it’s generally considered a bad practice to do something like this in the Workbench.
I believe option 3 is the best option because Eclipse already provides a preference page (General > Keys) where users can customize keyboard shortcuts. So really option 3 leaves it to the user to resolve by either changing the keyboard shortcut assigned to one of the actions or removing the key binding for the one they don’t want.
As a design rule, I’d like us to leverage the existing Eclipse workbench as much as possible for things like this instead of writing more code to resolve the issues (which can make things more complicated in the long run IMHO). Of course the shortfall of option 3 is that you have to know that you can customize the keyboard shortcuts via the preferences. The pop-up dialog does hint at this with the “Press Ctrl + Shift + L to open the preference page”.
2. The second example was around the current line color for the debug editor. The default editor used by the debugger is the Remote Systems LPEX Editor. The default current line color for the editor is pale blue that is hard to see. Again this can be changed by a preference (LPEX > Appearance) if you know where to look. In past releases we did some extra coding to override the preference and make the current line darker blue while debugging.. This release some things changed underneath us in the software stack and that no longer work. We ultimately decided to not re-implement this override since the preference already exists.
3. In the RSE you can right click on a local save file (local being on your PC), right click and select the Restore on IBM i… action to restore the save file on one of your IBM i connections (yes connections are now IBM i in 7.5 instead of i5/OS in 7.1 and iSeries before that). Previously this action ran on the user interface thread and blocked any refreshes of the Workbench (so the Workbench appeared hung during the upload and restore). We wanted to change this to run asynchronously and even give the user the option to run it in the background and continue doing other things. The design question was: what to do when the action completes with errors? The standard Eclipse progress task just puts an icon in the bottom right corner of the workbench with and explanation mark on it:
If you click the icon then a dialog box appears showing the results. Of course, you have to know to click the icon to see the results. The alternative would be to always show a dialog box when the action completes, but that could become annoying if you are in the middle of doing something like enter some source code. The jury’s still out on this one.
Ultimately we want the RSE to be easy to use and follow standard look and feel guidelines (which makes it easier to use in the long run). Like every other development team we also have fixed resources and implementing a workaround for something means something else doesn’t get done.
I’d love any comments that new or existing users have on this topic to help us in our future decisions!
Next Wednesday, October 22nd, I’m doing a SystemiNetwork webcast on the Integrated Debugger in WDSC and RDi titled: Debugging RPG, COBOL and CL Programs Made Easy. I’m planning to do mostly demoing with a couple of slides; provided the network connection is good. And leave lots of time for Q&A. The price is right (free; sponsored by Arcad Software) so come and join us.