Все статьи | Дневник студента

Пере/за/грузка

Пере/за/грузка главное изображение

Большинство людей не хочет плавать до того, как научится плавать

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

Меня зовут Геннадий, мне 28 лет. Учиться программированию начал в конце 2019 года. Было сложно прийти к этому решению, и потребовался не один год, чтобы понять, чем я хочу заниматься в жизни. В этом мне помог тест, который проходят многие американские школьники (MBTI). Он определяет тип личности и дает рекомендации по выбору профессии. Среди моих рекомендаций числятся: аналитик, архитектор и программист.

Первые попытки программирования я предпринимал еще в школе. Это была обычная анимация двухмерного плывущего парусника на бейсике. Тогда это не показалось мне интересным. Я любил компьютерные игры и рисовать, поэтому начал изучать 3Ds Max. Обучение шло крайне медленно, но у меня стали получаться простые трехмерные модельки бытовых предметов. Когда нужно было определяться с универом, я начал искать кафедры, где обучают трехмерному моделированию, но не нашел ничего путного, кроме текстильного университета. На этом мое увлечение закончилось и я пошел, «как все» на экономиста. Как итог - больше пяти лет проработал в продажах. Основная причина, по которой я не начал менять профессию сразу - это страх. Я начинаю обдумывать идею и все сопутствующие трудности наперед, до того момента, пока она не кажется неподъемной. Как я стараюсь справляться с этим? - разбивать глобальную цель на более мелкие.

Про обучение

Есть люди, которые восполняют свою энергию с помощью других, их мотивирует поддержка родных/друзей, статьи и ролики в интернете. В моем случае лучше работает другой подход и он касается не только программирования. Когда я вижу плохой код, у меня возникает желание это поправить или улучшить. Куда можно идти за такими примерами? в Телеграм-чаты, где люди просят помощи в решении задач. Еще есть много новичков в слаке Хекслета, которым тоже можно помогать и закреплять пройденный материал. У меня также присутствуют проблемы с ленью. Окончательного железного аргумента по борьбе с ней я еще не изобрел, но вот пара мыслей на эту тему:

  • Мотивация имеет краткосрочный эффект, а дисциплина - долгосрочный. Уделяя определенное время в день программированию, вы приучаете мозг к нагрузке, и он со временем перестает сопротивляться.
  • Да, мозг сопротивляется и обманывает вас, для того, чтобы делать меньше работы. Могут возникать мысли: «У меня не получится. Слишком сложно для меня. Это занятие мне не подходит, найду более интересное, где будет интересно каждую секунду».
  • Обмануть мозг сложнее, чем тело при походе в спортзал. Он гораздо изобретательнее и изощреннее. Для борьбы я использую систему поощрений - кофе или сладкое, но только после выполнение задачи.
  • Любая хорошая вещь в жизни достается через боль и преодоление трудностей. Почти вся полезная еда по вкусовым качествам уступает гамбургеру.

О способе подачи информации

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

Почему подход Хекслета работает? Потому что он направлен в первую очередь на выстраивание модели мышления. Наша «человеческая» память устроена так же, как и компьютерная. При обращении, мозг ищет «ассоциацию» и выдает ответ. Если в компании несколько людей с одинаковыми именами, то вы гораздо лучше запомните того, у кого есть прозвище или характерная черта. Ассоциации выстраивают связь между понятиями и помогают применить предыдущий опыт. «Неподписанные» ячейки памяти перезаписываются текстом новой рекламы с билборда. Кому интересно изучить тему памяти - почитайте книжку «Фокусы и развлечения» Я.И. Перельмана.

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

О Практике

Этот блок будет коротким, потому что сам не обладаю достаточной компетенцией для полного раскрытия темы. В начале обучения мне помог портал freecodecamp. Он дает практические задачки после каждой темы. Когда уже есть небольшая база - можно порешать задачки на:

Для практики я люблю использовать песочницы:

  • CodePen - подходит для небольших задач.
  • CodeSandbox - более мощный инструмент.

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

Хорошим вариантом для портфолио будет персональная страничка. Захостить её можно на GitHub Pages. Туда же можно залить ссылки на все свои проекты для демонстрации потенциальным работодателям.

Про сложности

Когда я не могу найти решение задачи, то применяю несколько приемов. Некоторые мне подсказал мой наставник (Спасибо, Ирина!:) Метод утенка - Когда не знаешь, как подступиться к задаче - формируешь в голове вопросы и задаешь вслух вымышленному помощнику. В правильно заданном вопросе кроется бОльшая часть решения.

Иногда для лучшего мыслительного процесса надо поместить себя в зону максимальной концентрации. Для меня эта пешие прогулки. Со стороны, наверное, это выглядит странно, когда я иду по улице и задаю вопросы невидимому «утенку».

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

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

Аватар пользователя Геннадий Казанцев
Геннадий Казанцев 01 сентября 2020
Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
30 июня 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
30 июня 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
30 июня 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
30 июня 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
30 июня 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
30 июня 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
30 июня 5 месяцев