Игорь Савчук - Отъявленный программист: лайфхакинг из первых рук
- Название:Отъявленный программист: лайфхакинг из первых рук
- Автор:
- Жанр:
- Издательство:ООО Издательство «Питер»
- Год:2015
- Город:Санкт-Петербург
- ISBN:ISBN 978-5-496-01806-7
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Игорь Савчук - Отъявленный программист: лайфхакинг из первых рук краткое содержание
Введите сюда краткую аннотацию
Отъявленный программист: лайфхакинг из первых рук - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
И хотя он уже давно не участвует в создании WinAmp, Джастин попрежнему очень активно продолжает коммерческую разработку софта (его новая компания Cockos! хоть и не приносит ему былых миллионов, зато полностью самоокупается и позволяет платить зарплату нескольким разработчикам). По замечанию самого Джастина, продажа Nullsoft разделила его жизнь на два периода — до и после. Сегодня, в годовщину продажи Nullsoft, мы решили взять большое интервью у основателя таких культовых программ, как WinAmp, SHOUTcast и пиринговой сети Gnutella, чтобы узнать из первых уст историю этих известных продуктов, а также понять, чего сейчас у Джастина больше в жизни — программирования или все-таки музыки, которой он занимается не менее серьезно, чем программированием.
Прежде чем мы поговорим о вашей богатой истории, можете сейчас вспомнить, с чего все начиналось? Как вы пришли в программирование? Какие были мотивы?
Я начинал программировать на компьютере Atari 800XL, который достался мне от моего старшего брата. Сколько я себя помню, мне всегда было очень интересно программировать. Для меня программирование — это источник хорошего настроения, в более общем смысле — возможность развиваться и работать над собой, возможность проявить себя и свои вкусы. Бизнес-составляющая для меня была всегда в стороне от этого чувства; возможность заработать своим любимым занятием — просто дополнительный приятный бонус.
Джастин, очень логичный вопрос: что чувствует человек, когда его выгоняют из собственного бизнеса? Не то чтобы это уникальная история, но все же какие чувства вы тогда испытывали, когда вас поставили перед фактом: с сегодняшнего дня WinAmp не имеет к вам никакого отношения?
Ну, во-первых, мне очень хорошо финансово компенсировали эту потерю, во-вторых, это не было какое-то мое сознательное решение, так как первоначально мы договаривались, что, несмотря на продажу, я буду продолжать работу над проектом.
Поэтому я не чувствую никакой вины, что я «предал» свой проект, — так сложились обстоятельства. Тем более я успел вложить в WinAmp практически все, что собирался там сделать, поэтому уходя не чувствовал себя слишком подавленным.
В связи с этим вы писали в своем блоге: «Для меня программирование — это форма чистого самовыражения. Компания же (имеется в виду AOL) подавляет наиболее эффективные средства самовыражения из тех, что у меня есть. Это неприемлемо для меня как для личности, поэтому я должен уйти». Итак, программирование — это для вас искусство или все-таки обычная работа?
Я думаю, что это смесь всего сразу. Представляю себе технологию любой разработки из трех разноуровневых плоскостей: на высшей — мы рождаем концепцию программы, формируем ее индивидуальность, это чистой воды креативность и искусство. На следующем уровне — разработка программы, ее написание, проработка алгоритмов и деталей ее работы, здесь уже задействована смесь из рабочих навыков и креативности. Низший уровень — отладка и шлифовка программы, и для меня это рутина, монотонная техническая работа, лишенная творческой искры.
Поэтому, как и в обычной жизни, при разработке мы последовательно проходим все эти уровни, но секрет успеха всего цикла, по моему мнению, сокрыт именно в первом уровне — концепции.
Суммируя, можно сказать, что без креативности ты посредственный программист?
В каком-то смысле да. Ты обречен постоянно работать лишь на низшей плоскости в этой модели. И это всегда наемная позиция, обратите внимание. Поэтому в нашем сложном мире программист программисту рознь.
Джастин, извините, я и в самом деле не понимаю, вас очень многие знают в индустрии, и вы сами говорили о больших возможностях и предложениях, то есть вы могли устроиться во многие крупные корпорации и работать там наемным программистом и ни о чем не париться — так к чему все эти нервы и риски с собственными проектами?
Потому что это дает совсем другие ощущения. Я работал однажды в America Online (смеется), и вы сами знаете, чем это закончилось. Я понял для себя, что мне очень важно оставаться самим собой и делать в этой жизни то, что я считаю правильным. Работая на корпорацию весь день напролет, ты осуществляешь чьи-то чужие планы, не живешь своей мечтой, неизбежно подавляешь свою креативную составляющую. Очень сожалею, что мне не дано выразить словами, насколько это большая разница.
(Пауза.)
Ну, примерно как если бы вы работали в садике няней и ухаживали за чужими детьми. Или, например, если бы вы выступали в качестве родителя и у вас был бы свой собственный и долгожданный ребенок. В принципе, в обоих случаях будет очень много общего чисто внешне, но все же… черт побери, но это же совершенные разные вещи, не так ли?
Давайте коснемся и другой актуальной проблемы, через которую вы прошли лично: могут ли одиночки вроде вас противостоять корпорациям с большим коллективом разработчиков? Иначе говоря, возможно ли в наше время одиночкам-программистам написать что-то по-настоящему известное вроде вашего WinAmp?
Я понимаю, что вы имеете в виду, но я думаю, что не так все просто. Я работал в очень большом коллективе разработчиков в свое время и думаю, что часто «больше» — не значит «лучше». Конечно, я могу сейчас рассуждать об этом лишь теоретически, но думаю, что у одиночек шансы все еще есть. Если вы посмотрите на Facebook, Microsoft, Google, Apple и т. д., вы увидите, что, несмотря на их гигантский штат, за ними стоят по-прежнему одиночки, которых вы знаете поименно. Кстати, я уже говорил раньше о своей трехуровневой модели разработки — по-прежнему, я повторюсь, но все решает удачная концепция. А для этого хватит и одного по-настоящему талантливого человека.
Вот поэтому я уже давно не работаю в корпорациях! (Смеется.)
Интересно, с учетом вашего перфекционизма в отношении программирования как вы лично считаете, нужно ли специализированное высшее математическое образование (или по компьютерным наукам), для того чтобы создавать высококлассные современные программы?
Скажу вам прямо, я не считаю, что сегодня обязательно нужно иметь высшее образование по математике или в CS для разработки успешной программы. Я считаю, что любой может добиться очень многого, самостоятельно учась и пробуя. Тем более сейчас, когда есть такие большие возможности для получения любой информации, а также возможности для удаленной работы в команде с профессионалами очень высокого уровня (например, в многочисленных сетевых проектах Open Source).
Поэтому для какого-то профессионального базиса достаточно упорства и аккуратности, я считаю. И наоборот, вижу, что у многих дипломированных выпускников часто не хватает элементарного упорства, чтобы добиться чего-то более-менее заметного.
Читать дальшеИнтервал:
Закладка: