Как оставаться продуктивным весь день — советы по программированию и составлению расписания
Источник:
Free Code Camp
Я всю жизнь неправильно писал код.
Я думал, что можно просто сесть за стол, открыть свой ноутбук, взять задачу из своего списка дел и писать код, пока не почувствую усталость.
Но на самом деле этот стиль работы всегда убивал мою продуктивность после двух-четырех часов написания кода. Я так уставал, что не хотел делать ничего, кроме элементарных задач (например, ревью кода).
Сегодня я могу писать код больше восьми часов в день, и даже после этого не чувствую себя усталым
Что изменилось?
Мой подход к работе.
После 62 с лишним книг по саморазвитию, десятков статей и исследований о продуктивности, а также массы проб и ошибок я разработал систему продуктивности, которая помогает мне писать код, творить и жить на полную без промедления, усталости и каши в мозгах.
Моя система продуктивности
Моя система продуктивности основана на трех основных принципах:
- График.
- Задачи на завтра.
- Система 69.
Рассмотрим подробнее каждую из них.
Создаем расписание
Все начинается по расписанию. Что, где и когда я выполняю свои задачи.
Мое расписание выглядит так:
Я использую доску, чтобы постоянно напоминать себе о том, что мне следует делать в тот или иной момент.
Я всегда пренебрегал расписанием, думая, что знаю, что и когда мне следует делать. Но на самом деле я всегда забывал заниматься повседневными делами, даже когда казалось, что у меня выработалась привычка.
Например, когда я просыпался в 7:00 утра, я знал, что у меня есть один свободный час до работы. В этот час мне хотелось провести утренние ритуалы (завтрак, зарядка, душ) и почитать 30 минут.
Но часто утром я забывал найти время на чтение. Я тратил лишнее время на одно занятие (завтрак) за счет другого (чтение).
А еще без расписания я тратил много времени, решая, что мне делать дальше. Я мог закончить тренировку днем, принять душ, сесть за стол, открыть ноутбук и в течение 10 минут думать, какое задание выбрать следующим.
Если посчитать, сколько времени занимает принятие этих решений каждый день, то эти 10 минут превращаются в 60 минут. Один час! Это очень много.
Другое дело, что в процессе принятия решения о том, что делать дальше, на моих плечах всегда сидели ангел и демон, которые «помогали» решить, следует ли мне работать над важными вещами или делать легкую работу, или даже сделать перерыв, чтобы расслабиться. Мне часто приходилось использовать силу воли, чтобы заставить себя делать «правильные» дела без расписания.
Когда я составил график, эти проблемы исчезли. Теперь у меня всегда есть время сделать то, что я задумал.
Я всегда знаю, что мне делать дальше. Мне не нужно использовать силу воли, чтобы заставить себя делать важные дела. График переводит мой процесс принятия решений на автопилот.
Если вы хотите составить расписание, я рекомендую использовать для этого календарь Google. Таким образом, вы можете легко редактировать свой график или делиться им с кем-то другим.
Кроме того, я рекомендую хранить свое расписание на листе бумаги или повесить на доске, чтобы всегда напоминать себе, что, где и когда вам следует выполнять.
Составляем список дел на завтра
Если расписание помогает решать, что, где и когда мне следует делать, список дел помогает уточнить перечень заданий. Я мог провести «идеально спланированный» день, но все равно не сделать того, что было для меня важно.
Вот здесь-то и появляется список дел. Он помогает мне поставить процесс принятия решений на автопилот и тратить на это меньше времени и когнитивных ресурсов. Также он гарантирует, что я буду делать только необходимые вещи (большую часть времени).
Мой список дел прост: я использую обычный бумажный блокнот, чтобы составить его, и
Notion в качестве цифровой копии.
Список дел на завтра я создаю вечером.
Почему?
Когда вы планируете свой день утром, вы думаете о каждой задаче, которую нужно выполнить в этот день. Это нормально, когда задача ясна и проста, и вы знаете, что делать (например, «проверка кода Джона»).
Но когда вы не знаете, что именно нужно сделать, требуется время, чтобы это понять. Например, когда ты знаешь, что тебе нужно написать статью, но не знаешь, о чем. Потребуется время, чтобы изучить свои идеи и выбрать правильную тему для написания.
Помимо этого, есть вероятность, что вы попадете в ловушку своего мыслительного процесса (когда вы начнете воображать результаты, детали, процессы и другие различные вещи, связанные с задачей, то вы потратите на это 5, 10, 15 или даже больше минут ).
Создание списка дел утром отнимает у вас наиболее продуктивное время. Поэтому список дел на завтрашний день лучше всего составлять в конце дня.
Система 69
Когда я начинал писать код, я делал это так:
- Открываю ноутбук.
- Запускаю редактор кода (VSCode).
- Выбираю задачу.
- Пишу код, пока не устану.
- Делаю перерыв (провожу время в социальных сетях).
Нормально выглядит? Я полагал, что да. Пока не прочитал о методе Pomodoro.
Это способ управления временем, при котором вы разбиваете работу на интервалы, обычно продолжительностью 25 минут, разделенные небольшими перерывами. Например, 25-минутная работа с кодом и 5-минутный перерыв после. Вы делите на такие перерывы весь рабочий день.
- Написание кода 25 минут.
- Перерыв 5 минут.
- Написание кода 25 минут.
- Перерыв 5 минут.
- Написание кода 25 минут.
- И так до конца рабочего дня.
Я попробовал, и это сработало, но не так хорошо, как я себе представлял. Я точно стал продуктивнее, примерно на час, но обнаружил, что 25-минутные интервалы работы были для меня слишком короткими (мне требовалось 5-10 минут, чтобы включиться, поэтому я не мог выполнять «тяжелую работу» более 15 минут с такими интервалами).
Поэтому я пошел дальше и нашел правило 52 + 17.
Что это такое? 52 минуты работы и 17 минут перерыв. Примерно как метод помидора.
Я протестировал его, и для меня он сработал лучше, чем интервалы 25 + 5. Теперь я мог продуктивно работать еще два часа, но после рабочего дня все равно чувствовал себя плохо.
Так что я не остановился на правиле 52 + 17. Я начал глубже исследовать продуктивность и мотивацию и узнал об эффективных перерывах.
Когда большинство людей слышат слово «перерыв», первая ассоциация — «делать что-нибудь, кроме работы». Например, листать ленту Instagram, переписываться с друзьями или смотреть YouTube. Формально это все перерывы, но не эффективные.
Главный признак эффективного перерыва — он дает вам энергию, а не отнимает ее.
Пример моих эффективных перерывов:
- Физические упражнения.
- Душ.
- Прогулка (без наушников).
- Дыхательные упражнения (метод Вим Хофа).
После того, как я узнал об эффективных перерывах, мой рабочий день стал почти идеальным: 52 минуты работы (8 минут на «разогрев» и 45 минут интенсивной работы) и 17 минут эффективных перерывов, которые дают мне энергию.
Все работало отлично, и я подумал, что могу остановиться на этом...
Но я пошел дальше.
Я был одержим идеей сделать каждый час моей работы самым продуктивным часом на земле. И я думаю, что у меня это получилось.
Была одна вещь, которая удерживала меня от постоянного пребывания в состоянии потока, — это отвлекающие факторы. Годами я не обращал на них внимания. Все эти уведомления, которые появляются на моем телефоне, шум людей вокруг меня, сотни открытых вкладок и окон на моем ноутбуке...
Я устанавливаю таймер на 52 минуты, начинаю работать, а затем БАМ! Появляется новое уведомление. И я себя спрашиваю: «Что там?».
Сосредоточенность на задаче пропала. Производительность пропала. Одно крошечное уведомление мгновенно разрушило мою продуктивность.
Я никогда не обращал на это внимание, пока не начал глубоко погружаться в сферу личного развития.
Теперь, когда я работаю, я отключаю все уведомления, говорю людям, чтобы они меня не беспокоили, надеваю наушники (если я работаю в шумной обстановке), закрываю все вкладки браузера, не связанные с задачей,
и делаю все, что могу, чтобы не отвлекаться в рабочее время.
Пока все хорошо — теперь моя система действительно казалась идеальной.
Но могу ли я пойти дальше? Конечно.
Последний кусок головоломки —
ОТСУТСТВИЕ многозадачности.
Когда я сегодня слышу, что кто-то может выполнять несколько задач одновременно, я улыбаюсь.
Многозадачность не работает. Это миф.
Есть одно исследование, которое показывает, что только 2,5% испытуемых могут выполнять одновременно несколько задач с таким же уровнем эффективности, что и при выполнении одной задачи.
Остальные 97,5% — нет.
Поэтому, когда я беру какую-то задачу и начинаю ее выполнять, я сосредотачиваюсь только на ней. Не на двух. Не на трех. Только на одной.
Это правило, которому я следую в рабочее время.
Всегда.
Хорошо, теперь у нас есть все части Системы 69.
Давайте склеим их вместе и посмотрим, что у нас получится:
- 52 минуты работы.
- 17 минут результативного перерыва.
- Убираем все отвлекающие факторы.
- Сосредотачиваемся на одной задаче за раз.
Потрясающе!
Это моя Система 69.
И в заключение…
Вот три столпа моей системы продуктивности. Вы можете использовать мою систему продуктивности для успешного выполнения любой работы, а не только программирования. Но используйте ее с умом.
Всего хорошего!
Как начинающий разработчик может добиться, чтобы его воспринимали всерьез
Источник:
Free Code CampВозможно, вы знакомы с уловкой, которая подстерегает всех начинающих разработчиков:
Я не могу устроиться на работу, потому что у меня нет опыта, а опыт я не могу получить из-за того, что меня не берут на работу!
Это то, с чем мы все сталкиваемся в начале карьеры. Мы постоянно видим объявления о вакансиях «начального уровня», в которых требуется опыт работы 2-3 года. Ситуация очень раздражает. И когда получаешь очередной отказ, кажется, что она еще и безвыходная.
Итак, что же делать начинающему разработчику, не имеющему опыта, чтобы устроиться на первую работу?
Поймите, почему работодателям так важен опыт работы
Попробуйте встать на место работодателя. Это позволит вам понять, почему кого-то нанимают, а кого-то — нет. Также это поможет не воспринимать игнорирование или отказ как что-то личное.
Каждое решение о найме нового сотрудника — это риск. Принесет ли этот человек компании больше дохода, чем расходов на его зарплату?
Ваша задача — убедить работодателя, что вы способны приносить прибыль. Проблема в том, что для работодателя самый мощный сигнал о способности человека приносить прибыль — это наличие опыта работы. Если опыта нет, то нанимать этого человека рискованно.
Поэтому вам нужно подать какие-то иные сигналы, которые убедят работодателя, что ваше трудоустройство не несет для него риска. И речь идет не только о технических навыках.
Решения о найме принимаются людьми. Поэтому отсутствие опыта можно перекрыть личностными качествами, энтузиазмом, проявлением интереса к работе в конкретной компании, инициативой к созданию новых проектов.
Все это вместе способно внушить к вам доверие.
Формула, которая поможет завоевать доверие работодателя
Доверие = проверенные навыки + заметность
Чтобы завоевать доверие, нужно показать, что у вас есть нужные навыки. И показать это необходимо правильным людям.
Опять-таки, мы говорим не только о технических навыках.
Умение написать приложение очень важно для разработчика, но не менее важны и soft skills.
Вам понадобятся не только отличные коммуникативные навыки и мотивация, но и умение сообщить об их наличии потенциальному работодателю. Необходимо продемонстрировать их и убедить, что вы знаете, как с помощью этих навыков принести прибыль компании. Это поможет уговорить работодателя дать вам шанс и нанять вас, даже при отсутствии опыта.
Для успешной демонстрации вам нужно:
- Создавать проекты.
- Писать.
- Заводить нужные связи.
Давайте разберем каждый пункт и посмотрим, как эффективно их комбинировать, чтобы не имея опыта выглядеть в глазах работодателя компетентным специалистом.
Создавайте проекты, используя свой стек технологий
Возможность создавать реальные проекты в выбранном вами технологическом стеке является здесь огромным плюсом. Если компания, в которую вы хотите устроиться, не убедится в наличии у вас технических навыков, работу вы не получите.
Но есть один нюанс.
Я слышал много историй о том, как разработчиков нанимали на позиции, для которых у них не было достаточной квалификации. Работодателей привлекали какие-то черты характера этих кандидатов и тот потенциал, который они в них увидели. То есть, нужно быть компетентным в техническом плане, но не стоит думать, что только это и важно.
Лучший способ показать свои технические навыки — создавать то, что до вас никто не создавал.
Когда вы строите что-то, следуя только учебному курсу, это показывает лишь то, что вы способны учиться и следовать инструкциям. Но это не демонстрирует вашу способность решать сложные и уникальные задачи и создавать что-то с нуля.
Работодатели ищут кандидатов с навыками, которые можно применить для решения реальных проблем. Именно за это в конечном итоге вам будут платить деньги.
Я советую для начала найти хороший курс, обучающий стеку технологий, которые вам интересны. Курсы и учебные пособия прекрасно подходят для ознакомления с технологиями и практикой применения стека (это важно!). Но они не всегда могут научить вас решать практические задачи и создавать реальные вещи.
Поэтому я рекомендую после прохождения курса создать собственный проект, пользуясь той теорией, которой вы овладели.
Пока работаете над проектом, документируйте все свои действия, записывайте, что и почему вы делаете. Это пригодится для следующего пункта нашего плана по выстраиванию доверия к вам как к специалисту.
Пишите обо всем, что создаете и изучаете
Документирование дает несколько важных преимуществ. Для начала, оно помогает прояснить идеи и процессы. Когда вы записываете свои действия, это побуждает вас мыслить и действовать более четко и лаконично.
Кроме того, это помогает четко структурировать все процессы, ведь ваша цель — изложить свои идеи так, чтобы кто-то другой смог их прочесть и понять.
Вероятно, все это проще сказать, чем сделать, но если вы сумеете, то при поиске работы это выделит вас на фоне других кандидатов.
Еще одно преимущество, которое дает письмо, — улучшение устной речи. Когда устроитесь на работу и станете профессиональным разработчиком, вы будете куда более эффективным коммуникатором, чем при отсутствии практики написания.
Простая система письма
Писать тексты может быть сложно, особенно если для вас это в новинку. Лично мне нравится писать, я занимаюсь этим постоянно, но порой все равно бывает сложно. Поэтому я хочу поделиться с вами простым советом, который позволит вам начать писать уже сегодня.
Выделите время, чтобы писать каждый день
Это очень важно, потому что обеспечивает систематичность, а значит, и улучшение навыков.
Написав множество текстов, я обнаружил, что путь к успеху лежит через написание плохих текстов.
Просто сидеть и ждать вдохновения — не лучший вариант. Вам нужно просто начать писать. Начав, вы с удивлением обнаружите, что слова приходят в голову будто сами собой.
Но если вы не начнете писать, этот поток слов не потечет. Поэтому сразу определите, сколько времени вы можете ежедневно выделять для письма.
Примечание: запись текстов и редактура — разные вещи. Их следует воспринимать как две разные задачи.
Пишите с точки зрения учителя
Я видел много постов и твитов, написанных начинающими разработчиками в стиле «Я изучил это…» или «Сегодня я работал над этим…».
Всё это, конечно, хорошо. Но если вы будете писать так, как будто обучаете все этим вещам, а не сами их изучаете. Так тексты внушают больше доверия.
Например, вы хотите стать фронтенд-разработчиком на React. И вы пишете приложение для планирования меню.
Вместо постов о том, что вы узнали о React, напишите статью «Как создать в React приложение для планирования меню».
Такое смещение акцента повышает ваш имидж разработчика и то, как окружающие станут воспринимать ваши навыки.
Я думаю, многие люди стесняются писать в подобном стиле, потому что не чувствуют себя вправе учить кого-то. Но если вы что-то довели до конца, то можете писать об этом с позиции учителя. Вы станете достаточно авторитетным источником знаний для людей, которые хотят построить нечто подобное, но сами пока не могут.
Когда вы пишете статьи, вы не только рассказываете о своих технических навыках, но еще и показываете, что уверены в них, а это привлекательно для потенциальных работодателей.
Ведите список идей
От творческого кризиса вас спасет обновляемый список идей. Каждый раз, когда мне в голову приходит какая-то идея, я просто добавляю еще один пункт с кратким описанием в свой список. А когда я сажусь писать, я либо продолжаю работу над уже начатой статьей, либо выбираю следующую идею из списка.
Наличие списка также избавляет от проблемы выбора. Вам не надо вспоминать все, о чем вы хотели написать. Просто берете следующий пункт и начинайте писать.
Если у вас нет идей, тогда пишите обучающие посты и рассказывайте, как создать проекты, которые вы когда-то сами создали.
Разделяйте писательство и редактирование
Для меня это оказалось очень важным. Я постоянно делал паузы в написании текстов, потому что пытался что-то переформулировать и редактировать по ходу дела.
Но теперь я разделяю писательство и редактуру. Когда я пишу, я просто пишу. Я не обдумываю, не подбираю тщательно слова, а просто пишу.
Если чувствую, что сказал уже все, что хотел, то откладываю текст и не трогаю его до следующего дня. Утром на свежую голову я перечитываю и редактирую написанное.
Пишите не только о технических вещах
Поскольку вы разработчик, вам может казаться, что вы должны фокусироваться только на разработке. Но я советую отходить немного в сторону и писать также на темы, не посвященные программированию в чистом виде.
В конечном итоге, компании нанимают людей, а не код. А люди могут подходить каждой отдельной компании или не подходить.
Ваши тексты могут рассказать потенциальному работодателю о том, как вы работаете и мыслите. Благодаря этому вы в глазах этого работодателя станете вполне конкретным, живым человеком, а не просто еще одним резюме. И это еще до того, как вам удастся поговорить!
Например, вы можете писать о том, почему любите программирование, что мотивирует вас усердно работать, как вы снимаете напряжение в свободное время. Хотя это не имеет отношения к работе, хотя и тесно связаны с жизнью разработчика.
Выстраивайте связи с людьми из IT-сообщества
Создание нужных связей — последний пункт нашего плана.
Разработчики часто отмечают огромное влияние знакомств на успех в поиске работы. Вместе с тем, начать выстраивать сеть контактов не так просто. Дело в том, что делать это некомфортно, поэтому многие люди и не делают. А это означает, что у вас есть хороший шанс выделиться на общем фоне.
Ваше портфолио и написанные вами тексты обеспечили вам присутствие в интернете. Теперь пора расширить это присутствие, выстроив сеть знакомств.
Два моих любимых инструмента в этом плане — LinkedIn и Twitter.
Конечная цель — создать сеть контактов, чтобы вам не приходилось искать работу. В идеале вы просто обращаетесь к знакомым — и получаете подходящие предложения. На выстраивание такой сети знакомств нужно время, но оно того стоит.
Что касается начинающих разработчиков, ваша первоначальная цель — повысить свою заметность и рассказать как можно дальше, что вы ищете работу. Благодаря этому на вас и на ваши проекты обратят внимание. И вполне возможно, вы попадетесь на глаза потенциальному работодателю.
Для повышения вашей видимости в сети я рекомендую делать следующее.
Не надо набрасываться на всех подряд. Вам нужно дотянуться до людей, работающих в компаниях, в которых хотите работать вы сами, и продемонстрировать свой интерес.
Для начала составьте список из 10 компаний, в которых вы хотели бы работать.
Затем найдите 2-3 сотрудников каждой из этих компаний. Ориентируйтесь на людей, занимающих примерно те позиции, на которые вы сами хотели бы попасть.
Свяжитесь с этими людьми через LinkedIn или подпишитесь на них в Twitter (если у них есть аккаунты в этих сетях, конечно).
Затем просто пошлите каждому сообщение, следуя шаблону:
- Короткое вступление
- То, чем вы восхищаетесь в компании, где работает этот человек
- Простой вопрос, на который вашему адресату будет легко ответить
Например, если я хочу работать в Ghost, мое сообщение может выглядеть так:
«Привет! Меня зовут Кен. Я разработчик-самоучка. Меня восхищает то, что Ghost делает для сферы публикаций. Запущенный вами недавно функционал подписки — это нечто! Скажите, а что вам, как фронтенд-разработчику, больше всего нравится в работе над продуктом с такой важной миссией?»
Обратите внимание, что вы не просите устроить вас на работу. Вы просто завязываете разговор и отношения. Сообщение короткое, по делу, и содержит вопрос, который нельзя просто найти в Google.
Этот пример работает, потому что я и в самом деле восхищаюсь Ghost. Ваше восхищение и желание работать в компании должны быть неподдельными. Люди хорошо распознают притворство даже на расстоянии, так что оно может сыграть вам плохую службу.
Еще раз заострю ваше внимание на том, что цель — не на работу устроиться, а начать разговор и выстроить отношения с человеком.
Если вы будете настойчиво и целенаправленно знакомиться с разными людьми из разных компаний, это очень поможет вам в долгосрочной перспективе.
Старайтесь знакомиться с кем-нибудь ежедневно.
Завязав отношения, вы, возможно, сможете их развить, встретившись оффлайн, пообщавшись в видеорежиме и обсудив свои карьерные цели.
Сети знакомств, благодаря которым люди получают отличные карьерные возможности, примерно так и создаются.
Как объединить все это в единую систему
Теперь, когда мы знаете все компоненты, давайте посмотрим, как их эффективно объединить в рабочую систему.
Мой любимый метод — выделение времени. Определите, сколько времени вы сможете выделять на все это ежедневно (в зависимости от плотности вашего расписания). Затем разделите это время на три части. Первая будет предназначена для создания проектов, вторая — для писательства, а третья — для выстраивания сети знакомств.
В первую треть времени вы будете работать над личным проектом.
Во вторую — описывать проект, над которым работаете. Как вариант, можно описывать то, как вы решили отдельные проблемы, с которыми столкнулись (если описание проекта почему-то вам не подходит в качестве темы).
Наконец, в оставшуюся, третью часть выделенного времени ищите информацию о компаниях и знакомьтесь с работающими в них людьми.
Все эти шаги могут показаться простыми (собственно, они и есть простые), но влияние их велико. Именно такие небольшие и вроде бы незначительные действия, выполняемые постоянно, помогают построить отличную карьеру с нуля.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ