Питер Сейбел - Кодеры за работой. Размышления о ремесле программиста

Тут можно читать онлайн Питер Сейбел - Кодеры за работой. Размышления о ремесле программиста - бесплатно ознакомительный отрывок. Жанр: Биографии и Мемуары, издательство Символ-Плюс, год 2011. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Кодеры за работой. Размышления о ремесле программиста
  • Автор:
  • Жанр:
  • Издательство:
    Символ-Плюс
  • Год:
    2011
  • Город:
    Санкт-Петербург
  • ISBN:
    978-5-93286-188-2
  • Рейтинг:
    3.4/5. Голосов: 101
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Питер Сейбел - Кодеры за работой. Размышления о ремесле программиста краткое содержание

Кодеры за работой. Размышления о ремесле программиста - описание и краткое содержание, автор Питер Сейбел, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

Программисты - люди не очень публичные, многие работают поодиночке или в небольших группах. Причем самая важная и интересная часть их работы никому не видна, потому что происходит у них в голове. Питер Сейбел, писатель-программист, снимает покров таинственности с этой профессии. Он взял интервью у 15 величайших профессионалов: Кена Томпсона, создателя UNIX, Верни Козелла, участника первой реализации сети ARPANET, Дональда Кнута, Гая Стила, Саймона Пейтон-Джонса, Питера Норвига, Джошуа Блоха, Брэда Фицпатрика, создателя Живого Журнала, и других. Все они “подсели” на программирование еще в школе. Тогда, на заре зарождения отрасли, лишь в немногих учебных заведениях читались курсы по компьютерным наукам. Поэтому будущим гуру приходилось покорять профессиональные вершины самостоятельно, но всех их отличает творческое горение и полная самоотдача любимому делу.

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

Кодеры за работой. Размышления о ремесле программиста - читать онлайн бесплатно ознакомительный отрывок

Кодеры за работой. Размышления о ремесле программиста - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Питер Сейбел
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Сейбел:Есть инструменты, которыми вы регулярно пользуетесь, при том что терпеть их не можете? Кроме ваших настольных приложений.

Фицпатрик:Да, все настольные приложения. У меня их куча. Эти броузеры все время виснут, падают и занимают кучу памяти. Вся моя операционная система виснет. Коллеги, видя, как я работаю в Emacs, пытаются убедить меня, что Eclipse или IntelliJ все это делают у них автоматически. Раз в полгода я пробую то или другое. Но эти чертовы штуки просто крутятся там, съедая память и падая в процессе ввода (наверно, не справляются с тем, что я набираю). Ладно, фоновая подсветка синтаксиса или компиляция в другом потоке. Но зачем при этом блокировать ввод с клавиатуры? Что ж, снова попробую то или другое через полгода. И я счастлив, что не обязан использовать.все это. Мне и с Emacs неплохо.

Моя кривая обучения выглядит так: я быстро изучаю что-нибудь, пока не смогу работать с этим достаточно быстро и качественно. Обычно это где-то 80-90%, тогда я работаю весьма продуктивно, мне не приходится постоянно что-то искать, вот и отлично. После этого я продвигаюсь уже медленнее. И только если мне что-то очень уж приглянулось, говорю себе: “Пора поглубже изучить документацию этого языка - мануалы - и обшарить все потайные углы и щели”.

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

Фицпатрик:Да, но для меня такие усилия всегда окупаются (по крайней мере, что касается редакторов). Когда я изучаю что-то, это окупается в течение недели, может быть двух. Если я пишу дурацкий скрипт командной оболочки или маленький скрипт на Perl, или еще что-то, что автоматизирует мою жизнь, это всегда окупается.

Сейбел:Значит, вы никогда не попадались в ловушку бесконечного усовершенствования инструментов?

Фицпатрик:Нет. Я все это делаю с какой-нибудь целью. Да, я знаю тех, кто постоянно работает над своими инструментами, никогда ничего не доводя до конца. И я могу двинуться в этом направлении, но недалеко.

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

Фицпатрик:Мыслить как ученый; за один раз изменять только что-то одно. Терпение и стремление понять коренную сущность вещей. Это особенно ценно при отладке или проектировании чего-то, что не желает работать. Иногда молодые программисты говорят: “Черт, эта штука не работает”, - и переписывают ее целиком заново. Стоп. Попытайтесь понять, что происходит. Научитесь разрабатывать программу шаг за шагом, так чтобы была возможность проверять ее на каждом шаге.

Сейбел:Вы делали что-нибудь особое, чтобы улучшить свое мастерство программиста?

Фицпатрик:Иногда я отхожу от привычного пути - пишу что-нибудь на языке, которым обычно не пользуюсь. Я знаю, что это займет больше времени, но также знаю, что это все-таки благо. Например, когда я пришел в Google, мне часто приходилось писать всякие однодневные программы, и я всегда #писал их на Perl. А потом сказал себе: “Стоп, а напишу-ка я это на Python”. Теперь я пишу массу всего на Python, и это меня не напрягает - даже не приходится что-то искать. Perlbal был изначально написан на С#, просто чтобы выучить этот язык.

Сейбел:Какие навыки, помимо профессиональных, должен развивать программист?

Фицпатрик:Коммуникабельность, хотя я не уверен, что ее действительно можно развить. Больше общайтесь по электронной почте. Умение общаться в письменном виде очень важно. Но оно и в жизни пригодится, правда? Было какое-то исследование насчет того, кто из выпускников более успешен - умные ребята или общительные? Выяснилось, что именно общительные ребята могут заработать любые деньги, а не те, кто хорошо учился. Думаю, это интересно.

Сейбел:Мне кажется, со временем что-то изменилось. Раньше программисты могли прятаться по офисам, как гномы. Сейчас они активно переписываются, общаются друг с другом.

Фицпатрик:Да, везде, где я работал, в проектах с открытым исходным кодом или в компаниях, все зависят друг от друга. Побудительный мотив: “Я напишу это, потому что знаю, что тебе это понадобится через две недели, или через две недели мне понадобится твое”. Все это относится к человеческим взаимоотношениям.

Сейбел:Говорят, лучший программист на порядок продуктивнее худшего. Вы с этим сталкивались?

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

Думаю, есть те, кто занимается этим только ради заработка, но на самом деле без удовольствия. Что нормально. Но зачем сравнивать их с программистами по призванию? Кто продуктивнее - тот, кто постоянно думает о деле, или тот, кто думает о нем только в рабочее время?

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

Фицпатрик:Ученым или инженером. Пожалуй, скорее инженером. А потом уже ученым - и только из-за принципа изменять за один раз что-то одно и подхода к диагностике проблем. Я считаю себя инженером в смысле подхода к проектированию. Среди моих друзей есть те, кто считает себя художником или ремесленником, но я о себе так никогда не думал.

Сейбел:С другой стороны, инженеры часто завидуют программистам. Помните шутку: “Если бы небоскребы строились так, как мы пишем программы, первый же дятел уничтожил бы цивилизацию”. Как вы считаете, создание программного обеспечения - это понятная инженерная дисциплина?

Фицпатрик:Нет. Пока что это не так. Да, чтобы писать код, лицензия не нужна. Я не сторонник кучи предписаний, но не хотел бы, чтобы некоторые из РНР-программистов, допускающие все эти атаки через XSS, занимались системами управления полетами. Я бы предпочел, чтобы здесь была четкая официальная граница.

У меня есть друг, инженер-строитель, так он постоянно учится и получает все эти сертификаты. Как-то легче на душе от мысли, что те, кто строит мосты, по которым я хожу, тщательно изучают это дело, сдают множество тестов и постоянно учатся.

Сейбел:А какой тест вы могли бы дать программисту, чтобы убедиться, может ли он писать работоспособные программы?

Фицпатрик:Понятия не имею. Страшно подумать об этом.

Сейбел:Не говоря о лицензировании, есть ли у программистов этическая ответственность перед обществом? Очевидно, что это профессия, а у каждой профессии есть кодекс деловой этики.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Питер Сейбел читать все книги автора по порядку

Питер Сейбел - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




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


Отзывы читателей о книге Кодеры за работой. Размышления о ремесле программиста, автор: Питер Сейбел. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x