Что нам стоит дом построить?
Что нам стоит дом построить?
Однажды (около четырех лет назад) в НИИ при Московском университете, где мы тогда работали, появился высокий представительный мужчина с вальяжными манерами, окладистой бородой, большой лысиной и выразительными глазами навыкате.
Ничего удивительного в этом не было. Иностранцы посещали нашу "контору" через день, а то и чаще; каждая лаборатория либо выполняла какие-нибудь работы по западным заказам, либо изо всех сил старалась их получить. Это было тяжелое время: реальная зарплата истончалась с каждым месяцем, работы и каких-либо перспектив совершенно не было, немногочисленные предложения от государственных организаций носили отчетливый оттенок идиотизма и сиюминутности и подкреплялись безумно мизерным финансированием. Большие ЭВМ, когда-то работавшие круглосуточно и обслуживавшие весь университет, стояли; некоторым уже был подписан смертный приговор?—?золотосодержащие детали оказались более привлекательными, чем машинное время… НИИ медленно умирал и потихоньку пустел.
Каждому приходилось самому искать дополнительный приработок. Правда, возможности были. Преподавали в многочисленных тогда учебных центрах совместных предприятий, писали для них учебные пособия, а то и книги, подрабатывали в коммерческих фирмах. Иностранные представители, которым наш директор с гордостью показывал "компьютерный класс" с десятком тайваньских XT, вежливо выслушивали его объяснения, сдержанно кивали и фотографировали со вспышкой, словно доисторическое чудовище, карточный перфоратор Juki, стыдливо задвинутый в дальний угол. Их предложения о совместных проектах (по крайней мере, доходившие до нашего отдела) либо носили несколько авантюрный и несолидный характер, либо были откровенно неинтересны. Несмотря на трудности и безвременье, мы все-таки ощущали себя системными программистами, и как-то не очень хотелось заниматься рисованием окон и конструированием экранных форм или переводом математических библиотек с одного языка программирования на другой. К тому же деньги предлагались оскорбительно скромные.
Однако то, что говорил высокий солидный бородач (назовем его Вальтер Деккер), звучало как откровение. Предлагалось разработать (не адаптировать, не доделать, не участвовать в разработке, а самим сделать from scratch?—?с нуля!) компилятор (компилятор!) с языка Си++ (!) для одной европейской (для определенности пусть для бельгийской) софтверной компании! Причем не какой-нибудь препроцессор в Си, как известный cfront, а честный прямой компилятор переднего плана, генерирующий низкоуровневый промежуточный код, используемый фирмой в системе программирования, в составе которой компиляторы Си, Модула-2 и Фортран.
Следует объяснить, что автор со студенческих лет питает к проблематике компиляции языков программирования особую страсть и имел к тому времени некоторый опыт как в проектировании языков (в частности, языков дискретного моделирования), так и в реализации различных языковых систем, включая (страшно сказать) системы построения компиляторов. Этот опыт целиком относился к прежним временам, а проекты, за немногими исключениями, носили полуинициативный характер, будучи поддержанными только непосредственным начальством. Проекты не мешали текущей работе в "ящике" (правильнее сказать, текущая работа не слишком препятствовала этим проектам). Поэтому предложения бельгийца казались невероятной удачей и в то же время справедливой наградой за долгие годы верности избранному направлению.
Фирма хотя и не обладала именем, звучащим в мировом масштабе, но казалась вполне респектабельной: она существовала уже более 25 лет, что для софтверной фирмы, согласитесь, немало, участвовала в нескольких общеевропейских проектах; ее продукты (в том числе, собственная коммерческая реализация UNIX) имели не одну тысячу пользователей. Так что желание дополнить свою систему программирования новым мощным языком выглядело вполне логичным.
Любителям разгадывать псевдонимы и умолчания сказанного вполне достаточно, чтобы узнать страну, компанию, да и ее представителя.
Первый настораживающий момент (хотя то, что нам следовало тогда насторожиться, мы поняли гораздо позже) прозвучал вскоре после начала переговоров. Когда речь зашла о составе команды и предполагаемых сроках, то шеф, профессор Владимир Александрович Сухомлин, сам имеющий высокую квалификацию и немалый опыт подобных работ, не менее нашего опьяненный перспективой настоящего дела, немедленно ответил: три разработчика за один год. Сейчас мы понимаем, что здесь насторожиться следовало бельгийцам, уж конечно, прекрасно знающим, каковы реальные трудозатраты подобных разработок: не имеют ли они дело с неопытными авантюристами? Однако они просто спросили: не очень мало? Тогда шеф, сделав для солидности паузу, сказал: ну ладно, год и четыре месяца.
Однажды в эхо-конференции по языку Ада?—?comp.lang.ada?—?прозвучал вопрос от некоего молодого человека по имени Mайк Уайт. Этот замечательный парень из Массачусетса написал примерно следующее: вот на Макинтошах нет приличного компилятора для новой редакции Ады, так, может, я бы его сделал? Сколько примерно это заняло бы времени? Вопрос звучал слишком наивно, да и имя сильно смахивало на псевдоним, так что это вполне можно было бы принять за провокацию. Правда, говорят, американцы вообще довольно простодушный народ…
Что тут поднялось! Крупнейшие специалисты по языку Ада, мировые знаменитости вроде Роберта Девара всем своим весом (кто его видел, тот поймет мою иронию) обрушились на бедного Майка. "Вы сумасшедший! Вы не представляете, что такое сделать компилятор! Вы плохо изучали в университете курс по компиляции языков! Вы никогда не доведете этот проект до конца! На это требуется минимум 25-30 человеко-лет!" Тот, кажется, несколько ошарашенный этим тайфуном, растерянно отписывался: "Да… теперь я понимаю… это невозможно… лучше портировать GNAT на Макинтош… А может, мы с кем-нибудь скооперируемся и вместе все-таки попробуем?.."
Как знать, если бы этот американский Миша Белов не наткнулся тогда на столь суровую и дружную отповедь, быть может, он сейчас с парой приятелей уже заканчивал бы свой компилятор? Хорошо известно, что очень многие достойные проекты (примеры известны всем) выполнялись предельно малыми силами. И если бы мы, подобно Майку, перед тем как начать работу, спросили бы в comp.lang.cpp: друзья, а получится у нас компилятор?—?втроем за год?-- почти наверняка получили бы аналогичный шквал критики.
Тогда мы об этом не думали. Конечно, мы знали Си++ только как пользователи, сам язык еще не приобрел своей теперешней монструозности, да и работа казалась настолько заманчиво-интересной и в то же время ясной, что инстинктивно хотелось заинтересовать собой фирмачей, не оттолкнув их слишком большими сроками. Но они-то, они?—?сделавшие и UNIX, и серию компиляторов, замахивающиеся на еще более амбициозные проекты, казалось, собаку съевшие на управлении программными разработками,-- как они могли не насторожиться?
Они не удивились. Они сказали: "Хорошо, пишите план на полтора года".
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
2.7 От какого наследства нам не стоит отказываться?
2.7 От какого наследства нам не стоит отказываться? Виктор Вагнер [18] противопоставляет «рыхлости» модели WIMP, пусть и целостной метафорически, концептуальную целостность командно-строчного интерфейса, основывающуюся на четырех принципах:универсальности формы
2.4. Стоит ли переходить с FAT32 на NTFS?
2.4. Стоит ли переходить с FAT32 на NTFS? Всё зависит от того, с какой целью вы используете компьютер, и сколько у вас оперативной памяти. Следует учесть, что NTFS работает несколько медленнее чем FAT, из-за дополнительно загружаемых сервисов и её системы безопасности. Если у вас мало
«Инфобизнес: как построить полноценную систему продаж» /На основе выступления Александра Круглова/
«Инфобизнес: как построить полноценную систему продаж» /На основе выступления Александра Круглова/ Если вы сейчас находитесь на начальном уровне, если у вас еще нет инфобизнеса, то, изучив этот раздел, вы поймете, куда двигаться, куда расти, к чему стремиться.Ваша основная
Сколько стоит контекстная реклама
Сколько стоит контекстная реклама Чтобы начать свою рекламную кампанию в сервисах контекстной рекламы, не обязательно иметь большой бюджет. Попробовать свои силы, разобраться с принципами работы и основными инструментами можно, имея всего 300 руб. Это минимальная сумма
2.7 От какого наследства нам не стоит отказываться?
2.7 От какого наследства нам не стоит отказываться? Виктор Вагнер[80] противопоставляет «рыхлости» модели WIMP, пусть и целостной метафорически, концептуальную целостность командно-строчного интерфейса, основывающуюся на четырех принципах:универсальности формы
Сколько стоит пиратство?
Сколько стоит пиратство? Автор: Павел ПротасовВопрос о так называемом ущербе от пиратства является одной из важнейших частей агитации за лицензионный софт и одновременно частью другого, более общего – об оценке стоимости так называемой интеллектуальной собственности.
Действительно тайная переписка: чем плоха электронная почта и удастся ли Dark Mail построить новую? Евгений Золотов
Действительно тайная переписка: чем плоха электронная почта и удастся ли Dark Mail построить новую? Евгений Золотов Опубликовано 07 ноября 2013 Паники, спровоцированной «откровениями Эдварда Сноудена», могло не случиться, если бы Сеть опиралась на
Посмотрите на самый высокий небоскрёб в мире, который собирались построить за 90 дней Николай Маслухин
Посмотрите на самый высокий небоскрёб в мире, который собирались построить за 90 дней Николай Маслухин Опубликовано 28 мая 2013 Китайская компания Broad Sustainable Construction прославилась в конце 2011-го года, когда сумела построить 30-этажный отель всего за 15
Соотечественники собирают деньги на то, чтобы построить макет станции «Мир», а потом сжечь его Николай Маслухин
Соотечественники собирают деньги на то, чтобы построить макет станции «Мир», а потом сжечь его Николай Маслухин Опубликовано 15 июля 2013 Вот уже в 28-й раз в пустыне Блэк-Рок будет проходить ежегодный американский фестиваль радикального
Как построить свой личный ботнет и сколько это стоит Олег Нечай
Как построить свой личный ботнет и сколько это стоит Олег Нечай Опубликовано 19 апреля 2013 Ботнеты (от англ. «robot» и «network», то есть «сети роботов») — один из главных и популярнейших инструментов современной киберпреступности. Компьютерные сети,
Как построить кадр
Как построить кадр Натюрморт отличается от предметной съемки тем, что в нем предметы взаимодействуют друг с другом. Однако можно снять и натюрморт, в котором всего один объект. Главное — замысел, идея.В кадре должен быть один-единственный сюжетный центр. Когда их два и