JonHoyle.com Mirror of MacCompanion
http://www.maccompanion.com/macc/archives/May2008/Columns/AccordingtoHoyle.htm

Resources

 

Consultants

Developers

Devotees

Downloads

"Foreign" Macs

Forums

Hearsay

Link Lists

Mac 3D

Macazines

Mac Jobs

MUG Shots

News

Radio

Reviews

Think Different

Training


Google

macCompanion

Internet





Evo Networks



Latest Joy of Tech!
Latest Joy of Tech!


3-Rivers Synergy Centre


Visit StepHouse Networks. Broadband DSL for Apple Users





 

According to Hoyle...

 

Basic Update 2008: Follow-up


May 2008

by Jonathan Hoyle

jonhoyle@mac.com

macCompanion

http://www.jonhoyle.com



Due to the large feedback response I received from last month's column Basic Update 2008, we continue our discussion on Basic development environments.



http://www.realbasic.com/


The majority of email responses I received from last month's article was with regard to the price of REALbasic 2008's Standard Edition. In it, I stated that REAL Software announced its price increase, doubling from $100 to $200. Although this announcement did happen, the price increase did not. Thankfully, REAL Software was talked down from the ledge from this expensive jump, allowing REALbasic to remain an excellent buy for a very powerful development environment. For $200, instead of only a single platform of REALbasic (as I incorrectly stated last month), you in fact get all three: Mac & Windows for $100 each, and the Linux version is free! Thanks again to all who sent me the corrected information.


Others felt that my brief review of REALbasic left the impression that I was not recommending this product. Although I was indeed being critical of the pricing (and the Professional version does indeed remain far too high at an unrealistic $500), I find REALbasic to be the finest Basic development environment ever produced for the Macintosh. It is both easy and powerful, a combination not easily achieved. One feature I specifically enjoy is its ability to use C/C++ code as I outlined in a previous column.


This is one of only two Mac Basic's I regularly use, and the only one I use on a daily basis. This is the product which is the standard for which all other Basic's are measured, and rightfully so.


Another criticism I received from last month had to do with the reference to my two year old review of REALbasic 2006. In that review, I mention the two biggest deficiencies were its lack of universal binary support and its forced Microsoft-like all-in-one windowing. Neither of these exist in REALbasic 2008, so it is high time for a full update in a future column; look for it.




FutureBASIC

http://www.futurebasic.com/


The news of FutureBASIC going freeware as of the beginning of the year was perhaps the most exciting news I had to offer in last month's column. Amongst the enthusiastic responses I received to this news was an email from Brian Stevens, who heads up the FBtoC project, which allows for creating Universal Binaries from FB projects. Brian's email contained additional information that would be of great interest to Macintosh Basic enthusiasts, so I provide his information here:


FBtoC is more than a translator. It handles virtually everything about the compile process including:

  1. Translating to C
  2. Building the executable (calls gcc transparently) and package based on user settings--- including the coveted universal binary option
  3. Option to allow automatic copying of resources or files into the package
  4. Automatically copies the info.plist into the package
  5. Allows inline C (or Objective C) in the FB source code
  6. Foreign language localization built-in for FBtoC and ability to easily do the same for the compiled user application
  7. Direct access to non-standard frameworks with simple "include" directive

There are three volunteer projects underway that might of of interest:


[1] A Wiki page is currently under construction, and is more than just a reference, offering narratives describing current topics like the modern use of FSRef's compared with other deprecated methods. As mentioned, it is under construction, so many sections are incomplete or just place holders. It is however, exciting to see this coming together. Professor Chris Wyatt and some of his students have generously offered their time.


[2] The new editor project (the current editor is Rosetta-only on Intel Macs) has finally started to move. Currently, I'm doing a little coding on it in between my other responsibilities. There is a lot of work here; even with newer tech like MLTE/ATSUI, building a smart editor is slightly less than a piece of cake. Bernie Wylde is writing the project manager piece (Bernie, myself, Robert Purves and Michele Neri are the FBtoC team) and Robert some input too. Not really much to say yet and I don't have any timeframes because I'm not sure exactly how many features we plan to incorporate. My goal is to finish core parsing code first.


[3] FB and FBtoC work well with nib files created with Interface Builder. If using FBtoC, all the nibs in the project file are automatically copied into the Resources folder within the application bundle. Of course, this means FB programmers can use Interface Builder (Carbon controls) to create all their windows, menus and controls (i.e. buttons, checkboxes etc.). The programmer is not limited to nibs and can create windows and controls programmatically (as has been the traditional method in FB). It is possible to mix programmatic creation of windows/ controls within the same program. I noticed some development systems require either programmatic or nibs but don't have flexibility to use either or both. FB can.



http://www.kbasic.com/


Last month I gave a very strong recommendation for KBasic as being a cost-effective alternative to REALbasic Professional, with a price tag of 24.95 Euro (~$35 US) for all platforms. Although this is correct for open source (specifically, GPL) development, it is not the true cost for those interested in writing commercial, shareware, or even non-GPL freeware applications. The reason for this is that KBasic uses the Qt framework for its GUI, and any applications developed with it cannot be legally distributed without acquiring a Qt license itself. Fortunately, GPL open source projects may acquire Qt licenses at no charge. For anything else however, it can be rather frightfully expensive.


Regretfully, this is not made very clear on the KBasic web site, as many people were not even aware of this limitation (as I had not). Sadly, many people excited by KBasic had, like myself, downloaded it in good faith, unaware of the legal restrictions and licensing ramifications.


So how expensive is this Qt licensing anyway? Considerable, but the exact charges are no longer available on the Qt web site, as Trolltech now handles pricing on an individual-by-individual basis. However, last year when pricing was still publicly available, Qt cost anywhere between $1780 (for the Console Edition on a single platform) to $6600 (for the Desktop Edition on all three platforms). Note that these prices are per-developer, meaning that if you have, say, three programmers on your team, you needed to multiply these numbers all by three.


Now that Trolltech chooses not to publicize their current pricing structure, it is presumably no cheaper now than it was then. As this is absurdly too expensive for the typical Basic developer on the Mac, I can recommend KBasic only for GPL-based development projects.



http://www.objective-basic.com/


With the revelation of KBasic's outrageously expensive Qt licensing problem, I contacted Bernd Noetscher, to determine if a similar limitation will exist for Objective-Basic as well. Bernd assures me that there are no Qt licensing issues for Objective-Basic since it uses no cross-platform frameworks at all, only native Cocoa API calls.


A recent update on the Objective-Basic web site includes a change for its expected release from 2nd Quarter 2008 to "2rd/3th Quarter 2008". Still, this upcoming release stands to be the potential for the next killer Basic development environment.



http://www.truebasic.com/


On the True Basic forums, debates continue on whether or not TB fulfills the definition of a dead product. Long time True BASIC user "Big John" Arscott has posted his perspective that "whilst there are users who are actively using the TB language system, that it must be considered as alive". Such usage of the term "alive" is entirely unrealistic, as there are always users of dead products still hanging on. Current owner Peter Nicholaidis never responded to my calls about the future of True BASIC, but Big John was able to meet with him to discuss the matter.


Despite his attempt to put a positive spin on it, the following statement Big John made is quite telling: "The fact that the current owners are not very proactive or over enthusiastic at promoting or marketing TB is a result of commercial pressures rather than a direct policy to bury the language." Apparently, these "commercial pressures" do not even warrant taking the time to update its embarrassingly atrophied web site, including the special offer good "from now until 12/31/2006". "Direct policy" or not, it's clear that no one wants to spend any time or money further developing this sinking ship.


Even amongst those who continue to cling to hope that True BASIC may someday be updated, these true believers already acknowledge that there will never be a Mac OS X release, despite statements made in the negligently deceptive True BASIC F.A.Q. The TB user base continues to shrivel up as both Mac & Windows users lose patience and choose a better product.



Coming Up Next Month: Emulators for Retro-Computers. What does that mean? Find out in 30!


To see a list of previous According to Hoyle columns, visit: http://www.jonhoyle.com/maccompanion



http://www.maccompanion.com/macc/archives/May2008/Columns/AccordingtoHoyle.htm