Back in 1998 when I was experimenting with Cross Dictionary Dexterity Development in version 4.00 and version 5.00, I was contacted by Dave Gaboury from Great Plains in Fargo. He was currently developing cross dictionary triggers for Dexterity 5.10 and wanted my feedback and help testing the new Trigger_ Function Library commands he had created. This was the start of my friendship with Dave Gaboury.... one of the fathers of Dexterity, and hence Dynamics.
While working with Dave (and Andrew Ingalls) on this new functionality in Dexterity and a few bug fixes, I found out that Dave was the longest tenured employee at Great Plains. We could not say oldest (he did not like that), but he was definitely the longest serving. Well sadly, at the end of February 2012, after 31 years employment by Great Plains/Microsoft, Dave has decided it is time to move on.
So this is the End of an Era as we say farewell and good luck in the future to Dave Gaboury.
When I found out that Dave was leaving, I asked if he could provide some memoirs of his time at Great Plains and he graciously provided the following story about the creation of Dexterity and Dynamics.
Here is part one. Read and Enjoy.
I started working at Great Plains Software in June of 1981. It was actually called Great Plains Computers at that time. It wasn’t until I and a small group of software developers wrote enough software that the focus of the business changed. It was a different world back then. No Microsoft Windows, no Macintosh, no Internet, no local area networks, not even an IBM PC yet. But we launched a product called the Great Plains Accounting Series on the Apple /// computer and later migrated it to MS-DOS and the Mac OS. Throughout the 1980’s we cranked out new modules and new versions, gradually taking advantage of new technology as it came along.
By 1988, it was clear that the industry was moving to graphical operating systems and we had to start thinking about how we’d get our products there. Great Plains formed a small research group to design a new platform for building graphical business software. The group was led by Bob Gifford, the company’s VP of Development, and consisted of Neal Trautman, Steve Nicolai, Craig Carlson, Lynn Thorp, an intern named Lung-an Ho, and myself. Our group was sequestered away on the second floor of the building, away from the rest of the development team. It was considered a high security project, so that area of the building had a different security code than the rest of the building. The exclusive nature of the project lead to much speculation and countless jokes. To play along with the role of a “research team”, we wore white lab coats at work just for fun. They actually came in handy on days when the building was cold.
The codename of the new project was “EB”. Some thought it meant “Elvis’ Brother” because the product was going to be so cool, but it stood for “Even Better”. I think Margaret Zeren might have coined the name. It was an ambitious project that would encompass all of the framework components needed to build a business app, including UI, database integration, memory management, a new scripting language, reporting, and test tools. Some of the early components were named after the initial development team. The core layer of the framework was known as the “TNT” layer, which stood for Trautman-Nicolai Toolkit. Many of the core APIs were named with a “TNT_” prefix. Steve worked on the grammar and compiler for the new scripting language, so it was named after him. “SanScript” stood for Steve A. Nicolai Script. My focus was creating the metamodel and development tools.
It was a confusing time in the history of graphical operating systems. The Mac OS was the most mature product but it’s use as a business platform was uncertain; Microsoft had just released version 2 of Windows but it still had very limited capabilities; and IBM was about to release a graphical front end (known as “Presentation Manager”) to its OS/2 operating system. Microsoft and IBM were still buddies back then. Steve Balmer visited Great Plains at that time and actually encouraged us to write for OS/2, claiming that Windows would support the same APIs and it would be a seamless migration for us later. With all of the OS uncertainty, we designed EB to be multi-platform. The TNT layer would resolve the platform variations and the rest of the framework, as well as the application, would be platform independent. The Mac had the most robust development tools available at the time, so we used Macs for writing the bulk of our code. Only the Windows-specific code in the TNT layer had to be written with DOS/Windows tools. We used HyperCard on the Mac to do early UI mockups.
Expectations for EB were high and schedules were aggressive, but the work was slow. We had a small team and were building everything from scratch. We assumed cross-platform use from the start, which meant we couldn’t use many off-the-shelf components because they were platform specific. We focused on the c-tree database and r-tree reporting engine from FairCom because we could get source code and make any cross-platform changes we needed. We had periodic reviews with the Great Plains management team to show them our progress and answer the perennial question “when will you be done?” We had a different answer each time. People came and went off the EB team. Craig and Neal left the company. Tim Brookins joined the group and took on some nasty problems, including the scrolling window (grid) control, which had vexed Neal for a considerable time. Doug Stroh joined the team and became our report writer guy, building our own output layer for the r-tree reporting engine. Tom Irsfeld joined the team for a short while to work on a variety of utilities we needed. As we crept closer to having a usable platform, Karl Kamrud joined the team to write sample applications with EB to see if it was up to the task. Karl had one cassette tape with Christmas music that he played continuously from November until March. We finally had to take it away from him.
Make sure you read the end of the story, the post End of an Era: Farewell Dave Gaboury & the Creation of Dexterity- Part 2 will be available on 29-Feb-2012.