RD Traveler has a nice feature that lets you run a job by submiting a Job Control Language (JCL) file from the editor. Progress reporting on the status of the job is shown while it is running. When the job completes any error or info messages that were generated are shown directly in the editor. (Watch a video of this in action.)
A job run may result in the generation of output datasets. We want to make it easy to find and view those datasets after the job completes. Since the job is submitted directly from the JCL editor we think it makes sense to annotate the JCL code with links to the output datasets.
To see the links in the JCL code simply hold down the Ctrl key (command on a mac). Any references to data sets in the source will be highlighted as HTML links. Click on a link to open a new tab with the contents of the dataset.
Holding the Ctrl key to see the links is a nice feature, but I worry that it will have usability issues. The biggest problem is discoverability. How does the user know that Ctrl is used to show/hide the links? We can't expect a new user to just know that somehow. So its up to us to teach the user that this feature exists. How do we do that? Documentation?... ha ha that's funny.
The Ctrl-click feature is not new to Orion, it has a lineage coming from Eclipse. In the Eclipse Java editor you can hold Ctrl and every identifier in the source turns into a link. Clicking one causes the editor to jump to the declaration of that identifier. This is nice, but its actually only one of at lest three options to access the “Open Declaration” feature. You can also hit F3 or select “Open Declaration” from the context menu.
My experience watching students use eclipse is that initially they always use the context menu option. When I tell them they can just use F3 or hold Ctrl I get a reaction like “Oh, that's cool”. But if I wasn't there to tell them how would they know?
The Link Dialog
Our solution to this problem is to provide another way to get at the links, one that is much more obvious.
We added a highly visible button to the top of the JCL editor that says “Referenced Datasets...”. Clicking the button opens a pop-up dialog that lists all the links that are available in the file. All the information about the data sets is available, including the full names. The table is also sortable.
There is a subtle but very important element to the dialog. At the bottom it says “Hold Ctrl to see links in source”. This is our attempt to teach the user about the Ctrl-click feature. The theory is the user will have no trouble finding the dialog, and if they notice the message at the bottom then they will have also learned about the Ctrl-click option.
So now we support two workflows that we believe are complimentary. If the user wants to focus on the datasets they can open the dialog and see them all in one place. If the user is focusing on the JCL source and they want to quickly jump to a dataset they can Ctrl-click. The first workflow is easy to find and teaches the user about the existence of the second workflow.
Its all good, in theory...
Of course everything I have said to this point is basically just a hypothesis. We believe that the dialog will be discoverable and easy to use. But how do we know that for sure? The only way is through real usability testing, which we plan on doing soon. We will see if our hypothesis holds up or not, but I am optimistic.