{"id":14287,"url":"\/distributions\/14287\/click?bit=1&hash=1d1b6427c21936742162fc18778388fc58ebf8e17517414e1bfb1d3edd9b94c0","title":"\u0412\u044b\u0440\u0430\u0441\u0442\u0438 \u0438\u0437 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0434\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0437\u0430 \u0433\u043e\u0434","buttonText":"","imageUuid":""}

Как я наконец начал изучать программирование с нуля после 6 лет откладываний (+ Notion-шаблон моей системы обучения)

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

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

Эта статья – не пошаговый план освоения программирования с нуля от опытного разработчика с 10-летним стажем.

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

Краткая предыстория

Еще со школы я интересовался программированием. Я понимал, что это перспективное направление и, возможно, с моим аналитическим складом ума это занятие будет мне по душе.

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

Но за годы я так и не продвинулся в этом вопросе ни на шаг. Всё время были какие-то отговорки:

  • В школьные годы: «вот поступлю в универ, там и буду изучать»
  • Когда учился в университете: «у меня сейчас нет на это времени, я и так учусь и работаю»
  • После окончания университета: «это надо записаться на дорогостоящий курс, да и времени особо нет»

Суть подхода

Чтобы попробовать и понять твоё-не твоё необязательно поступать в университет или покупать дорогостоящий курс. Необязательно увольняться с работы и с головой окунаться в обучение по 8 часов в день (как советуют в некоторых видосах на YouTube).

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

В основе подхода лежит принцип маленьких шагов. Я намеренно не ставил себе минимальную планку по типу «2 часа изучения программирования в день». Мозг будет противиться и всячески избегать такую большую задачу. Я решил, что главное – заниматься каждый день, без пропусков. Пусть даже 10 минут в некоторые дни, но это лучше, чем ничего.

Быстро – это медленно, но без перерывов

Если бы я год назад начал заниматься программированием хотя бы по 20-30 минут в день, то сегодня уже имел бы неплохую базу.

В итоге решил попробовать сразу два языка программирования: Python и Swift. Нашел бесплатные материалы и начал обучение.

Инфраструктура

Система обучения состоит из трех инструментов:

  • Notion – база данных. Организуем материалы для обучения, пишем конспекты
  • Google-таблицы – расписание и трекер прогресса
  • Таймер

Notion

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

У меня есть страница под названием «3. Programming». «3» – потому что это третья по приоритету цель на год. Под каждую важную цель/сферу у меня есть страница в Notion.

На главной странице ещё три страницы:

  • Project ideas – идеи мини-проектов, которые я хочу реализовать. Какие-то скрипты, небольшие программки для автоматизации.
  • Python и Swift – языки программирования, которые я изучаю.

Рассмотрим страницу «Python»

Первый элемент – простая канбан-доска с материалами, которые я хочу изучить. Каждый элемент имеет 3 параметра:

  • Статус – Not started, in progress, completed
  • Тип – Книга, видеоурок, текстовый или интерактивный курс
  • Ссылка

Одновременно в столбце In progress может быть не более 2 обучающих материалов, чтобы не распыляться и доводить начатое до конца.

Чуть ниже канбан-доски располагаются конспекты уроков. Конспекты делаю в первую очередь для себя, но так же делюсь ими в своём Telegram-канале. Удобно освежить в памяти пройденный материал.

В Notion есть специальный блок для вставки кода. Можно выбрать язык для подсветки синтаксиса.

Google-таблицы

Google-таблицы я использую как расписание и трекер прогресса. Решил, что буду чередовать изучение Python и Swift. В трекер добавил и другие цели помимо программирования.

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

Двигаюсь небольшими шагами, но регулярно. Можно быстро стартануть (учиться по 5-8 часов за день), но перегореть и забросить это дело.

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

Такой трекер реально работает для меня. Когда вечером нет сил и хочется посмотреть сериальчик, напрягать мозги и изучать Python – последнее, что хочется делать. Но если ты сегодня пропустишь занятие у тебя нарушится шахматная структура в таблице)

Таймер

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

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

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

Таймер можно использовать любой. На телефоне это может быть стандартный секундомер. На компьютере я использую таймер таск-менеджера TickTiсk в режиме Фокус.

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

Итог

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

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

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

P. S. Благодарю за прочтение этой статьи. Надеюсь, вы получили для себя пользу.

Если вам понравился этот материал, можете заглянуть в мой Telegram-канал «Изучаю Python и Swift с 0». Там я делюсь материалами по Python и Swift, которые изучаю, и скидываю конспекты по урокам.

Подписывайтесь, будем развиваться вместе: https://t.me/pyswift

0
102 комментария
Написать комментарий...
Buck Mulligan

У меня вот дилемма. Я аналитик в fmcg компании. Работаю с большой базой данных через M язык и dax. Мне вроде этого хватает. Но, думая о будущем, есть желание начать учить что-то новое: то ли sql, то ли python, то ли R. Желаю и дальше расти в аналитике. Может даст кто совет?

Ответить
Развернуть ветку
Alexander Shibaev

SQL. Неплохой задачник - sql-ex.ru
Берите руководство условно по PostgreSQL и вперёд.
Имхо, для погружения в SQL на нормальном уровне нужен месяц, не больше. Условно для ваших задач точно не больше.
Питон и R успеете выучить.

Ответить
Развернуть ветку
99 комментариев
Раскрывать всегда