Отрывки из истории Кароля Симония...
От: Зверёк Харьковский  
Дата: 23.09.05 11:25
Оценка: 329 (29) :))) :)
...расказанной им Стиву Лору для книжки "GoTo: <и еще 20 слов в названии книжки>"; отобрано и пересказано Зверьком

Краткое предисловие
Надо понимать, что несмотря на то, что истории эти вроде бы расказывал сам Симоний и люди, лично его знающие, по большей части — это все ж таки мифологизация истории. Так что уж очень всерьез воспринимать их не след.
Замечание: листать книжку с целью вспомнить имена и географические названия мне лениво, потому что температура 38 и грипп. Если кому-то правда надо — уточняйте.

Отрывок раз: Венгрия
С детства любивший сложную механику, Кароль очень хотел увидеть компьютер. Его отец Кароль (героя истории зовут на американский манер Charles, а его отца — Karoly), известный физик, привел пацана в Центральное бюро статистики. Где Симоний встретил первого в своей жизни настоящего программиста — Золтана Зсомбока и первый в своей жизни персональный компьютер — Урал-2. Многометровая железяка с кучей лампочек и перфокарт была вполне "персональным" компьютером — когда он был не нужен статистикам Кароль мог "играться" с ним в одиночку.

После скандала, случившегося в школе из-за отрощенного Каролем хайра, он попросил отца подарить на день рождения "не ходить больше в школу". Папа объяснил, что вариантов тут всего два: прикинуться дебилом, которого нет смысла учить; или прикинуться гением, который и так все знает. Симоний выбрал второе, сдал все школьные экзамены экстерном и тут же получил работу — бюро статистики уже не представляло своего существования без талантливого программиста. Достаточно сказать, что Симоний в одиночку разработал Code language for Ural (Colur) — простой язык программирования для машинки, которую до того программировали двоичными кодами. Мелочь, а приятно. "Это был мой Фортран", — говорил позже Симоний. Ходят слухи, что в своем 18-комнатном доме возле Сиэтла, в самом надежном сейфе, Кароль сегодня хранит всего 2 пачки бумаг — свои документы о натурализации, и ленты со своей первой программой.

Отрывок два: Венгрия-Дания
Симоний утверждает, что первый раз про "надо линять из соцлагеря" он понял при прочтении в юном возрасте статьи итальянского коммуниста "из жизни Ленина". История была такая: в раннесоветские времена, некая бедная женщина, у которой не было денег запасти дров на зиму, написала письмо Владимиру Ильичу, и он лично проследил, чтобы дрова у нее были. Теоретически, история демонстрировала доступность великого вождя и его личную заботу о каждом крестьянине. Практически, юный Кароль сделал неожиданный вывод "не стоит жить в стране, где выживание зимой зависит от того, дойдет ли твое письмо до Ленина". Сказано — сделано.

Ему оставалось немногим больше года до 18 (армия), когда Кароль начал реализовывать свой хитрый план. Как ведущий (парню 17 лет) программист Центрстатбюро, Симоний иногда встречался с зарубежными коллегами. На одной из таких встреч он распросил датских компьютерщиков о машине, над которой они тогда работали. При следующей встрече он дал им ленту с примерами своих программ для этой машины (известной ему только по рассказам) и попросил передать их шефу. Через несколько месяцев шеф, Нильс Айвар Бех, приехал чтобы поговорить с ним лично и договориться с венгерскими властями о годовой стажировке талантливого "студента" (Симоний поступил в университет специально для этого). Когда через год он не вернулся, советские власти интиллигентно поинтересовались у родителей гения, где бы это мог запропаститься их сын. По легенде, мама-Симоний ответила "полагаю, на полпути между Копенгагеном и Сан-Франциско".

Отрывок три: Bravo-Word
Докторская диссертация Симония называлась "Meta-programming: A Software Production Method". Симоний вкладывал в понятие "метапрограммирования" совершенно другой смысл, чем мы сегодня: не еще один уровень гибкости кода, а еще один уровень кодировщиков ("венгерская" нотация была частью методологии). В целом, идея методологии была в том, чтобы собирать программистов в команды, лидер такой команды был бы "мета-программистом" — его инструменты это не язык программирования и компилятор, а язык спецификаций и программисты (методология четко специфицировала взаимоотношения мета-программиста и программистов). Собственно, для проверки нового способа управления проектом он и занялс в Xerox PARC проектом Bravo — текстовым редактором, наследником рожденного в недрах PARC недо-редактора Alpha.

Основной целью при разработке редактора было эффективное использование ресурсов компьютера. Именно в процессе работы над этим проектом были рождены концепции "большой документ на диске/небольшая часть в памяти", "сохранять только изменения, а не весь документ", piece table (физически документы Bravo/Word состоят из независимых кусков, порядок которых устанавливает piece table) и т.п. Именно описание работы Симония над этим проектом со слов его коллег дало мне основания назвать Кароля "программистом от бога" — он в ответе и за сверх-эффективную архитектуру Браво, и за филигранно-хардкорную ассемблерную оптимизацию.

С точки зрения пользовательского интерфейса Bravo был полным кошмаром. В нем была заложена та же разновидность "модальности", что и в vi — в одном режиме нажатие на e,d,i,t приводило к набору слова "edit", в другом — к выделению всего документа (e), удалению выделенного (d), переходу в режим вставки (i) и набору буквы "t".

К счастью, быстрый и страшный Bravo Симония нашел себе пару — разрабатывавшийся в том же Xerox PARC редактор Gypsy. Его авторы, Ларри Теслер и Тим Мотт, были специалистами по пользовательским интерфейсам, поэтому Gypsy был очень удобным и неимоверно медленным. В сумме, из Gypsy и Bravo получился быстрый и удобный редактор (а мог ведь получиться медленный и страшный ).

Насколько быстрый и удобный — вскоре поняли все в Пало-Альто. В исследовательском центре вдруг появилось много посторонних — родители, друзья, соседи, знакомые разработчиков приходили "в гости к Bravo" чтобы набрать и распечатать свои тексты. Симоний впоследствии утверждал (и я склонен ему верить), что это был первый случай, когда люди некомпьютерные (не хакеры, не программисты, не увлеченные "железячники") заинтересовались компьютером и стали им пользоваться.

Такие дела.

Про Симония в Microsoft'e, Гейтса, Excel и Word — если интересно — в следующих сериях.
FAQ — це мiй ай-кью!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.