TweetFollow Us on Twitter

An Interview with Geoff Perlman

Volume Number: 20 (2004)
Issue Number: 6
Column Tag: Interview

REALbasic Best Practices

by Guyren G Howe

An Interview with Geoff Perlman

Talking with the CEO of REAL Software

Recently, I sat down with Geoff Perlman, the CEO of REAL Software, for a brief interview about REALbasic.

[Guyren] Tell us a little of your personal and professional background.

[Geoff] Alright, well let's start with computers.

I'd come home from school, and I'd want to watch reruns of MASH. The reruns of MASH came after Star Trek, so I ended up liking Star Trek. Well, computers for me were the closest that I could get to Star Trek in real life, so that's what got me interested in computers.

Initially, my Dad brought home a Texas Instruments portable terminal, and they had BASIC on there, so we could program in BASIC. Then, I got into programming Applesoft BASIC. And then, when the Mac came along, I convinced my brother who had a limousine business that I would write him a program to track all his orders. It took me six months to write it. I could write it today in REALbasic probably in a day, or less.

After high school, I went to work for AT&T for a couple of years. Our office was about 300 people, and they would do the break schedules manually, which would take a manager one whole day per week. Well, I said to one of them, "I can write a program to do this". So, I spent several weeks writing this program, and it got to the point where they could press a button, and out came the schedule.

That led to all kinds of other opportunities. Later, I went to work for myself, doing 4D consulting. I did that until 1990, went to work for 4D for 4 years, went back to consulting with 4D for a while, and then in late '97, came across CrossBASIC.

I downloaded CrossBASIC, found it really interesting, contacted Andrew [Barry], found out that he was not really working on it full time. I asked if he wanted to. He said yes. I put a business plan together, and off we go with CrossBASIC becoming REALbasic, and you know the rest of that.

On to some questions about business today. How are your licenses distributed, between Mac and Windows and both, people who get professional, standard...?

[After the interview, Geoff sent me a breakdown of recent sales, which he says are 80 percent commercial, 20 percent academic; 74 percent standard, 26 per cent professional; 77 percent Macintosh, 23 percent Windows.]

So how does REAL Software go about deciding what new features to have in a release?

That's a good question. Part of it is sort of our long-term strategic vision for the product. That's a big part.

Is that very detailed, or is it just sort of a broad concept?

We start with something that's very broad, and we know that there are pieces that need to be implemented to make that vision happen. So, for example, with our new database engine; ultimately, we'd like the REALbasic database engine to stand up there with just about any database engine. But right now, it's fairly basic, no pun intended....

A database engine is a non-trivial thing to do; I'm a little surprised you haven't tried to license something instead for that.

We looked at licensing, and we even looked at acquiring a few engines, and that just never seemed to work out. So, ultimately, we decided, let's just write our own engine. We try to create layers of technology so that we can give benefits to the customer in pieces. For example, with the database engine, the first thing we did was we created the virtual volume. It was a deliverable that was a foundation for the database engine.

Just as RBScript was the first step toward the new compiler.

Exactly right. RBScript was the first deliverable.

Another big part of what drives the feature set is the feedback system. We go into the feedback system, we find all the feature requests, sort them by the number of people that have reported the feature request, and then we start looking down the list, and we basically start asking ourselves, bang for the buck, what are the best features? I mean, support for Palm is high up on that list, but we're not ready for that, so there's no point in us banging our heads against the wall trying to make that happen. That will happen down the road.

Is there also any room for engineers to add their own sort of creative concepts?

Sure. The new IDE for version 6: that wouldn't have happened if I hadn't pushed it. The way the new IDE happened was that there were just a lot of variables that came together that made me realize that we were at a point now where it's fish or cut bait.

We'd planned two large features for 5.5. If we did them, that was an even bigger investment in the current IDE. We knew we wanted to port the IDE to Linux. That was going to be another big investment in the IDE, so I knew that if we didn't port the IDE to REALbasic now, it probably was going to become prohibitively expensive to ever do it in the future.

Would you care to say what those two features were?

Yes, one is version control, and the other is visual printing, laying out something that you want to print visually rather than having to do it all in code.

So what has been the most interesting thing that has happened in the last six years?

When Andrew departed, it was an interesting experience to rebuild the engineering team. It also became clear to me as I started down that road that we had to grow up as a company. We didn't have enough formal processes in place, so we became a more mature company as a result.

That was really interesting, because it felt like such an unknown to me. How quickly would we build a new team? How well were they going to work together? Were we going to go through a lot of turnover in that process?

What about difficulties? That sounds like that was a pretty major difficulty.

Probably the thing that was the most difficult is that it's surprisingly difficult to create a culture in a company.

I was going to ask you about that. You've done a very good job [with the] user community. Did you set out with a deliberate vision of culture within the community and the company?

It was all the things I wished a software company did when I wasn't running a software company.

And that's pretty much worked out the way I wanted it to. I think part of that too is that it's easy to say well, that doesn't scale, as you grow you're not going to be able to be as communicative, you're not going to be able to answer email questions from individual customers. Well, if you believe that, then that's right.

Tell us more about the culture of the community and the company.

As we've grown, I've felt that it's important for us to continue to be really close to our users. A lot of companies have that closeness when they're very, very young. And as their product and their company matures, they kind of back off from that, believing that they can't do that any more. I don't believe that.

Any customer, for example, who orders our product and bothers to write something in the comment field, will get a response from me, personally. People are shocked. They can't believe that anyone read the comment, they figured it just goes into a bucket somewhere. They can't believe they got a response to the comment. They can't believe they got a comment so fast, and they can't believe it's coming from the CEO. They're just amazed.

Scott Cook, who's the chairman of the board for Intuit, was once CEO, President, founder and all that; I don't know if he still does this, but I know that when he was CEO, he would spend a few hours every week doing tech support for Quicken, because he wanted to stay in touch with customers. I think that was really smart.

In terms of our culture inside the company, I really like consensus, so if I suggest something and the consensus is no, this isn't a good idea, unless I feel very, very strongly about it, I'm going to let it lie. Now, if I feel very strongly about it, then I'm going to try to continue to hammer on it to achieve consensus.

Is there anything you'd nominate as being the most satisfying?

There are two things that have been the most satisfying. The first is, it's really, really satisfying to provide people with something that's so enabling for them. That allows them to do something that they felt they could never do before. We get comments on a daily basis, from people saying I could never have done this. I have a whole new career, I'm so proud of myself for doing this or that.

The second thing is that in the past, I've either worked for myself as an independent consultant, or I've worked for a company. And I saw how the company operated, and I had my ideas about how it should be changed to operate better. And a lot of that was just my thoughts, I had no idea if those things would really work. And in that respect, REAL Software has been an experiment in my own vision for how a software company should run.

Is there anything you wish you'd done differently?

Well, okay, so here is how I feel about that whole idea of looking back, about I wish I'd done this or that: life doesn't work that way. Every decision you make leads to a new set of variables, leads to a new scenario. Your life takes a different path.

For me, I see an ad in MacWeek magazine, a tiny little ad for 4D, saying they were looking for tech support people.

So I sent them my resume. And that led to Silicon Valley, which led to my life in the computer industry. Chances are, had I made a different decision at that moment, I wouldn't be doing what I'm doing today. I wouldn't have moved to Texas, I wouldn't have met my wife. So, would I have done anything different? My attitude toward this is that if you like the way things are now, then you can't look back in hindsight and say you wish you did anything different.

So I know that's kind of a philosophical answer, but it's the way I really feel about all kinds of things.

Now the compiler is done....

Wait wait wait. The compiler is never 'done'.

Now that you've implemented the same features you had in the old compiler...

We've switched the compiler, yes.

...can we expect any interesting new language features, perhaps something novel like Events?

One of our reasons for implementing the new compiler was we needed a better way to extend the language. The old compiler was a hand-written parser, and that led to lots of ambiguities in the language. The new compiler is written using Bison, which creates a very consistent language, and that was our first goal, to get that out and just get parity of the language. Now that we've done that, there are all kinds of things that we think about adding. And, we've already done some of them -- if you look at the release notes for 5.0 and 5.5, there are new language features in there.

Nothing really major, though.

There are bigger fish to fry at this point. We have optimizations we want to put in, support for different back ends, native linkers for Linux and Windows, that kind of stuff. So right now, you're seeing kind of smaller language features that are going into the product, only because there are more important things that we've just decided must come first.

For example, the way we handle resources on Windows is limited by how we do our linking on Windows. We need a native linker for Windows, rather than the sort of boot-strap linker we have now, in order to solve the resource problem. So you'll see more, bigger language features in the future than you're seeing now.

I'd like to go back to something that I'd like you to expand on very briefly: just what is your long term vision?

The long-term vision for REALbasic is for people to be able to use one language, one IDE, one framework, and be able to create any kind of software they want and deliver that on any platform they need.

Right now, we deliver on Mac, Windows and Linux, but there are other platforms, PalmOS, Pocket PC, Symbian OS for cell phones. Right now, we deliver just desktop applications, and now console applications in 5.5. But there are other formats that software comes in. At the [REAL World] conference, we showed off a new product code-named Swordfish, for building web applications. We want our users to be able to build PDA, or handheld device applications. We want them to be able to build plug-ins for other products.

And this is for three reasons. One is that it makes sense for there to be a single environment, language and framework, that you can use for writing whatever kind of software you want, but we've come far enough with computers, and software that you should be able to use a higher-level language to do that.

Also, people invest a lot of time learning a language, and learning a framework, and learning an environment, so the more things they can do with that, the more confident they are going to be that they've made the right choice in learning that environment, which is only going to help the user community grow.

Lastly, all those ways to deliver software that we give our customers are potential entry points for people that aren't using our product now. For example, if you have no interest in building desktop applications, we can't get you as a customer today. But, when we ship Swordfish, if you're interested in building web applications, that may be how we get you as a customer. Or maybe you look at REALbasic and you say, if I learn this, not only can I build web applications, but I can also build desktop applications. So you may have come to us with only one very narrowly defined need, but then your confidence in choosing us grows because you realize that that investment of your time and energy is applicable to lots of other areas.

So that's kind of what the vision is for the product.

Do you get a lot of people coming from VB?

Oh, yes. Recently, Gartner Group did a poll of like a thousand VB users, and found that 43% of them were looking for an alternative to VB.net. They're looking at Java, they're looking at other things. Hopefully, if we can get the word out more in the Windows community, they'll be looking at us.

While we're on the subject of Microsoft, I just wondered about the Office API. As I understand it, some of the add-ons you get when you get Microsoft Office are actually written in REALbasic, is that right?

Yes, they do a lot of prototyping at Microsoft using REALbasic. And Microsoft Query for Mac OS X is written in REALbasic. The Welcome App that tells you about the features and the software license and so on, that's written in REALbasic. They would actually like to be able to write Office plug-ins in REALbasic, but we don't support that yet.

That's really surprising; it doesn't sound at all like Microsoft. Who came to whom?

That all started when we shipped Version 1 at Macworld in New York, July 1998. We were sitting there in our little ten by ten booth, pitching REALbasic. And these two guys from Microsoft on the very first day of the show, come walking into our booth, and I'm just thinking the worst.

They introduce themselves and they say that they're with the Mac Business Unit at Microsoft, and we'd like to talk to you guys about working together to make your product talk to our product.

So they came to you.

They came to us, at the trade show. And I was totally shocked. I thought this is the last thing they were interested in. And later, as they were porting Office to Mac OS X, we talked about adding Office support, but it was a big job, and we always had bigger fish to fry. So when they started doing the port for Mac OS X, they weren't totally confident that they were going to port the VBA code to Mac OS X. Their thinking was that maybe we can get the guys from REAL Software to provide this functionality, and then if the port of that VBA code doesn't go very well, we can shift over to using REALbasic.

As it turned out, that port actually went fairly smoothly. So they went ahead and ported the VBA stuff, but they really did not want to promote the VBA stuff. We existed, they wanted us to provide a solution, and they wanted to point people to us. They figured we were going to do a better job in that space than they were going to be able to do. And because we're going through their library directly, the APIs are 99% the same. You could go buy a book at Amazon on VB or VBA, and chances are just about all that code is going to work in REALbasic just as it is in the book, and be cross-platform.

You've mentioned hand-helds and plug-ins. Are you prepared to say anything about the time frame for any of that stuff?

Not really. It's likely to be the next thing that we take on after Swordfish. I mean, we certainly want to do it sooner rather than later. We don't generally talk in much detail about what we're going to do in the future, because we prefer to under-promise and over-deliver.

What about community features? As I say, I think you've done a great job so far of building community around REALbasic, but there are some things that it seems to me could be improved. For example, although I think RB Garage does a pretty good job, it may be better if something like that had the imprimatur of the company. Are there any other sort of community features you're working on?

We've talked about a code library in the past. Our general feeling is that we prefer places like RB Garage to do that. I think that places like RB Garage, if they stay on track, they could become that.

On the other hand, we've talked about building a feature right into the IDE that would access a server here at REAL Software, where people could contribute code, and we could indicate that we reviewed it, and they could type in a few keywords, and have it find some function that they've needed. We've also talked about building a chat application into the IDE, so that if you wanted to ask a question, you could go to this chat application and it would say that there were 40 REALbasic experts online, and you could type in a question, so that people in our community that want to help each other don't have just the list in order to do it. They would have a more instant interaction.

Well, thanks for the interview. Is there anything that you'd like to say to the readers of MacTech?

I guess what I would say is that if you have any impressions of what you think REALbasic is, and you haven't really given it a thorough run through, you really should look at it. A lot of people who are C and C++ programmers hear the word BASIC and they think it's a toy language, that it's interpreted, and so on. Well, it's not a toy language, it's as object-oriented and as powerful a language as Java. It's machine code compiled, and you'll be able to do practically anything you were doing in C++ a lot faster in REALbasic, and on more platforms. But you have to be willing to look at a new language, and get past the name BASIC, and leave behind all of your prejudices or preconceived notions about what you think BASIC is, and what you think REALbasic is, because chances are, it's not anything like what you expect.

The engineers here at REAL Software are all C++ guys. But in general, they all prefer to code in REALbasic now, because they can simply work faster than they can in C++. And they're all extremely talented C++ programmers, so it's not that they're lacking in that respect.

Thanks.

You're welcome.


Guyren G Howe works in artificial intelligence research after years of work as a technical writer and developer. He is married with one child, is an Australian, and lives in Austin, Texas. Guyren has been working with REALbasic for several years. Most notably, he wrote the REALbasic Curriculum Project, an extensive computer science curriculum, for REAL Software (available from the REALbasic website).

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Boom 2 1.5.2 - $14.99
Boom 2 is a system-wide volume booster and equalizer app that is designed especially for OS X 10.10 Yosemite. It comes with a smart interface, self-calibrates itself according to your Mac, offers... Read more
MacFamilyTree 8.1.3 - Create and explore...
MacFamilyTree gives genealogy a facelift: modern, interactive, convenient and fast. Explore your family tree and your family history in a way generations of chroniclers before you would have loved.... Read more
WhiteCap 6.6 - Visual plug-in for iTunes...
WhiteCap is a sleek and sophisticated music visualizer and screensaver that features futuristic, wireframe mesh visuals with dynamic backgrounds and colors. WhiteCap contains thousands of visual... Read more
VOX 2.8.14 - Music player that supports...
VOX just sounds better! The beauty is in its simplicity, yet behind the minimal exterior lies a powerful music player with a ton of features and support for all audio formats you should ever need.... Read more
Paparazzi! 1.0b2 - Make user-defined siz...
Paparazzi! is a small utility for OS X that makes screenshots of webpages. This very simple tool takes screenshots of websites which do not fit on one screen. You specify the desired width, minimal... Read more
Carbon Copy Cloner 4.1.13 - Easy-to-use...
Carbon Copy Cloner backups are better than ordinary backups. Suppose the unthinkable happens while you're under deadline to finish a project: your Mac is unresponsive and all you hear is an ominous,... Read more
TrailRunner 3.8.832 - Route planning for...
TrailRunner is the perfect companion for runners, bikers, hikers, and all people wandering under the sky. Plan routes on a geographical map. Import GPS or workout recordings and journalize your... Read more
VueScan 9.5.65 - Scanner software with a...
VueScan is a scanning program that works with most high-quality flatbed and film scanners to produce scans that have excellent color fidelity and color balance. VueScan is easy to use, and has... Read more
Adobe Illustrator CC 2017 21.0.2 - Profe...
Illustrator CC 2017 is available as part of Adobe Creative Cloud for as little as $19.99/month (or $9.99/month if you're a previous Illustrator customer). Adobe Illustrator CC 2017 is the industry... Read more
iDefrag 5.1.7 - Disk defragmentation and...
iDefrag helps defragment and optimize your disk for improved performance. Features include: Supports HFS and HFS+ (Mac OS Extended). Supports case sensitive and journaled filesystems. Supports... Read more

5 dastardly difficult roguelikes like th...
Edmund McMillen's popular roguelike creation The Binding of Isaac: Rebirth has finally crawled onto mobile devices. It's a grotesque dual-stick shooter that tosses you into an endless, procedurally generated basement as you, the pitiable Isaac,... | Read more »
Last week on PocketGamer
Welcome to a weekly feature looking back on the past seven days of coverage on our sister website, PocketGamer. It’s taken a while for 2017 to really get going, at least when it comes to the world of portable gaming. Thank goodness, then, for... | Read more »
ROME: Total War - Barbarian Invasion set...
To the delight of mobile strategy fans, Feral Interactive released ROME: Total War just a few months ago. Now the game's expansion, Barbarian Invasion is marching onto iPads as a standalone release. [Read more] | Read more »
Yuri (Games)
Yuri 1.0 Device: iOS iPhone Category: Games Price: $3.99, Version: 1.0 (iTunes) Description: It's night. Yuri opens his eyes. He wakes up in a strange forest.The small, courageous explorer rides on his bed on casters in this... | Read more »
Space schmup Xenoraid launches on the Ap...
10Tons Xenoraid is out today on the App Store, bringing some high-speed space action to your mobile gadgets just in time for the weekend. The company's last premium title, another sci-fi game titled Neon Chrome, did quite well for itself, so... | Read more »
Star Wars: Force Arena Beginner's G...
Star Wars: Force Arena joined the populous ranks of Star Wars games on mobile today. It's a two-lane MOBA starring many familiar faces from George Lucas's famed sci-fi franchise. As with most games of this nature, Force Arena can be a little obtuse... | Read more »
Mysterium: The Board Game (Games)
Mysterium: The Board Game 1.0 Device: iOS Universal Category: Games Price: $6.99, Version: 1.0 (iTunes) Description: The official adaptation of the famous board game Mysterium! | Read more »
Sonny (Games)
Sonny 1.0.4 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.4 (iTunes) Description: Reimagined for iOS, cult-hit RPG Sonny brings challenging turn-based combat that requires strategy and mastery of each new skill to... | Read more »
Towaga (Games)
Towaga 1.0 Device: iOS iPhone Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: "It has been foretold that a masked being would stand atop the legendary Towaga Temple, dwelling among shadows to fulfil The Black Moon... | Read more »
Bubble Witch 3 Saga Guide: How to get th...
King's bringing its fairytale bubble-popping puzzler back for its 3rd outing in Bubble Witch 3 Saga. If you're familiar with the series, not much has changed here on the surface level, though you'll likely be pleased with the improvements. If you'... | Read more »

Price Scanner via MacPrices.net

New MacBooks And MacBook Pros WIth Kaby Lake...
Digitimes’ Joseph Tsai cites a Chinese-language Economic Daily News (EDN) report that unnamed market watchers are predicting Apple MacBook shipments to grow 10 percent in 2017, and projecting 15... Read more
New 2016 13-inch MacBook Pros on sale for up...
B&H Photo has the new 2016 13″ MacBook Pros in stock today and on sale for up to $150 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 13″ 2.9GHz/512GB Touch Bar MacBook Pro... Read more
New 15-inch Touch Bar MacBook Pros in stock a...
B&H Photo has the new 2016 15″ Apple Touch Bar MacBook Pros in stock today and on sale for up to $150 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 15″ 2.7GHz Touch Bar... Read more
Opera Announces Neon Concept Browser For Mac
Opera is inviting users to get a glimpse of what Opera for computers could become with its Opera Neon browser concept. Each Opera Neon feature is described as “an alternate reality” for the Opera... Read more
Tellini Releases TabView 3.0 Missing Tool fo...
Tellini has announced the release of TabView 3.0. TabView has been the first macOS viewer for PowerTab tablatures. PowerTab is a well-known and widely adopted tablature editor for Windows systems and... Read more
13-inch 1.6GHz/128GB MacBook Air on sale for...
Overstock.com has the 1.6GHz/128GB 13″ MacBook Air on sale for $130 off MSRP including free shipping: - 13″ 1.6GHz/128GB MacBook Air (MMGF2LL/A): $869.99 $130 off MSRP Their price is the lowest... Read more
12-inch 32GB Space Gray iPad Pro on sale for...
B&H Photo has 12″ Space Gray 32GB WiFi Apple iPad Pros on sale for $55 off MSRP including free shipping. B&H charges sales tax in NY only: - 12″ Space Gray 32GB WiFi iPad Pro: $744.44 $55 off... Read more
9-inch 32GB Space Gray iPad Pro on sale for $...
B&H Photo has the 9.7″ 32GB Space Gray Apple iPad Pro on sale for $549 for a limited time. Shipping is free, and B&H charges NY sales tax only. Read more
Apple iMacs on sale for up to $120 off MSRP,...
B&H Photo has 21″ and 27″ Apple iMacs on sale for up to $120 off MSRP, each including free shipping plus NY sales tax only: - 27″ 3.3GHz iMac 5K: $2199 $100 off MSRP - 27″ 3.2GHz/1TB Fusion iMac... Read more
Apple refurbished Apple TVs available for up...
Apple has Certified Refurbished 32GB and 64GB Apple TVs available for up to $30 off the cost of new models. Apple’s standard one-year warranty is included with each model, and shipping is free: -... Read more

Jobs Board

*Apple* Retail - Multiple Positions - Apple,...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
*Apple* & PC Desktop Support Technician...
Apple & PC Desktop Support Technician job in Stamford, CT We have immediate job openings for several Desktop Support Technicians with one of our most well-known Read more
*Apple* macOS Systems Integration Administra...
…most exceptional support available in the industry. SCI is seeking an Junior Apple macOS systems integration administrator that will be responsible for providing Read more
*Apple* Premier Retailer - Service Technicia...
DescriptionSimply Mac is the largest premier retailer for Apple products and solutions. At Simply Mac we are all Apple , all the time. Same products. Same prices. Read more
*Apple* Premier Retailer - Service Technicia...
DescriptionSimply Mac is the largest premier retailer for Apple products and solutions. At Simply Mac we are all Apple , all the time. Same products. Same prices. Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.