company_banner

Книга «Управление памятью в .NET для профессионалов» в правильном переводе команды DotNetRu

    Совсем недавно в издательстве ДМК-пресс на русском языке вышла замечательная книга Конрада Кокосы «Управление памятью в .NET для профессионалов».

    Это издание примечательно тем, что в переводе участвовали не только люди со стороны издательства, но и члены сообщества DotNet.Ru, практикующие разработчики, для которых эта книга действительно актуальна.

    Под катом история о том, зачем мы в это ввязались, как был организован процесс и с какими трудностями мы столкнулись.



    Об авторе статьи: Евгений Биккинин, участник DotNetRu, один из редакторов перевода.

    Мотивация


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

    Я бы выделил несколько пунктов:

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

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

    Как появился этот проект


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

    А с экспертами беда. Есть переводчики, которые последний раз видели настоящий код 30 лет назад. Есть разработчики, которые на любой иностранный термин кричат, что все обязаны знать английский язык. И есть рынок, потребности которого они не способны удовлетворить. В лучшем случае издательства ищут технических корректоров среди практикующих профессионалов. И именно с таким предложением столкнулся наш .NET-стенд на фестивале TechTrain.


    Стенд сообщества на TechTrain

    Действительно, независимое некоммерческое сообщество — кто сможет осилить эту задачу лучше него? Люди, которые каждый день пишут код, собирают митапы, пишут статьи на хабре, обучают будущих коллег в школах и университетах, настойчиво вкладываются в создание и распространение русскоязычного материала по любимой платформе. Это идеальный симбиоз. Сообществу нужны качественные переводы фундаментальных книг. Издательству нужен спрос на их продукт. Несмотря на то, что для нас это был первый подобный опыт, мы схватились за предложение с азартом.

    Прежде всего мы связались с Конрадом Кокосой и получили его благословение на перевод (кстати, в процессе мы не раз обращались к нему за разъяснениями неочевидных мест и всегда получали большую поддержку). Далее мы собрали фанатов творчества автора, людей не понаслышке знакомых с описываемыми процессами. Разбавили их программистами-любителями русского языка и литературы (да, такие есть). И получили отличную команду, готовую на несколько месяцев посвятить себя неизведанным подвигам переводческого дела.

    Трудности


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

    В большинстве случаев исправления были довольно очевидными. Заменяем «каркас» на «фреймворк», «трассу вызова» на «стек вызова», а «интеллектуальный указатель» на «умный указатель».

    Но были и загвоздки. Одним из таких случаев стала парочка plug/gap. С одной стороны, нет какого-то устоявшегося IT-перевода для этих слов. С другой стороны, это не фантазия автора. Эти слова используются непосредственно в коде gc.cpp. Так вот, по смыслу, plug — это непрерывная область в памяти, в которой находятся используемые объекты, а gap — это промежуток между такими областями.



    Сперва в качестве перевода этих двух слов использовалась пара «колодка/зазор». Но мы решили, что такой перевод точно не будет восприниматься читателем адекватно. Поэтому нам пришлось пожертвовать краткостью и ввести понятия «заполненный/пустой блок».
    Чуть позже в тексте, правда, появились pinned plugs но всё же «закрепленные заполненные блоки», кажется, звучит лучше, чем «закрепленные колодки».

    К счастью таких специфических терминов в книге не так уж много. В основном, все же, встречались вполне известные descriptor, handle, value type, reference type и прочие. Казалось бы, все эти термины давно переведены, однако и с ними возникли разногласия.

    Descriptor буквально переводится как «описатель». Но и handle тоже часто так переводят. Поэтому пришлось переводить descriptor буквально «дескриптор», а handle стал «описателем» (не переводить же как «ручка» — и такое встречалось в некоторых переводах).

    При решении вопросов перевода большой проблемой является отсутствие «референсного» источника. Таким источником мог бы быть сайт docs.microsoft.com/ru-ru. К сожалению, далеко не все статьи на нем переведены и выверены. Поэтому мы старались использовать этот ресурс как источник, только если видели, что конкретная страница переведена вручную.

    При редактировании книги объемом почти 1000 страниц отдельный вызов — это добиться одинаковых терминов во всех главах. Поскольку редактированием занималась группа, то главы обрабатывались не строго по порядку, и иногда случалось использовать слегка различные термины в разных главах. Несомненно, общий словарь терминов сильно помогал, но это не отменило необходимости финальной вычитки всех глав подряд и сверки всех терминов.


    На фото автор книги с одним из переводчиков

    Заключение


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

    Нашей дружной команде, безвозмездно делающей мир лучше, а именно:

    • Игорь Лабутин
    • Ирина Ананьева
    • Максим Шошин
    • Елизавета Голенок
    • Евгений Биккинин
    • Ренат Тазиев
    • Анатолий Кулаков

    И конечно вам, читатели, ради которых всё это и затевалось.

    Промокод на скидку 25%: DotNet25.

    Заказать книгу можно на сайте издательства.

    А еще мы создали телеграм-чат. Здесь вы можете пообщаться с редакторами перевода, задать свои вопросы, объяснить, в чём и как сильно мы были не правы, либо просто подискутировать на тему переводов и участия сообщества в подобных активностях.
    JUG Ru Group
    Конференции для программистов и сочувствующих. 18+

    Комментарии 25

      +1

      Спасибо! Очень интересно.

        +2
        Электронная версии будет? На сайте издателя нет такой версии.
          +2
          При заказе в поле для комментария указано «Если вы хотите купить книгу в PDF вместо бумажного экземпляра, напишите здесь», так что вероятно она должна быть (но лично не проверял)
            0
            Да, есть электронная версия книги — PDF-формат. Его можно заказать на сайте издательства «ДМК Пресс», использовав указанный промокод для скидки. При оформлении заказа в поле «комментарий к заказу» выбираете нужный Вам формат: PDF или бумажную книгу.
            0
            Круто.

            У меня лежит английский вариант книги и он внезапно «большой». Ну т.е. я понимал, что тема сложная, но блин, я такого размера техлитературу не читал очень давно =)
              0
              оплатил PDF версию, когда и куда получу файл?
                0
                Этот вопрос лучше адресовать издательству.
                  0
                  Добрый день! Напишите, пожалуйста, на e-mail интернет-магазина издательства «ДМК Пресс»: dmkpress.help@gmail.com Если Вы ещё не получили pdf (отправляют сразу), Вам всё подскажут.
                  0
                  ДМК часто радует выпусками хороших книг
                    0
                    Как так получилось, что в переведенном издании оказалось на 20% меньше страниц чем в оригинале? Я как то привык, что обычно наоборот.
                      0
                      Alew, добрый день! Мы склоняемся к тому что просто уменьшился размер шрифта и поля книги. Текст в оригинале занимает две страницы, а в издании на русском языке эта информацию заверстана всего на одну страницу. Мы сверяли две печатные версии и нашли разницу в шрифтах и полях. С уважением, издательство «ДМК Пресс».
                      0

                      Оплатил книгу 25 апреля, статус заказа — "Принят в работу" — с тех пор не изменился.

                        0
                        vorona_net Вам надо написать сообщение непосредственно в «ДМК Пресс» на сайт dmkpress.com/contacts/feedback или в vk.com/dmkpress в сообщения группы. Для уточнения нужен будет номер Вашего заказа и какую копию книги выбрали (бумага или pdf).
                          0

                          Не волнуйтесь, не вы один в таком положении. Я заказал книгу еще 20 марта и заказ также находится в статусе «Принят в работу».


                          Правда у меня особый случай — я сделал предзаказ бумажного экземпляра до выхода книги, оплатил его банковской картой и в качестве типа доставки выбрал «самовывоз со склада». Изначально меня этот вариант устраивал, потому что склад самовывоза находится в нескольких станциях метро от моего дома, но потом были объявлены антивирусные меры и этот склад закрыли.


                          20 апреля (к тому времени книга уже была в свободной продаже) я решил написать письмо на dmkpress.help@gmail.com о том, что хотел бы поменять тип доставки на курьерскую. В тот же день мне ответила менеджер издательства и предложила перевести в качестве оплаты за доставку 300 рублей частному лицу через Сбербанк онлайн. Меня это не устроило и я предложил расчет наличными при получении, но это не устроило менеджера. В общем, буду ждать окончания антивирусных мер.


                          0
                          Taritsyn, добрый день! Вы правильно обратились, при смене доставки, на e-mail интернет-магазина «ДМК Пресс». Предложенный вариант оплаты через Сбербанк on-line — это временная мера. После 11 мая можно будет расплатиться наличными. Если бы уточнили, кому принадлежит данный счёт, Вам бы сообщили, что это данные Гл. редактора «ДМК Пресс». dmkpress.help@gmail.com — это официальный e-mail. PDF рассылаем, кто заказал книгу. С уважением, издательство «ДМК Пресс».
                            0
                            Polina_G_23, добрый день! Посодействуйте, пожалуйста, с заказом №32594, вышлите PDF. У меня сложилось впечатление, что обращения (дважды писал через форму, дважды на почту, главному редактору только не стал писать) уходят в пустоту. Папку «спам» проверял. Пробовал позвонить — результат аналогичный. Заказ был сделан 24 апреля, так и висит со статусом «принят в работу». Спасибо.
                              0
                              Добрый вечер! Извините, пожалуйста, за такую задержку! Спасибо, что написали.Сейчас отправим! С уважением, Полина

                                0
                                Отправила Вам! Проверьте, пожалуйста, сообщение! Всего доброго и на связи, Полина
                                  0
                                  Полина, добрый день, cпасибо за Ваш ответ! Проблема решилась после майских праздников — я попросил заменить мне бумажную книгу на электронную — заменили и прислали ссылку. Комментарий мой здесь был написан, кажется, 11 мая, но ожидал модерации и был одобрен только вчера (до одобрения он не был доступен ни к отмене, ни к редактированию). В настоящее время всё хорошо (только, конечно, впечатление осталось не очень радужное). В любом случае, большое спасибо Вам за ответ и содействие, подумываю, всё-же, заказать бумажный вариант в будущем (и уже терпеливо дождаться его).
                                    0
                                    Спасибо большое за дополнение! Думаю, что с конца июня работа склада интернет-магазина вернётся к привычному 6-дневному рабочему графику. С уважением, Полина
                              0
                              Если бы уточнили, кому принадлежит данный счёт, Вам бы сообщили, что это данные Гл. редактора «ДМК Пресс».

                              Вы должны понимать, что не у всех есть доступ к Сбербанк онлайн.

                                0
                                Taritsyn, сожалеем, что не смогли получить книгу. Из-за всех принятых мер в период карантина, это был возможный способ решить ситуацию. Если проблема была только в доступности к Сбербанк on-line, лучше, если бы написали дополнительно об этой ситуации. По-возможности, стараемся решать и такие моменты. С уважением, издательство «ДМК Пресс».
                                  0
                                  Если проблема была только в доступности к Сбербанк on-line, лучше, если бы написали дополнительно об этой ситуации.

                                  Я и написал. На что получил следующий ответ:


                                  Нет, только таким способом можно.
                                  Или ждите книгу после карантина.
                                    0
                                    Taritsyn, к сожалению, карантин вносит коррективы в привычную работу. Обычно, когда не удаётся решить ситуацию с менеджерами интернет-магазина, можно написать на адрес гл. редактора: dmkpress@gmail.com Адрес указан на сайте и в каждой первой главе книги (первая глава любой книги выложена на сайте). С уважением, Издательство «ДМК Пресс».
                                      0

                                      Двухнедельная переписка с сотрудниками ДМК-Пресс дала свой результат: книга наконец-то доехала до моего дома.


                                      Распакованная книга Конрада Кокосы лежит на столе

                                      Спасибо Polina_G_23 за содействие ;-)

                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                Самое читаемое