Ссылки дать не могу, т.к. пришло по почте.
Инетесрное интервью с главным архитектором .Net и C# Андерсом
Хейлсбергом было опубликовано в журнале "Домашний компьютер". Для меня
стало новостью, что Андерс был автором компилятора Turbo Pascal и
работал в Borland
Андерс Хейлсберг (Anders Heilsberg) -- человек, во многом определивший ход компьютерной
истории, один из создателей таких популярных среди программистов вещей, как Turbo
Pascal, Borland Delphi и Microsoft C#. Так, например, в России до самого последнего
времени студентов обучали основам программирования именно на примере Турбо Паскаля.
Книжки по нему до сих пор пользуются популярностью и продаются во всех магазинах,
торгующих компьютерной литературой. А Delphi -- непревзойденная по качеству исполнения
среда визуального программирования, c которой с равным успехом может работать
крутой профессионал и новичок, только осваивающий азы этого дела. Не без участия
Хейлсберга создавалась и платформа Microsoft.NET -- в этом проекте главным архитектором
был все тот же Андерс. Как начиналась карьера этого талантливого программиста
и что ждет в будущем средства разработки? На эти и другие вопросы нам отвечает
сам Хейлсберг.
Андерс, расскажите немного о себе.
-- Я родился в 1960 году в Дании. Мое детство прошло в пригороде Копенгагена.
Учился на инженера по электротехнике в Техническом университете. В 1987 году
переехал в США. Живу в Сиэтле. С 1983-го по 1996-й работал в компании Borland,
а теперь -- в Microsoft.
Над чем вы сейчас работаете?
-- Официально моя должность называется Distinguished Engineer4. Я по-прежнему
главный архитектор С# и трачу достаточно много времени на проектирование .NET
Base Class Libraries. Кроме того, работаю и как консультант.
Как начиналась ваша карьера?
-- В 1979 году я основал в Дании компьютерную компанию PolyData. Это было время,
когда персональных компьютеров еще не существовало. Мы продавали компьютерные
комплексы и писали для них программное обеспечение. Я написал ассемблер, дизассемблер,
небольшую операционную систему и несколько расширений для Microsoft ROM-Basic5.
Моим самым первым большим проектом стал компилятор с языка Паскаль и редактор,
который мог заменить ROM-Basic. После этого была еще одна реализация Паскаля
для операционной системы CP/M -- PolyPascal. В 1983 году мы объединились с ребятами,
которые только что основали компанию Borland; они лицензировали наш компилятор
Pascal, добавили туда собственный редактор и назвали все это Турбо Паскаль. Я
помню, как думал, что они сумасшедшие: эти парни продавали новый продукт по цене
49 долларов 95 центов, в то время как он стоил 500 долларов! Но достаточно быстро
выяснилось, что я ошибался -- Турбо Паскаль стал очень популярным. Мы продали
столько его экземпляров, ско
лько в начале было невозможно и представить.
Мы знаем, что вы создали компиляторы Turbo Pascal, Borland Delphi и C#, спроектировали
Borland VCL6 и Microsoft.NET7. Это полный перечень или есть еще что-то, чего
мы не знаем?
-- Пожалуй, вы назвали практически все. Я написал огромное число полезных программ.
И совсем немного -- бесполезных. Когда-то давным-давно я написал компилятор Турбо
Паскаля и библиотеки для него. С течением времени моя команда росла, и я все
больше и больше занимался архитектурой ПО. Так что, если говорить о Delphi, хотя
я и написал достаточно много кода VCL, конечный продукт -- это разработка целой
команды. Что же касается С#, я был главным архитектором языка. Команда состояла
из четырех человек. Мы встречались на два-три часа три раза в неделю.
Когда полтора года назад Microsoft выпустила новую платформу .NET и инструменты
разработчика VisualStudio.NET, было очень много споров по поводу будущего этих
новинок и их конкуренции с Java. Сейчас страсти во многом улеглись. Как сегодня
вы оцениваете свою работу?
-- Да, пожалуй, я очень доволен и .NET Framework и VisualStudio.NET. Думаю, мы
поступили правильно, создав абсолютно новую платформу. Это подтверждают и отзывы,
поступающие от клиентов. Людям нравится производительность. Когда клиент говорит
тебе: <<Я никогда не вернусь к своим прежним инструментам програмирования>>, --
понимаешь, что все сделано правильно. Конечно, мы работаем над улучшением некоторых
частей .NET, ведь индустрия не стоит на месте. Мы создали хороший фундамент для
Web-сервисной платформы, но предстоит еще многое сделать: теснее объединить языки
программирования и базы данных. Также есть интересные идеи по улучшению инструментов
из VisualStudio, например code refactoring8. Думаю, у .NET и C# -- светлые перспективы.
Некоторые возможности, реализованные в C#, впечатляют. Если вас это интересует,
советую обратиться к www.csharp.net/learn/future.
Что вы думаете о будущем средств разработки?
-- С тех пор, как я занимаюсь компьютерами, мы только и делали, что поднимали
уровень абстракции все выше и выше. Уже пройден путь от машинного кода до ассемблера,
далее к С, потом С++ и теперь до среды, управляющей исполнением кода, такой как
.NET или Java. Пока я не вижу никаких признаков того, что этот список нельзя
продолжить. На мой взгляд, интересно, сможем мы или нет поднять уровень абстракции
выше, чем императивное программирование. С другой стороны, в ближайшем будущем
такой распространенный стиль программирования, как функциональный9, будет по-прежнему
широко использоваться. Мы продолжаем искать способы, чтобы перевести мощность
процессора в производительность. И платформа .NET -- хороший тому пример.
Андерс, кем вы сам себя считаете: программистом, проектировщиком, архитектором,
теоретиком?
-- Думаю, всем понемногу. Хотя мне приходится заниматься высокоуровневым проектированием,
я все равно время от времени пишу код, чтобы поддерживать себя в форме.
Какой у вас компьютер?
-- Я -- мобильный человек. Уже десять лет, как я все делаю на ноутбуках. В данный
момент я использую ноутбук от Compaq под управлением Windows XP.
У вас есть сертификат системного программиста или архитектора от Microsoft?
-- Нет.
Знакомы ли вы с разработчиками других языков? К примеру, со Строуструпом, Ритчи
или Гослингом10?
-- Лишь со Строуструпом11. Мы оба датчане.
А вы довольны своей жизнью?
-- Очень. Я часто говорю людям, что у меня никогда не было настоящей работы. Компьютеры
всегда были моим хобби. И мне очень повезло, что я зарабатываю себе на жизнь
с помощью хобби.
4 В России нет аналога этой должности. Пожалуй, наиболее точно можно перевести
ее название, как <<заслуженный инженер>>.
5 В первых моделях IBM РС, если операционная система не загружалась по каким-то
причинам, на компьютере, тем не менее, можно было работать, получив доступ к
системе через встроенный в ПЗУ (ROM -- Read-Only Memory) язык программирования
Бейсик. Интерпретатор этого языка был написан собственноручно Гейтсом. -- Прим.
ред.
6 Visual Component Library -- библиотека визуальных компонентов, основная составляющая
среды программирования Delphi. -- Прим. ред.
7 Платформа Microsoft.NET -- совокупность средств для создания Интернет-приложений,
альтернатива языку Java от фирмы Sun Microsystem. -- Прим. ред.
8 Средства автоматического внесения в код различных изменений.
9 В России, с подачи Дейкстры, для обозначения этого стиля чаще употребляется
термин <<процедурное>> -- видимо, как раз из-за популярности Паскаля, в котором
существуют отдельно процедуры и функции, а в более распространенном среди профессионалов
С -- только функции. -- Прим. ред.
10 Разработчики языков программирования С++, С и Java соответственно.
11 Интервью с Бьярном Строуструпом см. <<ДК>> #10, 2002.
... << RSDN@Home 1.1.3 stable >>