Everything Else

Helix RADE 6.2 Preliminary Release 21: Point, Click and Drag

RADE12 March 2013 — Excellent progress continues with the twenty-first Preliminary Release of Helix RADE 6.2 available today.

Subscribers to the Europa Pioneer Plan should receive an email today containing a link to the latest update. You can also get it by logging in to our web store and checking the download link listed in your current licenses. If you are a subscriber and you aren’t receiving the monthly emails, please contact us so we can determine why.

For those who haven’t joined us yet, the monthly subscription option has come to an end. But you can still pay $440.00 and get every update we release through May 31, 2013. We’re still committed to monthly releases, so that’s 2 more updates delivered to you automatically.

As always, the Preliminary Release 21 Release Notes provides the tech-eye view of what’s new, but we encourage you to read on for a more personal overview of these exciting changes.

The black hole is no more

Last month we described how we are now using color in the abacus editor. As we continued to work on the abacus editor this month, we realized that an old staple of the Helix vocabulary — the ‘black hole’ — no longer applied. It was time to rethink our terminology.

Considering the problems inherent in the old ‘black hole’ terminology — the word ‘hole’ does not generally conjure up an image of a square and they are clearly no longer black — we set about to determine what these now-colorful squares should be called.

We decided to approach this interface device from an different perspective, that of its functionality. We started by considering they have four states:

  1. They contain icons, enabling calculations on the data in the collection.
  2. They contain arrows, connecting one tile to another in more complex calculations.
  3. They contain constants, or typed-in values.
  4. They remain undefined (after all, to paraphrase an old saw, not to define is to define).

So they are clearly a place where things are put, or not put; a receptacle in the abacus circuitry. But ‘receptacle’ is a few too many syllables for such a commonly used word and so, after a bit more internal debate, we decided rename them sockets. And so, in the rest of this article, and in all future discussions of the abacus, these colorful boxes shall be referred to as ‘sockets.’

How many ways can you build an abacus?

Each stage of the development process has brought us another way to construct an abacus. Early on there was the AppleScript method. Shortly thereafter there was the Abacus Expression Language.

While most Helix users were seemingly unwilling to learn AppleScript, the Abacus Expression Language was embraced by many, and it was finally possible to quickly build a complete abacus from scratch.

With at least one acceptable method of building an abacus in place, we turned our attention to other pressing concerns, leaving those of you who longed for the good old drag and drop abacus editor standing at the altar, so to speak.

No more. Preliminary Release #21 of Helix RADE 6.2 restores abacus editing in full. At long last, you can click, drag, drop, type and select abacus components in the very-new-yet-very-familiar abacus editor window. The biggest thing that — in the minds of many users — has kept Helix 6.2 from being ‘real Helix’ is restored in glory.

Now there are three ways to build an abacus: you can drag and drop tiles, arrows, and icons; you can write (or modify) an abacus using the Abacus Expression Language (AEL) and you can construct or edit an abacus using AppleScript. Regardless of your level of ‘geek-ness’ there’s now a method for you.

But like everything else in Helix, the real power comes from combining the tools. None of these new methods requires that you use them exclusively; like any good team, each method has its particular strengths and the best work is done when they are used together.

Now please don’t misunderstand: while we are very proud to have brought the graphical abacus editor back, we are also incredibly pleased with how the Abacus Expression Language has become a very solid and dependable ‘middle ground’ for editing abaci. Before the abacus editor window existed, you could use AEL to create or edit an abacus, but now that you can open the editor window, you can watch as changing the expression changes the tiles right before your eyes. Very cool. Very fun. Very Helix.

Beyond producing a giddy experience, however, this new capability in Helix provides true time-saving power. For example, suppose you’ve created a complex abacus only to discover that in the middle of the tile chain you used a ◊ < ◊ when you meant to use a ◊ ≤ ◊ tile. What do you do?

Of course, you could fix it the old way, dragging the ◊ < ◊ to the trash, dragging a ◊ ≤ ◊ out to replace it, and then re-hooking the arrows and re-adding the icons. But with the Abacus Expression Language, all you need to do is open the Inspector, highlight the ‘<’ in the abacus’s expression, type in the ‘’ character, and tab out. Arrows don’t come unhooked, icons aren’t removed along with the tile, and other objects that use this abacus do not ‘kick it out’ because it no longer represents a valid expression. If you don’t believe it really is that easy, we encourage you to try it for yourself.

The tile repository

If you’ve been sitting on the sidelines waiting for Helix RADE to become more user-friendly, you are probably itching to drag out a tile and get back to work. But where do you drag one from?

The answer is shown in the illustration at right. The Element Panel is the streamlined replacement for all those ‘slot machine’ lists that were attached to every editor in Classic RADE. When an abacus editor window is open, the Element Panel contains the tiles, fields and abaci that can be used to build an abacus expression.

Right now the tiles don’t look very ‘tile-like’ — something we plan on rectifying in the future — but they work the same. In fact, when you click and start to drag, you’ll see the whole tile, attached to your pointer, as you drag it into place.

And those textual representations of the tiles aren’t something we conjured up for just this purpose. No, they are the same as what you see in the Abacus Expression Language, and they match exactly the “AEL Syntax” shown in the AEL Syntax Technote we published to go along with the AEL Spec Page.

So now that you can drag-and-drop tiles into the abacus editor window again, how do you add icons to those tiles? Just about any way you can imagine…

  • You can drag fields and abaci from the Element Panel.
  • You can drag fields, abaci, templates and relations directly from the relation and collection windows.
  • You can click on a tile and fill each hole using popup menus in the Inspector.
  • You can select the abacus, then edit the expression in the Inspector.
  • You can write an AppleScript to fill the holes.

The Inspector popups deserve a special explanation. In Classic RADE, some tiles could be double clicked to open a dialog from which you chose the icons that went into the sockets. But not all tiles had a dialog and that made things a bit confusing. ‘Does this tile not respond to double clicks, or did I just miss?’ Now all tiles display their sockets in the Inspector, where you can choose from a context-aware list of candidate icons or define a constant.

The Element Panel also has another trick up its sleeve, which deserves another mention: Of course you can change from one list to another by clicking on the switches at the top of the window, but you can also change which list is visible from your keyboard. Since Command-\ shows and hides the Element Panel, we set it up so that Option-Command-\ switches to the next list and Shift-Option-Command-\ switches to the previous one. But be aware that on some systems, these command keys are used by the OS to toggle some Universal Access features. If that’s the case for you, you might want to disable or change those settings in the Keyboard Shortcuts System Preference panel, or assign new keys to the Helix commands.

Last month we described how we were going to use color in the abacus editor but how this works in practice was not so obvious. Now you can begin to see how the colors provide feedback as you work.

The silent clip shown here illustrates, in a matter of seconds, what takes so many words to express. Watch it and see how tiles are dragged and dropped and connected and pay particular attention to the colors of the arrows and the sockets and how the background of the window changes color to reflect the output format of the abacus. (If an abacus window has a white background, that means it is not constructed properly, giving you a hint that you should look for disconnected icons and arrows.)

As you drag a tile from the Element Panel, the actual image of the tile appears. When you release it in the abacus window, it moves to a space near the upper left corner by default. As you add more tiles, they continue to ‘auto-align’ so the total expression is always in view. We gained this feature almost by accident. Take some time to let it grow on you, then let us know what you think. We’re open to changing it, but didn’t want to spend time on that when there are bigger issues to confront.

A few unfinished features

With the abacus editor functionality restored, we are about to begin working on the user editor. That’s the last editor to do before the macOS RADE graphical user interface is complete. Many Helix users, however, especially those who never build applications for deployment in Client/Server, never use the user editor because it is unnecessary for what they are doing. If you are one of those users, with Preliminary Release 21, there is nothing that should prevent you from moving into to RADE 6.2 permanently. If you have been following this saga and thinking about it, the next interface feature we implement will be something you may never need. Thus, for you, Helix RADE 6.2 is ready. It’s time.

Much of what we have already done is complete or near-complete. The parts work as intended. We have plans to do some fine-tuning, but right now the editors do all they are expected to do. Most of the ‘final touches’ we are deferring are things that can wait for now. In fact, they are mostly new features you never had before, so you won’t miss them, techically speaking. Look for them to debut in the not-too-distant future.

For example, Preliminary Release 19 introduced the new Helix template editor, which boasts such new features as the ability to tab from rectangle to rectangle, and the ability — through the Inspector — to precisely align rectangles with actual coordinate values. We also enhanced restored the keyboard nudging and resizing capabilities dramatically.

The way we wrote our code, we can quickly extend those same capabilities to the abacus editor, adding keyboard control to the abacus workspace. Nudging tiles around may seem more like a time-waster than anything, but Helix designers know that in this visual language, there are times when the visuals help or hinder comprehension. For those of you who need a precise layout so you can focus on the contents of the abacus, this will come at a later date. For now you’ll have to drag them into alignment just like you always did before, or use the new tile alignment commands we introduced last month.

The months ahead

There are only two and a half months left before the end of the Europa Pioneer Plan’s second year. Whether we’ll put out two (2) or three (3) more releases before the Plan concludes has yet to be determined.

But the last mountain we have to climb — the user editor — looms directly ahead of us. Pardon a slight tongue-in-cheek here, but if any of you have any fondness for the Classic user editor, the one that clings to the menu bar like a ladder in a shoe store, we can assure you of one thing: you will be disappointed by what we are about to do. For the rest of you, we think the new user editor will be a breath of fresh air.

As we just noted, May 31st marks the end of the second year of the Europa Pioneer Plan. We are becoming more and more confident that we are going to make it — that Helix RADE 6.2 will be feature complete by then. But even if something comes up and we miss that date, those who joined the Europa Pioneer Plan (and remained current) will have an official Helix 6.2 license and not be asked to pay for the inevitable maintenance releases. For those who did not, we’ll offer an upgrade path from prior versions.

Once Helix RADE 6.2 is set free, we plan to shift our focus to getting Client/Server 6.2 out the door. Then, we have a few fun things up our sleeves, more about which will be discussed in the months to come.

Please remember, even at this late date, that we still need all the financial help we can get to finish this job, and that you can both help us and save yourself some money by getting on board before Europa is finished. It’s getting very close to the time when the Europa Pioneer’s discount will end.

We hope you enjoy using the new abacus editor as much as we did making it. We are quite satisfied with what we have built so far, and we look forward to making it even better.

* All prices are stated in US Dollars.

Find PreviousFind Next