Разработка

Почему ненавидеть код-ревьюера – хорошо · 05/06/2017 · Разработка

С утра вы приходите на работу, выпиваете чашечку кофе, закусывая печенькой, и в полной боевой готовности идете на свое рабочее место. Заходите в Jira (любой другой трекер), выбираете наиболее приоритетную задачу из текущего спринта и переводите ее в статус “In Progress”. Спустя некоторое время увлеченной работы задача отправляется на код-ревью, а вы позволяете себе отлучиться еще за одной чашкой кофе.

Вы довольны собой – к решению задачи вы подошли ответственно и копнули вглубь, проработав все возможные сценарии развития событий и написав красивый и лаконичный код. Вы возвращаетесь с кухни спустя несколько (десятков) минут, отвечаете на пару сообщений в одном из чатов и замечаете, что ваш почтовый ящик не пуст. Это пришла нотификация с гитхаба – ваш ревьюер оставил около 10 комментариев и сделал change request.

Знакомая ситуация?

Вы открываете свой Pull Request и видите все эти комментарии. Вы начинаете разбираться – первые 3-4

Читать дальше ⟶

Выделение подпроекта в отдельный репозиторий на github · 05/06/2017 · Разработка

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

Итак, что дано:

  • Есть большой репозиторий, содержащий множество папок. Каждая папка – это отдельный проект.

Что необходимо сделать:

  • Одну из папок перенести в отдельный репозиторий с сохранением ее истории коммитов.

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

Я использовал стандартный гитовый filter-branch. За основу я взял следующие статьи:

В этом посте я хочу немного адаптировать процесс для лучшего восприятия (пост содержит UPDATE, рекомендую не

Читать дальше ⟶

Минимальный набор знаний молодого разработчика · 05/06/2017 · Разработка

Несколько раз у меня спрашивали, с чего же начать карьеру разработчика. В целом, вопрос этот слишком широкий и не имеет ответа как такового, поэтому я поставлю его более узко: что должен знать молодой java-разработчик, пишущий back-end?

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

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

Итак, есть человек, понимающий, что такое ООП и прочитавший хотя бы одну стоящую

Читать дальше ⟶