О проектных системах
03.11.2016 00:52:34Иногда подобное называют «баг-трекерами», но с моей точки зрения это больше именно системы управления проектами, хотя это и совсем не микрософтовый Проджект (с которым, кстати, мне так и не довелось пока встретиться, возможно, к счастью).
Так получилось, что в середине прошлого года у меня возник вопрос выбора проектной системы. До этого был опыт с коллабнетовским Тимфоржем и Жирой. С Тимфоржем дело было давно и Жира, пожалуй, предпочтительнее его почти по всем параметрам, но вот к самой Жире тоже были вопросы, поэтому решил поисследовать альтернативы.
Первый раунд был поисковым, выбирали что-нибудь жироподобное, решающее схожий спектр задач (задачи, релизы, с интеграцией в ЛДАПы, Гитлабы и всякие прочие системы). В приоритете были, разумеется, свободные проекты, чтобы и денег платить сходу не надо было, и какие-то мелочи поправить можно было. В итоге, обрисовались следующие варианты (всё остальное показалось неприменимым изначально):
- всё та же Жира, как вполне проверенный рабочий вариант
- Рэдмайн, про который сразу было понятно, что выглядит он ужасно, но по галочкам возможностей, вроде бы, всё есть, ещё и ёпен сорс
- Ютрэк, как более правильная Жира (по крайней мере, по истории создания)
- Тайга, свежая, симпатичная и ёпен сорсная, но слабо понятная
Изучение началось с наиболее непонятного варианта — Тайги. С нею можно (по крайней мере, можно было) поиграться на их же хостинге, что и было проделано. В результате очень быстро этот вариант был отброшен, поскольку осталось загадкой, как её можно использовать для серьёзной разработки. Выглядит она шикарно, тут вопросов нет, но попытка поиспользовать в каком-то знакомом стиле работы успехом не увенчалась, а возможностей подогнать её под себя практически нет. Так как вариант был сомнительным изначально, долго упираться я не стал.
Следующим на очереди был Рэдмайн. Тут ожидания были высокими, поскольку он реально много где используется. И мы тоже его поиспользовали. Недели так две. Дальше, увы, не выдержали. Причин тому несколько, если говорить совсем кратко, то Рэдмайн это продукт совершенно другого уровня, нежели Жира или Ютрэк (но о нём ниже), вроде бы галочки все есть, а по факту пользоваться невозможно, если видел как бывает лучше. Причём, с точки зрения разработчика разница может и не так велика (в силу того, что не так часто и не так много надо взаимодействовать с системой), но для руководства процессом разработки, когда необходимо управляться с тысячью задач за год, это небо и земля. Конкретно очень досаждает следующее:
- Кнопка редактирования. Если бы мне кто-то сказал лет пять назад, что я буду на это жаловаться, я бы не поверил. А сейчас да, есть такая проблема. Самая первая Жира, которую мне довелось попользовать, тоже требовала нажатия специальных кнопок для редактирования задач, но через несколько обновлений появилась возможность править поля прямо на месте. Поначалу я даже фыркал в сторону такого изменения, поскольку вебдваноль, яваскрипт и вообще лишнее, но месяца так через три использования стал замечать, что пользоваться той самой кнопкой «Редактировать» я практически перестал. Ретроспективно это вполне понятно, поскольку был убран некоторый барьер, изменения стало вносить проще, но вот когда к такому режиму привыкаешь и потом тебе подсовывают старорежимный рэдмайновый интерфейс — реакция однозначная, такой интерфейс не нужен.
- @someone. Опять же, быстрое добавление нужных людей в диалог кажется вполне естественным, но как только его убирают приходит понимание его реальной ценности.
- Тегирование задач. Каким образом можно разобраться уже в сотнях задач (не говоря о нормальных тысячах) без тегов — для меня загадка, никакие категории не заменят банальных меточек.
- Отчётность и статистика. Фактически, Рэдмайн может выдавать разного рода таблички (для получения которых надо обтыкаться мышью), привычные по Жире фильтры даются нелегко, либо не даются вовсе.
- Дэшборд. Нормальные системы дают возможность вывесить себе на некую страницу (рабочий стол, панель мониторинга) набор необходимых данных по заранее определённым фильтрам, с этим тоже как-то никак у Рэдмайна.
- Процессы. Вроде бы что-то есть на тему настройки конкретных способов работы, но выглядит, опять же, слабо.
Нельзя не отметить пару плюсов Рэдмайна, встроенная файлопомойка и вики могут быть интересны, но в нашем случае толку от них было немного. Ещё Рэдмайн умеет делать вложенные проекты, это тоже очень круто и может быть применимо в жизни, но на практике без них-то как раз можно жить очень легко.
В результате, было принято решение попробовать Ютрэк, с мыслью о том, что ежели не подойдёт, то на Жиру всегда можно успеть вернуться. И вот Ютрэк как раз порадовал, порадовал прямо неожиданно. Важно отметить, что я считаю Ютрэк и Жиру продуктами приблизительно одного уровня, то есть, оба несравнимы по уровню с Рэдмайном (которым, на мой вкус, можно пользоваться только от безысходности, он отстал от жизни лет так на пять минимум), на обоих можно продуктивно работать, но при наличии выбора я, пожалуй, предпочту Ютрэк, и вот почему.
Во-первых, командная строка и вообще работа с клавиатуры. В какой-то мере Жира тоже к этому двигалась, но у Жиры это всё выливалось в массу сочетаний клавиш, которые всё равно не упомнишь все, у Ютрэка тоже есть волшебные клавиши, но их, если разобраться, не так много, зато есть натуральная командная строка, которая автоматически появляется при попытке ввода символов с фокусом на задаче. Командная строка работает в самой задаче, работает в списках задач любого вида (в результатах поиска, например), работает на аджайловой доске, работает, если уж очень захотеть, даже через Жаббер и, конечно, работает через коммиты, в общем везде и всегда можно совершенно одинаковым образом общаться с Ютрэком, и это, на самом деле, очень круто.
Как ни крути, но клавиатура до сих пор является самым быстрым инструментом ввода данных в компьютер, мышь проигрывает вчистую, а на работу с задачами хочется тратить как можно меньше времени, командная строка в этом плане просто спасение, особенно с учётом того, что она работает в списках задач и на досках, где даже чисто физически негде разместить необходимые элементы управления полями.
Во-вторых, редактор рабочих процессов (которые воркфлоу). Тут надо пояснить, что не все его запишут в плюсы Ютрэка, и у него же есть некоторые постыдные технические минусы (об этом ниже). Редактор этот является отдельностоящим приложением на Яве, в котором нужные триггеры/ограничения/автоматы, по сути, программируются на специализированном языке. Где-то в этом месте часть потенциальных пользователей Ютрэка в ужасе убегает прочь, но мне, после некоторого изучения и реального опробования в деле, на самом деле понравилось, поскольку подход (для программистов, конечно), выглядит вполне продуктивным.
С рабочими процессами также связана гибкость Ютрэка, не спорю, в Жире я тоже видел очень интересные специфичные процессы, но возможности Ютрэка шире, причём, до недавнего времени мне так казалось теоретически, а тут был повод попробовать воспроизвести в Жире тот же процесс, который у меня уже настроен в Ютрэке, и до конца это не получилось. Реакция на события в самом широком смысле (чтобы по изменению какого-то поля или связи что-то автоматически происходило), которая элементарно делается в Ютрэке, в Жире может быть сделана только через плагины, а это уже Ява со всеми отягчающими обстоятельствами.
Из мелочей ещё стоит отметить жабберный бот (можно и так с Ютрэком общаться) и встроенный редактор картинок. Последний тоже проходит по разряду неочевидных, но очень приятных мелочей. Как правило, в систему нужно запихать какой-нибудь скриншот, который необходимо слегка обрезать и, может, чего-нибудь подчеркнуть или обвести, чтобы получилось максимально близко к тыканью пальцем в монитор. Вот встроенный редактор ровно на это и заточен. Он умеет только такое и ничего больше, при том, что именно для этого его использовать куда проще, чем любой Гимп или нечто подобное «полнофункциональное».
Есть ли минусы у Ютрэка? Однозначно. Например, эта зараза не работает в Конквероре (причём, если Жира хотя бы слегка работает, то этот не работает совсем), что меня искренне раздражает. Редактор бизнес-процессов до сих пор (в конце 2016-го года!) работает только с шестой версией Явы (которой уже скоро десять лет стукнет и которая уже три года как не поддерживается), единственное, что спасает Джетбрейнс в этом плане это выложенная ими же полноценная виртуалка для работы с этим самым редактором. Да, проблему она во многом решает, но всё равно выглядит такое очень странно.
Отдельной строкой учёт времени. Тут тоже есть очень заметное отставание от Жиры с плагином Темпо, то ли забивать таймшиты уже не модно, то ли ещё что, но явно на этот функционал Джетбрейнс время тратить не хочет.
Также, в сравнении с Жирой, не хватает Ютрэку некоторой полировки. Разного рода баги, конечно, есть и там, и тут. Но по сумме наблюдаемых явлений, Ютрэк обладает в разы более мощным внутренним движком для работы в заданной предметной области. Вот только заметить его успеют не все, потому как заводишь умолчальный проект, пытаешься потыкаться, а тыкать-то некуда особо. Если Жира предоставляет сразу десятки всяких разных стандартных фильтров для отображения задач, картинок и всякого такого, то в Ютрэке всё необходимо докручивать самому, нужны отчёты — настрой, нужны графики — добавь, хочешь списки задач по разным критериям — пиши фильтры и получай. То есть, добиться-то всего можно, но ценой некоторых усилий.
Разумеется, в силу большей популярности и давности существования Жиры, к ней также легче прикручивается любой сторонний софт разного рода. Это тоже может иметь своё значение в каких-то случаях.
В остальном же Ютрэк меня радует настолько, что я иногда подумываю на нём сделать персональную систему управления задачами, то бишь, для себя самого, благо лицензии до десятка пользователей не нужны. Впрочем, это сама по себе задача, которую непонятно когда и как решить при наличии кучи других задач.