Найти в Дзене

Почему эффективный разработчик делает в 3 раза больше неэффективного

На мое удивление, я часто видел, как разработчики слишком много операций производят при помощи мыши. О, что во мне творилось во время этого… Короткий и простой совет сразу — обязательно изучайте горячие клавиши. Минимизируйте работу с мышью. Мышь — это контрпродуктивно. Используя горячие клавиши и некоторые манипуляции с кодом, например последовательное выделение, перемещение курсора в начало и конец строки, перемещение курсора по словам, перенос строки или группы строк, дублирование строки, выделение нужного фрагмента, открытие файлов через поиск — вы можете существенно повысить эффективность своей работы. Конечно давайте. Цифры всегда дают бо'льшую наглядность. Начнем с открытия файла. Хм. Кажется, речь идет о секундах, а секунда — это ведь немного? Верно, немного. Но для разового случая. Посчитайте, сколько подобных операций вы делаете в течение дня? А если нейминг и структура файлов в проекте скверные, то и времени будет уходить куда больше. Продолжим расчет. Предположим, что за де
Оглавление

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

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

Горячие клавиши
Горячие клавиши

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

Посчитаем?

Конечно давайте. Цифры всегда дают бо'льшую наглядность.

Начнем с открытия файла.

  • На поиск и открытие файла через дерево папок может уйти 8-12 секунд.
  • На поиск файла через поисковую строку может уйти 2-4 секунды.

Хм. Кажется, речь идет о секундах, а секунда — это ведь немного? Верно, немного. Но для разового случая. Посчитайте, сколько подобных операций вы делаете в течение дня? А если нейминг и структура файлов в проекте скверные, то и времени будет уходить куда больше.

Продолжим расчет.

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

  • При работе с мышью: (200 * 10) / 60 = 33 минуты.
  • При работе с горячими клавишами: (200 * 3) / 60 = 10 минут.

Видим такую же разницу в 3 раза, но уже в абсолютных единицах — 23 минуты.

Это время ушло в никуда, и это только на операцию открытия файлов! Представьте сколько операций по копированию строк, выделению, замены и т.д. вы делаете.

Скорее всего разница в них будет такой же — 3–4 раза — возьмем это за расчетный коэффициент эффективности.

Мышь VS Клавиатура
Мышь VS Клавиатура

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

Расчет от общего времени

Предположим, в течение дня четверть времени уходит на ввод. Т.е. 8 / 4 = 2 часа. Остальное время уходит на обдумывание задачи, коммуникацию и чтение ТЗ.

Предположим, что эти 2 часа работает эффективный разработчик, использующий горячие клавиши. Сколько времени уйдет на то же самое у неэффективного? Мы уже знаем коэффициент — 3-4, или 6–8 часов. А это время уже соразмерно целому рабочему дню! и говорит о том, что эффективный разработчик потратит 1 день на разработку, в то время как неэффективный — 3 дня.

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

Расчет от базовых манипуляций

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

  1. Последовательное выделение.
  2. Перемещение курсора в начало или конец строки.
  3. Перемещение курсора по словам.
  4. Перенос строки или группы строк.
  5. Дублирование строки.
  6. Выделение нужного фрагмента.

Еще предположим, что таких операций будет в 5-10 раз больше, чем при открытии файлов. Т.е. на порядок. Одно открытие файла в среднем приведет к 10 базовым операциям. Что мы получим? Получим то, что базовая операция — обратно — на порядок меньше времени на открытие файла. Стало быть, мы можем использовать значение 23 минуты в расчете от базовых манипуляций.

(23 * 7) / 60 = 2,6 часа.

Помните, что 23 минуты — это время, которое ушло в никуда. Стало быть, неэффективный разработчик за один рабочий день потратит примерно 2,5 часа времени впустую. 2,5 часа времени — это чуть ли не треть рабочего дня! Если учесть время на обдумывание задачи, коммуникацию и чтение ТЗ, то можно сказать, что полдня (1/2 часть) у такого разработчика упущено.

Сравнение расчетов

В первом случае — от общего времени, мы получили разницу в 3 раза. Во втором, от базовых манипуляций — в 2 раза. Результаты одного порядка и вполне схожи. Возьмем средний коэффициент эффективности — 2,5.

На мой взгляд, разница более чем ощутимая!

Реальный опыт

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

Кстати говоря, именно поэтому я не особо верю в таблицу грейдов при расчете заработной платы (хотя это и является хорошей базой). Ведь ребята в одном грейде могут работать совершенно по-разному.

Эффективность работы

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

С горячими клавишами эффективность выше до 3-х раз больше!
С горячими клавишами эффективность выше до 3-х раз больше!

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

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

До новых встреч!

Читай релевантные статьи: Виды нарушения потоков в приложении, Потоки в команде разработки.

Изучай основы создания приложения в открытом курсе: Анатомия приложения.

Подписывайся на мой канал в соц. сетях:

Telegram: https://t.me/cantfailcode

Dzen: https://dzen.ru/cantfailcode

VK: https://vk.com/cantfailcode

Rutube: https://rutube.ru/channel/54539669/