Эффективное обучение для программистов

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

Каким-то образом я нашел покой и убежище в коробке схем и транзисторов

Я помню свой первый компьютер, и я всегда благодарен, что меня познакомили с ним, мой первый компьютер был довольно старым и очень медленным, 128 МБ оперативной памяти недостаточно даже для открытия современной веб-страницы, тем не менее, он составлял мне компанию в течение бесчисленных часов и дней одиночества. и больше всего я помню запах книги «Язык программирования C», которая шла в комплекте… это была первая книга по программированию, которую я прочитал от корки до корки, и я до сих пор не знаю многих уголков C, но каким-то образом эта книга сформировала способ, которым я научился за эти годы, даже в настоящее время в колледже.

Тенденции приходят и уходят, но мои основы по-прежнему вечны

Основы — это все, основа того, что вы знаете прямо сейчас и все еще используете, — это логика программирования (алгоритмы, циклы, условия, функции…). речь идет только о синтаксисе, и собственные особенности языка будут изучаться вместе, постоянно пересматривайте свои основы и будьте их мастером, а не мастером на все руки.

Учиться программисту тяжело, мне еще тяжелее, и многие на это жалуются, но позвольте мне сказать вам по секрету, что это всего лишь вопрос ясности, и я вам это докажу.

Возьмите чистую страницу бумаги и запишите, что вы хотите изучить, будь то язык, фреймворк, протокол, алгоритм, структура данных или, черт возьми, даже новый предмет, и напишите это в конце статьи КОНЕЦ, теперь у вас есть цель. Помните все эти сериалы о выживании («Остаться в живых», «Ходячие мертвецы»…) общим является то, что главный герой не сосредотачивается на достижении цели, а на самом деле понимает ситуацию и расставляет приоритеты в шагах для достижения этой цели (источник воды и еды, приют…).

Вернемся к листу бумаги… Нарисуйте простую таблицу из двух столбцов и назовите их.

время | предмет

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

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

Я имею дело с JSON, базами данных, запросами и файловыми системами, хм, хорошо, давайте запишем процесс обучения.

  • ДЕНЬ 1–2: Изучите синтаксис
  • День 3: давайте решим несколько упражнений, чтобы упростить понимание синтаксиса.
  • День 5: Охладите библиотеку JSON, давайте начнем проверять, как она работает, я постараюсь создать простые документы, разобрать их… играть с библиотекой всегда играть с ней
  • День 5: Хм, это объектно-ориентированный язык, давайте узнаем больше об объектах и ​​напишем простой класс.
  • День 6: о боже, python — лучший язык, давайте напишем инструмент для парсинга этих документов JSON в базу данных SQL.
  • День 7: генератор? Что это? О, у Python может быть функциональная парадигма, давайте рассмотрим это подробнее
  • День 9: Мне нравится этот API, давайте поиграем с ним. О, запросы, это прекрасная библиотека, давайте ее использовать
  • День X: я перейду на pypy, пока мой ИИ строит мой молниеносно быстрый интерпретатор, начну использовать pep8 и стану питонистом.

Теперь это выглядит довольно глупым планом, но попробуйте его не для Python, а для того фреймворка, который вы хотели изучить, или того языка, который вы хотели попробовать…

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

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

Это помогает защитить вас от потери мотивации, предотвращая многозадачность, которая просто не работает, а также организует структуру конечного объекта в вашем мозгу.

Счастливого обучения