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

Айк: Ну, не знаю... Наверное, C++. Мы научились пользоваться всеми его свойствами, которых слишком много. Система типизации в нем, пожалуй, лучше, чем в Java. Но мы все еще применяем отладчики и компоновщики 1970-х - полный идиотизм! Не понимаю, как мы до сих пор их терпим.

Нетерпение и неприязнь к примитивным инструментам - вот из-за чего я старался совершенствоваться в программировании. Наш код сегодня испещрен проверками утверждений, и они фатальны. Но именно это помогает мне, особенно когда я применяю к коду тот самый принцип 90/10, не удовлетворяющий всем инвариантам. Я что-то упустил, утверждение срабатывает, и вдруг - раз! - я понимаю, как его исправить.

Даже сейчас я часто убеждаюсь в собственных недостатках, когда слишком усердно оптимизирую что-нибудь. Рисуя себе радужную картину, я забываю о какой-нибудь важной проблеме. Это всегда испытание для меня, ведь программист должен быть оптимистом. Считается, что мы параноики и невротики, вечно озабоченные чем-то персонажи Вуди Ал-лена, но на самом деле параноику нечего делать в программировании.

Сейбел: Как вам кажется, программирование - это удел молодых?

Айк: Думаю, у молодых огромные преимущества, прежде всего психологические. Им не хватает лишь мудрости! Становишься старше, работаешь медленнее - но ты усвоил горькие уроки и хочешь передать свой опыт следующему поколению. Я вижу, как они отворачиваются от меня и сами усваивают эти уроки, - и сжимаю кулаки.

Но человек знающий, который старается быть в курсе всего, не обязательно должен выдавать много кода. Нет, конечно, объем продукции тоже важен. Но что первостепенно для меня - и об этом мы много беседовали в Netscape, когда там искали главного инженера, - это найти человека, не менеджера, а того, кто своим авторитетом заставит других программистов писать код в нужном духе. Ведь один программист просто не справится со всеми задачами.

Вот эта возможность воздействовать на людей, когда они перенимают твой подход и твой опыт, так что в результате получается код, непосильный для одного, так же важна для меня, как возможность сидеть ночами и писать в одиночку собственный длиннющий код.

Я по-прежнему работаю слишком много, а теперь у меня еще и маленькие дети. Моя жена - славная девушка, но ей не очень нравится, когда я засиживаюсь за работой. Ведь я занимаюсь не только программированием, но и вот этими, более важными вещами. В случае с JavaScript нам надо было развивать язык. Это требовало не то что проповеднического пыла, но умения заставить людей думать о последствиях эволюции языка, о том, каким они его видят. И надо было разбираться с кучей разных ответов.

Не все программисты способны на это - многие склонны работать, забившись в свой угол. Но работая в Netscape, я понял, что мне нравится взаимодействовать с людьми, которые пользуются моим кодом. Если я забьюсь в свой угол, мне будет не хватать этого. А я хочу постоянно решать такие задачи. Да, я могу выстроить для себя прекрасный воздушный замок, но будет ли он удобен для других? Вряд ли. В чем же тогда смысл? Как говорил Гиллель-старший, “кто я без других”?

Я не связываю себя только с JavaScript. Поначалу мы страшно спешили, делали массу ошибок, и как-то Джейми переслал мне пост из Usenet со словами: “Говорят, ваш детище - урод”. Теперь у меня настоящие дети, и те дела больше меня не волнуют.

<p>5. Джошуа Блох</p>

Сегодня Джошуа Блох - главный Java-архитектор в Google, до этого работал в Sun Microsystems, где был удостоен звания Заслуженный инженер и руководил созданием и реализацией Java Collections Framework, появившегося в Java 2, а также внес некоторые дополнения в язык для версии Java 5. Получил степень бакалавра в Колумбийском университете, PhD - в Университете Карнеги-Меллона, где работал над Camelot - распределенной системой обработки транзакций, позднее получившей название Encina; она была выпущена компанией Transarc, где Блох являлся старшим системным проектировщиком. Написал книгу “Effective Java”[51], удостоенную Премии Джолта за 2001 год, и еще две в соавторстве - “Java Puzzlers” (Java: головоломки) и “Java Concurrency in Practice” (Java: параллельность на практике).

Как и следовало ожидать оттого, чья работа состоит в пропаганде использования Java в Google, Блох - активный сторонник этого языка. Несмотря на сегодняшний всплеск интереса к таким инструментам параллельной обработки данных, как Software Transactional Memory или механизм обмена сообщениями в языке Erlang, Блох считает, что в Java реализован “наилучший, сравнительно с другими языками”, подход к параллельным процессам, и предсказывает возрождение интереса к Java по мере того, как программисты будут переходить на многоядерные процессоры.

Блох также защищает отношение к программированию как к проектированию API. Мы беседовали о том, как это помогает ему самому конструировать программы, о том, что Java становится слишком громоздким языком, и о том, что выбирать язык программирования - почти то же, что выбирать бар.

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

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

100 мифов о Берии. Вдохновитель репрессий или талантливый организатор? 1917-1941
100 мифов о Берии. Вдохновитель репрессий или талантливый организатор? 1917-1941

Само имя — БЕРИЯ — до сих пор воспринимается в общественном сознании России как особый символ-синоним жестокого, кровавого монстра, только и способного что на самые злодейские преступления. Все убеждены в том, что это был только кровавый палач и злобный интриган, нанесший колоссальный ущерб СССР. Но так ли это? Насколько обоснованна такая, фактически монопольно господствующая в общественном сознании точка зрения? Как сложился столь негативный образ человека, который всю свою сознательную жизнь посвятил созданию и укреплению СССР, результатами деятельности которого Россия пользуется до сих пор?Ответы на эти и многие другие вопросы, связанные с жизнью и деятельностью Лаврентия Павловича Берии, читатели найдут в состоящем из двух книг новом проекте известного историка Арсена Мартиросяна — «100 мифов о Берии».В первой книге охватывается период жизни и деятельности Л.П. Берии с 1917 по 1941 год, во второй книге «От славы к проклятиям» — с 22 июня 1941 года по 26 июня 1953 года.

Арсен Беникович Мартиросян

Биографии и Мемуары / Политика / Образование и наука / Документальное
Клуб банкиров
Клуб банкиров

Дэвид Рокфеллер — один из крупнейших политических и финансовых деятелей XX века, известный американский банкир, глава дома Рокфеллеров. Внук нефтяного магната и первого в истории миллиардера Джона Д. Рокфеллера, основателя Стандарт Ойл.Рокфеллер известен как один из первых и наиболее влиятельных идеологов глобализации и неоконсерватизма, основатель знаменитого Бильдербергского клуба. На одном из заседаний Бильдербергского клуба он сказал: «В наше время мир готов шагать в сторону мирового правительства. Наднациональный суверенитет интеллектуальной элиты и мировых банкиров, несомненно, предпочтительнее национального самоопределения, практиковавшегося в былые столетия».В своей книге Д. Рокфеллер рассказывает, как создавался этот «суверенитет интеллектуальной элиты и мировых банкиров», как распространялось влияние финансовой олигархии в мире: в Европе, в Азии, в Африке и Латинской Америке. Особое внимание уделяется проникновению мировых банков в Россию, которое началось еще в брежневскую эпоху; приводятся тексты секретных переговоров Д. Рокфеллера с Брежневым, Косыгиным и другими советскими лидерами.

Дэвид Рокфеллер

Биографии и Мемуары / История / Образование и наука / Документальное