Difference between revisions of "Ride the Walrus! (Whalerider-2011)"
From Wiki4Intranet
(→Презентация) |
|||
Line 1: | Line 1: | ||
<slideshow title="" style="whalerider" scaled="true" font="Calibri, Segoe Print, cursive" headingmark="⌘⌘" /> | <slideshow title="" style="whalerider" scaled="true" font="Calibri, Segoe Print, cursive" headingmark="⌘⌘" /> | ||
− | Наш подход к выбору инструментария разработки «Ride the | + | Наш подход к выбору инструментария разработки «Ride the Walrus» (отсылает к рекламе из Футурамы: «попробуй 100 % свежевыжатый моржовый сок!»): |
− | + | ||
− | + | ||
* Не изобретать велосипедов и не строить из себя безумного интегратора, давая по желаемой системе каждому и пытаясь потом с этим жить. | * Не изобретать велосипедов и не строить из себя безумного интегратора, давая по желаемой системе каждому и пытаясь потом с этим жить. | ||
− | * Использовать только софт («моржа»), используемый в | + | * Использовать только софт («моржа»), используемый в mainstream — свободно развивающийся под влиянием десятков тысяч разработчиков. Таким образом, мы получаем самые передовые и удобные практики и процессы. И даже если морж не очень красив внешне — под влиянием массы пользователей внутри он приобретает гибкую структуру. |
− | * Использовать только открытый и бесплатный | + | * Использовать только открытый и бесплатный софт — такой софт, в отличие от закрытых вендорских коробок, легко укротить и направить в нужном направлении. |
* Не лениться и укрощать его! | * Не лениться и укрощать его! | ||
** Выжимать все «соки из моржа», реализовывать все скрытые возможности! | ** Выжимать все «соки из моржа», реализовывать все скрытые возможности! | ||
Line 14: | Line 12: | ||
** Удобство для разработчиков: минимум бюрократии, минимум необоснованных ограничений, отсутствие странных интерфейсов. | ** Удобство для разработчиков: минимум бюрократии, минимум необоснованных ограничений, отсутствие странных интерфейсов. | ||
** Организационную свободу и масштабируемость. | ** Организационную свободу и масштабируемость. | ||
− | * Принцип «по системе на | + | * Принцип «по системе на область» — Subversion (+ ViewVC), Bugzilla, MediaWiki. Лишние системы сюда влезают плохо, и это хорошо! |
− | * Какие конкретно соки выжаты из | + | * Какие конкретно соки выжаты из моржа — специфика использования: |
** Интранет корпоративный, постоянные желания интеграции с продуктами M$, права доступа, трудозатраты (а то и задним числом), двухуровневая поддержка, управление багами по почте, SCRUM. | ** Интранет корпоративный, постоянные желания интеграции с продуктами M$, права доступа, трудозатраты (а то и задним числом), двухуровневая поддержка, управление багами по почте, SCRUM. | ||
** Локальная Windows-вики, использование Wiki для документирования, CRM. Слежение за ошибками. | ** Локальная Windows-вики, использование Wiki для документирования, CRM. Слежение за ошибками. | ||
− | ** Множество далёких от вики и вообще не очень близких к вебу пользователей, желание научить людей говорить и | + | ** Множество далёких от вики и вообще не очень близких к вебу пользователей, желание научить людей говорить и писать — блогофорумы, внешние ресурсы, ВикиПрезентации. |
== План == | == План == | ||
Line 53: | Line 51: | ||
== Презентация == | == Презентация == | ||
− | <slides float=" | + | <slides float="left" width="300"> |
− | Ride the | + | Ride the Walrus — подход к выбору инструментария разработки |
Виталий Филиппов | Виталий Филиппов | ||
Line 61: | Line 59: | ||
</slides> | </slides> | ||
− | < | + | === Видеоролик ⌘⌘ === |
− | [[File:Ride the walrus.png]] | + | |
− | + | {{vimeoembed|28192912|640|480}} | |
+ | |||
+ | === Лунапарк ⌘⌘ === | ||
+ | |||
+ | * Изобрести своё, с <abbr title="Блэкджек и шлюхи">Го и Гейшами</abbr>. | ||
+ | * Минусы: no best practices, сложность поддержки и обучения, без них умирает. | ||
+ | |||
+ | [[File:Veloquad.jpg|180px]] [[File:Rip300.jpg|128px]] | ||
+ | |||
+ | === Коробка ⌘⌘ === | ||
+ | |||
+ | * Взять готовое решение от вендора, глобальное и надёжное © | ||
+ | * Минусы: vendor lock-in, платная, закрытая - фиг пофиксишь. | ||
+ | |||
+ | [[File:Man-peeking-out-of-moving-box.jpg|192px]] [[File:CatCactus.jpg|192px]] | ||
+ | |||
+ | === Безумный интегратор ⌘⌘ === | ||
+ | |||
+ | * Или "Хоттабыч": каждому по мячу! | ||
+ | * Минусы: проблемы интеграции, "что, где, когда" - что где валяется и когда это кончится. | ||
+ | *: Некоторые придумывают ESB :) | ||
+ | |||
+ | [[File:Hottabych.jpg|192px]] [[File:PromiscIntegration.jpg|192px]] | ||
+ | |||
+ | === Оседлай моржа! ⌘⌘ === | ||
+ | |||
+ | * Mainstream, Opensource. М.б. жирный и местами несимпатичный, но очень мощный. | ||
+ | * Ride the walrus! - обуздай и допили, не ленись! | ||
+ | |||
+ | [[File:WalrusPic.jpg|175px]] [[File:Ride the walrus.png|192px]] | ||
+ | |||
+ | === По системе на область ⌘⌘ === | ||
+ | |||
+ | * Код | ||
+ | * Знания | ||
+ | * Дела | ||
+ | |||
+ | ==== По системе на область ⌘⌘ ==== | ||
+ | |||
+ | * Код → SVN+ViewVC | ||
+ | * Знания → MediaWiki | ||
+ | * Дела → Bugzilla{{star}} | ||
− | + | {{star}} Вот уж морж так морж. |
Revision as of 18:01, 18 September 2011
- Author
- Stas Fomin
- Footer
- Ride the Walrus! (Whalerider-2011)
- Subfooter
- Stas Fomin, 18:00, 10 October 2013
Наш подход к выбору инструментария разработки «Ride the Walrus» (отсылает к рекламе из Футурамы: «попробуй 100 % свежевыжатый моржовый сок!»):
- Не изобретать велосипедов и не строить из себя безумного интегратора, давая по желаемой системе каждому и пытаясь потом с этим жить.
- Использовать только софт («моржа»), используемый в mainstream — свободно развивающийся под влиянием десятков тысяч разработчиков. Таким образом, мы получаем самые передовые и удобные практики и процессы. И даже если морж не очень красив внешне — под влиянием массы пользователей внутри он приобретает гибкую структуру.
- Использовать только открытый и бесплатный софт — такой софт, в отличие от закрытых вендорских коробок, легко укротить и направить в нужном направлении.
- Не лениться и укрощать его!
- Выжимать все «соки из моржа», реализовывать все скрытые возможности!
- То есть небольшое количество легких доработок крупно увеличивает возможности и юзабилити, при небольших затратах.
- Это дает нам:
- Удобство для разработчиков: минимум бюрократии, минимум необоснованных ограничений, отсутствие странных интерфейсов.
- Организационную свободу и масштабируемость.
- Принцип «по системе на область» — Subversion (+ ViewVC), Bugzilla, MediaWiki. Лишние системы сюда влезают плохо, и это хорошо!
- Какие конкретно соки выжаты из моржа — специфика использования:
- Интранет корпоративный, постоянные желания интеграции с продуктами M$, права доступа, трудозатраты (а то и задним числом), двухуровневая поддержка, управление багами по почте, SCRUM.
- Локальная Windows-вики, использование Wiki для документирования, CRM. Слежение за ошибками.
- Множество далёких от вики и вообще не очень близких к вебу пользователей, желание научить людей говорить и писать — блогофорумы, внешние ресурсы, ВикиПрезентации.
Contents
План
План «Оседлай моржа»:
- Ролик Ride the Walrus (на русском).
- Другие подходы к выбору систем: велосипед (-поддержка, -обучение, -умирает, -CLOC), коробка (-закрытая, -платная, -vendorLockIn), безумный интегратор (-понимание, -интеграция, -поиск данных) (в последнее и у наших попытки удариться бывают). 3 слайда.
- Наш подход: морж (жирный, -внешность, но мощный). Mainstream (100500000 юзают). Opensource. Укротить и допилить — «Оседлай моржа!». 1 слайд.
- По системе на область: код, знания, дела. SVN+ViewVC, MediaWiki, Bugzilla (вот уж морж так морж). Лишние системы лезут плохо: тесты == знания (тест-кейсы), тесты == код (авто), тесты == дела (прогоны). И обратите внимание, что так делает весь интернет — возьмите любой гуглкод. 3 слайда.
- Могли ли быть альтернативы? Могли ли. DVCS в моде (но не факт что в интранете хороши). CVS ещё не сдох (nt, March Hare). Trac, Mantis, Roundup — слабоваты. Jira — закрытый морж :) DokuWiki, MoinMoin. У MediaWiki есть преимущества — лучше расширяемость, хранит в базе, есть SMW. 1 слайд.
- Последняя попытка захотеть «безумного интегратора» была — CRM. Ибо слабая сторона вики — атрибутика. Но она ж решается Semanticом. Мы уже приползли в его сторону — моделируем CRM на MediaWiki. Приползли, надо отметить, не мы одни, есть как минимум Halo. 1 слайд.
- Как оседлать моржа? Лёгкие доработки, которые дают +++ к юзабилити. 1 слайд Media:Cutoff.jpg. Примеры:
- Медиаподдержка. Куча плагинов, куча готового софта — тех, Graphviz, UML, Gnuplot, SVGEdit, Free
mindplane, Dia, FLV, PDF. А кстати, недавно слабали Visio <-> SVG, мы прикрутим. 1 слайд. - Обязательная интеграция. Интервики, buglist -> wiki, ссылки bugzilla <-> wiki, viewvc <-> bugzilla (и не нужно доп.атрибута issue#). 1 слайд.
- Упрощение использования вики: таблицы, WikEd, Edittools, автопредпросмотр (почти интерактив), HTML-почта (also bz) и дифы, черновики, которые надо только поставить и не терять данные при закрытии браузера. 1 слайд.
- Аналогично про багзиллу: Ctrl-Enter, фокусы и табиндексы, быстрый поиск, морфология, массовая загрузка аттачей, предпросмотр комментов, RSS’ы. 1 слайд.
- Сок из ViewVC: кодировки, индексация содержимого — простой комбайн ViewVC+Tika+Sphinx (-SVNSearcher). 1 слайд.
- Котёнок, следящий за ошибками. Коли уж у вас царит
раздолбайствогибкость и стоит unstable-система на боевом, пускай все ошибки логгируются и сами стучат по почте мне. А я их фикшу в 5 минут, народ удивляется. 1 слайд, котёнок. - S5-презентации — хороший пример дешёвой доработки — готовая система, только прикрути, и получаешь уникальный инструмент.
- Менее очевидные примеры: ВикиОпросы, ВикиЭкзамены (легко писать тесты, обучать народ, собеседовать), ВикиЗакладки (+семантические). Забавно, что после случая с голосованием™ пришлось сделать скрытие результатов.
- Медиаподдержка. Куча плагинов, куча готового софта — тех, Graphviz, UML, Gnuplot, SVGEdit, Free
- Корпоративные реалии, или какой для них нужен сок из моржа, и почему 4Intra.Net (потому что отокуют клиенты, менеджеры и винда) (1 слайд. Media:Men_in_black.svg):
- Винда и продукты M$ (1 слайд Media:Ballmer95.jpg):
- Bugzilla <-> Excel и т. п.: CSV-экспорт, вьюшки наружу, Excel-импорт — массовое обновление и постановка багов.
- Wiki <-> Word: WikEd-копипаста, выгрузка, вордовый псевдоCSS: иерархические списки, автооглавления, альбомная ориентация, точки после номеров разделов :), авто-нумерация ссылок на разделы. Сюда же использование для документирования — сверхстатьи, импорт/экспорт копий.
- Почта: Грёбаный Exchange Server, портящий письма (Base-64, multipart). Чтение RSS’ов через Аутглюк — HTTP-авторизация. Ответы багзилла демону, удаление оверквотинга.
- Винда: Массовая заливка файлов через Flash-плагин (на очереди, похоже, копипаста скриншотов из него же). Локальная Windows-сборка (внизкачай) — «всё включено».
- Атака менеджеров и клиентов:
- Money трекер из багзиллы: Fix Worktime, а ещё задним числом, а ещё размазывание времени по багам, а ещё перенос времени с бага на баги с размазыванием. Дополнительные атрибуты — «темы», «договора», и т. п. Доработки зависимостей значений. А потом проверки на корректность заполнения. Ужос, и багзилла этого не умеет обычная, но мы от этого убежать не смогли.
- Если давать всем по кастом полю — сойдёшь с ума очень быстро. Надо стараться заменить на А) Теги Б) Общий набор полей. Здесь багзилла преуспела. Двухуровневая поддержка — «внешние» продукты (про стенд и аналогию с see also), второй интерфейс для клиентов (и redirect to my bugzilla). SCRUM — печать карточек (+картинка).
- А ещё права доступа — больная тема вики (и наша). В багзилле с ними труднопонимаемо, но хорошо.
- Компания — не веб ⇒ куча народу, от него далековатого. А нужно быть ближе. Для компании хорошо, когда сотрудники пиарятся — но никто ж сам не пишет! А как научить? Начать с малого — блоги / срач в комментах! — на вики (+картинка+форумы). А ещё есть внешние ресурсы типа Team. Ещё внутренние семинары.
- Винда и продукты M$ (1 слайд Media:Ballmer95.jpg):
Презентация
Видеоролик ⌘⌘
Лунапарк ⌘⌘
- Изобрести своё, с Го и Гейшами.
- Минусы: no best practices, сложность поддержки и обучения, без них умирает.
Коробка ⌘⌘
- Взять готовое решение от вендора, глобальное и надёжное ©
- Минусы: vendor lock-in, платная, закрытая - фиг пофиксишь.
Безумный интегратор ⌘⌘
- Или "Хоттабыч": каждому по мячу!
- Минусы: проблемы интеграции, "что, где, когда" - что где валяется и когда это кончится.
- Некоторые придумывают ESB :)
Оседлай моржа! ⌘⌘
- Mainstream, Opensource. М.б. жирный и местами несимпатичный, но очень мощный.
- Ride the walrus! - обуздай и допили, не ленись!
По системе на область ⌘⌘
- Код
- Знания
- Дела
По системе на область ⌘⌘
- Код → SVN+ViewVC
- Знания → MediaWiki
- Дела → Bugzilla*
* Вот уж морж так морж.