За сколько можно освоить программирование с нуля
Перейти к содержимому

За сколько можно освоить программирование с нуля

  • автор:

Введение — Жизнь программиста

Добро пожаловать на Хекслет! Этим уроком мы открываем наш курс, посвященный профессии программиста. На протяжении нескольких уроков мы будем разговаривать о том, кто такие программисты, как ими становятся и что нужно для того, чтобы стать одним из них. Мы подготовили большое количество информации, и вас ждут пять объёмных уроков. Мы не будем писать код, устанавливать софт и делать практические задачи — вместо этого мы разберёмся во всех нюансах профессии.

На кого рассчитан этот курс

  • Школьники
  • Студенты
  • Те, кто хочет поменять профессию

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

Страхи

Поговорим о страхах людей, которые хотят стать программистами. Мы получаем много писем от наших пользователей, в которых они рассказывают, почему они боятся, что у них не получится освоить эту профессию.

Я — взрослый

И на первом месте находится страх, который называется «я — взрослый». Такому «взрослому» может быть и 25, и 50 лет — это абсолютно субъективная оценка. На самом деле, возраст играет малую роль, а большинство программистов уже достаточно взрослые люди. В целом профессия с каждым днем становится старше, и это нормально. Некоторые думают, что чем старше вы становитесь, тем медленнее вы соображаете, но это совершенно не всегда так: если у вас гибкий, сообразительный мозг, и вы понимаете, что вы умеете решать различные задачи и принимать определённые решения, то программирование точно для вас, ведь такие навыки по жизни не теряются. Поэтому не нужно переживать по поводу своего возраста.

Джуниор (младший разработчик) в 20 или даже в 30 лет — это нормально. Существует множество примеров, когда на работу приходили люди, которым под 40 и более лет — они спокойно устраивались и работают в коллективе с молодыми ребятами. Безусловно, у некоторых может возникнуть психологический барьер, когда твой начальник сильно тебя младше, но программирование — такая профессия, где в первую очередь ценится компетентность и то, что вы из себя представляете как профессионал. Поэтому, если вы успешно растете как программист, у вас не будет никаких проблем. Наоборот, накопленный вами опыт может помочь быстрее продвигаться по карьерной лестнице.

Я плохо знаю математику

Другой частый страх, о котором говорят — «я плохо знаю математику».

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

Когда говорят, что для программирования нужна математика, подразумевают в первую очередь не знание её как таковой — то есть конкретных дисциплин и математического аппарата — а знание математики как способа развития мышления и личности. Математика действительно хорошо помогает структурировать мозги и размышлять немного на другом уровне, раскачивать своё абстрактное мышление и делать многое другое. Поэтому знание математики никогда не повредит. Часто бывает так, что её начинают учить вместе с программированием, и это правильный подход.

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

Я слишком туп / глуп

На третьем месте — страх, который называется «я слишком туп или глуп». Этот страх часто проявляется у людей, мечтающих стать программистами, у которых есть знакомые, успешно работающие в этой профессии. На фоне таких знакомых им иногда кажется, что они ничего не понимают. Просто потому, что те используют специфические термины и в каких-то вещах разбираются лучше. Чаще всего этот страх не обоснован, и, как показывает практика, есть такой интересный эффект: начинающие и опытные разработчики обладают схожей характеристикой — они себя недооценивают. Это касается и зарплаты, и знаний, и способностей. Зачастую совершенно иная ситуация со средними разработчиками, которые себя переоценивают. Поэтому, если вы себя недооцениваете, возможно, вы уже достаточно профессиональны.

Всё-таки нужно

Теперь поговорим о тех вещах, которые всё-таки нужны каждому начинающему программисту.

Английский язык (хотя бы со словарём)

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

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

Первый и самый простой шаг, который необходимо сделать любому начинающему разработчику, это переключить все интерфейсы на всех устройствах и во всех программах (в том числе сайтах) на английский язык. Так вы быстрее освоите профессиональную терминологию.

Желание

Ну и конечно же вам понадобится очень много желания, потому что научиться программированию — не так просто, как кажется на первый взгляд. Полки книжных магазинов завалены книгами с громкими названиями наподобие: «Выучи С++ за 21 день». Кто-то может из этого сделать вывод, что за это время можно научиться программированию. Это не совсем так, а если уж говорить честно — совсем не так. Программирование требует от вас достаточно много времени и упорства, потому что вы будете часто сталкиваться с ситуациями, когда будет непонятно, что делать и куда двигаться, и иногда вы будете испытывать даже полную безысходность. Поэтому программирование, кроме прочего, требует наличия либо ментора, либо команды, либо онлайн-сервисов, призванных вам помочь — одному бывает сложновато. В целом всё это решаемо, и как раз успешное преодоление всех преград и будет показателем того, что у вас всё в дальнейшем получится, потому что в первую очередь, когда нанимают разработчиков, хотят видеть в людях способность разбираться с проблемами самостоятельно.

Время

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

Порог снижения эффективности обучения

Существует такой феномен — снижение эффективности обучения. Что он означает?

Вначале вам нужно заниматься самостоятельно, потому что вас вряд ли кто-то возьмёт на работу, когда вы еще ничего не знаете, и для вас это будет достаточно эффективно, особенно если вы будете использовать современные средства, которые всячески помогают обучению. Но в какой-то момент скорость освоения предмета у вас начнет резко падать. Нужно не пропустить этот момент и устроиться на работу — тогда обучение снова станет весьма эффективным, плюс вы начнете расти уже профессионально.

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

Сколько нужно учиться, чтобы начать работать

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

Поэтому приблизительно для изучения основ программирования потребуется от 3 месяцев до 1 года. Больше года обучения без практики — это уже перебор. Давайте считать, что в среднем при неполной занятости, но при постоянном упорном обучении, вы сможете устроиться на должность программиста где-то через полгода после старта.

Что дальше

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

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Сколько нужно времени, чтобы начать зарабатывать на программировании

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

Программирование – это удовольствие, а не деньги

Зачем вам изучать программирование? Если эта сфера привлекает только деньгами и возможностью бросить текущую работу, то придется нелегко. Ведь эту сферу надо любить. Любой разработчик скажет, что срок становления программиста – вся жизнь. Языки программирования, библиотеки, методологии – все меняется, и новые технологии появляются если не ежемесячно, то ежегодно.

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

Но это не значит, что для первого заработка и трудоустройства вам понадобится годы.

Как быстро вы сможете заработать?

Помните фразу, что за 10 000 часов можно стать профессионалом в любой области? Авторы оригинального исследования опровергли это высказывание. Процесс обучения настолько индивидуален, что с трудом поддается прогнозу. Но можно обозначить примерные рамки: можно получить позицию разработчика начального уровня в течение года, а некоторые успевают за несколько месяцев.

Что влияет на скорость обучения:

  1. Образование. Если у вас хорошая математическая база, то понять логику языка программирования получится гораздо быстрее. В среднем, искать заказы можно уже через четыре месяца обучения.
  2. Количество занятий. Увольняться с работы без четких перспектив – слишком опасно. Если совмещать офис и учебу, то понадобится больше времени — вплоть до года.
  3. Талант. Абстрактный фактор, но с врождённым талантом к программированию или математике постигнуть азы и устроиться на работу получится быстрее.
  4. Предметная область. Можно программировать сайты, десктопные программы, искусственный интеллект. Естественно что, время на освоение минимальных навыков в разных направлениях будет разным. Если веб-разработчиком можно стать за несколько месяцев, то изучение нейросетей потребует больше времени. Во многом из-за необходимости в глубоких познаниях математики.

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

3 этапа становления разработчика

Обучение программированию условно можно разделить на три этапа:

  1. Знакомство. Самостоятельное изучение программирования с нуля довольно сложно, поэтому мы рекомендуем наш базовый курс по Java. Он сэкономит много времени и даст необходимый объем знаний, чтобы претендовать на позицию стажера или джуниора.
  2. Основной этап. Если программирование вызывает интерес и приносит удовольствие, то самое время набивать руку. Пройдите продвинутый курс, найдите учителя или работайте с Open Source – это ваш путь к высокооплачиваемой должности.
  3. Вся жизнь. Когда вы уверенно будете разбираться в программировании и его логике, найдёте работу, то останется только углублять свои знания и становиться узкоспециализированным специалистом.

Заключение

Помните, что программистом может стать любой. Курсы – самый быстрый и надежный способ получить востребованные знания.

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

За какой срок можно стать высокооплачиваемым программистом

В России 21 века профессии в сфере IT являются одним из немногих действующих социальных лифтов. В то время как в других нишах наблюдается снижение количества вакансий, уменьшение зарплат в реальном выражении, усложнение карьерного продвижения и безработица, в IT всё выглядит намного более оптимистично.

Почему стоит задуматься об IT-профессии

Постоянно появляются новые вакансии – и для начинающих, и для опытных цифровых специалистов (причём на рынке наблюдается недостаток опытных).

Заработки в IT одни из самых высоких на рынке труда. От 40-80 тысяч рублей в регионах до 300-450 тысяч рублей в Москве и за рубежом (в переводе на рубли).

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

Ещё один плюс IT-профессий – перспектива дальнейшего развития ниши. Глобализация и автоматизация труда сделают невостребованными популярные профессии, например, бухгалтер, продавец, водитель, охранник, банковский работник, оператор колл-центра (по данным РБК). В основном речь идёт о низовых позициях, когда труд человека может заменить ИИ.

Что касается IT-профессий, технологический прогресс и внедрение инноваций сделают их более востребованными, чем сейчас. Эксперты HeadHunter провели исследование, выяснив, что в ближайшие 7-10 лет массовыми станут такие профессии как программист, инженер 3D-печати, архитектор виртуальной реальности, дизайнер, специалист по кибербезопасности и др. За 4 последних года количество подобных вакансий увеличилось на 140%.

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

Сколько нужно учиться на программиста

Вузы по-прежнему теряют доверие студентов. Информационные технологии развиваются так стремительно, что к моменту выпуска из вуза через 5 лет полученные знания становятся устаревшими. Поэтому диплом не равно профессия и не равно хорошая зарплата.

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

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

Курсы сроком 1-3 месяца

За это время можно разобраться в IT-терминологии, научиться разрабатываться сайты с помощью конструкторов типа WordPress или Tilda, HTML CSS вёрстке, создавать макеты в Figma, поверхностно ознакомиться с языками программирования.

Такие знания дадут возможность зарабатывать от 20 до 50 тысяч рублей. Стоит учесть, что короткие и дешёвые курсы может позволить себе каждый, поэтому в низкоценовом сегменте высокая конкуренция, и найти хорошую работу непросто.

Курсы длительностью около 1 года

За этот срок можно углубленно выучить одно из направлений:

· Web-разработка: PHP и взаимодействие с массивами; дизайн сайта, юзабилити, информационная архитектура и т.д.;

· свободное владение одним из языков программирования: Python, Java и т.д.;

· стать инженером QA и научиться тестировать ПО.

Зарплаты программиста на языке Java или тестировщика в Москве – 100-130 тысяч рублей ( в регионах от 70000). Разумеется, на следующий день после окончания курсов вам предложат зарплату 40-50 тысяч рублей, но через 3-6 месяцев, с опытом, можно претендовать на более высокие заработки.

Курсы продолжительностью 2,5 года

Для тех, кто настроен на максимальные заработки:

· объектно-ориентированное программирование на C++, системное программирование (потоки, процессы, примитивы синхронизации, межпроцессорное взаимодействие), разработка игр и приложений, управление программными проектами и т.д. + изучение английского языка;

· системное и сетевое администрирование, безопасность сетей и систем, процедурное программирование на С, аппаратное обеспечение рабочих станций и ноутбуков, коммутация в локальных сетях, протоколы, туннелирование, виртуальные сети и т.д. + английский язык.

Профессионал с такими знаниями востребован не только в России, но и за рубежом. Часто международные компании набирают в штат выпускников курсов. Так что есть возможность получить высокооплачиваемую должность сразу после обучения. Заработки программистов такого уровня от 100 до 450 тысяч рублей.

20K открытий
66 комментариев
Написать комментарий.

Негодование комментаторов вызывает тот факт, что IT специалисты и программисты могут хорошо зарабатывать? Ссылки есть, источники достоверные. Зачем спорить с фактами?

Развернуть ветку

Негодование комментаторов вызывает тот факт, что IT специалисты и программисты могут хорошо зарабатывать

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

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

А в сказки типа «пройди наш волшебный курс, тебя с руками оторвут работодатели и ты начнёшь зарабатывать 100500 мильёнов в секунду» не работают уже даже на пикабу.

Ну и пиар — хуйня, откровенно говоря. Думаете, никто не заметил ваши четыре аккаунта, которые создают положительную активность и минусят комменты, которые мешают развешивать лапшу?

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

Этот текст для тех, кто хочет оценить трудовые и временные затраты на изучение профессии разработчика. Посмотрим, какие результаты реально получить за неделю, месяц, полгода и далее.

Спонсор проекта — буткемпы «Яндекс Практикума». Буткемпы — это как обычные курсы Практикума, только вдвое более интенсивные и поэтому короткие. Если классический курс «Аналитик данных» проходится за 6 месяцев, то буткемп по той же специальности длится всего 4 месяца.

  • Буткемпы требуют выделять на обучение около 40 часов в неделю. Обычные курсы — около 20 часов.
  • Буткемпы нужны тем, кто хочет вот прямо сейчас уйти с работы и попасть в новую специальность. Обычные курсы — для тех, кто изучает новую специальность параллельно с основной работой.

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

1 неделя: базовые конструкции и простые алгоритмы

Если у вас есть наставник, советчик или просто нормально организованный учебный процесс, первый код на любом языке программирования вы напишете уже в первый день. На второй день вы напишете простую работающую программу.

За неделю занятий вы сможете:

  • Писать и запускать свой код.
  • Объявлять любые типы данных.
  • Делать простые вещи с помощью циклов и условных операторов.
  • Работать с массивами, строками и числами; производить математические операции.
  • Объявлять функции.
  • Работать с объектами.
  • Если изучаете JavaScript и HTML, то вы даже сделаете простую интерактивную веб-страницу.

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

⚠️ Подводный камень: вам может начать казаться, что теперь вы умеете программировать, и вы начнёте решать все данные вам задачи теми базовыми инструментами языка, которые вы знаете. Часто ваши решения будут громоздкими и нестабильными. Как с этим быть — вы узнаете дальше.

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

1—3 месяца: основные задачи, которые решают этим языком

Следующий этап — вы начинаете погружаться в специфику языка программирования и узнавать, какие именно задачи им лучше всего решать и как. Это этап узнавания основных паттернов языка.

На примере фронтенд-разработки:

  • Вы начинаете использовать фреймворки для работы с веб-страницей.
  • Узнаёте про стандартные компоненты интерфейсов.
  • Начинаете общаться с сервером с помощью асинхронных запросов.
  • Познаёте силу современных верстальных инструментов типа CSS Grid.
  • Учитесь показывать всплывающие и модальные окна, валидировать формы, настраивать анимации.

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

⚠️ Очень важно здесь не впасть в состояние самоуверенности. На этом этапе вы ещё не можете идти на работу разработчиком, но уже можете идти джуном, например писать документацию и заниматься рутинной технической работой.

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

3—6 месяцев: фреймворк, или набор инструментов для решения специфической задачи

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

  • В случае с веб-разработкой это будут Angular, Vue или React — смотря куда вас понесёт.
  • Если вы пишете на Python — вы начнёте специализироваться на каком-то виде вычислений: либо провалитесь в веб-разработку и Django, либо начнёте глубоко изучать математические и визуализирующие библиотеки.

✅ После этого этапа вы уже уверенный разработчик, которого можно нанимать на коммерческие задачи.

⚠️ Вы ещё не знаете, что работа в ИТ-компании — это не только разработка (и далеко не она).

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

6 месяцев и далее: отраслевой опыт, лучшие практики и боль работы в ИТ-компаниях

Где-то здесь вы уже начинаете искать работу и попадаете в свою первую ИТ-компанию. Скорее всего, первая работа будет на позиции джуна, хотя по уровню знаний вы уже можете претендовать на позицию мидла.

Тут вам открывается, что работа в ИТ-компании несколько больше, чем просто разработка. А именно:

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

✅ Вы будете уставать и выгорать, но если вы справитесь с этим этапом, у вас откроется второе дыхание и вы станете настоящим мастером разработки.

⚠️ Раньше вы смеялись над людьми, которые выгорают, работая за компьютером. Теперь вы этот человек.

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

12—24 месяца: оптимизация, рефакторинг, политика

Пройдя долину выгорания и скучных задач, вы узнаете о себе три вещи:

  • В мире разработки есть вещи, которые вам искренне интересны.
  • Если применить софт-скиллы и навыки переговоров, вы сможете загрузить себя именно такой работой. А всё неинтересное скинуть на других бедолаг.
  • Программирование — это своего рода спорт высоких достижений. Ваша программа может работать быстрее.

Это этап, на котором вас начинает раздражать легаси-код. Вы хотите всё переписать под новые фреймворки, оптимизированные под новое железо. Вы начинаете заморачиваться читаемостью кода, скоростью работы и нагрузкой на исполняющие машины; у вас на столе появляются классические учебники по алгоритмам. Вы наконец-то прочитали «Искусство программирования» и всё там поняли (хотя эта книга была у вас уже год).

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

⚠️ Простые люди перестают вас понимать, считают гиком и занудой.

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

2—5 лет: вставки на ассемблере, экзотические языки, духовность, квантовая физика

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

Если говорить языком автомобилей, вы разбираете свою машину до двигателя и растачиваете цилиндры, чтобы добавить ещё сотню лошадиных сил.

Вы начинаете изучать ассемблеры, но теперь с полным пониманием, зачем вам это.

Чтобы отвлечься от мыслей об оптимизации кода, вы начинаете программировать микроконтроллеры и случайно воссоздаёте Doom на инженерном калькуляторе.

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

❌ Люди боятся говорить с вами о разработке.

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

6+ лет: сопромат, проектирование загородного дома

Вы в понимании разработки уже так преисполнились, что решаете любую задачу силой мысли. Ваша клавиатура — кастомная 12-клавишная разработка с десятью функциональными слоями. Вы напечатали её на 3Д-принтере, а логическую плату для вас изготавливали в Гонконге.

Вы начинаете задумываться о других аспектах своей жизни:

  • Начинаете думать о покупке земли и строительстве дома. Правда, дом вам интересен в первую очередь как инженерный проект: можно ли его сделать полностью автоматизированным, используя микросхемы времён СССР?
  • Нейронка на вашем облачном сервере считает идеальное расположение несущих конструкций вашего будущего дома.
  • Вы изучаете вопрос создания собственной системы навигации на базе ГЛОНАСС, чтобы промаркировать своих будущих кур и гусей. Телеметрия и дистанционная ветеринария. Математические модели для выпаса овец. Квадрокоптер-пастух. Непрерывное энергоснабжение. Лазерное энергоснабжение.
  • Однажды на рыбалке вам является оптимизация кода в одной из рабочих задач. Вы видите красоту в движении волн.
  • Глядя на водную рябь, вы размышляете о критериях разумности машин.
  • Вы используете Linux с доработанным вами же ядром. Вам не нужен монитор.
  • Вы из тех людей, которые входят в комнату, и все компьютеры резко перестают глючить.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *