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

Тут можно читать онлайн Питер Сейбел - Кодеры за работой. Размышления о ремесле программиста - бесплатно ознакомительный отрывок. Жанр: Биографии и Мемуары, издательство Символ-Плюс, год 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, Дональда Кнута, Гая Стила, Саймона Пейтон-Джонса, Питера Норвига, Джошуа Блоха, Брэда Фицпатрика, создателя Живого Журнала, и других. Все они “подсели” на программирование еще в школе. Тогда, на заре зарождения отрасли, лишь в немногих учебных заведениях читались курсы по компьютерным наукам. Поэтому будущим гуру приходилось покорять профессиональные вершины самостоятельно, но всех их отличает творческое горение и полная самоотдача любимому делу.

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

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

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

Интервал:

Закладка:

Сделать

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

Аллен:Безусловно, здесь нужно упомянуть проект Stretch. Кроме того, я участвовала в разработке продукта еще 2-3 раза, с еженедельными ревизиями кода незадолго до сдачи проекта. Я с большим уважением отношусь к этим процессам, считаю их очень важными для конечного результата и для команды, работающей над проектом. Хотя это может быть очень утомительным - каждую пятницу садиться читать код, слушая объяснения, почему сделано так-то и так-то, и находить ошибки других.

Сейбел:Это утомительно, но стоит того?

Аллен:Безусловно, стоит. Во время работы над проектом PTRAN, ближе к завершению, мы включали фрагменты кода в другие продукты, полдня уходило на объяснение ошибок в нашем коде, их коде, неважно, - и так каждую неделю, около 10 месяцев. Полпятницы уходило на это.

Сейбел:Работая в подобных условиях, вы ощущали, что у вас есть процесс, позволяющий достаточно точно рассчитать время, необходимое для создания определенного объема ПО?

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

Сейбел:На что вы обращали внимание, нанимая сотрудников?

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

Сейбел:То есть можно нанять человека, рекомендованного вам профессором, которого знаешь и которому доверяешь. А если проводишь собеседование с тем, у кого нет солидной рекомендации, - как за несколько часов понять, станет человек хорошим программистом или нет?

Аллен:Я всегда начинала собеседование с претендентом на место в исследовательском центре IBM, пытаясь понять, что этого человека интересует в жизни. Для меня это был своего рода пороговый уровень. Было абсолютно не важно, имело ли это увлечение какое-то отношение к программированию или компьютерам. Если человек не может ни чем увлечься, то не будет выкладываться по полной, работая в группе.

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

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

Аллен:Я и сейчас не очень-то понимаю, что такое наставничество. Главное - нужно посоветовать начинающему специалисту не занимать слишком рано руководящую должность, что весьма соблазнительно для тех, у кого есть соответствующие таланты. Для начала нужно заработать репутацию своей технической работой. Какая-то интересная научная работа, алгоритм, отлично написанный код - что угодно; сначала нужно заработать себе репутацию чем-то подобным. Это сослужит вам хорошую службу, если вы действительно хотите руководить проектами, понимая в деталях, что требуется для выполнения той или иной работы.

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

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

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

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

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

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

Аллен:О, довольно давно. Наверное, я прекратила писать код, когда появился язык Си. Это был серьезный удар. Мы так успешно работали над оптимизациями и трансформациями. Мы решали одну непростую задачу за другой. После появления Си на одной из конференций, посвященных компиляторам SIGPLAN, случился спор между Стивом Джонсоном из Bell Labs, который поддерживал Си, и моим сотрудником Биллом Харрисоном, участником одного из моих тогдашних проектов, который поддерживал автоматическую оптимизацию.

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

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

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

К 1960 году у нас было множество прекрасных языков: Лисп, APL, Фортран, Кобол, Алгол 60. Это языки более высокого уровня, чем Си. С момента появления Си мы серьезно деградировали. Си уничтожил нашу способность прогрессировать в автоматической оптимизации, автоматической параллелизации, автоматическом отображении языков высокого уровня в машинную архитектуру. Это одна из причин, по которым компиляторы, по сути, больше не изучаются в колледжах и университетах.

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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