Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

.NET

Dr. Dobb's Excellence in Programming Award




Every year, Dr. Dobb's Journal presents its Excellence in Programming Award to individuals who, in the spirit of innovation and cooperation, have made significant contributions to the advancement of software development.

The recipient of this year's Dr. Dobb's Excellence in Programming Award is Anders Hejlsberg, a software engineer whose impact on the programming community goes back nearly 20 years. Currently a Distinguished Engineer in Microsoft's developer division, Hejlsberg is best known as author of Borland's Turbo Pascal, the ground-breaking development environment of the early 1980s, and chief architect of its successor, Delphi. After his move to Microsoft in 1996, Hejlsberg became the architect of Visual J++ and the Windows Foundation Classes. Hejlsberg currently works as the chief designer of the C# programming language and is a key participant in the development of the .NET framework.

Living in a world of massive hard disks, huge development environments, and spare-no-expense product launches, it is easy to forget how efficient the software tools of 20 years ago were by necessity. And none were more efficient than Turbo Pascal.

In the early 1980s, Hejlsberg had written a command-line Pascal compiler called "Compass Pascal," which later became "Poly Pascal." Hejlsberg licensed the compiler to Borland International, where a new user interface and editor were added. Because Hejlsberg was still living in Denmark at the time, Borland shipped him the first available 9600-baud modems, enabling him to transmit builds to the Borland headquarters in Scott's Valley, California. Hejlsberg would develop during his day, when California programmers were catching some sleep. The team members would then talk over the phone at the beginning and end of each of their respective working days, and pick up where the other left off.

The result of this frantic development was Turbo Pascal, which shipped on November 20, 1983. As novel as it seems now, Turbo Pascal 1.0 was distributed on a single floppy disk and the total number of files on the disk was 10. In fact, the total disk space used was 131,297 bytes and the size of TURBO.COM including the integrated development environment with compiler, Wordstar-style editor, and run-time library was 33,280 bytes. (Turbo Pascal 1.0 and later versions are currently available for download at no charge from http://community.borland.com/.) When Borland placed its first ads in the November 1983 issue of Dr. Dobb's Journal and BYTE magazines, the response was unprecedented. Borland was on its way.

But it wasn't Borland's marketing (who can forget the "TurboMan" comic strip ads that first appeared in the November 1988 issue of DDJ) that led to Turbo Pascal's success. What was significant about Turbo Pascal was that it was inexpensive ($49.95 versus nearly $500.00 for its nearest competitor), lightning fast (a tribute to Hejlsberg's assembly-language programming talents), easy to learn, and of course, the first integrated development environment.

Until Turbo Pascal came along, writing code meant grabbing an editor from here, a compiler from there, a linker from the operating system, a debugger (assuming you could find one that worked), and using a Make utility to perform all the necessary steps. Sometimes it took as long to figure out how to compile a program as it did to implement the algorithms. Turbo Pascal changed all that. It is in this sense that Turbo Pascal's IDE was revolutionary and altered forever the way programmers worked.

After going through numerous revisions over a 10-year period, Borland turned its Pascal attention to Delphi in the early 1990s. By this time, however, the days of single-handed application and tool development had gone by the wayside — the systems were just too big and the pressures to ship the product too great. For Delphi, this meant that along with coarchitect Chuck Jazdzewski, Hejlsberg was chief architect. (Gary Whizin was also a key member of the Delphi team.) Hejlsberg acknowledged as much in a CompuServe message: "Back in the old Turbo Pascal days, it was possible for one person to write and maintain an entire product. This is no longer the case. Delphi was built by a team." And in fact, when Delphi 1.0 shipped, it marked the largest Borland team ever associated with a Pascal project. Throughout it all, Hejlsberg never saw himself as a computer scientist, but rather an engineer who, according to Jazdzewski, "is one of the best programmers I have ever met. The code he wrote for us was phenomenal."

Still, after 13 years in Scotts Valley, Hejlsberg was ready for new adventures — and Microsoft came calling. At Microsoft, he has continued in his role as architect, first with Visual J++ and the Windows Foundation Classes, and more recently with the C# programming language and Microsoft's .NET framework.

At Hejlsberg's request, and in his name, Dr. Dobb's Journal is pleased to make a grant of $2000 to a computer science educational program of his choice. Please join us in honoring Anders Hejlsberg, who once again reminds us that a mix of technology, innovation, vision, and cooperative spirit continue to be fundamental to advancement in software development.

Current members of Dr. Dobb's Excellence in Programming hall of fame include:

  • Alexander Stepanov, developer of the C++ Standard Template Library.

  • Linus Torvalds, the prime mover of the Linux operating system.

  • Larry Wall, author of Perl.

  • James Gosling, chief architect of Java.

  • Ronald Rivest, educator, author, and cryptographer.

  • Gary Kildall, a pioneer in the areas of operating systems, programming languages, and user interfaces.

  • Erich Gamma, Richard Helm, John Vlissides, and Ralph Johnson, authors of Design Patterns: Elements of Reusable Object-Oriented Software.

  • Guido van Rossum, creator of the Python programming language.

  • Donald Becker, Linux networking contributor and chief investigator of the Beowulf Project.

  • Jon Bentley, computer science author and researcher.


Jonathan is editor-in-chief of DDJ and can be contacted at [email protected].


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.