«Если вы хотите научиться программированию, будьте готовы потратить на это 10 лет»
Директор по исследованиям Google Питер Норвиг написал для издания Quartz колонку о том, почему популярное сейчас стремление научиться программированию не приведет к результатам. По словам Норвига, для того, чтобы стать разработчиком, нужно потратить около 10 лет на практику.
В любом книжном магазине можно найти книги про то, как за 24 часа выучить язык программирования C, SQL, Ruby и прочее, пишет Норвиг. И, судя по обилию подобных произведений, количество людей, которые хотят быстро научиться программированию, постоянно растет.
По словам Норвига, обычно за 24 часа авторы книг предлагают написать несколько простейших программ и выучить синтаксис языка. При этом читатель не сможет понять, как использовать язык и каким образом он может написать собственную программу.
Директор по исследованиям Google ссылается на ряд исследований (Блум, 1985 год, Брайна и Хартер, 1899 год, Хайес, 1989 год, Симмон и Чейз, 1973), которые доказывают, что на полное изучение одной отрасли нужно потратить 10 лет - например, чтобы научиться играть в шахматы, теннис, пианино или изучить нейрофизиологию.
По словам исследователей, суть в том, чтобы изучающий постоянно ставил себе более сложные задачи, которые выходят за рамки его знаний и опыта. Например, Моцарт хоть и написал первый концерт в четыре года, но стал известным мировым музыкантом только спустя 13 лет. Британская группа Beatles также провела больше 10 лет, выступая в небольших клубах Ливерпуля.
Существует и другая теория, принадлежащая Малколму Гладвеллу, который утверждает, что для того, чтобы стать профессионалом в определенной сфере, нужно потратить на ее изучение 10 тысяч часов.
Даже самым талантливым людям приходится тратить время на совершенствования своей производительности. 10 тысяч часов - это просто число, которое дает вам понимание того, что для достижения цели нужно постоянно трудиться, считает Норвиг.
Топ-менеджер Google советует предпринимателям, которые собираются заняться изучением языков программирования, сразу быть готовым к тому, что на обучение будет потрачено 10 лет жизни.
Лучше всего начать обучение сразу с выполнения простых задач. По мере получения навыков Новик рекомендует изучать работу других разработчиков - смотреть код их программ: «Это намного важнее книг и курсов».
Особенно полезно для обучения участие в разработке сервисов вместе с другими разработчиками, либо написание кода вслед за каким-то программистом. Новик советует не бояться быть «худшим программистом» в проекте, так как реальное обучение происходит только на реальных проектах.