Чтобы зарабатывать больше денег в качестве разработчика, необходимо поддерживать производительность, несмотря на проблемы.
Работать с существующим кодом сложно.
Но…
Продуктивные разработчики могут быстро анализировать существующий код и работать с ним.
Правда, некоторый код слишком сломан, чтобы оживить его.
Но за эти годы я научился 7 приемам повышения производительности с помощью существующих кодовых баз.
#1: Добавляйте документацию по мере изучения кода
Не тратьте время на жалобы на отсутствие документации.
Да. Большая часть кода плохо документирована. Но жалобы ничего не меняют.
Вместо того, чтобы жаловаться…
Добавляйте комментарии по мере изучения кодовой базы.
Добавление комментариев:
- Может быстро улучшить документацию.
- Организует ваши мысли, когда вы изучаете новые области системы.
- Повышает удержание памяти и производительность, когда вы возвращаетесь к этому разделу кода.
#2: Изучив новый код, сразу добавляйте комментарии
Вы будете удивлены, как быстро вы забудете то, что узнали о кодовой базе.
Зачем ждать, чтобы зафиксировать то, что вы узнали?
Я слышу, как разработчики говорят: «Я вернусь и добавлю комментарии позже».
Конечно, вы будете…
Жизнь слишком занята. Вы никогда не вернетесь и не добавите осмысленные комментарии.
Если вы вернетесь, ваши комментарии будут поверхностными.
Первоначальная неудовлетворенность исчезла. Ваш мозг забывает мелкие детали. Ваши отсроченные комментарии будут расплывчатыми, общими, менее полезными.
Если вы никогда не вернетесь назад и не добавите комментарии, то через шесть месяцев вы снова вернетесь к тому же самому коду и поймете, что забыли большую его часть.
Повторное изучение одного и того же кода дважды — пустая трата времени.
Потерянное время равняется низкой продуктивности. Более низкая производительность означает более низкий доход в долгосрочной перспективе.
Вместо того, чтобы откладывать и навредить себе, добавляйте комментарии к существующему коду, как только вы его изучите.
# 3: Поддерживайте частную личную базу знаний
Иногда добавление комментария невозможно или не подходит. Например, возможно, вы узнали о совершенно новой технологической платформе.
Для знаний, которые не помещаются в комментарии к коду, сохраните набор текстовых файлов, организованных в частной базе знаний.
Используйте папки для организации подмножеств знаний.
Когда вы научитесь делать такие вещи, как сборка базы кода, ее развертывание, подключение отладчика, изменение настроек и т. д., документируйте эти шаги в своей базе знаний.
Преимущество хранения вашей базы знаний в тайне заключается в том, что вы будете меньше нуждаться в доведении ее до совершенства.
Иногда мы не пишем документацию, потому что чувствуем необходимость довести ее до совершенства. Может быть менее стыдно ничего не делать.
Вот почему наличие частной базы знаний может повысить вероятность того, что вы это сделаете.
# 4: Изучите базовые технологии, а не туннельное видение для быстрых решений
Я в шоке, когда разработчики застревают на решении проблемы, но не решаются изучить лежащую в основе технологию.
Например, разработчику необходимо устранить исключение нулевой ссылки, возникающее при вызове незнакомого API.
Итак, он начинает гуглить, как другие разработчики решали аналогичные проблемы с API.
Он надеется на быстрое решение для копирования и вставки или простое пошаговое руководство.
К сожалению, это не работает.
Затем он начинает устанавливать точки останова. Попытка переключиться на разные, но похожие конечные точки по API и т.д.
Разработчик тратит часы и даже дни. Но он никогда не перестает спрашивать: «Прочитал ли я Руководство по началу работы и Технический справочник по этому API?»
Часто вы можете сэкономить время, сделав паузу и прочитав доступную документацию по зависимостям.
Когда вы находитесь под давлением, пауза для учебы может показаться пустой тратой времени.
Постоянная задержка с оценкой журнала может показаться более продуктивной, чем полная пауза для изучения.
Но если вы не понимаете лежащие в основе технологии, вы тратите небольшое количество времени каждый день.
Со временем это начинает накапливаться. Это разрушает вашу производительность и качество вашей жизни.
Кроме того, когда у вас смутное представление о том, что делают ваши зависимости, у вас больше беспокойства.
И когда вы беспокоитесь, ваша продуктивность борется.
По моему опыту, лучше потратить день или два, чтобы изучить базовую технологию.
Правда, вы теряете время вперед.
Но ваша радость и долгосрочная продуктивность резко возрастают.
Каждый раз, когда вы сталкиваетесь с новой технологией в существующей кодовой базе, вам может потребоваться повторить упражнение. Но оно того стоит.
# 5: Инвестируйте в качественные инструменты
Это забавно. Разработчики — одни из самых высокооплачиваемых сотрудников в мире. И мы делаем программное обеспечение…
Тем не менее, мы НЕНАВИДИМ платить за программное обеспечение…. Почему это? Не имею представления.
Когда дело доходит до программных инструментов, которые могут повысить вашу производительность, не совершайте эту ошибку.
Когда вы начинаете работать над новой кодовой базой, вы можете купить инструменты, которые упростят:
- Навигация по коду
- Отладка кода
- Соберите код
- И т. д…
ПОТРАТИТЕ ДЕНЬГИ! Либо вы покупаете его, либо вы заставляете своего клиента купить его, либо вы заставляете свою компанию покупать его. (Обычно для кого-то это не облагается налогом!)
Если вы зарабатываете от 50 до 100 и более долларов в час, платить 100, 500 или даже 1000 долларов за повышение производительности — ничто.
Продуктивность приводит к более быстрому повышению заработной платы и большей гарантии занятости. Это верно независимо от того, являетесь ли вы наемным работником или самозанятым.
Я обнаружил, что вы более чем возвращаете деньги, которые тратите.
# 6: Не бойтесь печатать и использовать ручку для аннотирования кода вручную
Как программисты, наша работа цифровая.
Иногда мы забываем, что ручка и бумага все еще полезны!
Например, если вы печатаете сложный фрагмент кода, вы можете разложить его весь на столе и увидеть сразу много страниц (сотни строк).
На бумаге вы можете:
- Области круга
- Нарисуйте линии, чтобы соединить фрагменты кода
- Подчеркнуть
- Выделите разными цветами
- Делайте заметки на полях
Кроме того, рукописные заметки легче выделяются на бумаге.
И вы всегда можете переключаться между бумажными копиями и цифровыми копиями в своей среде IDE.
Помните, то, что мы программируем на компьютере, не означает, что мы больше не можем использовать бумагу!!!
#7: Нарисуйте блок-схемы, графики зависимостей и диаграммы (особенно диаграммы последовательности)
Когда вы начнете понимать большую базу кода, к визуальным представлениям будет обращаться быстрее, чем к строкам кода.
Например, если 7 или 8 методов скоординированы для выполнения задачи, вы будете счастливы, если нарисуете ее по мере изучения.
Создание диаграмм поможет вам быстрее разобраться в потоке и зависимостях.
Кроме того, ваши диаграммы становятся визуальной документацией, к которой вы можете обращаться при повторном просмотре этого потока кода.
Либо на бумаге, либо с помощью инструмента построения диаграмм создавайте визуальные диаграммы, описывающие поток кода.
Диаграммы последовательности — один из моих любимых типов диаграмм.
Но базовые блок-схемы тоже хороши.
Дополнительный совет. Если вы рисуете схемы или делаете заметки на бумаге, делайте снимки на мобильный телефон и сохраняйте их в личной базе знаний.
Это лишь некоторые из моих приемов для успешной работы с большой уже существующей кодовой базой!
Я надеюсь, что это поможет вам!
Какие трюки я пропустил?
Мне нравится учиться у других успешных разработчиков!
Есть ли приемы, которые вы используете для работы с существующими кодовыми базами?
Если это так, пожалуйста, дайте мне знать в комментариях!