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

VLC Media Player 2.2.0 - Popular multime...
VLC Media Player is a highly portable multimedia player for various audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, MP3, OGG, ...) as well as DVDs, VCDs, and various streaming protocols. It... Read more
Sound Studio 4.7.8 - Robust audio record...
Sound Studio lets you easily record and professionally edit audio on your Mac. Easily rip vinyls and digitize cassette tapes, or record lectures and voice memos. Prepare for live shows with live... Read more
LibreOffice 4.4.1.2 - Free, open-source...
LibreOffice is an office suite (word processor, spreadsheet, presentations, drawing tool) compatible with other major office suites. The Document Foundation is coordinating development and... Read more
Freeway Pro 7.0.3 - Drag-and-drop Web de...
Freeway Pro lets you build websites with speed and precision... without writing a line of code! With its user-oriented drag-and-drop interface, Freeway Pro helps you piece together the website of... Read more
Cloud 3.3.0 - File sharing from your men...
Cloud is simple file sharing for the Mac. Drag a file from your Mac to the CloudApp icon in the menubar and we take care of the rest. A link to the file will automatically be copied to your clipboard... Read more
Cyberduck 4.6.5 - FTP and SFTP browser....
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
Firefox 36.0 - Fast, safe Web browser. (...
Firefox for Mac offers a fast, safe Web browsing experience. Browse quickly, securely, and effortlessly. With its industry-leading features, Firefox is the choice of Web development professionals and... Read more
Thunderbird 31.5.0 - Email client from M...
As of July 2012, Thunderbird has transitioned to a new governance model, with new features being developed by the broader free software and open source community, and security fixes and improvements... Read more
VOX 2.4 - Music player that supports man...
VoxIt just sounds better! The beauty is in its simplicity, yet behind the minimal exterior lies a powerful music player with a ton of features & support for all audio formats you should ever need... Read more
A Better Finder Rename 9.46 - File, phot...
A Better Finder Rename is the most complete renaming solution available on the market today. That's why, since 1996, tens of thousands of hobbyists, professionals and businesses depend on A Better... Read more

Get The Whole Story – Lone Wolf Complete...
Get The Whole Story – Lone Wolf Complete is Now Available and On Sale Posted by Jessica Fisher on February 27th, 2015 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Check Out the Trailer for the Upcoming F...
Check Out the Trailer for the Upcoming FINAL FANTASY: Record Keeper Posted by Jessica Fisher on February 26th, 2015 [ permalink ] DeNA and Square Enix have announced that | Read more »
Legacy Quest is an Upcoming Rouge-like T...
Legacy Quest is an Upcoming Rouge-like That’ll Kill the Whole Family Posted by Jessica Fisher on February 26th, 2015 [ permalink ] Nexon Co. | Read more »
Grudgeball: Enter the Chaosphere Review
Grudgeball: Enter the Chaosphere Review By Jordan Minor on February 26th, 2015 Our Rating: :: MUSCLE MENUniversal App - Designed for iPhone and iPad Regular Show gets an above average game.   | Read more »
Action RPG League of Angels – Fire Raide...
Gaia is being invaded by the Devil Prince and the demonic Devil Army at his disposal, and it’s up to you and your avatar to defeat him in League of Angels – Fire Raiders. Raise a mighty army from hundreds of recruitable angel heroes and take the... | Read more »
Burn Rubber on the Ice With a New Cars:...
Burn Rubber on the Ice With a New Cars: Fast as Lightning Update Posted by Jessica Fisher on February 26th, 2015 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
AdVenture Capitalist Review
AdVenture Capitalist Review By Jordan Minor on February 26th, 2015 Our Rating: :: DAS KAPITALUniversal App - Designed for iPhone and iPad An inadvertent Marxist manifesto.   | Read more »
Monster vs Sheep Review
Monster vs Sheep Review By Jennifer Allen on February 25th, 2015 Our Rating: :: SAMEY FUNUniversal App - Designed for iPhone and iPad What Monster vs Sheep lacks in variety it makes up for with stress relieving fun. At least, for a... | Read more »
Is Your Face Ready for the New Outwitter...
Is Your Face Ready for the New Outwitters 2.0 Trailer? Posted by Jessica Fisher on February 25th, 2015 [ permalink ] One Man Left Studios has announced that their turn-based strategy game, | Read more »
HowToFormat Review
HowToFormat Review By Jennifer Allen on February 25th, 2015 Our Rating: :: USEFUL TIPSiPhone App - Designed for the iPhone, compatible with the iPad Making a presentation and want to get it just right? HowToFormat teaches you how... | Read more »

Price Scanner via MacPrices.net

Save up to $50 on iPad Air 2s, NY tax only, f...
 B&H Photo has iPad Air 2s on sale for $50 off MSRP including free shipping plus NY sales tax only: - 16GB iPad Air 2 WiFi: $469.99 $30 off - 64GB iPad Air 2 WiFi: $549 $50 off - 128GB iPad Air 2... Read more
16GB iPad Air 2 on sale for $447, save $52
Walmart has the 16GB iPad Air 2 WiFi on sale for $446.99 on their online store for a limited time. Choose free shipping or free local store pickup (if available). Sale price for online orders only,... Read more
iMacs on sale for up to $205 off MSRP
B&H Photo has 21″ and 27″ iMacs on sale for up to $205 off MSRP including free shipping plus NY sales tax only: - 21″ 1.4GHz iMac: $1029 $70 off - 21″ 2.7GHz iMac: $1199 $100 off - 21″ 2.9GHz... Read more
Apple Takes 89 Percent Share of Global Smartp...
According to the latest research from Strategy Analytics, global smartphone operating profit reached US$21 billion in Q4 2014. The Android operating system captured a record-low 11 percent global... Read more
New Travel Health App “My Travel Health” iOS...
Rochester, Minnesota based Travel Health and Wellness LLC has announced that its new iOS app help safeguard the user’s health when traveling abroad — “My Travel Health” is now available on the Apple... Read more
Sale! MacBook Airs for up to $115 off MSRP
B&H Photo has MacBook Airs on sale for up to $100 off MSRP. Shipping is free, and B&H charges NY sales tax only: - 11″ 128GB MacBook Air: $799 100 off MSRP - 11″ 256GB MacBook Air: $999 $100... Read more
15-inch 2.0GHz Retina MacBook Pro (refurbishe...
The Apple Store has Apple Certified Refurbished previous-generation 15″ 2.0GHz Retina MacBook Pros available for $1489 including free shipping plus Apple’s standard one-year warranty. Their price is... Read more
Wither The iPad mini? End Of The Road Imminen...
AppleDailyReport’s Dennis Sellers predicts that the iPad mini is going to be left to wither on the vine, as it were, and then just allowed to fade away — a casualty of the IPhone 6 Plus and other... Read more
Android and iOS Duopoly Owns 96.3% of Smartph...
IDC reports that Android and iOS inched closer to total domination of the worldwide smartphone market in both the fourth quarter (4Q14) and the calendar year 2014 (CY14). According to data from the... Read more
13-inch 2.4GHz Retina MacBook Pro available f...
MacMall has the 2013 13″ 2.4GHz/128GB Retina MacBook Pro available for $999.99 for a limited time. Shipping is free. Their price is $300 off original MSRP, and it’s the only sub-$1000 new Retina... Read more

Jobs Board

Sr. Technical Services Consultant, *Apple*...
**Job Summary** Apple Professional Services (APS) has an opening for a senior technical position that contributes to Apple 's efforts for strategic and transactional Read more
Event Director, *Apple* Retail Marketing -...
…This senior level position is responsible for leading and imagining the Apple Retail Team's global engagement strategy and team. Delivering an overarching brand Read more
*Apple* Pay - Site Reliability Engineer - Ap...
**Job Summary** Imagine what you could do here. At Apple , great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** As an Apple Solutions Consultant (ASC) you are the link between our customers and our products. Your role is to drive the Apple business in a retail Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.