AppleInsider.ru
X
О проекте Реклама
Чат
с читателями
Присоединяйтесь
в Телеграме

«Стальные яйцы»: Интернет-сервисы для разработчиков

Хочу немного рассказать, как работает наша бесстрашная команда — Unreal Mojo. Я думаю, что читателям AppleInsider.ru будет интересно, а разработчикам, возможно, поможет обнаружить какие-то новые для них сервисы.

Так уж вышло, что мы — распределённая команда и все из нас работают удалённо. В основном исторически это связано с тем, что по-настоящему классных специалистов достаточно сложно найти в одном Санкт-Петербурге, потому мы себя стараемся не ограничивать, и в разное время с нами работали люди из разных уголков света. Сейчас в основном мы сконцентрированы в Санкт-Петербурге, Москве и Киеве, но некоторые сотрудники работают с нами и из Америки и Сибири. Кроме того, нам не нравится идея о том, что каждый день нужно перемещать свою тушку в пространстве ради того, чтобы попасть в офис, а потом, чтобы снова оказаться дома. В случаях, когда нам хочется пообщаться очно, мы снимаем переговорку в каком-нибудь месте на день.

То, что мы работаем удалённо, накладывает определенный отпечаток на то, как мы это делаем и какими инструментами пользуемся для достижения своих целей. С самого начала было принято решение минимизировать временные затраты на администрирование различных нужных для использования сервисов, потому, когда это возможно, мы стараемся пользоваться платными решениями, когда компания-создатель занимается обслуживанием сервиса и гарантирует его стабильность, работу и сохранность данных. У нас, конечно, есть свои выделенные серверы для обслуживания наших проектов (например, Телеканал ТНТ или Альфа-Банк), но в остальном мы используем разные интересные сервисы. Итак, что у нас есть для каждодневной работы?

Чат: Campfire от 37Signals

Конечно, в любой работе не обойтись без общения. Даже если это общение виртуальное и происходит в виде текстового чата. По правилам компании, все сотрудники должны находиться в чате в то время, когда они работают, с тем, чтобы между членами каждой из команд, работающих над конкретным проектом, была возможность обсудить текущие проблемы. Для каждого из проектов у нас выделена отдельная «комната», доступ к которой есть у команды проекта. Кроме того, у нас есть общая комната-«курилка», где мы разговариваем обо всём, кидаем интересные ссылки и всякие картинки.

Для Campfire есть готовые программы-клиенты, которые позволяют не держать постоянно открытым чат в окне браузера, а также «блямкать» звуком, когда упоминается твоё имя или ещё какие-то слова, которые ты задашь. Очень удобно — если кто-то из команды хочет привлечь внимание другого, достаточно упомянуть его имя, и у человека прозвучит нотификация, а также будет подсвечена строчка в чате, в которой было имя. Правда, в последнее время ввиду того, что команда растёт, начали возникать коллизии, когда у нас, например, три Александра и три Сергея одновременно в общем чате… но мы что-нибудь придумаем.

Кроме того, удобно то, что логи переговоров хранятся «вечно» и всегда можно найти, что говорилось несколько недель или месяцев назад. А ещё можно заливать файлы для хранения и кидать ссылки на картинки (они автоматом покажутся в развернутом виде в чате), на YouTube и Twitter (будет отображён твит). А ещё с Campfire есть интеграция другого сервиса, который мы тоже активно используем: Beanstalk.

Исходные тексты: Beanstalk

Для командной работы над исходными текстами человечество придумало множество различных программ, объединённых общим термином «системы контроля версий». Если вкратце, это специальные системы, которые запоминают различные изменения, которые вносятся в программу на этапе её разработки и позволяют в дальнейшем посмотреть, что происходило, кто из команды что менял, и при необходимости «откатиться» на старую версию. Этим набор функций систем контроля версий не ограничивается, но в простейшем случае этого достаточно. Из популярный систем, пожалуй, сейчас две самые распространённые — это Subversion (svn) и Git. Последняя у нас почему-то не прижилась, так что мы активно используем именно Subversion.

Beanstalk — сервис, который хранит репозитории (это то, в чём лежат исходники для каждого из проектов) у себя, так что можно не заморачиваться настройкой, проверкой и резервным копированием. Важно отметить, что Beanstalk поддерживает как Subversion, так и Git. Но самое для нас в нём ценное — это его система интеграции с различными сторонними сервисами. Например, при commit’e (это когда один из разработчиков заливает в базу новые изменения) Beanstalk может отправлять уведомление в Campfire, в котором написано кто, что и куда закоммитил, и при желании можно посмотреть изменения прямо на сайте. А ещё, если в сообщении commit’a указать ссылки на записи в системе контроля дефектов, то Beanstalk одновременно внесет изменения и туда, например, закрыв баг или передав его на контроль в наш отдел тестирования. В общем, очень удобно и здорово.

Контроль дефектов: Lighthouse

Не секрет, что в любой программе есть глюки, дефекты, или как их часто называют, «баги» (от англ. «bug» — жучок). По мифологии, один из первых зафиксированных странных и нелогичных сбоев в компьютерной системе был действительно вызван насекомым, которое попало внутрь компьютера (когда компьютеры ещё представляли собой огромные шкафы). В любом случае, необходимо вести учёт таких проблем с тем, чтобы или устранять их в обновлениях каждого из проектов, которые мы ведём, или разбираться, почему они возникли (как известно — самый плохой баг это тот, который не удаётся воспроизвести).

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

Постановка задач: Flow и Basecamp

Конечно, никакая работа делаться сама не будет, и потому для каждого из проектов необходима постановка задач. Этим у нас занимаются трудолюбивые менеджеры проектов, а помогает им в этом два сервиса: Basecamp от 37Signals, создателей чата Campfire, и Flow. Первая — достаточно продвинутый менеджер задач, в котором есть календарь, to-do list (список добрых дел), возможность переписываться между собой и комментировать записи, закачивать файлы для хранения и многое другое. Но для многих вещей он слишком тяжеловесен, и мы пользуемся Flow для простых вещей — он, по сути, представляет собой групповой to-do list, в который можно добавлять задачи, делегировать их, и расставлять их по приоритетам. Кроме того, для него есть приятное приложение для iOS. 🙂

Хранение файлов: Dropbox

Уже классика жанра в своём роде, облачный сервис, позволяющий хранить и обмениваться файлами. Удобная интеграция с Mac OS X позволяет просто накидать в папку то, что нужно передать коллеге или заказчику (который тоже имеет доступ к этой папке через систему Dropbox), и более не заботиться о том, где и что будет происходить с файлом. У меня куплен расширенный пакет на 100 гигабайт, но в принципе, многим хватает и стандартных 5 гигабайт…

Главный секрет успеха

Итак, что же самое главное в работе распределённой команды? Какой сервис помогает нам быть теми, кто мы есть? Конечно же, вы догадались правильно — не в сервисах дело, а в людях! Будьте сплочённым коллективом, каждый член которого заботится о том, что получается у команды и тогда всё остальное приложится. Ну а онлайн-сервисы — это, безусловно, хорошее подспорье, но не панацея и не магический ключик.

Люди, любитесь! Птааг ждёт.

Слава Карпенко, Unreal Mojo

Новости по теме
Apple поднимет цены только на одну модель iPhone 17, остальных это не коснется. Что говорят слухи
Когда Apple объявит дату презентации iPhone 17
Как Apple ускорила даже старые iPhone в iOS 26
Новости партнеров
Все характеристики Xiaomi 16 раскрыты. Компактный смартфон получит аккумулятор на 7000 мАч
Все характеристики Xiaomi 16 раскрыты. Компактный смартфон получит аккумулятор на 7000 мАч
Исследователи заявили, что Биткоин уже можно отправлять на Марс. Что это значит для криптовалюты?
Исследователи заявили, что Биткоин уже можно отправлять на Марс. Что это значит для криптовалюты?
Почему в окне самолета есть дырочка, и что будет, если ее заклеить
Почему в окне самолета есть дырочка, и что будет, если ее заклеить