$bbtitle
Apple Stock: 194.34 ( +0.3099 )
RSS RSS Twitter Twitter
Search:
AppleInsider.com Archives News Bytes Reviews Anonymous Mailer Submit Story AppleInsider Forums Mac Prices Polls Advertise on AppleInsider Contact AppleInsider
Save up to $280 on new MacBook Pros and up to $150 on brand new iMacs with special coupons: Mac Pricing Guide updated Nov 6th (Find the best prices on Macs).
Thursday, November 1, 2007

An Introductory Mac OS X Leopard Review: Developer Tools

By Prince McLean

Published: 08:00 AM EST

Among all of the new and improved applications Apple delivers to users in Mac OS X 10.5 Leopard, some of the most important are those that developers can use to build applications of their own. If you're not a hard core programmer, Leopard also offers a variety of more accessible tools: Automator for scripting, DashCode for building widgets, and Quartz Composer for creating audio and visual plugins, screen savers, image filters for iChat and music visualizations for iTunes. Here's the trail Apple's developer tools have followed, and how Apple nearly killed itself several times by not providing adequate tools in the past.

The Early Origins of Apple Developer Tools

In the late 70s, Apple founder Steve Wozniak wrote the original BASIC interpreter for the Apple II. Like most early software, it originally shipped on audio tape and required tedious loading from a data cassette player. Once loaded, users could write their own programs. The ability to write those software programs contributed a lot of value to systems, as the base system couldn't really do anything itself. In 1979 VisiCalc arrived and delivered a the first really practical application for buying a home computer.

Wozniak never got around to delivering support for floating point math in his "Apple BASIC," so the company licensed a BASIC interpreter from a tiny operation from New Mexico called Microsoft. That product was called Applesoft BASIC, and Wozniak's earlier version became known as Integer BASIC.

Microsoft's version was very slow, creating a demand for an additional BASIC compiler, which Microsoft also supplied as a solution to the problem. Relying on Microsoft for its developer tools turned out to be a catastrophic problem for Apple, which signed itself into an eight year contract covering Applesoft Basic.

Leopard Dev Tools


Apple's MacBASIC Disaster

As Apple's Macintosh project was beginning to take shape in 1981, the company decided that it should deliver its own programming environment for the Mac rather than again delegating the task away to a third party. Apple feared that outsiders might not "get" the new Mac user interface that it had been investing so much research and development into perfecting.

Microsoft's contract for Applesoft BASIC expired in 1985, just as Apple was preparing to release its own MacBASIC. Sure enough, when Microsoft delivered its own BASIC for the Mac, it used a console interface rather than taking advantage of the Mac's new graphical environment.

After discovering Apple was planning to release its own, superior MacBASIC, Bill Gates was livid. His Applesoft BASIC was destined to be obsolete within a few years, but he also knew Apple was still making most of its profits from Apple II systems. Gates exploited that fact to tie the renewal of the ongoing Applesoft BASIC contract into a deal where Microsoft would buy Apple's MacBASIC for $1 and sandbag it.

Gates also tied in two years of exclusive development of the new Excel for Macintosh but then demanded a perpetual license of Apple's Mac interface for use in Windows 1.0. Apple CEO John Sculley agreed to the deal, and the result was that Apple was again left without control over its own development tools, in addition to now being unable to stop Microsoft from eventually appropriating the entire Mac desktop over the next decade. Two years later, Microsoft ported Excel for Windows and Applesoft became largely obsolete; however, Apple end up stranded with poor development tools from Microsoft while giving away its unique technologies to the company.

Andy Hertzfeld notes in Folklore.org: Macintosh Stories: MacBasic that beta versions of MacBASIC--distributed before Microsoft canned it--ended up being widely pirated, and two books on MacBASIC were published and sold well for years after that, despite never being officially released as a commercial product.

Mac vs Lisa in Application Development

While MacBASIC was intended to be a consumer level development tool, Apple also delivered tools geared toward professional developers. These were partly inherited from the Lisa, which had shipped a year prior to the Macintosh with the Lisa Workshop, a complete development environment, albeit based in a text console environment.

Lisa also shipped with a full productivity suite called the Lisa Office System 7/7, which included a the LisaWrite word processor, LisaCalc spreadsheet, LisaGraphs for charting, LisaList for outlines, LisaProject for task scheduling, LisaDraw for art, and LisaTerminal for serial communications.

The original Mac only shipped with MacWrite, MacPaint, MacDraw, MacProject, MacTerminal, and a beta of MacBASIC. It lacked the full Lisa suite, in part because Apple didn't assign the same resources to the smaller Mac team, and in part because it was trying to encourage more third party support, and didn't want to step on the toes of the very developers it was courting. In large part, that again meant catering to and dependence upon Microsoft, which shipped Word and Excel shortly after the Mac's release as its first significant third party applications.

The Mac Toolbox and Human Interface Guidelines

In order to make the Mac easier to program than previous generations of computers such as the Apple II or the IBM PC, Apple included libraries called the Mac Toolbox that made it easier to follow the conventions of the Apple Human Interface Guidelines, and gave applications a lot of common functionality for free.

For example, prior to the Mac every application managed its own printer support; individual word processors came with support files for a specific list of printers. On the Mac, a unified printing interface made installing a printer a system-wide feature that enabled all apps to print using the same dialog box. How everything worked was defined in great detail in "Human Interface Guidelines: The Apple Desktop Interface," (excerpt below) which defined details we now take for granted as obvious.

Leopard Dev Tools


Apple's guidelines also defined standard, system-wide key combinations for all applications, so uses didn't need to learn a different set for each application they bought. Standardized key combinations, such as Command + O to open a file, had no equal in the mixed up world of DOS, where every app invented its own key combinations, as noted in How Apple Keyboards Lost a Logo and Windows PCs Gained One. For example, to simply open a file:
  • WordPerfect used the command F7 + 3.
  • WordStar used Ctrl + K + O.
  • Lotus 1-2-3 used / to open the menu, W for Workspace + R for Retrieve.
  • Microsoft Word used Esc to open the menu, T for Transfer + L for Load.

The Macintosh Programmers Workshop and HyperCard

In 1985, Rick Meyers, Jeff Parrish, and Dan Smith began work at Apple for the successor to the Lisa Workshop for the Mac, called the Macintosh Programmers' Workshop. It shipped in late 1986.

MPW (below) supported object-oriented Pascal (and later C, and C++ compilers licensed from Lucid under the name MrC/MrCpp) and a 68k assembler, and shipped with a separate debugging tool. Apple's MPW was priced sky high, well out of the range of hobbyist programmers.

Leopard Dev Tools


In order to offer a more accessible development environment, Bill Atkinson, Apple's developer behind QuickDraw, created HyperCard. It made the task of building a scripted presentation easy even for non-technical users. Atkinson insisted that Apple bundle the program for free, and this led to it being widely used and wildly popular from its release in 1987 through the mid 90s.

Leopard Dev Tools


In 1991's Mac System 7, AppleScript appeared as a new system service to allow any application to support a scriptable dictionary of actions that could be triggered by an external scripts. AppleScript was derived from the HyperTalk scripting language of HyperCard.

Leopard Dev Tools

9 Comments ] 
  Print ] [ Story Link ] 


Pre-Order VMware Fusion 3
RSS
RSS
RSS
Mac Poker players can play Full Tilt Poker for Mac and get 100% to $600 free with bonus code MP600, courtesy of Online Poker Mac
AppleInsider Features
Hot Forum Topics

Recent Articles
Doom game creator suggests Apple embarrassed about iPhone gaming
Report: Apple to launch Verizon iPhone in Q3 2010
Apple unveils holiday shopping in-store pickup option
Apple's Broadway store to open Saturday, Nov. 14
Bizarre lawsuits connect Apple with Sarah Jessica Parker, Lil' Wayne
Apple predicted to countersue in legal battle with Nokia
Windows 7 tops Vista software sales, lags behind in hardware
Report: Apple testing RFID swipe support in iPhone prototypes
Inside Google's Android and Apple's iPhone OS as core platforms
Apple looks to hire new iPhone OS security manager
Apple investigating 'Grab & Go' simplified cross-platform sync
Apple co-founder Steve Jobs named Fortune 'CEO of the Decade'
Review roundup: Motorola Droid, Verizon's first Android handset
Apple's latest 10.6.2 beta packs fixes for VMWare, iMacs, Apple TV
Latest Snow Leopard build resurrects Atom compatibility
Bell, Telus provide new iPhone competition in Canada
'Art project' video game attacks Apple Mac machines
Hacker cracks Apple's latest iPhone 3GS security measures
The Beatles go digital with apples, but still not Apple's iTunes
Apple announces App Store offerings top 100,000
Apple launches iTunes Music Movies with exclusive content
Parallels Desktop 5 for Mac claims speed superiority
AT&T brings lawsuit against Verizon over 'Map' ad campaign
Canalys Q3 2009: iPhone, RIM taking over smartphone market
Hit-or-miss site claims 4G iPhone part; French exclusivity ends
Despite disappointing China debut, iPhone's 2010 predicted to be strong
Philadelphia's first Apple store moves closer to reality
Exclusive look at Apple's new iPod touch-based EasyPay checkout
China Unicom gains 5,000 iPhone subscribers from launch
iPhone makes enterprise market inroads for Apple
Apple pitches $30-a-month iTunes TV subscriptions - report
Apple's iPhone sees tepid sales debut in China
Apple's 2010 capital expenditures could signal major investments
Apple rumored to disable Atom support with Mac OS X 10.6.2
Apple advertising guru says he's 'not going anywhere'
First Look: Apple's 27" big screen iMac
Last chance this year to save an extra 3% on iMacs, white MacBooks
Visionary behind Apple's '1984' advertisement steps down
Flash playback issues reported on Apple's new 27-inch iMacs
Apple expands school initiative with Atlanta MacBook program

AppleInsider Market Place

Sell your Laptop - working or not. Free shipping.: Get an instant online quote and sell your laptop today !

Believe in Office: Save Up To 25% on Office 2004 For Mac. Visit Our Site for Details!

IBackup - SMB Online Backup: IBackup is the preferred online storage and backup service of choice for SMBs for its ease of use, security and value. Offers automated backup and restore, file selection and securiy.

Download free software - everyday updated freeware files

 
Advertisements








AppleInsider RSS Feed
AppleInsider © 1997-2008
Please review our Privacy Policy.
Written/Edited/Compiled by the AppleInsider Staff.