Самоконтроль времени на самообразование и время на чтение книг

Работа программистом предполагает постоянное обязательное самообучение. Самообучение включает в себя, во-первых, углубление знаний в уже знакомых сферах, и, во-вторых, получение навыков в неизвестных и пропущенных областях. Это всё, конечно, красиво звучит на бумаге, но по факту мы ещё имеем приступы лени, застревания в стеке технологий и выгорание от рутины. Новые ощущения помогают в борьбе с тёмной стороной разработки. Вот только ощущения должны быть действительно новыми: разбираться в десятый раз с нюансами «новых» api от очередной социалки быстро становится завуалированной рутиной.

Самоконтроль времени на самообразование и время на чтение книг

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

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

Основное решение тут простое и всем известное: самообразование. Оно может принимать разные формы: дополнительный проект для хобби; образовательные курсы и семинары (текст / аудио / видео); конкурсы и соревнования; книги. Для меня самыми полезными и эффективными стали книги, поэтому на их примерах и будут описаны применяемые мной методы контролируемого обучения.

В чём проблема? Бери и читай!

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

Вот с чем легче провести время отдыха: «Эгоистичный ген» Докинза или «Совершенный код» Макконелла; «Кровь, пот и пиксели» Шрайдера или «Паттерны проектирования» от Фрименов? (Хотя справедливости ради стоит добавить, что все эти книги были самыми увлекательными в списке)

Вот начал полезную книгу. Теперь всё хорошо?

А вот нет. За собой заметил, что впервые начав читать Совершенный код Макконнелла, замедлился в чтении где-то на середине. И как-то незаметно можно сделать перерыв в неделю, две недели… потом почитать часок… и опять пауза на неделю. Эдак одну книгу годами можно читать, но так и не закончить, но ложное чувство постепенного прогресса при этом всё равно присутствует. А чувство стыда за большие перерывы незаметно отбивает всякое желание возвращаться к предмету, который доставляет столько неприятных переживаний.

Так кто же враг?

Моим врагом было отсутствие наглядности. Когда не видишь постоянно насущную задачу, то её вроде как и нет. И можно отложить её в долгий ящик. Для решения этой проблемы у меня не было инструментов, но подходящий для себя я всё же нашёл. И это простая таблица карьерного капитала в Google Docs. Сойдёт вообще любая таблица, в том числе и в бумажном виде. Нашёл я эту методику в книге Нюпорта «В работу с головой». У него там несколько методик, но мне подошла именно эта.

Методика «Таблица карьерного капитала»

Самоконтроль времени на самообразование и время на чтение книг

Базовые правила:
1) Создать таблицу с 3 столбцами: Дата; Затраченные часы; Выполняемые задачи.
2) В конце каждого дня заполнять очередную строку таблицы. В «Выполняемые задачи» вносится список значимых для самообразования задач и сколько часов в каждую из задач было инвестировано. В «Затраченные часы» сумма часов по задачам.
3) Если за день не было выполнено ни одной задачи, то ставить прочерки и нули, чтобы они мозолили глаза.
4) Включать в список только значимые для своего самообучения задачи. Ремонт в квартире часто может быть важнее самообразования, но включать его сюда не стоит. Впрочем, это правило очень размытое.
5) Задачи предпочтительнее ставить в формате SMART, то есть быть: конкретными (прочитать книгу А); измеримыми (прочитана и понята 1 книга); достижимыми (я уже читал подобные книги и эту осилю); актуальными (мои алгоритмы тормозят! С этим надо что-то делать); с указанием крайнего срока сдачи (максимум 2 месяца на прочтение).
6) Общее число текущих задач не должно быть слишком большим, чтобы не распыляться. Для меня это примерно 6 задач. При этом строго соблюдается правило, что единовременно нельзя читать больше 2 книг.
7) В конце месяца суммируются все часы и сравниваются со средним Вашим показателем. Если больше среднего — чувствуем себя очень хорошо; если ниже среднего — всё равно чувствуем себя хорошо; если ниже поставленного обязательного минуса — чувствуем себя нехорошо и либо корректируем своё поведение, либо снижаем минимальную планку.
Вот и всё — метод очень простой. За подробным описанием с примерами можно обратиться к одной из книг Нюпорта.

У себя я вношу часы с градацией 0,25 часов (15 минут).
В месяц у меня выходит от 30 до 120 часов.
Минимальная планка: 30 часов.
Средняя планка: 60 часов.
Таблицу можно уточнять, усложнять и украшать разными диаграммами для приятной визуализации.

А бонус этого подхода в том, что Вы узнаёте, сколько же реального времени у Вас занимает чтение одной книги. Да и вообще, что именно Вы чаще читаете.
Ниже я привожу часть книг с их чистыми затратами на прочтение. Сначала технические, потом общеобразовательные и пограничные (список нехронологический).
— [40,25 ч.] Совершенный код. Макконнелл.
— [1,75 ч.] Scrum гайд и стратегии.
— [34,50 ч.] Искусственный интеллект в компьютерных играх. Алекс Дж. Шампандар.
— [26,50 ч.] Паттерны проектирования. Фримен, Фримен, Сьерра.
— [24,75 ч.] (English) Шаблоны в игровом программировании. Робер Нистром.
— [17,50 ч.] Эгоистичный ген. Докинз.
— [5,50 ч.] Воспитание ребенка. Гипенрейтер.
— [8,00 ч.] В работу с головой. Нюпорт.
— [12,75 ч.] (English) Гарри Поттер 1.
— [9,75 ч.] (English) Гарри Поттер 2.
— [11,25 ч.] (English) Гарри Поттер 3.
— [22,75 ч.] (English) Гарри Поттер 4.
— [26,75 ч.] (English) Гарри Поттер 5.
— [18,25 ч.] (English) Гарри Поттер 6.
— [19,75 ч.] (English) Гарри Поттер 7.
— [5,50 ч.] Фрирайтинг. Марк Леви.
— [13,00 ч.] (English) How to win friends. Cornegey.
— [4,25 ч.] Макиавелли. Государь.
— [7,50 ч.] Кровь, пот и пиксели Шрайера.
— [23,75 ч.] Все о цвете. Линдси.

Заключение

Сухие цифры говорят, что технические книги читаются лишь с немного меньшей скоростью, чем более легкие или художественные. Просто технические в несколько раз толще. И за раз много технической литературы впитать очень сложно.
Кстати, хочу заметить, что наличие некоторых книг в списке не означает, что они мне понравились и я бы их рекомендовал кому-то, кроме своих врагов. Поэтому рекомендательным списком его воспринимать никак нельзя.
Для игровой разработки я могу посоветовать: «Совершенный код»; «Паттерны проектирования»; «Шаблоны в игровом программировании»; «Кровь, пот и пиксели»; «Все о цвете».
В комментариях было бы замечательно увидеть и Ваши списки рекомендуемых книг.

Источник: habr.com