Статьи

Секретное оружие эффективного программиста: отслеживание времени

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

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

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

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

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

Советы по эффективному отслеживанию времени

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

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

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

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

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

Высокотехнологичные инструменты для отслеживания времени

Время не должно быть сложным. Действительно, сторонники техники Pomodoro используют простые инструменты — тикающий таймер, карандаш и лист бумаги. Используя это, они могут пометить куски времени, или «pomodoros», работавшие над проектом, и учесть все перерывы и перерывы.

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

Для менее технологичного решения электронные таблицы полезны. Основным преимуществом электронных таблиц является их гибкость.

Например, некоторые кодировщики захотят платить больше за программирование на сложном языке, таком как C #, и меньше за более простые задачи, такие как написание HTML. Используя электронную таблицу, вы можете точно отслеживать количество времени, затраченного на оба.

Отслеживание вашего времени с помощью программного обеспечения

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

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

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

Некоторые из этих решений для отслеживания времени даже включают функции специально для кодировщиков. Они автоматически начнут отслеживать ваше время, как только вы запустите текстовый редактор, и быстро поймете, на каком языке вы кодируете, и выведете эти данные в отчеты — автоматизируя весь процесс отслеживания времени.

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

1. WakaTime

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

WakaTime поддерживает большинство популярных текстовых редакторов, включая Vim, Sublime Text, Xcode, PyCharm, PHPStorm, AppCode и Brackets.

Базовая версия полностью бесплатна, в то время как премиум-версия стоит всего $ 9 в месяц для неограниченной истории и экспорта данных.

2. RescueTime

RescueTime, доступный для ПК, Mac и Linux, а также для Android и iOS, работает в фоновом режиме на вашей машине и точно измеряет время, затраченное на приложения. Он также создает отчеты и данные для последующего анализа и позволяет в любой момент приостановить работу и выйти из приложения.

«Облегченная» версия программного обеспечения является бесплатной, в то время как премиум-версия блокирует отвлекающие веб-сайты, отправляет вам оповещения о достижении целей и даже отслеживает время, которое вы проводите вне своего компьютера.

3. 30/30

Бесплатное приложение для iOS 30/30 упрощает работу благодаря великолепному интерфейсу и легко читаемому таймеру, который поможет вам сосредоточиться на тиканье часов. Он имеет полный список задач, который легко редактировать и упорядочивать по папкам, а его интуитивно понятные элементы управления жестами позволяют легко изменять время, которое вы выделяете на задачи кодирования, а также перерывы. Однако ему не хватает отчетов и анализа, поскольку его основной функцией является таймер.

4. Таймер задачи +

Для пользователей Android Task Timer + является сложной альтернативой 30/30. Несмотря на то, что он не так удобен и прост в использовании, как 30/30, он позволяет вам распределять «рабочее время» и «время отдыха». Он также дает вам базовые отчеты о том, как вы провели свое время, и может синхронизировать с Google Tasks.

Task Timer + стоит $ 2,99.

5. Таймер задачи

Бесплатно для Chrome, это простое, но мощное приложение. Он работает в фоновом режиме, отключает доступ ко всем отвлекающим веб-страницам, а также создает подробные отчеты. Индикаторы выполнения позволяют запускать несколько задач одновременно и перемещаться между ними простым щелчком мыши.

Он также синхронизируется с Google Tasks и позволяет получать уведомления и экспортировать ваши данные в файлы CSV.

6. TimeCamp

TimeCamp — бесплатный плагин для облачных инструментов управления проектами, таких как Trello и Asana. Возможно, это самое мощное решение в этом списке.

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

Отслеживание времени делает вас более эффективным программистом

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

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