In This Edition:
Right this way
10 June 2011 — Back on May 1st, we were on the verge of doing what we are going to do today. At that time, the working title of this edition of The Latest Word was The last fork in the road on the way to the future of Helix is here. This was followed by numerous false starts in which we wavered between just putting out something to tell you what’s been going on and actually putting something into your hands.
Nine years ago yesterday was one of the darkest days in the history of Helix. For us, certainly the most unfathomable. As we prepared to switch the Helix world back on and start answering telephone calls and attempt to help people, we really had no idea — beyond our own deep affection for what we were about to do — that such a deep well of hope existed outside the cocoon in which we were working.
Nine years ago today was a very different story. As we hope today will also be.
When you finish reading this edition of The Latest Word, in addition to hearing about a lot of the working and thinking that’s been going on around here, we hope you will come away with two things:
Better late than never
We may have missed our last RADE projection by about a year, but it was hardly for lack of effort. We did quite a bit of work on RADE last year, bringing it a point where it already did some very cool things. Unfortunately, none of those things were cool enough to use in any practical sense by year’s end.
In December 2009, we described some of the key ways that Helix RADE would be improved for macOS. Integrated Structure Checking would assure that all collections got the proper maintenance without requiring a separate effort. The introduction of an Inspector to examine and edit objects in Helix was an enhancement that would make it easier and faster to extend Helix capabilities both now and in the future. Design Mode AppleScript would automate testing, reducing the number of bugs that slip past the beta phase, add a major new feature to Helix, and deliver a product that enables collection designers to modify their database structures even before the traditional “click and drag” interface is fully implemented.
Helix RADE for macOS begins its preliminary release phase today. The Helix RADE that we put into your hands today has all of those things and more.
Helix RADE 6.2, a.k.a. Europa will, through a series of preliminary releases, bring us at last to a place where anyone with a working knowledge of how to use Helix RADE will be able to use Helix RADE in macOS, without having to use Classic. Purely and simply, our baseline intent in creating this next version of Helix was to relieve Helix users of their reliance on Tiger, OS 9 and and their dependence on machines capable of running them, always in shorter and shorter supply.
Two truths that need telling
Before we utter another word about RADE for macOS, there are two truths that need to be told. They have probably been told before, but rarely together and never in the context of a major Helix RADE paradigm shift like the one that is now upon us. They provide the frame of reference for the future of Helix RADE.
Helix users, particularly those who work in Design Mode (that’s what used to be called “Full Mode” a scant decade ago), whether they call themselves developers or not, will nearly all tell you that what drew them to Helix was that it wasn’t a programming language. It was visual, not linear, and it appealed to them more than learning a programming language.
“Back in the day,” programmers looked down their noses at Helix precisely because it was not a linear or conventional programming language and therefore must lack some critical capability only available through “procedural coding.”
The two truths are these:
Understanding the visual nature of Helix, the relationships among its objects and the ways they combine to create useful applications will not change. What we are doing today is giving you new ways to communicate your design objectives to Helix.
Your first new way of talking
The last thing we do with Helix before you get to create code with it is called QA (for Quality Assurance), which is a fancy way of saying that we try to make sure it will at least do what we say it will do and that it won’t turn your Helix collection into useless garbage. Naturally, a big part of that process is the seemingly endless repetition of using Helix to create and modify the structure of applications; in effect, talking to Helix in its native language.
Those of you who participated in the Helix Engine/Helix Client adventures that preceded this one may remember how confusing it was at first to design structure in Classic RADE and then see it in Helix Client or Engine for macOS. At some point, you learned how to design things in Classic RADE that would work nicely when seen in macOS, but it took a little learning. In effect, though using familiar tools, you were learning a new way to talk to Helix.
As you’ll see soon enough for yourself, there are a few things you can already do with Helix RADE for macOS without having to learn anything new, but you will not be able to do everything the way you always did it right away. For now, you will get the most out of this experience by dedicating yourself to learning to use the two new ways to “talk” to Helix.
The first is copy-and-paste structure, which has actually been around for a long time, so you may already be familiar with it.
When we released Helix 6.1, we introduced a great new feature — a little © menu in RADE Design Mode that stands for “Clippings.” We knew that in macOS, there would be no Scrapbook to save Helix code fragments. It had long been easy enough to transport Helix constructions between collections that way. Our vision for Helix RADE was to have a menu where users could “store” these code fragments to use in other collections. The Clippings menu, combined with RADE’s copy-and-paste structure function, would provide a way to build collections even faster, by reusing work you’ve already successfully developed and tested.
Some users chose to steer clear of copy-and-paste structure because of some bugs early in its existence. But it has come a long way and was in fact one of the first things we made sure would work in this first preliminary release. The Clippings menu was occasionally a bit quirky in Classic Helix RADE, but that’s because it was designed for macOS, not for Classic. In this one, it sings. It’s a wonderful way to see Helix RADE for macOS work right away. For the uninitiated, the small learning curve for this function is well-worth the time invested.
AppleScript Angst (The Second New Way)
The second new way of talking to Helix is via AppleScript. Much angst has been expressed in the Helix Universe about the advent of AppleScript. Why did we waste our time doing this instead of just making Helix the way it was?
There’s little point in wasting any more digital ink explaining the answer to that question again and again and again. It was hardly a waste of time. It was the shortest distance between two points. Those two points were OS 9 and macOS.
The critical concept to grasp in approaching this new aspect of Helix is that it gives you yet another way of “talking” to Helix. But this way provides previously impossible possibilities.
For example, one problem that plagues many users who have made the jump to Helix in macOS is font substition. Remember when the old Chicago font was the default in Helix? Those days are gone. With AppleScript, a script can almost instantly locate every label rectangle in your collection that uses that old Chicago font and change it to Gadget. Or Arial Black. Or something that works better in macOS.
Another problem a lot of users have run into since “going to macOS” has been the need to enlarge the type and space on many of the forms they commonly use. There are probably thousands and thousandsof Helix collections out there that were designed when it was necessary to cram as much information as possible onto a Mac SE’s 9" black and white screen. AppleScript can find every place you used 9 point type and enlarge it, and it can make the rectangle larger too, if necessary. And this can be done to a single form or across the entire collection. In the video at right, you can see an example of such a script in action on a live collection:
These new ways of talking to Helix offer some of the most exciting possibilities for using Helix we’ve seen in years. Together with such macOS technologies as screen sharing, they will dramatically accelerate the speed at which a designer can alter the structure of a Helix system.
Even though Apple has elevated the status of AppleScript from utility to programming language, remember that you who have already learned what some programmers apparently cannot — how to ‘program’ using a visual, icon-based language — have nothing to fear from turning the tables and learning to use AppleScript to work in Helix. We already have scripts that make tedious tasks easy, and as we roll out new releases that library will expand. Users who create useful scripts can contribute them to a repository we’ll maintain, giving you access to Helix tools created by others like never before.
By the time the preliminary release phase ends, you’ll find you’ll be able to do anything you ever did in Classic RADE using AppleScript, as well as a lot of things you could never do. In fact, Helix RADE 6.2 will essentially be an AppleScriptable database application design tool in its initial incarnations.
Not only will you be able to modify existing Helix collections, but you’ll be able to create brand new ones. Between the sheer power of the Intel Macs and the new capabilities offered by an “AppleScriptable” Helix, you may find yourself building applications even faster than ever.
AppleScript Helix pioneers have already “hit the ground running” with what they’ve learned to do in the first two installments of our Learning AppleScript with Helix newsletter. The third edition was delayed by this intense round of development. We apologize to the faithful who had to wait an extra month for it.
What we now know about what the future holds
Several critical decisions had to be made to reach this day. Some were simple. For instance, Helix 6.2 will not support Classic at all. Helix 6.1 marks the end of Classic Helix. It’s really a no-brainer. If your Helix application requires you to use a Classic Engine, RADE or Client, Helix 6.1.9 is the tool for you. It will let you run in macOS, but it will still allow you to use Classic on those machines in your workgroup that must do so.
Other decisions were not as simple. The decision to make Helix AppleScriptable was such a decision. We knew it had the potential to put off a significant part of the user base, but it was the simplest and fastest way to make Helix RADE in particular work in macOS and the option with the most “legs.”
The Macintosh is now a well-established and serious business machine in lots and lots of industries. And being able to run Windows on a Mac has spurred additional Macintosh sales. With AppleScript playing an increasingly important role the Macintosh, Helix being “AppleScriptable” pays both immediate and long-term benefits to the product and its user base, current and future.
Helix has always been about putting the individual in control of his or her data, allowing them to transform that data into whatever types of information they can derive from it. For as long as we can remember, it has provided users a way to do virtually whatever they wanted.
With each successive preliminary release will come the shaping of a new Helix RADE that preserves the core of what makes Helix Helix while providing the extensibility users have always wanted. A Helix RADE that will be able to compete with any other tool instead of finally being only one generation behind on the day it debuts.
To smooth the transition as much as possible, we’ve gone to great pains to make sure that Helix 6.2 remains completely compatible with Helix 6.0 and 6.1. Since we aren’t releasing a Helix Engine or Client/Server 6.2 at this time, you’ll still be able to run version 6.1 of those products. You can work on your collections interchangeably with RADE 6.0, 6.1 and 6.2, bouncing back and forth between them — and between macOS and Classic — at will.
But remember, the objective of this part of the trip is to push off from that dock and try not to go back too often. Resolve only to use Classic RADE to do things that are not yet possible to do. With each successive preliminary release of RADE, that list will become shorter and shorter until it disappears.
As noted above, the first preliminary release of Helix RADE 6.2 already has quite a few things that work without requiring you to learn anything new. For starters, there’s User Mode. It’s completely done. You can open and run your collections in Helix RADE, just as you can with Helix Client and Helix Engine.
You can open your Collections in User Mode and switch to Design Mode, or go directly into Design Mode, as you always could with Helix RADE. But now for the first time in macOS, you can look at the structure of your Helix collections, opening the relations. Inside your relations, you can already create new icons and name them, and you can even edit field icons and their properties with the new Inspector. As we’ve been saying, the editors will come to you first via AppleScript, which you can already use to edit fields, templates, views and indexes. User icon editing in AppleScript will be coming soon and we’ll continue to add Inspector-type editors as we go.
For many users of Helix — as well other applications that have been around for more than 20 years — the transition from Classic to macOS has been, while necessary, almost always an adjustment and occasionally quite a difficult one.
While it may not help much to hear this, take it from those who have successfully made the adjustment: there’s a lot more to like about Helix in macOS than to dislike. Making a pdf file, for example, is much simpler using the tools macOS gives us. Scrolling at blinding speed through a popup containing thousands of records is much better than being limited to 251. Being able to use the “Recent Items” menu to open a different Helix collection saves tons of time digging through folders. And now, being able to script Helix in Design Mode and (soon) in User Mode provides capabilities Helix never had before.
The Europa Pioneer Team: What do members get?
A little over a year ago, we asked for your opinion about the possibility of expanding Helix payment options to include subscription-type payments as a way of helping to pay for the development of Helix. We learned a lot from that exercise. But we didn’t want to implement any price changes while we were still slugging it out with Helix Engine and Client, so the results of that survey sat on the back burner all this time and the unknowable fact of how long it might take loomed over the entire process.
The truth, ultimately, is that we can’t know how long RADE will take. We only know that we will never get there if we don’t keep pressing forward. Much work still lies ahead of us, but at last we’re in sight of the place we have fought for nine years to reach. As has been noted in this column before, this is not the time to give up. There may always be the possibility of another unforeseen bump in the road, but this is the only way we know how to do this. It’s right this way.
So today we announce the formation of the Europa Pioneer Team. To be on the Team, you can pay $20 per month in the first year. Or you can take advantage of an annual membership option for $200 per year — the equivalent of getting two months for free. In exchange, Team members get:
We are implementing this plan to provide funds to keep development running smoothly. Knowing that we will have a certain amount of revenue every month will enable us to allocate resources more efficiently and get the job done in a timely fashion. That in turn will determine the ultimate price of the RADE upgrade. If it takes us 12 months, then the members who pay monthly will have paid $240.00 for their upgrades at that point. We’re not prepared to set that number as the upgrade price just yet, but we can promise you that it will be more than whatever the program participants have paid when the job is done. A dependable cash flow will help keep development on course and highly productive.
*Free tech support for AppleScript questions requires a subscription to the Learning AppleScript with Helix newsletter.
Some closing thoughts
Beginning today, the plan runs monthly, from the 10th to the 10th of each month. On July 10th, the ‘buy in’ will be $40.00; on August 10th it goes up to $60.00. You’ll pay more up front if you wait, but you’ll be getting a more advanced preliminary release in exchange. (But regardless of when you join, the subsequent monthly charges remain at $20.00.)
We know how tough the economy is right now, even at these prices. So if you feel you have to cancel your Team membership for any reason, no problem: the preliminary releases come pre-enabled with a key that expires in 60 days. Canceling simply means you will not have access to future updates.
Please also note that although ownership of Helix RADE 6.1 is not a requirement for being a Europa Pioneer, RADE 6.1 is required if you want to use the Clippings feature in Classic RADE, which is quite handy since that is where you would create most of your Clippings until you no longer need to do anything in Classic. So if you’re thinking of joining the Team but you haven’t already done so, now would also be a good time to upgrade your RADE to 6.1.
Some of you, and we speak to you occasionally, are out there running some ancient version of Helix. Maybe you haven’t contemplated upgrading since Helix Express 4.5.1. In fact, you call and tell us, “I always tell my friends how great Helix is. They’re always spending so much money on upgrades and I haven’t had to upgrade in fifteen years.”
Everything was working fine until your Quadra finally gave up the ghost the other day and now you call to ask why we still don’t have a macOS RADE. If this is you, give yourself a nice pat on the back. You managed to last a long time with a great piece of software that fulfilled your needs without costing you an arm and a leg. Now take a deep breath and search your soul and your bank account. The Helix you love is reaching out to you for help.
The fact is that we have done this work without asking for much more than your time. Our frequent budget gaps have caused it to take much longer than we would have liked. We offered generous incentives for each upgrade to keep the line moving. Often that generosity had the unfortunate effect of not leaving us enough funds to get to the next major upgrade in a timely fashion. As today’s release will demonstrate, macOS native Helix RADE is real. The potential of the finished product is undeniable. All that stands between today and that goal is time and money. Being able to count on as many of you as possible for money buys the time and makes it happen faster.
As people who have asked us if we will survive know, our reply is always not if, but when. Our engineers are incredibly flexible, working only as many hours per week as we can ask them to work. We’d like to be able to keep everybody working 40 hours a week, and even to add more help, but we won’t do that at the risk of defaulting on a loan. It has never been, and will never be, right that way. Based upon the available facts, we can still raise most of the money we need to get this work done if we pull together as a Team.
To participate, to become part of the solution, part of the Team, simply click here to go to the store. When you get there, be sure to click the New Products link to purchase the Europa Pioneer Plan of your choice. The first preliminary release of Helix RADE 6.2 for macOS is available today and waiting for you there. Your online receipt takes you to your first adventure with RADE in macOS and your participation in this program will, as always, help assure that Helix for macOS gets done!