Pioneers in Mac Development

Andrew Barry on Why REALbasic Is a Great Rapid Application Development Tool

- 2008.08.04

Popularity: LEMLEMLEMLEM

del.icio.us Bookmark in del.icio.us

Low End Mac Reader Specials

TypeStyler For Mac OS X is Now Shipping! Download The Free Fully Functional 60 Day Tryout at www.typestyler.com

Poker Mac Don't install Parallels to play poker online! Poker Mac will show you how to download and install a native Mac poker application such as Full Tilt Poker Mac.

Laptop Hardware Provided by TechRestore - Overnight Mac & iPod Repairs.

Compare products like desktop computers, apple laptops, apple macs, and LCD Monitors side by side! All the information and reviews to make the best purchasing decision for new mobile phones, sat nav systems, or MP3 players. The Ciao online shopping community makes searching products easy for you.

The Macintosh has long been the gold standard in friendliness for the end user, but what a lot of people don't realize is that the Mac can be a real pain to program for. The situation has gotten a lot better for OS X with the variety of scripting languages available and Apple's excellent developer tools.

However, there is a niche on any platform for a rapid GUI builder coupled with a high level language. Visual Basic filled this niche on Windows but on the Mac OS, REALbasic is a great choice and pre-OS X it was pretty much the only choice. If you don't believe me, fire up your old Mac and try whipping together a quick application in C using MPW and compare it to the same application in REALbasic.

In my opinion, REALbasic is a better RAD (rapid application development) tool than Visual Basic with even early versions providing decent Object Oriented support. It truly was and is a great tool for prototyping and rapid application development.

I recently had a chance to chat with Andrew Barry, the principal author of REALbasic. Andrew started development of REALbasic as a hobby project in 1995 when he was 25 years old. Popularity and features grew, and it turned into a commercial product in 1997 with it's first release on July 4, 1998.

Andrew, you are well known as the principal originator of REALbasic. Much great software has started as an "itch" the programmer was trying to scratch.

What were you trying to do with REALbasic ?

My main intent in writing REALbasic was to provide a tool that covered the same sort of use cases that Visual Basic under Windows did - a development tool that took care of the drudgery of managing windows, buttons, etc. and let you jump straight to the interesting part. The funny part is the backlash you get from "real programmers", who think that doing that drudgery builds character, or at best provides some sort of "talent filter" or "rite of passage". Of course similar arguments were made about word processors.

While I had originally developed REALbasic both for myself and other people, I ultimately found it to be too limited for my own use - I had failed to create the path between simple and powerful. I should note that I still haven't successfully scratch that itch for myself yet.

How much did developing on the Mac figure into your work? Do you wish you had developed on other platforms? What drew you to the Mac?

I've always been a big Mac fan - the first Mac I could afford was the Mac IIsi back in 1990, but I had otherwise taught myself to program the Mac on a friend's machine. The Mac has usually been the platform that I developed on for fun, and also it was the platform that was most in need of something like REALbasic.

For whatever reason, I've never pigeonholed myself as a solely Mac developer - most of my professional career has actually been spent writing Windows and Java software, and more recently I've been getting pretty capable at web development. So from that perspective I think I have a reasonable grasp of what the strengths and weaknesses of each of the platforms.

But fundamentally I appreciate the attention to detail and usability that's present in Mac applications - details that are often missing on other platforms, whether misaligned baselines or preference dialogs that intimidate.

REALbasic met a huge need on the Classic Mac OS, given the dearth of development tools for the casual to mid level programmer. For OS X, this is no longer the case, since OS X has easy access to scripting languages such as Perl, Python, and Ruby. Do you still feel that REALbasic meets a need on OS X?

Certainly the presence of a command line means that these scripting languages can be easily leveraged for batch style operations. What I'm not sure about is whether they provide a suitably integrated experience for creating a GUI.

So from that perspective, I don't think that REALbasic's niche has been supplanted by those scripting languages. The real threat facing REALbasic is the same one facing all native app development: The World Wide Web.

To put it another way, if I was starting on my career today, I'd be well advised to focus on web app technologies that are applicable to pretty well any device capable of running a web browser - as opposed to limiting myself to any given client platform.

Do you feel that programming is an art or a science?

Yes (inclusive or) - it's not a toggle or two extremes on a single axis.

You can develop software with varying amounts of either, but I'd argue that healthy dollops of both are beneficial to development.

I'd argue that art encompasses getting that clear understanding of what the end user is wanting to achieve such that the software naturally anticipates their desires.

Science involves various best practice such as automated regression testing, and separation of concerns (for example by using design patterns such as MVC).

What are you working on now ?

Lots of stuff.

My primary daytime job is being Product Architect for an international company called Haley where I do a lot of Java, .Net, and JavaScript work in the enterprise space.

I'm also doing some graphical GIS stuff for the government involving Java, .Net, and JavaScript.

Furthermore, I'm doing some web app development for another client using a combination of .Net and PHP (it's also fun, because I get to communicate with a credit card gateway)

I'm playing around with iPhone app development and/or experimenting with some different approaches for OS X development, which I have little time for because I also have four young daughters aged 12, 9, 8, and almost 3.

What excites you about the future of the Mac or about computers in general ?

A bit over a week ago I got an iPhone, which I find to be a pretty interesting device. Certainly there's a lot of commonality with OS X with regard to underlying operating system functionality, but it goes all the way back to the original concept of the Mac being an appliance. I could certainly envisage the successor to the iPhone interface being pulled back into the consumer Mac space, making them substantially easier to use/administer.

So while this is probably a heretical view, I'm excited about the prospect of the personal computer being replaced by the information appliance. Why does everybody need to understand overlapping windows, how to use the Finder, and that they should close an application when they close its last open window? LEM

Recent Pioneers in Mac Development Columns

Links for the Day

Recent Content on Low End Mac

Recent Deals

About LEM | Support | Usage | Privacy | Contacts

Custom Search

Amazon.com

Navigation

Used Mac Dealers
Apple History
Video Cards
Email Lists

Favorite Sites

MacSurfer
MacMinute
MacInTouch
MyAppleMenu
InfoMac
Macs Only!
The Mac Observer
Accelerate Your Mac
RetroMacCast
PB Central
MacWindows
The Vintage Mac
   Museum

DealMac
DealsOnTheWeb
Mac2Sell
ramseeker
Mac Driver Museum
JAG's House
System 6 Heaven
System 7 Today
the pickle's Low-End
   Mac FAQ

Abandonware
   Petition

Mac vs. PC Info

Affiliates

The Apple Store
Mac Connection
B&H
MacMall
TechRestore
ExperCom
Crucial Memory
batteries.com

Low End Mac's Amazon.com store

Advertise

Open Link