Assembla.com – бесплатный виртуальный офис для команды разработчиков
Александр ЛозовюкОпубликовано 11.09.2008 в Инструменты, Разработка, Статьи, Управление проектами
Регулярно описывая новые стартапы, я постоянно видел тенденцию к созданию веб-приложений и целых веб-офисов (не в смысле замены пакета от Microsoft, а по функциональности), однако ни разу не встречал таких онлайновых комплексов, рассчитанных на коллективы разработчиков. И если раньше я считал, что уж мы то, разработчики, можем вполне обойтись и стандартными средствами, максимум, сами себе на сервере развернуть SVN + Trac, то став руководителем (и продолжая быть программистом) отдела разработки небольшого стартапа, я немного переосмыслил своё виденье веб-офисов. Стало понятно, что иметь что-то онлайн, но заточенное сугубо для организации виртуального представительства отдела разработки, было бы очень даже полезно и нужно. Желательно, бесплатно, но если за это будут просить деньги, также стоит подумать. Ведь сопровождение собственными силами такого решения выльется и в дополнительное время на установку и конфигурирование, и на привыкание работать в нескольких разных системах.
Первым делом я подумал использовать бесплатные сервисы для открытых проектов, однако мы разрабатывали совсем не открытое решение, поэтому такие сервисы мало подходили. Да и функциональность и даже удобство пользования самыми популярными решениями вроде Sourceforge или Google Сode было отнюдь не на высоте. Пришлось искать что-то другое… и такое решение нашлось! Посмотрим на сервис Assembla.com.
Введение в Assembla.com
Не совсем стартап, компания Assembla работает на рынке с 2006 года, предоставляя как бесплатный пакет, так и расширяя функциональность за небольшую плату. Начальная регистрация и работа вполне бесплатны, и поверьте, для организации небольшого веб-офиса для распределённой команды разработчиков, которые работают над одним или несколькими проектами, вам вполне хватит только бесплатного аккаунта. В основном, он ограничен объемом места под хранение файлов (допускается как просто хранение файлов в проекте, так и системы контроля версий – SVN, Git и Mercurial) – всего 200 Мб на проект, а за дополнительную плату – больше. Все остальные функции и модули – бесплатные, платные лишь премиум сервисы, вроде бекапа на Amazon S3, дополнительный уровень безопасности (используя SSL), а также 5 Гб места. Единственное, что из платного интересно и необходимо – место, чтобы в больших проектах можно было хранить всю историю версий, ведь в бесплатном самые старые ревизии кода удаляются, едва вы достигните предела дискового пространства. Платная версия стоит достаточно дешёво – 150$ в год, а необходимо это только для владельца проекта, остальным участникам достаточно простых аккаунтов. Кстати, для открытых и студенческих проектов они предоставят все условия бесплатно, стоит сообщить им и описать проект.
Проекты, над которыми вы работаете, называются Spaces, и представляют собой набор сервисов в едином интерфейсе и объединённой функциональность (например, общая регистрация и т.п., чего как раз очень сложно добиться, развёртывая все это самостоятельно). Дальше мы рассмотрим предоставляемые сервисы, из которых, как из кирпичиков, вы можете строить свой виртуальный офис в зависимости от нужд проекта.
Кстати, сами spaces могут быть как приватными и доступными только вашей команде, так и открытыми для всех. Так, для примера, можно гибко управлять работой над каким-либо открытым проектом. Список всех доступных проектов вы можете узнать на этой странице, а также найти интересные для себя, исходя из языка или платформы.
Основные сервисы
Wiki позволяет совместно вести документацию и редактировать документы, однако я бы не стал рекомендовать её для серьёзной работы – к сожалению, это именно тот модуль, который лучше ставить самому на собственном сайте, а входящий в пакет недотягивает до открытых аналогов типа DocuWiki или MediaWiki, однако для базового и примитивного использования для документации подойдет. Плюсом есть то, что стартовая страница проекта может быть оформлена как вики, а оттуда уже будут ссылки на более удобные инструменты. Однако, если wiki вам надо только для ведения внутренней документации, а все разработчики отлично подкованы, то вы можете использовать встроенную функциональность от Trac, хотя, конечно, на мой взгляд, удобства меньше, и доступ к этой части будет всегда через дополнительную авторизацию.
Для общения между членами команды есть модуль Messages, который что-то вроде веб-форума или доски объявлений, позволяет задавать общие вопросы всем участникам проекта и далее обсуждать каждый из них. Основной плюс – то, что вся переписка идёт в едином интерфейсе и доступна всем участникам, исключая потом перекапывание личной переписки или логов ICQ.
Какой же проект без участников, поэтому модуль Team столь важен – здесь вы можете как владелец проекта приглашать других участников (по e-mail, если они не имеют аккаунта в assembla.com, им будет предложено зарегистрироваться), а также управлять правами доступа остальных членов команды.
Модуль File позволяет хранить дополнительные файлы, связанные с проектом, например, документацию или другие файлы, при этом есть атрибуты web 2.0 вроде разметки тегами. Для графических файлов есть превью (однако для графики лучше всего использовать модуль Images), остальные снабжаются мета-информацией и доступны для загрузки.
Основной модуль, с которым придётся работать, особенно если вы менеджер, это Stream – своего рода центральная панель, куда стекаются сообщения обо всех изменениях в проекте. Здесь сразу видно всю активность – и новые файлы, комментарии, хронология коммитов в систему контроля версий, редактирование wiki или изменения в составе команды. При этом вы можете гибко настраивать отображение и указывать только те события, что вам интересны и в желаемый промежуток времени. Здесь также настраивается оповещения по e-mail – вам не обязательно держать открытым страницу сервиса все время, как только что-то произойдет, вы будете уведомлены по почте (конечно, если настроили себе оповещение). Либо вы можете использовать модуль Dashboard – он несколько отличается по внешнему виду, но сравним по функциональности. И конечно же все изменения доступны по RSS-ленте.
Сервисы для разработки
Вот мы и подошли к самому интересному. Для разработчиков Assembla предлагает на выбор несколько систем контроля исходного кода – традиционный Subversion, а также современные Git или Mercurial (подробнее). И всё это интегрировано с системой Trac. Вы также можете использовать и собственную систему тикетов – модуль Tickets, мне он показался более удобным и даже красивым, по сравнению с стандартным для Trac, однако это на любителя. Тем более, переключится можно в любой момент. Если у вас есть ещё и собственный SVN-репозитарий, вы можете подключить его и работать как с ним, так и использовать обе системы одновременно (встроенную сервиса и собственную). Репозитарий можно просматривать как онлайн, через Trac, так и использовать любые другие инструменты (рекомендуемые для разных ОС приведены прямо на странице).
Для управления и контроля над работой полезен модуль Scrum, позволяющий создавать отчёты о том, что было сделано и над чем каждый участник будет ещё работать. Вместе с этим модулем полезен и встроенный чат (Chat), который служит для непосредственного онлайн общения между участниками на сайте.
Дополнительно, отслеживать ход работ, можно через модуль Milestones, который получает информацию от модуля тикетов и репозитария кода, формируя картину готовности проекта к назначенным ключевым точкам. Без этого модуля сложно представить работу над более-менее сложным и важным проектом.
Маленьким открытием, даже после использования сервиса в нескольких проектах, стал модуль Images. Для проектов, где используются графические элементы, вместо файлового модуля лучше всего использовать именно Images – это не только хранение изображений, но ещё и оригинальный Flash-редактор, позволяющий рисовать и обсуждать загруженные изображения просто на странице. Особенно удобно это на этапе тестирования – скриншот можно загрузить и сразу на нем отметить проблемные участки, здесь же прокомментировав его.
Из дополнительных модулей, которые не обязательны, но возможно вам понадобятся, я бы отметил систему Mephisto (управление блогом и сайтом для проекта), Staffing (система публикаций вакансий на портале assembla.com и управление наймом участников, такая мини-рекрутинговая система). Если вы используете управление временем для участников, добавьте в проект модуль Time для распределения и контроля времени на каждую задачу и каждого сотрудника.
Ну а для самых серьёзных разработчиков, или просто для специфических условий использования сервиса и требований по интеграции его в вашу инфраструктуру или проект, есть хорошо документированный REST API, а также возможности по интеграции с другими системами, например, используя XMPP-сервер Assembla вы можете общаться и видеть всю свою команду просто в вашем jabber-клиенте.
Для тех кто ищет работу или сотрудников…
Для пользователей коммерческой версией, кроме дополнительных возможностей, доступны и расширенные возможности по управлению своей карьерой. Общедоступный модуль Talents позволяет подыскать себе в проект квалифицированного сотрудника, либо же указать свои возможности и знания, чтобы вас могли найти работодатели. А раздел Jobs позволит публиковать вакансии в своих проектах и нанимать временных (а может и постоянных) сотрудников. Таким образом, Assembla выступает в роли аутсорсинговой и рекрутинговой платформы, что очень органично вписывается в её сервисы. Кстати, среди специалистов по многим ключевым словам находится достаточно много наших людей, так что поискав, вы можете встретить своего коллегу с соседнего города.
Выводы
В итоге, для того, чтобы зарегистрировать новый проект и настроить его для комфортной работы небольшой команды разработчиков и менеджера, вам достаточно выбрать ему имя и настроить необходимые модули, просто выбирая их из списка, конкретные настройки будут созданы автоматически. Если брать обычный веб-проект и небольшую команду (3 – 5 человек), то по моему опыту, достаточно следующего набора модулей: Wiki, Files, Messages, Team, Stream, Trac/SVN, Tickets (мне просто он больше нравиться, чем встроенный в Trac), Chat, Images и Milestones. В принципе, часть из них стандартная и доступна сразу, остальные необходимо добавить из панели Admin – Tools.
Настройка такого веб-офиса, вместе с приглашением всех участников команды, у меня заняла всего 15 минут времени, так сказать, «не отходя от браузера» и не вникая в тонкости конфигурирования SVN-а или других приложений. В условиях небольших команд и простых проектов такое решение способно существенно ускорить начало работы, не требуя от компании или коллектива ничего, кроме наличия браузера, интернета и базовых знаний своей работы. Я уже перенес все свои проекты на этот сервис, а вы?
agile, assembla.com, web office, виртуальный офис, разработка
Понравилась статья? Подпишись на обновления по RSS/E-mail









(22 голосов, средний: 4.77 из 5)
Оказывается, уже есть то, чего мне так не хватало, а я об этом и не подозревал
Спасибо. Отличная статья.
а чем отличается “отдел небольшого стартапа” от “наша компания создала команду, которая делает новый продукт”?
эт только меня начинает раздражать слово “стартап”, или следуя модным тенденциям настроить автозамену “проект -> стартап”…
pako - об этом писали все и много. поищите, разница большая и она есть, не так важно, видите ли вы ее или нет. Проект это проект. Каждый стартап - это проект, но не всякий проект (далеко не всякий) - стартап.
Я примерно год назад анализировал подобный сервис и тоже пришёл к выводу, что в большинстве случаев Assembla самое оно
http://scrum.org.ua/kak-vybrat-besplatnyj-svn-xosting/
Однако не всегда, вот диаграмма, которая поможет выбрать вам БЕСПЛАТНЫЙ сервис подобного рода
http://scrum.org.ua/wp-content/uploads/2008/01/svn-hosting-helper.png
Весьма интересная статья. Есть некоторые интересные идеи, которые можно позаимствовать. Спасибо автору.
Пробовал Assembla на реальном проекте чуть больше года назад - проект был достаточно сыроват, с рахитичным интерфейсов и usability.
Надеюсь сейчас что-то изменилось.
Классный инструмент, давно пользуюсь.
Хороший сервис. Добавлю только, что еще совсем недавно предоставлялось 500 Мб бесплатно. Наверное популярность растет в разы быстрее, чем администраторы успевают “наращивать железо”:)
Подскажите пожалуйста, можно ли на ассембле включить уведомление на мыло о изменениях в репозитории?
Полезный обзор, спасибо!
Alexsun: спасибо за диаграмму!
to 9
Можно. Если не ошибаюсь, то когда добавляется тот или иной член команды, то нужно определенный чекбокс отметить
Успешно ползуюсь GForge уже год. У них можно бесплатно хостить проэкты до 5 человек.
Да, можно.
Спасибо за статью, интересный ресурс.
Вопрос: первым делом пришло в голову найти работу. Закладка Money. Каким образом реализовать получение денег от потенциального работодателя на этом сайте? Видел поле для регистрации кредитки, если можно опишите как вообще организовать процесс работы и получения за нее оплаты.
Скрам примитивный. Так что пока VersionOne
А есть возможность видеть задачи и прогресс по проекту в виде диаграмы Ганта?
Пользуюсь ихним бесплатным SVNом уже около 3х месяцев, пока что никаких нареканий, всё работает как часы.
Смотрел данный сервис для использования в своем проекте
тоже понравилось но времени на подробное ознакомелние нету
Пасибо за отличный обзор, коротко и по теме
Отличный хостинг, давно пользуюсь, рекомендую.
Вопрос: в чем разница между тикетами и тасками?
2 ryba
таски реализованы криво. у них нет статусов и прочих рулезов.
таска это тот же мессадж, только с особой пометкой. ими неудобно управлять, имхо.
тикеты удобнее: их удобнее добавлять, трекать по майстоунам, смотьреть лог, выставлять приоритет, добавлять ассоциации и аттачи, менять статусы и резолвить при коммите
ассемблой пользуюсь пару месяцев, есть видимые плюсы и минусы.
а так оценил бы на 4-ку, имхо.
2 Andrey,
фигово.
да, действительно раньше было 500 метров, сейчас стало 200
кстати, а эти 200 метров это на 1 спейс или на все?
п.с. кто-ньть знает где можно посмотреть сколько у тебя осталось доступного места?
Использую assembla для проектов около полугода в конфигурации Trac & SVN. Хотя и не без проблем (уже упомянутые здесь таски + всего 200М) - всё равно доволен. Рекомендую.
Такие сервисы не новость я часто пользуюсь Unfuddle
Отличная статья!
юзаю updatelog.com, тоже ничего, 50 убитых енотов в месяц, и полгода нахаляву за конструктивную идею девелоперам сервиса
Уже не бесплатный
Эльдар вот не надо людей пугать. Изменена только система оплаты, и то, что теперь бесплатные аккаунты должны быть открытые, и все. А появился коммерческий вариант за 2 USD/месяц за одного участника проекта, это достаточно мало, к тому же и место дают сразу намного больше.
2 aleks_raiden: вы про Ассемблу? Где про это написано?
конечно. ну там где и положено - у них в новостях и в блог. Вот, мы уже перешли, я даже для нашей компании закупил все акаунты на проекты
http://blog.assembla.com/assemblablog/tabid/12618/bid/6986/Release-2-0-restricting-free-plans-giving-back-with-features-and-pric
на сколько я понял 2$ это для каждого члена комманды на 1 спейс, т.е. если у тебя 10 спейсов (проектов) и по 5 членов команды в каждом, то цена будет 10*5*2 == 100$ в месяц. Т.е. с ростом команды и срейсов (проектов) стоимость использование тула будет расти. Так?
не концептуально это, имхо.
да, если все эти спейсы коммерческие.
Почему? Нормально - используете для работы, прибыли и не хотите делится - платите. иначе открываете спейс и все бесплатно
хотя походу после 4-го спейса все остальные бесплатны для этого юзера.
т.е. если у вас более 4-х спейсов, как в примере выше - 10 спейсов, и 5 юзеров на спейс то выходит что нужно платить 2*4*5 == 40$ в месяц, т.е. рост стоимости будет обусловлен увеличением кол-ва юзеров на спейс и увеличением места (более 1ГБ).
если спейсов меньше либо равно 4, то тогда стоимость равна (кол-во юзеров)*(кол-во спейсов)*2*(кол-во места)
Прикол: у их директора фамилия Singleton, далеко пойдут.
Кто-нить знает, в платной версии их сайт меньше тормозит и SVN не лагает?
да ну что вы такое говорите. Если были проблемы, то у всех. Сейчас перенесли сервера на Amazon EC. А так все отлично работает, даже прекрасно. Никакой разницы между акаунтами в виде хостинга нету.
Кто нибудь знает где можно отыскать исходники к assembla или аналог какой нибудь для поднятия своего аналогичного сервиса?
А в попе не слипнится? Исходники…
Плати деньги - всё напишут.
Есть проэкт GForge, версии до 4.5 кажется, были опен сорс. Ну и для многих проэктов хватает трака.
Кажется я понял в чем был прикол - в винде при использовании TortoiseSVN в памяти висит некий процесс под названием TSVNCache: если его прибить, то SVN-апдейты приходят как миленькие - иначе порой приходится 2-3 раза запускать апдейт, чтобы пришли правки, которые ты же час назад закомитил с другой машины. Замечено только за ассемблой (во всём остальном assembla мне нравится, ещё раз спасибо автору статьи за просвящение).
2 alexandrigo, Асембла написана на рубине(видимо с рельсами), ищи на самой асембле, я на память не помню адрес. У них в SVN’е все лежит. Лицезия типа ЖПЛ, ест платная поддержка по развертыванию.