Приложение Т—Ж
В нем читать удобнее

«Вам нужно понять суть»: 5 сове­тов тем, кто самостоятельно изучает программи­рование

Рекомендации читателей
5
«Вам нужно понять суть»: 5 сове­тов тем, кто самостоятельно изучает программи­рование
Аватар автора

Елизавета Сопруненко

не стала программистом

Страница автора

Войти в ИТ без профильного образования в колледже или вузе сложно, но возможно.

Читатели Т⁠—⁠Ж дали рекомендации, как стать хорошим программистом-самоучкой. Присоединяйтесь к обсуждению и делитесь своими советами в комментариях.

Это комментарии читателей из Сообщества. Собраны в один материал, бережно отредактированы и оформлены по стандартам редакции

Лейбл заголовка

Изучайте технологию и то, какую проблему она решает

Аватар автора

Я из Миссури

все понимает

Страница автора

Я уже почти 10 лет работаю Java-разработчиком, самоучка.

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

На собеседованиях, особенно на джуна, гораздо важнее не то, что вы знаете, а то, как вы думаете. Не все сеньоры смогут с ходу ответить, как конкретно работает HashMap. Но хорошего программиста отличает то, что он понимает, как устроена такая структура.

Я, например, на своем последнем собеседовании не смог точно объяснить, как обрабатывается совпадение хешей  , но понимания принципов мне хватило, чтобы почти заново изобрести его.

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

Вникая в новую технологию, спрашивайте себя: а зачем она? Какую задачу она решает? Постарайтесь это понять или даже попробовать справиться с проблемой без этой технологии. Например, как забить гвоздь без молотка? Можно, к примеру, камнем. Но неудобно же! Тогда, изучая молоток, вы сразу поймете: ага, длинная ручка нужна, чтобы рычаг был больше, камень приделан к ее концу, а для увеличения точности удара можно взяться поближе к наконечнику.

Лейбл заголовка

Создайте реальный проект, чтобы практиковать навыки

Аватар автора

Никита Зимин

не бросает учебу

Страница автора

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

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

Аватар автора

Big Bug

делится идеями

Страница автора

Чтобы не терять интереса к освоению языка программирования, можно сразу пробовать силы в разработке реальных проектов. Из того, что выглядит наиболее интересно:

  1. Драйвер Windows или гипервизор  для обхода сильных античитов  .
  2. Криптор исполняемых PE-файлов  для обхода антивирусных решений.

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

Лейбл заголовка

Изучайте бесплатный контент в интернете

Аватар автора

Алиса Селезнёва

училась бесплатно

Страница автора

Рекомендую два отличных бесплатных курса по основам объектно-ориентированного программирования на Python. Это лучшие курсы для айтишников, которые я видела. В них вся база — синтаксис, структуры данных, циклы:

Начните с них, ибо бесплатно, а то вдруг программирование не зайдет, и будете жалеть, что купили дорогущее обучение. А если захотите жести и алгоритмов, советую курс от Computer Science Center, тоже бесплатный.

Аватар автора

Михаил

смотрит видео

Страница автора

Найдите самоучители хороших авторов и каналы на «Ютубе» с обучающими видео. Признак хорошего автора или канала: материал разжевывается от и до, описание каждого оператора касается и его подкапотной работы. Там вам доступно объяснят различия тех или иных вещей, и вы начнете примерно понимать, что и почему следует использовать в конкретных реализациях.

Лейбл заголовка

Практикуйтесь на тренажерах

Аватар автора

ET C

не ограничивается зубрежкой

Страница автора

Начинайте с практики в виде тренажеров типа LeetCode с уровнями сложности и анализом решений. Что непонятно — гуглите, пока не станет понятно. Вам нужно разобраться в сути и научиться свободно применять информацию в дальнейшем.

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

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

Лейбл заголовка

Проверяйте код с помощью ИИ

Аватар автора

Никита Зимин

уважает технологии

Страница автора

Сегодняшние студенты живут в прекрасном мире, где можно просто прислать ChatGPT или Claude ошибку. И с большой вероятностью они скажут, что не так, даже не видя код. Раньше процесс обучения порой был подобен аду, когда ищешь по несколько дней какую-нибудь ерундовую ошибку.

Елизавета СопруненкоЧто бы ​вы посоветовали тем, кто только входит в ИТ?
  • Vasya PupkinЯ по образованию инженер-механик. По специальности не работал ни дня - сразу "пошел в программисты", прием когда пошел ничего в этом не понимал (и даже не понимал, что не понимал, а то бы не пошел). Ну да пришлось учится на лету и довольно тяжело (помогло то что в то время на рынок выкатывались совершенно новые вещи для освоения которых профильное образование нафиг не нужно было) Честно гвооря я вообще к профильному IT образованию отношусь крайне скептически как к... недообразованию... Даже то фундаментальное что там преподают востребовано едва-ли 5% существующих рабочих позиций. А вот заниматься тем, чем обысно занимаются в ИТ компаниях в профильных учебных заведениях не учат совсем. Даже программированию там учат.. вот ей-богу лучше бы не учили этому совсем! И я сейчас не только про российские ВУЗы говорю - общая тенденция! Да вы конечно можете поступить в MIT, проучиться на кафедре ИИ 8 лет (это реальные сроки если что) и... это будет действительно круто! Но... вы будете ученым... возможно даже крутым, и почти наверняка востребованным. Но.. это не совсем ИТ (согласен это круто если сдюжите, но это даже не 5% - 0.001%!) А что насчет банального CS? да ничего! Вам там будет весело, вы узнаете множество интересных вещей которые вам скорее всего нигде не пригодятся, а работу будете искать как.. как человек который нихрена не умеет. Лечится очень просто - студент должен работать! прямо с первого курса. Возможно даже бесплатно. И это единственный способ войти в ИТ - университет вам может добавит уважения (плюс ВО все равно карйне желательно получить - все равно какое, а если повезет то и не одно), но не является обязательным. так что.. самообразование + практика. Не важно где вы учились или учитесь. Если вам таки потребуется более глубокое изучение фундаментальных дисциплин, просто пойдете учиться без отрыва от производства - именно когда потребуется. Моя дочь позавчера получила сообщение из университета Хельсинки, что она принята на программу обучения по специальности биохимия (это еслди упрощать). Но при этом она еще в школе прогла университетский курс программиирования на питоне, а в последний год училась в школе программирования (golang, JS/TS) и уже месяц работает как стажер с оплатой 25 евро в час (да это не много, но это вообще-то первая оплачиваемая работа, плюс... ну.. поэоже делать ей там особо ничего не надо - только учиться - 15-20 часов в неделю). Как связана университетская специальность и программирование? Никак! Программирование это ремесло, которое пригодится, а иногда и требующееся в почти в любой профессии требуюшей ВО (даже гуманитарной). А вот программирование без опыта/знаний в какой-то другой области/профессии на сегодняшний день обладает крайне низкой ценностью - учитывайте это и используте то что у вас есть или то что сравнительно легко можете получить1
  • Zufalligeule1. Выбрать приглянувшийся язык из наиболее популярных и изучить пару самых базовых уроков. 2. Найти среду разработки, которая работает "из коробки". Особенно, если вы собрались пробовать что-то сложное вроде С++. 3. Попытаться сделать на нем что-нибудь, что выглядит для вас интересным и реализуемым. Вне зависимости от того, нужно ли оно кому-то ещё. 4. Не понравился язык? Возвращайтесь к п.1. Если язык нравится - повторяйте п.3, периодически увеличивая сложность задачи.1
  • sn1pejkeeeЕсли хотите, как профессию, то выбирайте что-то ещё. Рабочие места сокращаются, агенты перекраивают рабочий ландшафт, неизвестно, сколько вообще останется людей в области всего через несколько лет. Если просто для себя что-то сделать, то вам хватит подписки на любую сильную ллм без особого понимания, что она делает. В российском айти ловить абсолютно нечего. Не тратьте свое время.0
  • Елизавета Сопруненкоsn1pejkeee, что бы вы посоветовали?0
  • Vasya Pupkinsn1pejkeee, по поводу российского ИТ полностьб согласет, а пот насчет "подписки на любую сильную ллм без особого понимания, что она делает"... ну что-ж вы явно демонстрируете это самое "без особого понимания" Программирование превращается из профессии в прикладной навык который неоходим в очень мноших профессиях - ну все наверное слышали, что когда-то умение читать и писать было профессией. А сейчас это обязательный навык обязательный в любой профессии. Так-же и с программированием... при этом профессия раработчика ПО никуда не исчезнет (также как и сейчас умение читать и писать в определенном смысле тоже может быть основой тех или иных профессиий), но при этом содержание этой (правильнее сказать "этих") профессиий будет изменяться - уже меняется. А производительность труда там резко вырастет. Будет ли сокращаться количество вакансий? поначалу да (на протяжении пары лет), но потом опять начнет расти. Будут ли расти зарплаты? у основной части разработчиков - нет. у 3-5% будут и сильно. Еще процентов 10-15 - умеренно. Это все носители неких доменных знаний0
Сообщество
Светлана Пушкарёва
Светлана Пушкарёва
Моя анкета: Светлана Пушкарева