In This Edition:
Helix RADE 6.2 Preliminary Release 6: Time to rise up and resist the amygdala
10 November 2011 —The good progress continues with the sixth Preliminary Release of RADE available today.
For those of you who have already climbed aboard the Europa Pioneer plan, your monthly $20* charge will appear on your credit card today. For those out there among “the rest of you,” remember that if you’re thinking of joining the Pioneer program this month, your initial payment is $120. After all, you are getting “$120 worth of improvements” right from the start. All subsequent monthly payments will be $20.
As previously noted, when your credit card is successfully charged, we send you an email. In that email will be a link to the newest installer. Click that link to download the lastest update to your computer. (You can also get it by logging in to our web store and checking your current licenses.)
Once you have downloaded the installer disk image, the installation process is simple: If this is your first experience with Europa — or you like to manage your updates manually — just drag the new Helix RADE onto the Applications folder and let go. If you are updating from an earlier version of Europa, double click the Install Update icon and your Europa RADE will be seamlessly updated to the new version, even if you have a collection open! (You will be prompted to save changes before closing an open collection.)
This month’s release continues to enhance RADE’s AppleScript capabilities, adding two-and-a-half more key pieces of the puzzle. The finish line for this phase is clearly in sight!
This release also brings our terminology into sharper focus with the introduction of a new Helix word, more about which below. This edition of The Latest Word is going to veer off the purely precise course a bit today, so to get the specifics on the various new features in both AppleScript and the graphical user interface, as well as the numerous fixes that can be found in this release, be sure to read the release notes. For now, let’s assess where we are with the release of PR6 and how to best benefit from the progress we have just made.
When last we met…
… we were feeling a bit humbled, having made promises the month before that we couldn’t keep. But we did hint that “we certainly hope to see [sequence and post scripting] debut in November, with the final piece of the puzzle, the abacus, coming shortly thereafter.” Those were the only three pieces of the puzzle left to completing the AppleScript phase of Helix RADE.
A moment ago we said we’ve added two-and-a-half more key pieces of the puzzle. And so, we are delighted to announce that in Preliminary Release 6, sequence and post scripting are completely done, and the abacus nearly complete. You can now browse the contents of any abacus in AppleScript. All that is left is to give you the ability to construct new abaci and edit the content of existing ones.
Our engineers made amazing progress this month, bringing us close enough to our objective of ‘freedom from Classic’ to kiss it. Just not on the lips quite yet.
And while we’ve already learned not to make predictions about where we’ll be a month from now, we are within reach of the day when there won’t be single thing you can’t do in modifying a collection with OS X RADE. It may not be as simple (yet) as it is in Classic, but if you’ve been putting in the effort to learn AppleScript, there won’t be a single reason for you to have to revert to working in Classic.
As we said many months ago, this trip would be difficult, and the new Helix would be somewhat different, but in the long run, Helix and its users would be better off for having made the trip. We’re starting to see that promise bear fruit, and if you’ve spent any time in OS X RADE, you know that ‘different’ can even mean ‘better’ in some cases. The completely resizable “Used By” window is much more flexible and provides more information about the links between your icons than the old “Get Info” window it replaces ever could. Likewise the Inspector is still a bit clunky, but it is already showing its promise in streamlining the workflow.
And so our not-so-bold prediction is: within a couple of months, using Helix will no longer require Classic. When that day arrives, we can finally begin to try to attract the new users who will grow the user base for the Helix of the future.
Part of learning to use Helix with AppleScript, and to use AppleScript with Helix, is learning the very precise terminology that AppleScript demands when working with an application. It is critically important that you don’t have the types of ambiguities that result in making the process of writing scripts an exercise in frustration.
We have tried very hard to make the AppleScript language match the terminology Helix users are familiar with. For example, Helix users know and understand the “Keep Current” attribute for views, but inside of Helix that is reversed, and it appears in the code as “do not update.” But we made sure that AppleScript uses the term you are familiar with.
But occasionally we have encountered places where a term is used in more than one place. That may be OK in a graphic environment where you interact strictly by clicking on icons, but when it is reduced to a written language, that results in the ambiguities we mentioned above.
When we have encountered such ambiguities, rather than just finding a workaround, we have sought to refine the terminology that we use when speaking about Helix. This new terminology may appear first in AppleScript, but that is really the result of our work in reshaping Helix in subtle yet signficant ways.
Admittedly, part of the impetus for this process derives from our general dislike of terminology that is defined by using itself in a sentence. To wit, “An elevator shaft is the shaft that an elevator travels inside.” Or “A lollipop stick is a stick that holds a lollipop.”
The victim this time is something annoyingly referred to as “post on post.”
As happened years ago when we changed “Full Mode” and “Custom Mode” to “Design Mode” and “User Mode,” working the past month with sequences and posting in particular, we ran into situations where terminology conflicts needed to be resolved. And although we don’t necessarily like to make radical changes to the terminology, we finally decided that it was time for “post on post” to go.
The words post and posting are, in addition to being occasionally misunderstood, two of the most overused words in the Helix lexicon. They are often used interchangeably which not only makes verbal discussion of Helix difficult, but can cause terminology conflicts in AppleScript. In the view icon, when you put it in “Show Posting” mode, there are four columns, called (in Classic) “Enter,” “Post,” “Print” and “Export” (formerly known as “Dump”). These have always been thought of as Helix’s “posting triggers.”
For OS X, we started out by streamlining the terms a bit. Instead of referring to “the post icons in the On Print column,” we now refer to them simply as the print posts. We also noted that the On Enter posts did much more that post only when a record is entered: they also trigger when a record is replaced, deleted, or imported. The post icons in that column are now known as edit posts. A subtle change that makes the term more accurate than it was.
And then our discussion turned to what would formerly be called “the post icons in the On Post column.” We remembered conversations about “selecting Post All to post the posts in the On Post column,” and we asked ourselves: “Do we really want to call this a post post?” We absolutely did not. After much discussion, we realized that ‘post on post’ was essentially posting on demand, and it only seemed natural to rename it as “demand posting.”
At that point the discussion becomes much smoother. You can now talk about triggering posts on enter, on print, on export, and on demand. The words positively flow. And so, for ever more, it shall be so named. When the new graphical user interface appears, posting on post will not be seen, demand post having taken its place.
Madcap recap: the journey thus far
We will soon arrive at end of the AppleScript project, happily ahead of schedule. Moments like these are important because they present the opportunity to assess our progress and determine our next steps with more precision.
While we have overcome many significant obstacles, the long view of what we have done looks like this: First we had to fix our networking, to move Helix from AppleTalk to TCP/IP. When support for Classic was pulled by Apple, we had to regroup. Going directly to RADE at that time would have meant the end of Helix. The other products, Server, Client and Engine, all had to be done before RADE.
Now we have all our Helix products running in OS X and whatever cannot yet be done by the graphic user interface of Helix RADE can be done with AppleScript. Now, we have something we never set out to create, something that may not exist anywhere else but here: a “scriptable OS X database application builder.”
Well, rah, rah, rah. We know how cruel this must seems to a lot of you, for us to sit here, smearing lipstick on our pig, crowing about the great job we are about to complete in record time knowing many of you won’t even want to use it because it forces you to learn a new way of talking to Helix. We have bemoaned this situation long enough. Prepare to meet amygdala.
Amygdala: master of the comfort zone
Hard work is sometimes rewarded with frustration, which, when it happens, initates a cycle of despair. If it happens often enough, our desire to work at that level diminishes. We experience it in many aspects of our lives; most Americans are familiar with the plateau effect when trying to lose weight. They work and they work and they make good progress for a while and then they hit the wall and fail to see the desired results.
So they give up.
It turns out that there is a simple scientific explanation for this. Scientists have determined that the brain releases a feel-good chemical known as dopamine in response to positive experiences. In fact, our brains even do this when we are merely anticipating a positive experience.
In addition to making you feel good, neural connections, known as dendrites, develop in response to these experiences, enhancing our mental capabilities through a property known as plasticity. But plasticity diminishes or disappears if the brain is not continually stimulated with new information. So when you learn, to grossly oversimplify this, your mental capacity grows; when you stop, it reverses.
Going into the AppleScript project we knew it had the potential to alienate Helix users who believed they loved Helix only because of its graphical user interface. While it is certainly true that the graphical nature of building a Helix application is one of its best features, AppleScript does not take that away. It enhances it. You see, even using AppleScript, you still have to create and manage the same objects. You have to build fields, abaci, templates, views, indexes. You have to put the arrow from one tile into a black hole in another. The difference is that now, for what we hope is ultimately a short time, you have to use a keyboard to do many of the things you used to do with a mouse.
Two very important things to bear in mind: The first is that while AppleScript can allow you to build and modify Helix structure, the real benefit of using AppleScript in Helix lies in the things you can not do without it. We have built and run a script that connects to a live Helix RADE in a remote location and modifies the layout of a template. Imagine calling your Helix “person”, who happens to be far away from you, and saying you need her to modify a form for you. Now imagine her pausing for a moment and saying, “Okay… have a look at it now. What do you think?” At some point, you will not need AppleScript to build and edit Helix structure. But if you are ready to abandon dependence on Classic and embrace powerful new opportunities, it is something you should embrace with open arms.
Remember: there was a learning process you had to go through before you were capable of doing anything truly useful with Helix. You had no idea how to combine Helix’s various icons to build what you wanted. You had to learn something completely new and you did it.
Thus the conundrum: if learning something new helps us improve our brains, and would, in this particular case, help us get much more out of Helix, they why do we resist the new thing so adamantly? Why is the same old thing so hard to release?
The emotional center of the brain is known as the amygdala. Its function is to send out alarms to the body when it perceives a threat and it perceives almost any change in routine as a threat. Alarms so powerful they can drown out rational thought. It is the master of the comfort zone and it is what you must resist if you are to move forward and help yourself.
At the base of resistance to change is always fear. In this case, your fear is being force fed to you by a little part of your brain that just wants to keep things the way they are. But that’s life: change is not only inevitable. It’s essential.
As has been done time and again, Helix has put powerful tools into the hands of mere mortals. Because so many of us simply lack the will to learn to use AppleScript with Helix, we may never appreciate how powerful this new capability is. And if the graphical user interface tools were already done, people might never look at AppleScript in Helix, which is why the real opportune time to learn this stuff is now, while it’s the only way to do a lot of what you already know.
Once upon a time, you embraced something that was so different from everything else that the Macintosh media labeled you an “iconoclast” for doing it. Since then, Helix has gone to great lengths to play nicely with the other children. Even now to the point where you can use a programming language to control it. Isn’t that ironic? Embrace it! Do it for your mental health. Become a Europa pioneer, get the RADE Readiness Kit and get to work!