Bedrock (framework)

Bedrock was a joint effort by Apple Computer and Symantec to produce a cross platform programming framework for writing applications on the Apple Macintosh and Microsoft Windows platforms. The project was a failure for a variety of reasons, and after delivering a developer preview version the project was abandoned in late 1993.

Background
Bedrock started as an internal effort by Robert Bierman under Gary Hendrix at Symantec in the early 1990s. At the time many of Symantec's products ran on both Mac and Windows, and what would become Bedrock was originally an internal set of tools intended to ease the effort of keeping both platforms up to date.

In 1991, Apple released the 3.0 version of its own development environment, MPW, along with its own object framework, MacApp. MPW was a command-line driven system that had not been competitively maintained. MacApp 3.0 is a major upgrade from previous versions, being ported from Object Pascal to C++. This left it largely incompatible with the previous version, and caused considerable consternation in the Mac developer community.

Symantec was also the supplier of the then-premier development platform on the Mac, Think C. This is a GUI-based environment which included an application framework of its own, TCL. Think C/TCL had garnered a considerable following in the Mac community, especially during the MacApp 3.0 era. To remain competitive, at some point MPW would have to be replaced with something much more similar to Think.

Throughout this period, Microsoft Windows was first starting its rise in popularity. Cross-platform development systems had been developed, but to this time they tended to be relatively simple, delivering least-common-denominator applications. A cross-platform SDK that could deliver first-rate solutions is one of the industry's supremely idealistic goals at the time.

Concept
The first mention of a collaboration between Apple and Symantec was contained in the flier for WWDC '92. The companies talked about it very briefly at the show, calling it "Cross Platform Framework" and mentioning that more would be revealed at the PC Expo show in June. This was greeted with considerable interest in the press.

At the MacWorld show they announced the concept—not yet a real product—as Bedrock. Bedrock would first be released on the Mac and Windows, with plans to expand it in the future to support Unix, OS/2, Windows NT, and Pink—the OS originated at Apple and now developed at Taligent. It was expected to become "the most direct path for migration" from System 7 to Pink. Allowing a single application source code base to target all of these platforms, Bedrock was intended to become the total successor to MacApp. Seven MacApp engineers at Apple were adding MacApp 3.0 technology and functionality. Even though Bedrock did not yet exist as a product, MacApp was officially deprecated with a maintenance release of 3.0.1, unless Bedrock's schedule would eventually slip.

Bedrock development was intended to be supported on Macintosh by Apple with an MPW replacement, and as an updated Think C from Symantec. Windows development was intended to happen via Symantec's (Zortech) C++ on Windows. Although not officially supported, the system would be deliberately written to be able to work with any C++ compiler.

Although Bedrock was a joint project, development was being carried out entirely by Symantec because its credible expertise in Windows development was essential to Apple's commitment to a more open system. Developers started commenting about the dangerous position this placed Apple in, leaving their future development platform in the control of a third party. Furthermore, Symantec's CEO had apparently given up on the Mac platform, and had publicly announced that Windows was the future of the company.

Difficulties
Throughout this period Apple was also working on OpenDoc, positioning it as a unique document-centered technology that led to a better user experience than monolithic applications. Apple was particularly effective in "selling" the OpenDoc concept to end users and developers, and the obvious contradiction between working on Bedrock while claiming classic applications were outmoded led to infighting between the project teams within Apple.

Meanwhile, Symantec was having considerable problems of its own. Late in 1992, numerous members of the Bedrock team, including the head of development, left the company. This led to press accounts that the project was purportedly "stone cold".

A developer preview was delivered in early 1993 that includes several demo apps built using the system. These apps look nothing like either Mac or Windows programs, using custom UI widgets for many common tasks like Open File dialog boxes. The demo applications also seem buggy and lacking any visual polish, including spelling and grammar mistakes throughout. The developer preview was released with claims that the product would ship late in 1993, but that this coming release would not yet be of "code quality", and that a true final release could not be expected until some time in 1994.

By the end of 1993, with no further release in sight, rumors abounded of Apple's dissatisfaction with the project and especially with its lack of OpenDoc support. Even in public, Apple was questioning "how we can fit Bedrock into the OpenDoc environment".

In late January 1994, Ike Nassi, Vice President of the Development Products Group within AppleSoft, announced Apple's renewed commitment to use the 18-month-old Bedrock for all native and crossplatform development. He announced an expanded scope to "make Bedrock the tool of choice for OpenDoc part development"—though neither Apple nor Symantec would provide any details on how this would be done, and they didn't know whether the first Bedrock release would include OpenDoc functionality at all. Computerworld reported that "most [developers] said they have not seen much progress on Bedrock", though it was being beta tested and a partial low-level component release was expected in the first half of 1994.

Discontinuation
Apple VP Ike Nassi recalled that once he finally read the business contract between Apple and Symantec governing Bedrock, he emphatically described it as "a terrible, terrible contract" and demanded its immediate termination. Though lobbied "very heavily" in his office by Symantec Vice President Gene Wang and CEO Gordon Eubanks, Nassi ordered Apple to pay a fee to cancel it.

On January 24, 1994 Apple and Symantec finally officially stated that Symantec was no longer actively developing Bedrock. Instead, Symantec granted Apple a "worldwide, perpetual license to distribute and further develop Bedrock. Additionally, Apple granted Symantec a worldwide perpetual license to use specific Apple technology in future Symantec products." However, all mention of Bedrock quickly disappeared from both companies' public statements.

Having relied on Bedrock to be the replacement for MPW and MacApp, Apple had done little development on its own platform. By 1994 this left the company with a hopelessly outdated development platform. Bedrock's failure amid the PowerPC efforts was also ill-timed. Symantec had also done little work with Think C during this period, especially the TCL libraries. This led to the rapid switch from both MPW and Think C to the more modern and PPC-native Metrowerks systems.