Читаем Кодеры за работой. Размышления о ремесле программиста полностью

Фицпатрик: Нет, но у нас были уроки информатики. Вел занятия один парень, а потом я потихоньку стал вести что-то вроде продвинутых курсов. Они до сих пор используют графический редактор и графическую библиотеку, которую я написал; конечной целью курса была разработка игры. Я иногда встречаю этого учителя информатики — моя семья с ним дружит, и мы видимся на футбольных матчах, в которых участвует мой брат. И он говорит мне: «Мы до сих пор используем твои библиотеки».

Я сдал тест повышенного уровня по информатике. Это был последний год, когда тесты сдавали на Паскале, потом все перешли на Си, а еще через год — на Java или что-то вроде того. Я не знал Паскаль, поэтому ходил в соседнюю школу, в которой был факультатив по программированию. Я посещал три-четыре вечерних курса, потом нашел книгу и изучил этот язык. Большую часть времени я рисовал с помощью Паскаля звезды, потому что только что изучил тригонометрию. «О, синус и косинус, забавно. Можно растягивать, сжимать и все такое».

Сейбел: Что вы получили за этот тест?

Фицпатрик: О, я получил пятерку. Мне нужно было создать классы больших целых чисел. Теперь это одно из заданий, которое я даю на собеседованиях: «Создайте класс для произвольных манипуляций с большими целыми, включая умножение и деление». Если я сделал это, будучи старшеклассником, то и кандидаты должны справиться.

Сейбел: Летом, перед началом обучения в колледже, вы работали в компании Intel. Вы работали программистом в конце школы?

Фицпатрик: Да, я работал какое-то время в компании Tektronix. Перед тем как получить официальную работу, у меня была хостинговая учетная запись. Но AOL[19] ее прикрыла за создание ботов, зафлуживание их чатов и просто за назойливость. Я тогда написал сценарий, запускающий AOL-клиент из другой Windows-программы. Еще я написал бот, чтобы постоянно заполнять онлайновую форму ввода для получения от них компакт-дисков. Я использовал разные варианты своего имени, чтобы их программа защиты от дублирования не отправила мне всего лишь один диск, поскольку каждый из них предоставлял 100 или 5000 часов бесплатной работы. Я ввел данные несколько тысяч раз, так что где-то неделю почтальон приносил мне пачки дисков.

Мама уже начала говорить: «Черт возьми, Брэд, у тебя будут неприятности!» А я говорил: «А вот и нет, эта долбаная компания сама виновата». Однажды дома раздался звонок, я поднял трубку, чего обычно не делал, — звонили из AOL. Этот тип заорал: «Прекратите присылать нам эти заявки!» Я обычно туго соображаю, но тут сразу нашелся и проорал в ответ: «Зачем вы шлете мне эту хрень?! Каждый день почтальон тащит кучу дисков!» Он даже опешил: «Извините, это больше не повторится». Я украсил ими свою комнату в колледже. Они до сих пор лежат в коробке в гараже. Не могу от них избавиться, потому что все еще помню, как они когда-то классно смотрелись на стенах.

После этого мою учетную запись в AOL заблокировали, а я зарегистрировал учетную запись у одного из местных shell-провайдеров. Тогда я, по сути, и научился работать с UNIX. Я не мог запускать CGI-скрипты, но мог загружать данные на сервер по FTP, поэтому я запускал разную ерунду, написанную на Perl на домашнем компьютере, которая создавала сайт целиком и затем загружала его на сервер. Потом я получил временную летнюю работу в Tektronix. Я хорошо знал Perl и всякие веб-штуки, но никогда не работал с динамическими веб-страницами. Это был 1994 или 1995 год — Сеть тогда была делом совсем новым.

Итак, я пришел в Tektronix. В первый же день они поставили меня перед чем-то и говорят: «Вот твой компьютер». Это была большая рабочая станция SPARCstation или что-то вроде того, где крутились X и Motif. А потом: «Вот твой браузер». Кажется, это был Netscape 2, точно не помню. И еще: «Все свои CGI-скрипты записывай в этот каталог». Помню, как взял какой-то элементарный CGI-скрипт в три строки, чтобы посмотреть его вечером, и подумал: «Черт, здорово-то как!» На следующий день я был на работе уже в шесть утра, просто тронулся на этих CGI.

Потом я занялся динамическим веб-программированием для себя. Где-то в то же время я нашел веб-сервер под Windows с поддержкой CGI. Я убедил своего провайдера — я был на хорошем счету, по крайней мере, вел себя достаточно умно, чтобы мне начали доверять, — и мне сказали: «Ладно, запустим твои CGI, но сначала их проверим». Они просмотрели их и разместили в своем каталоге. Так и начался мой скрипт Voting Booth, где можно создать тему, например «Твой любимый фильм», добавлять нужную информацию и голосовать. Он становился все популярнее. Потом я еще пару лет занимался им параллельно основной работе.

Сейбел: Так был создан сайт FreeVote?

Перейти на страницу:

Похожие книги

Адмирал Советского Союза
Адмирал Советского Союза

Николай Герасимович Кузнецов – адмирал Флота Советского Союза, один из тех, кому мы обязаны победой в Великой Отечественной войне. В 1939 г., по личному указанию Сталина, 34-летний Кузнецов был назначен народным комиссаром ВМФ СССР. Во время войны он входил в Ставку Верховного Главнокомандования, оперативно и энергично руководил флотом. За свои выдающиеся заслуги Н.Г. Кузнецов получил высшее воинское звание на флоте и стал Героем Советского Союза.В своей книге Н.Г. Кузнецов рассказывает о своем боевом пути начиная от Гражданской войны в Испании до окончательного разгрома гитлеровской Германии и поражения милитаристской Японии. Оборона Ханко, Либавы, Таллина, Одессы, Севастополя, Москвы, Ленинграда, Сталинграда, крупнейшие операции флотов на Севере, Балтике и Черном море – все это есть в книге легендарного советского адмирала. Кроме того, он вспоминает о своих встречах с высшими государственными, партийными и военными руководителями СССР, рассказывает о методах и стиле работы И.В. Сталина, Г.К. Жукова и многих других известных деятелей своего времени.Воспоминания впервые выходят в полном виде, ранее они никогда не издавались под одной обложкой.

Николай Герасимович Кузнецов

Биографии и Мемуары
100 великих гениев
100 великих гениев

Существует много определений гениальности. Например, Ньютон полагал, что гениальность – это терпение мысли, сосредоточенной в известном направлении. Гёте считал, что отличительная черта гениальности – умение духа распознать, что ему на пользу. Кант говорил, что гениальность – это талант изобретения того, чему нельзя научиться. То есть гению дано открыть нечто неведомое. Автор книги Р.К. Баландин попытался дать свое определение гениальности и составить свой рассказ о наиболее прославленных гениях человечества.Принцип классификации в книге простой – персоналии располагаются по роду занятий (особо выделены универсальные гении). Автор рассматривает достижения великих созидателей, прежде всего, в сфере религии, философии, искусства, литературы и науки, то есть в тех областях духа, где наиболее полно проявились их творческие способности. Раздел «Неведомый гений» призван показать, как много замечательных творцов остаются безымянными и как мало нам известно о них.

Рудольф Константинович Баландин

Биографии и Мемуары
100 великих интриг
100 великих интриг

Нередко политические интриги становятся главными двигателями истории. Заговоры, покушения, провокации, аресты, казни, бунты и военные перевороты – все эти события могут составлять только часть одной, хитро спланированной, интриги, начинавшейся с короткой записки, вовремя произнесенной фразы или многозначительного молчания во время важной беседы царствующих особ и закончившейся грандиозным сломом целой эпохи.Суд над Сократом, заговор Катилины, Цезарь и Клеопатра, интриги Мессалины, мрачная слава Старца Горы, заговор Пацци, Варфоломеевская ночь, убийство Валленштейна, таинственная смерть Людвига Баварского, загадки Нюрнбергского процесса… Об этом и многом другом рассказывает очередная книга серии.

Виктор Николаевич Еремин

Биографии и Мемуары / История / Энциклопедии / Образование и наука / Словари и Энциклопедии