| ©
12-3-04 Dr. Neale Monks
- Print
Friendly Version
- Product Name: REALbasic
5.5 Professional (electronic download edition)
- Company: REAL Software
Inc.
- URL: http://www.realsoftware.com
- Category: Programming
- Price:
- Standard: $99.95
- Professional: $399.95
- Academic discount
available
- Requirements:
- PowerMac G3 or better
- 32 MB RAM
- 20 MB hard drive space.
- Mac OS X or OS 9
- Rating: 4 bounces
-
Pure Lust
The Macintosh has always enjoyed
a good variety of options for rapid software
development. HyperCard set the standard when
it was released back in 1987, combining a
database-like stack of cards for the interface
and data storage, with a scripting language
called HyperTalk that was similar to normal
English and thus relatively easy to learn.
The result was that people with no formal
computer programming education could easily
create simple applications, and more expert
programmers were able to use HyperCard to
create heavyweight applications and products
(of which the most famous is probably the
game Myst). Other companies developed more
or less similar card-based software development
tools, of which Runtime Revolution (which
we reviewed a
few months ago) is just one. HyperCard also
had a great influence in other fields of computing,
too; JavaScript and hyperlinked text on the
Internet are just two aspects of modern computing
that were inspired by HyperCard.
For whatever reason, Apple
killed off HyperCard in stages, development
ceasing in the mid 1990s and then being dropped
from the product list in 2004. Fortunately
for Mac users, there are plenty of alternatives,
and one of the most interesting is REALbasic,
a version of the popular BASIC programming
language that has a similar drag-and-drop
interface to HyperCard but with the advantage
of producing leaner, faster programs. This
is because REALbasic exports the final program
as machine language code specific to whatever
platform it is being used for. This contrasts
with HyperCard (and equivalent card-based
programming environments) that essentially
have a ubiquitous code core around which is
added a platform specific interpreter that
turns has to convert instructions between
the computer and the program on the fly. In
reality, this doesn’t matter much if
the program is small, but the bigger the program
becomes, the greater the disparity in speed
becomes. As a result, for many Mac programmers,
REALbasic has become the tool of choice for
building fast, heavy-duty software.
But is REALbasic the new HyperCard?
Is it really simple enough that a novice can
download the program, buy a licence, read
the PDF files that come with it, and get programming
right away?
Installation & Manuals
AppleLust looked at the electronic
edition of REALbasic 5.5, probably the best
value way to buying this software. The package
comprising the REALbasic program and its associated
templates and files is downloaded directly
from the REALbasic web site. The application
itself is a 20 MB download, but with all the
other files the total is over 100 MB. A licence
key has to be purchased online to ‘activate’ the
software; without the license key, it operates
in a demonstration mode, allowing ten-days
worth of use before it stops working. REALbasic
comes in two versions, Standard ($99) and
Professional ($399). There are several differences
between the two versions, but the main one
is that the Standard version can only produce
software for a single platform. The Professional
version of REALbasic can be used to create
software for Mac, Windows, and Linux all on
a single machine. Academic discounts apply
to both versions (taking the Standard version
to under $70) but they carry an important
restriction: software developed using the
Academic versions cannot be sold.
REALbasic has fairly modest
requirements, and any current Macintosh will
run it very nicely, and even older ones should
be up to the job. Apart from the lack of screen
space, it ran useably well on a 500 MHz G3
iBook, and the only time it felt a little
slow was during the compiling stage when software
was being tested or exported to one or other
platform. However, multi-platform developers
will probably want to use a relatively fast
computer so that they can run emulators for
the other platforms to test out their software
as they go along; I found Virtual PC 6.1 worked
nicely on my 1 GHz G4 PowerBook and any software
produced with the OS X version of REALbasic
ran just fine in Windows XP Pro on Virtual
PC.
 |
REALbasic comes with easy to use and
nicely designed tutorials and guide books. |
My biggest complaint about
Runtime Revolution was poor quality of the
manuals provided. It wasn’t that the
information wasn’t there; it was that
they were written in such a way that they
didn’t help new users and made it difficult
for even experienced users to find what they
wanted quickly. REALbasic is very different
and comes with a very nice set of tutorials
and manuals. These are printed in the boxed
set, but come as PDF files in the electronic
download edition that we looked at. A Quick
Start Guide starts the user off by introducing
the basic aspects to the interface and coding
using a very nice little project, a URL manager.
 |
REALbasic includes a couple of projects,
such as URL Manager, that introduce the
user to the key techniques and concepts. |
Once you’re done with
that, the Tutorial takes you through creating
a basic word processor. This introduces the
user to more complex concepts such as adding
menu bars and how to handle commands like “open” and “save”.
Both the Quick Start Guide and the Tutorial
are well written, and divide up both projects
into easily digested bite-size chunks. Overall,
it is probably fair to say that someone with
zero programming experience will find that
REALbasic will be much easier to learn than
Revolution not because it is simpler (it isn’t)
but because the quality of the guides and
manuals is so much better.
User Interface
REALbasic is essentially a
graphical program, where the user drags and
drops the various elements such as buttons,
fields, and menus onto a blank application
window. Code is added to those elements that
need it, in much the same way as HyperTalk
scripts are added to buttons and fields in
HyperCard. Compared with HyperCard there is
of course much more flexibility, with the
ability to use full colour graphics, QuickTime
movies, Internet connections, and so on much
more easily.
Part of getting the look and
feel of your new program right is to make
sure the interface is clear and simple. REALbasic
has a lot to offer here, and not just in providing
quick access to things like tabbed windows,
sliders, and so on. Any buttons, menus, or
other user interface elements added to your
project snap into place relative to the other
elements, making it possible to create a clean-looking
application easily.
 |
One of the many niceties is automatic
alignment and spacing guides. |
Then,
when you come to adding code, REALbasic watches
what you are typing and then offers possible
phrases to save you having to type the whole
thing in. It doesn’t
just draw from its basic library of terms
and phrases, but also from the name of any
objects and elements you have created specifically
for the project at hand. This is a tremendously
useful timesaver.
 |
REALbasic offers to fill in parts of
your code as you go along, saving time
and effort. |
Overall, the user interface
is one of the simplest and best designed you
are likely to come across on an application
in this class. Even if you find the coding
part of the process beyond you at first, actually
creating the “front end” of your
project is logical and straightforward.
REALbasic vs. HyperTalk
Now,
this is where things get a bit trickier. Despite
the excellent manuals and guides, there is
no escaping the fact that actually creating
the code behind the front end of your application
is more difficult that it is with HyperCard
(or, by extension, something like Runtime
Revolution). Where those applications use
a programming language that is more or less
similar to English, REALbasic uses its own
language, a version of a venerable computer
programming language called BASIC. This language
is not at all like English, and things that
are obvious in HyperTalk can be much less
so in REALbasic.
For example, consider a button
that was required to run a script that multiplied
the value in one field by ten, and put the
answer into another field. In HyperTalk this
might go something like this:
on mouseup
put
(10 * card field "Input")
into card field "Output"
end mouseup
This reads logically enough:
when the mouse is pressed on this button,
put ten times whatever is in the field Input
into the field Output. Now, the same thing
in REALbasic:
Sub Action()
OutputField.text = str((val(InputField.text))
* 10)
End Sub
See the difference? While the
HyperTalk version is readable, if a bit odd,
English, the REALbasic version of the same
thing is definitely computer-speak. It begins
with declaration of the subroutine (“Sub”)
being an Action, and then tells the computer
to take the value (“val”) from
the string of characters (“str”)
in the Input field box (“InputField.text”),
multiply them buy ten, and then put them into
the text field in the Output field box. Needless
to say, if things are a bit arcane when multiplying
a couple of numbers, it doesn’t get
any easier with more complicated commands
and processes.
A REALbasic Project
The best way to evaluate these
sorts of programs is to actually try to make
something useful. At the time I was reviewing
REALbasic, I was working on a book about aquarium
fish, and this involved having to do a bunch
of different calculations and conversions.
For example, estimating the numbers of fish
that can be kept in an aquarium of a certain
size, or having to convert between specific
gravity (a measurement of density) and salinity
(a measurement of concentration). So I set
about trying to create an application that
would do these for me, and so save me from
having to use Excel or the OS X Calculator
application.
The first stage in creating
an application is to design the interface,
and REALbasic offers a variety of templates
to work from, including the typical Desktop
Application and Console Applications that
run in a terminal window (such as the Terminal
in OS X). I chose to use the Desktop Application,
which presents you with an empty “card” onto
which you can drag and drop the interface
elements from a floating palette. Once these
are where you want them, you configure them
as necessary, for example if you use tabbed
window, you create the different tabs. Control-clicking
brings up a contextual menu that offers various
options, such as editing the code associated
with a particular interface element.
 |
Adding interface elements to your application
is easy, simply a case of dragging the
desired components from a floating palette,
and then configuring them as required,
for example as here with a tabbed window. |
As mentioned earlier, adding
code to buttons, fields, and all the other
elements is what turns something that looks
like a program into an actual working program,
and for most people this is going to be the
tricky bit. But having said this, it is perfectly
possible to simply work through the Quick
Start Guide and thus master enough of the
basics to be able to replicate similar sort
of code for your own, original applications
without understanding very much of what is
going on. In other words, if all you do is
to copy bits of code from the tutorial materials
and then edit it a bit so that it works with
the buttons and fields on your application,
you will probably find things will work out
okay. All the essential stuff, like menu bars,
dialogues, errors, text fields, and so on
is covered in the training materials supplied
with REALbasic, and this goes a very long
way to making the program accessible and relatively
easy to get the hang of.
From start to finish, it took
me about a day and a half to work through
the tutorials and pick up enough of REALbasic
to be able to finish my project, which in
the end involved tabbed windows, sliders,
and calculations taking input from some fields
and putting results in other fields. Testing
the program is a little different to how debugging
is done in HyperCard or Revolution; instead
of simply swapping modes within the application,
the REALbasic project is compiled and then
launched as a bona fide application by itself.
Compile errors (such as bad coding) are flagged
before launch, and the user is taken directly
to the offending bit of code, which is highlighted
and the likely problem described.
 |
Once finished, the REALbasic project
can be exported as standalone applications
for a Mac OS X, Mac Classic, Microsoft
Windows, and Linux. |
Once you are happy with your
project, you can then create standalone applications
for Mac OS X, Mac Classic, Microsoft Windows,
and Linux. A settings window allows you to
define things like the name of the program,
minimum memory requirements, version number,
icons, and so on. Being able to export to
platforms other than the Classic Mac OS obviously
puts REALbasic well ahead of HyperCard.
Conclusion
When I was done with my project,
I uploaded it to my web site making it available
as freeware, and a couple of Mac software
sites added it to their listings, including
MacUpdate where you can see the download tally and read
a few reviews . Within less than a week, the
Mac OS X version was downloaded over 300 times,
and the feedback was very positive. This basically
says it all: it took was a weekend of work
to go from knowing nothing about programming
to producing something that hundreds of people
can use.
I’m wildly enthusiastic
about REALbasic and have no problems at all
giving it the coveted four-bounce rating.
While the underlying concepts are more difficult
than HyperCard (or its successors, such as
Runtime Revolution), the tutorials and guides
are so thorough and so helpful that they go
a long way to overcoming these obstacles.
Highly recommended
- Dr.
Neale Monks
What do you think? Talk about it in our Forums...
- MacBook
Pro (5-17-06) Dr. Neale Monks. A subjective review of the MacBook
Pro
- Freeway 4 Pro (2-28-06)
Dr. Neale Monks. Freeway Pro, the Quark-like web design program from Softpress,
has been substantially revised and sports a bright new look. But do the changes
go more than skin deep? Neale Monks finds out.
- Astrostack (1-18-06) Dr. Neale Monks. Long respected as one best astronomical image processing applications about, in its newest incarnation AstroStack now runs on the Macintosh. Has the wait been worthwhile?
- Virtual PC 7 (11-23-05) Dr. Neale Monks. Virtual PC 7 is the update to the venerable Windows emulator to be entirely all Microsoft’s own work. Can Mac users expect to see any dramatic changes?
- Eudora Pro 6.2 (8-5-05) Dr. Neale Monks. Eudora has been one of the most popular e-mail clients for the Macintosh for more than a decade. Neale Monks finds out how it compares with the Mail application that comes with OS X
- MacAstronomica (4-22-05) Dr. Neale Monks. How does this amateur naked eye astronomy software stack up?
- iKey 2.0 (3-11-05) Jeremy Young. How well does this automation
utility work? How much time will you save?
- Wolfram Research Publicon (3-11-05) Jeff Terry Does this new scientific
word processor live up to the potential?
- Microsoft
Office 2004, Part 3, Word (1-28-05) Dr. Neale Monks. Are there enough
new features to necessitate a jump from v.X?
- REALbasic
5.5 (12-03-04) Dr. Neale Monks. Neale takes a look at the latest version
of this programming package.
- Office
2004, Part 2, Excel and Entourage (11-05-04) Dr. Neale Monks. In the second
part of his review of Office 2004, Neale Monks looks at Excel and Entourage.
-
Phone Valet 2.0 (11-05-04) Pat St-Arnaud. The best question to ask might
be "Is there anything that you can't do with this telephone/Mac integration
tool?"
- TiPaint
Touch-up Kit and iKlear iPod Cleaning Kit (10-29-04) Dr. Neale Monks.
Is it possible to restore the shiny good looks of iPods and PowerBooks even
after years of use? Neale Monks looks at two cleaning products designed especially
for Apple hardware.
- Microsoft
Office 2004, Part 1, PowerPoint (10-15-04) Dr. Neale Monks. In the first
part of his review of Office 2004, Neale Monks looks at PowerPoint, for many
people still the benchmark for presentation software.
- ScrapX
(9-17-04) Dr. Neale Monks. Aqueous Software's ScrapX brings the Scrapbook
to OS X
- CDFinder
(8-20-04) Dr. Neale Monks. Finding what you want from among a stack of similar
looking CDs can be a hassle, but help is at hand. Neale Monks looks at CDFinder,
a budget-priced but powerful cataloguing tool.
- Endnote
7 (8-13-04) Dr. Markus Geisen. EndNote 7 is a literature database that
seamlessly interacts with your word processor. Is the latest version worth
the upgrade?
|