Получи случайную криптовалюту за регистрацию!

DocOps

Логотип телеграм канала @docops — DocOps D
Логотип телеграм канала @docops — DocOps
Адрес канала: @docops
Категории: Технологии
Язык: Русский
Количество подписчиков: 4.78K
Описание канала:

Writing about work, Developer Relations and Developer Experience, mentorshiop, conferences, documentation, and everything that I work and live with.
Author: @nick_volynkin
Mentorship: https://getmentor.dev/mentor/nikolay-volynkin-186

Рейтинги и Отзывы

4.33

3 отзыва

Оценить канал docops и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

2

3 звезд

0

2 звезд

0

1 звезд

0


Последние сообщения 6

2021-03-17 10:11:12 У меня сейчас есть интересная дилемма по организации работы над переводом. Чтобы её объяснить, сначала расскажу про механику перевода.

Перевод устроен так: исходный текст нарезается на единицы перевода (translation units, TU). Заголовки, абзацы, пункты списков, ячейки в таблицах. Каждый юнит переводится целиком. Переводить куски текста большего размера — неэффективно, а если нарезать ещё меньше, то потеряется смысл.

Внутри системы переводы хранятся в структуре ключ-значение (ассоциативный массив, dictionary, map). Оригинальный текст — это ключ, а перевод — значение.

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

Как вы думаете, что происходит, когда перевод уже есть, но вдруг поменялся оригинальный текст? Мы ищем по новому ключу, значения там нет, перевод «слетает».

Представьте, что есть старый текст на английском. Его написали давно, но ещё не перевели. Его нужно когда-то перевести, и когда-то вычитать и поправить язык, стиль и оформление.

Можно переводить как есть, когда-нибудь потом вычитывать английский текст, а потом допереводить ещё раз. Получается лишняя работа переводчика.

А ещё можно вычитывать оригинал до перевода. Тогда у переводчика меньше работы, но мы добавляем техписателям срочных задач, которые блокируют работу над переводом. И эти задачи конкурируют за время с другими, более важными задачами по документации.

Кажется, что оба варианта плохи, но второй — хуже. А можно как-то иначе? Отдать пруфрид переводчику или другому внештатному сотруднику? Что бы вы сделали?
783 viewsNick Volynkin, edited  07:11
Открыть/Комментировать
2021-03-11 10:04:01 Ревью перевода помогает обнаружить недостатки оригинального текста.

Мы пишем документацию tarantool.io на английском, а потом переводим на русский. Раньше переводили сами, а теперь отдали эту работу внештатной переводчице Кате. В целом это прекрасно и мы очень довольны. Доки наконец-то переводятся, а техписатели освободились для основной работы (привет, теория ограничений).

Чтобы помочь Кате войти в тему и поддержать хорошее качество, мы проверяем перевод. Иногда находим ошибки. Из этих ошибок я очень много узнал о том, где наши доки непонятны и как их можно улучшить.

Ошибки в переводе часто встречаются там, где исходный текст написан сложно. Там могут быть сложносочинённые предложения, уточнения в скобках, путаница в местоимениях, непонятные причинно-следственные связи. Это сложно читать и понимать вообще всем, включая переводчиков.

Другой типичный случай — когда код не размечен как код. Вот мы пишем про integer. Это абстрактное «целое число» или «переменная типа integer»? Разница существенная, мы всё-таки пишем про СУБД. Если это тип данных, то мы должны выделить его моноширинным шрифтом. Например: the Lua integer type can hold integer values from _____ to _____.

Вывод такой: переводчики ошибаются там, где ошибутся и многие другие читатели. Поэтому мы (писатели) берём на себя ответственность за все систематические ошибки в переводе. Изучаем их, ищем причину, вырабатываем правило, внедряем его. Конечно, исправляем ошибки в оригинальном тексте и помогаем переводчикам исправлять перевод.

А что значит «внедрить правило»? Задокументировать, применять в ревью новых текстов, исправлять в старых, добавить в автотесты.
927 viewsNick Volynkin, 07:04
Открыть/Комментировать
2021-03-10 17:23:26 Принципы knowledge-centered support можно применить в ревью текстов или кода. Вчера обещал рассказать, как применяю в работе принципы KCS. Так вот, я вдруг осознал, что уже два месяца использую похожие правила при ревью текстов и переводов: — Когда вижу…
612 viewsNick Volynkin, 14:23
Открыть/Комментировать
2021-03-10 10:00:48 Принципы knowledge-centered support можно применить в ревью текстов или кода.

Вчера обещал рассказать, как применяю в работе принципы KCS. Так вот, я вдруг осознал, что уже два месяца использую похожие правила при ревью текстов и переводов:

— Когда вижу в тексте ошибку или место, которое можно легко улучшить, в первую очередь проверяю командную документацию. У нас есть руководство по разметке, совсем небольшой стайлгайд и глоссарий.
— Если нахожу нужное правило или пример «как хорошо», то добавляю ссылку к комментарию.
— Если не нахожу, то сразу пишу дополнение, либо завожу задачу на описание. Все дополнения отдаю команде на ревью.
— Стараюсь формулировать простые правила и давать примеры. Если не получается — значит, мое замечание субъективно или я сам плохо разобрался.
— Внедряю эти принципы в работу всей команды.

Что из этого получается? За последние два месяца командные доки неплохо так приросли и уже экономят время на ревью и передачу знаний. И бóльшую часть текста написал не я.

Конечно, я делал так не всегда. Теперь буду делать осознанно и регулярно.

Скоро мы наймем стажера, а потом ещё штатного техписателя. Тогда наши командные доки и принципы их дополнения пройдут проверку на прочность. Через месяц-другой расскажу вам о результатах.
807 viewsNick Volynkin, edited  07:00
Открыть/Комментировать
2021-03-09 10:01:11 Есть такой подход к организации работы технической поддержки — KCS, knowledge-centered support, поддержка, основанная на знаниях. Строится на простых принципах:
1. Каждый запрос от клиента сначала ищем в базе знаний. Даже если решение вроде и так понятно.
2. Если находим статью с описанием решения — используем это решение. Дополняем статью, если есть чем.
3. Если не нашли — решение нужно выработать, применить и записать в базу знаний.
4. Публикуем все статьи, которые можем, чтобы клиенты могли сами найти и применить решение.
5. В базу знаний пишут все. Ведущие инженеры от новичков отличаются только тем, что решают и описывают самые сложные задачи.

Ведущие инженеры и так помнят решение любой проблемы или могут его выработать за полчаса. Но их не хватит, чтобы сделать всю работу. Часто они — "бутылочное горлышко" в конвейере поддержки. KCS помогает разгрузить их, сделать сложную работу простой и масштабируемой, отдав её младшим специалистам или даже клиентам.

Я вдруг понял, что применяю те же принципы в своей работе, хоть и в другом процессе. Расскажу об этом завтра.

А как у вас? Какие решения вы производите? Как сохраняете их, как делитесь с коллегами?
859 viewsNick Volynkin, edited  07:01
Открыть/Комментировать
2021-02-16 17:38:31 Лекция про документирование API в Confluence:


Рассказывает Олег Игонин, системный аналитик из Veeam Software.

Вводная от автора:

Хочу рассказать о том, как у меня сложилась работа с описанием API методов в Confluence для постановки задачи на их реализацию разработчикам (структура страниц в confluence, структура заголовков, некоторая автоматизация, описание интерфейса метода и работы логики под капотом).

Будет пара примеров, которые можно будет использовать как "рыбу".
Залью это дело на ютуб, так что кому надо, тот сможет посмотреть задним числом.
Но в целом я не претендую на то, что это "единственно верный метод описания", для вас это будет один из вариантов, как люди работают в других компаниях. Можно будет что-то почерпнуть для себя.

В общем, возьму лампу, кота и буду рассказывать. xD
1.1K viewsNick Volynkin, edited  14:38
Открыть/Комментировать
2021-02-02 14:43:45 DocOps pinned «Привет! Меня зовут Николай Волынкин и я руковожу командой документации Tarantool. Ищу технического писателя с хорошим письменным английским и русским, который умеет и любит: — работать со сложной предметной областью: самостоятельно разбираться в ней и закапываться…»
11:43
Открыть/Комментировать
2021-02-02 13:54:10 Привет! Меня зовут Николай Волынкин и я руковожу командой документации Tarantool.

Ищу технического писателя с хорошим письменным английским и русским, который умеет и любит:
— работать со сложной предметной областью: самостоятельно разбираться в ней и закапываться в детали;
— структурировать информацию, объяснять сложные штуки понятным языком и находить удачные формулировки;
— думать и заботиться о читателях, изучать их и совершенствовать свою работу.

Будет полезен опыт разработки, администрирования или работы в техподдержке. Здорово, если вы знакомы хотя бы с Git, командной строкой и языками разметки. Если не знакомы, мы вас научим за пару недель.

Про что мы пишем
— Tarantool («Тарáнтул») — база данных и сервер приложений, работающие в оперативной памяти, то есть очень быстро. В Tarantool можно писать логику обработки данных на языке Lua. Это тоже очень быстро работает и удобно в разработке*.
— Cartridge — конструктор для разработки и управления кластером баз данных.
— Tarantool Data Grid (далее TDG) — платформа для анализа данных, которой удобно пользоваться не-разработчикам.
— Модули Tarantool, коннекторы для разных языков программирования, инструменты для развертывания.

В ближайшие полгода-год вы будете писать в основном про Cartridge и TDG. Про первый мы пишем на английском. Про второй пока что на русском, но есть план перехода на английский. Документацию для новой версии TDG нужно будет писать во многом с чистого листа.

* Пишу упрощенно. Если вы видите тут кучу ошибок, то вы, наверное, разработчик. Для вас есть другая вакансия.

В чем ценность документации
Тарантул — внутренняя разработка компании Mail.Ru Group. Компания использует его во многих своих проектах (например, почта и облачный сервис МСS). Есть и внешние пользователи. Обычно это крупные банки и телекомы.

Хорошая документация очень важна для внутренних и внешних пользователей, продаж и успеха заказной разработки. Наши разработчики радеют за хорошие доки, охотно помогают нам с ревью и часто пишут сами.

Кто нас читает
— Разработчики в команде Tarantool, в других подразделениях компании и во всём мире. Для них мы пишем про устройство базы данных, разработку приложений на Lua и другой хардкор.
— Разработчики, которые интегрируют Tarantool в другие системы. Для них мы описываем API коннекторов на C++, Python, PHP, Go и Java.
— Администраторы, которые занимаются развертыванием, мониторингом и поддержкой инсталляций Tarantool, Cartridge и TDG. У нас есть Ansible-роль для развертывания «на железо» и оператор для Kubernetes. Про всё это мы тоже пишем.
— Аналитики, которые используют в своей работе веб-интерфейс TDG. Им мы рассказываем про интерфейсы и сценарии в них.

Как мы работаем
Используем подход «документация как код». Пишем исходники документации на языке разметки, версионируем с помощью Git, все задачи и ревью (рецензирование) — на GitHub. Благодаря этому у нас всё публикуется за 10-15 минут, форматирование не ломается, тексты не теряются, картинки не пропадают. Про любую строку можем сказать, кто, когда и зачем её редактировал.

Ядро Tarantool — продукт с открытым исходным кодом. Большая часть исходников документации тоже открыта и лежит на GitHub. Командный стайлгайд ведём в общей документации.

В команде есть свой разработчик. Он делает для нас инструменты и автоматизацию. Проверять корректность разметки и качество документа нам помогают автотесты. Пока что они совсем простые, скоро их будет больше. По сайту собираем пользовательскую аналитику и отзывы, учитываем их при планировании задач. Раньше сами переводили с английского на русский, сейчас внедряем непрерывную локализацию и отдаём переводы на аутсорс.

Если интересны детали — мы используем Sphinx, reStructuredText, немного Markdown, локально собираем в Docker, используем GitLab CI и Travis, но переезжаем на GitHub Actions, в тесты добавим Vale.

Как откликнуться на вакансию
Пишите на n.volynkin@corp.mail.ru с пометкой [Вакансия] в заголовке. Прикрепите резюме в формате PDF или DOCX. Здорово, если добавите ссылки на примеры ваших текстов. С вопросами приходите в личку @nick_volynkin.
1.9K viewsNick Volynkin, 10:54
Открыть/Комментировать
2021-01-18 13:52:10 С декабря прошлого года я руковожу командой технических писателей в tarantool.io. Это новый для меня продукт, новая роль и гора новых задач. Тематика канала теперь тоже расширится. В 2021 году ждите постов про:

— документацию как продукт;
— профессиональный рост писателя;
— руководство командой писателей;
— место и роль документации в технических коммуникациях, управлении знаниями и developer relations;
— и вакансии в @docops_jobs, наконец-то!

Документация как код, мероприятия и другие хорошие штуки тоже останутся. Надеюсь, что смогу уделять каналу больше времени, чем в сложном 2020-м.

Если вы хотите поработать со мной в команде, пишите в личку @nick_volynkin хоть сейчас. Добавьте резюме и примеры работ, лучше на английском.
2.1K viewsNick Volynkin, 10:52
Открыть/Комментировать
2021-01-17 20:18:37 Известный редактор, автор книги про текст в интерфейсе, возмущённо пишет о людях, которые путают "надеть" и "одеть", когда просят его надеть медицинскую маску. Говорят "езжайте" вместо "поезжайте" [в лифте без меня, потому что вы без маски и можете меня заразить].

А как же уважение и забота о людях? Без этого зачем вообще нужна редактура, все эти тексты?

Люди ведь важнее, чем слова.
1.9K viewsedited  17:18
Открыть/Комментировать