Depositphotos
На канале «Мы обречены» вышло интервью с живой легендой IT-мира Брайаном Керниганом — автором множества книг по программированию, включая «Язык программирования С» (совместно с автором языка Деннисом Ритчи).
Мы в Highload выбрали для вас главное из этого разговора.
Не уверен, что именно я придумал использовать эту фразу ‘Hello, world’ — это одна из тех вещей, когда память настолько стара, что ты не знаешь чему верить.
Но я помню какой-то комикс, где был изображен птенец, который пробивался через яйцо и говорил «Привет, мир!». Я тогда как раз искал что-то для первого примера использования языка программирования С в книге и решил, пусть программа напечатает это.
Depositphotos
Когда я работал в Bell Labs, мой типичный день не был чисто «программистским». Программы, которые мы писали, были лишь частью попытки изучить какой-то исследовательский вопрос. То есть люди не ждали конкретно твою программу, чтобы соединить ее со своей или что-то такое, — они ждали результат, который покажет эта программа.
Но обычно это было так:
А потом ждешь компиляцию несколько часов, чтобы увидеть, что что-то не так, переделать и отправить оператору снова.
Я никогда не нанимал программистов, но я участвовал в найме научных сотрудников. Мы искали людей, способных интересно мыслить, и почти все они умели программировать — но это было не главное.
Но даже будь я менеджером Google, меня больше бы интересовало, умен ли кандидат и может ли он учиться. Потому что IT — это быстро меняющаяся среда и гораздо важнее наилучшим образом использовать новые знания, а не быть экспертом в том, что уже неактуально.
Хотя есть базовые вещи, которые программист должен уметь делать хорошо: например, отладку. Или писать программы, которые не нужно отлаживать 🙂
Как узнать, есть ли у человека такой навык? Я бы попытался это сделать, поговорив с человеком: выяснил, чем он интересуется, что думает по этому поводу, какие у него есть наработки. И меня совершенно не волнует, умеет ли он выполнять двоичный поиск. Кого это волнует?
Большинство, что сейчас делают крупные компании в индустрии — это хорошо. Мы пользуемся сервисами Google, Microsoft, Amazon — они полезные и важные. Но иногда у меня есть вопросы к ним.
Я не хочу сейчас придираться и называть конкретные вещи, но мы постоянно видим в новостях скандалы с Facebook и другими. И главный вопрос, который возникает: не слишком ли велико влияние этих компаний? А также: можем ли мы их хоть как-то контролировать?
Автор иллюстрации Gwendal Le Bec/ Источник: slate.com
Это очень здорово, что можно заниматься программированием без формального образования и четырех лет в университете. Но те, кто выбирают этот путь, многое теряют. Потому что вуз заставляет вас столкнуться с людьми, непохожими на вас, и узнать об областях, совершенно не связанных с технологиями и все-таки важных.
По этой же причине читать только техническую литературу — недальновидно. На определенном этапе карьеры вы можете сфокусироваться на таких книгах, но в целом этот подход скучный.
В свое свободное время я люблю читать историческую литературу или биографии. Мне кажется, такие книги помогают увидеть, как люди справлялись с миром до вас, и это может помочь вам сделать что-то для себя в будущем.
Я не говорю, что все должны читать именно историю. Но полезно почитать что-то, что относится к человеческому опыту в целом.
Написание книги связано больше не с технической экспертизой, а с литературой и преподаванием. У вас должно быть достаточное техническое понимание, чтобы вы ориентировались в теме, но вы не должны быть мировым экспертом.
А затем перед вами встанет задача представить себя тем, кто будет это читать — без ваших знаний и опыта. Вам нужно будет подобрать примеры, иллюстрирующие применение технологии и расставить их в таком порядке, в котором читатель будет задаваться вопросом: «А как это сделать?».
Прокси (proxy), или прокси-сервер — это программа-посредник, которая обеспечивает соединение между пользователем и интернет-ресурсом. Принцип…
Согласитесь, было бы неплохо соединить в одно сайт и приложение для смартфона. Если вы еще…
Повсеместное распространение смартфонов привело к огромному спросу на мобильные игры и приложения. Миллиарды пользователей гаджетов…
В перечне популярных чат-ботов с искусственным интеллектом Google Bard (Gemini) еще не пользуется такой популярностью…
Скрипт (англ. — сценарий), — это небольшая программа, как правило, для веб-интерфейса, выполняющая определенную задачу.…
Дедлайн (от англ. deadline — «крайний срок») — это конечная дата стачи проекта или задачи…