Книга «EF Core в действии» в правильном переводе команды DotNetRu
Около трех лет назад наше сообщество DotNet.Ru приняло участие в интересном эксперименте. Взаимодействуя с издательством ДМК-пресс, члены сообщества работали над переводом на русский язык замечательной книги Конрада Кокосы «Управление памятью в .NET для профессионалов». Перевести книгу на 1000 страниц со сложным техническим текстом стало для нас настоящим вызовом, но мы с ним справились и эксперимент оказался успешным. Сообщество получило качественный перевод отличной книги.
Вдохновившись результатами эксперимента, мы принялись за следующий проект — «ASP.NET Core в действии» Эндрю Лока. Если кто не знает, Эндрю Лок — настоящий эксперт в ASP.NET Core, также у него есть прекрасный блог, в котором он делится опытом и пишет глубокие технические статьи. Вторая книга пошла еще бодрее, рассказывали про нее тут.
А сегодня мы рады представить вам наш новый релиз: книгу Джона Смита «Entity Framework Core в действии» в правильном переводе от DotNetRu. EF Core стал почти стандартом при разработке .NET приложений, использующих реляционные базы данных, и большое число разработчиков успешно применяют его в своих проектах. Эта книга представляет собой подробное руководство по работе с этим инструментом и будет интересна как новичкам, так и опытным разработчикам.
Мы продолжили использовать хорошо зарекомендовавший себя подход — выделили каждую главу в отдельный документ, создали таблицу, в которой фиксировали процесс по каждой главе. С каждой главой независимо работали два-три редактора и предлагали свои правки. После чего отдельный редактор вычитывал главу и применял внесенные поправки к документу. Это позволило распараллелить работу и быть всем участникам максимально независимыми. После того, как перевод был готов, несколько редакторов прочли всю книгу и внесли финальные изменения.
Работа над переводом
Давайте послушаем ребят, принявших участие в переводе:
Я уже участвовал в переводе книги «ASP.NET Core в действии», но тогда из-за занятости не получилось перевести много. А поскольку с EF Core по работе сталкиваюсь мало (хотя и не сказать, что вообще его не знаю), то решил помочь с переводом этой книги и заодно самому подтянуть знания. Вообще технические книги я читаю достаточно регулярно, но работа над переводом — это немного другое. Внимательно вычитывая и правя текст, сверяя правильность и согласованность использования терминов в разных главах, ты лучше запоминаешь какие-то нюансы, чем если просто прочитаешь готовую книгу. Это получился полезный опыт для меня лично. Но также, надеюсь, что мои усилия помогут русскоязычным читателям получить новые знания.
Для меня источником информации в профессиональной сфере в первую очередь являются книги. Я очень люблю читать и стараюсь уделять книгам хоть немного времени каждый день. Но на русском языке книг по разработке выходит не так много, как хотелось бы. И когда появилось предложение помочь вычитать текст, я с удовольствием согласился. Я не настолько хорошо читаю на английском, для меня информация лучше усваивается, когда читаешь ее на родном языке. До начала перевода книги я уже несколько лет использовал в своей работе EF core, но при этом оставалось много пробелов в знании теории. Поэтому я старался в начале выбирать самые интересные темы для вычитки. К сожалению всю книгу за отведенное время вычитать не удалось, но я обязательно это сделаю после появления у меня экземпляра книги. На самом деле знания английского языка практически не требовались, поскольку мы работали уже с готовым переводом и от нас требовалась только вычитка текста с технической стороны. Хотя у меня в параллельной вкладке был открыт оригинал, но открывал я его только в спорных моментах.
Почему решил участвовать в переводе?
Хотел для себя лучше разобраться в технологии, которую использую повседневно. Поучаствовать в каком-нибудь глобальном проекте, который принесет пользу многим.
Какой уровень английского необходим, чтобы участвовать в переводе?
На самом деле можно обойтись минимальным знанием английского языка. При вычитке у меня почти всегда были открыты: перевод от издательства, оригинал книги, онлайн-переводчик, сайт с документацией Microsoft. Сам процесс заключался в прочтении переведенного абзаца/предложения и сравнении его с оригиналом. Если были вопросы, как лучше перевести тот или иной термин, обращался к документации Microsoft: сначала находил термин на английском языке, а потом переключался на русскую версию. Понятно, что в некоторых случаях там мог быть автоперевод. Также перевод дорабатывался на основе своего опыта и здравого смысла).
Стоит ли переводить техническую литературу?
Я думаю, что переводить стоит, не все могут читать литературу в оригинале (хотя нужно к этому стремиться). Но важно, чтобы с переводом работали люди, разбирающиеся в теме, т.к. автоматический или непрофессиональный перевод может только запутать читателей и отбить желание читать такую литературу.
Почему решил участвовать в переводе?
Нет какой-то одной объективной причины. Помочь команде переводчиков и сделать качественный перевод. Когда переводит один человек, он делает это хорошо, но долго. Большой командой можно быстро обработать большой объем. В конце всё равно, конечно, приходится синхронизировать работу этой команды. Всё равно получается быстрее и качественнее.
Какой уровень английского необходим, чтобы участвовать в переводе?
Как мне показалось, достаточно B1. Так как издательство уже проделало огромную работу, оставалось добить термины и немного перевести с русского на легко читаемый русский.
Как глубоко знал EF до книги?
Не так много сталкивался, я считаю, что у меня поверхностные знания.
Помог ли перевод углубить знания по EF?
Определенно. Я рассматривал её лишь как книгу, которая познакомит тебя с нужными терминами.
Что для тебя было самым интересным (неожиданным, сложным, легким, радостным, запоминающимся) в процессе работы над переводом?
Понравилось качество перевода от издательства. Понравилось, как разбита книга на главы, чтобы было удобно вычитывать и переводить, тут заслуга Игоря. Бери и делай.
Что из книги запомнилось больше всего и почему?
Очень много кода, примеров, объяснений.
Какие английские термины вызвали самую большую сложность для придумывания русских аналогов?
DbContext для меня выступает в роли самостоятельного термина. Контекст — он везде контекст, слово «приложения», которым уточняют его, до сих пор коробит. С другой стороны, если бы я читал, то пропускал бы его.
Стоит ли переводить техническую литературу?
Если есть много свободного времени и желания. Влиться в проект проще, чем заниматься переводом в одиночку.
Как часто читаешь книги?
В последнее время не очень часто. Писать их гораздо интереснее, чем читать.
Почему решил участвовать в переводе?
Решил, что пора приносить пользу комьюнити, и так как с английским особо проблем нет (B2), то решил, почему бы это не использовать.
Какой уровень английского необходим, чтобы участвовать в переводе?
Мне моего b2 было достаточно чтобы сильно не отвлекаться на поиск в словаре. Но в принципе можно спокойно справляться и с Intermediate.
Как глубоко знал EF до книги?
Есть опыт использования в проде, есть понимание основ, однако понимания внутреннего устройства не было. Многое в книге слышал впервые.
Помог ли перевод углубить знания по EF?
Да, однозначно.
Что для тебя было самым интересным (неожиданным, сложным, лёгким, радостным, запоминающимся) в процессе работы над переводом?
Пожалуй, попытки сделать из бездушного дословного перевода текст, который одновременно и звучал бы «по-русски», и не отходил бы от технического стиля и соглашений по переводу.
Какие английские термины вызвали самую большую сложность для придумывания русских аналогов?
Property bag
Стоит ли переводить техническую литературу?
Однозначно стоит — не все могут себе позволить читать в оригинале
Как часто читаешь книги?
Стараюсь прочитывать новую книгу раз в 2–3 месяца
Почему решил участвовать в переводе?
Уже участвовал в переводе предыдущей книги, ASP.NET Core In Action, было интересно. Можно практиковать формулировки на русском, посмотреть разницу в восприятии русского и английского текста. Но интереснее всего, конечно, было внести свой вклад в развитие российского DotNet сообщества
Какой уровень английского необходим чтобы участвовать в переводе?
Довольно низкий, думаю многие программисты обладают таким. Основная работа — это проверка адекватности текста и формулировок, на фактические ошибки. Помочь можно даже не читая оригинальный текст, хотя это и не лучший вариант. На мой взгляд, важнее знать русский и платформу.
Помог ли перевод углубить знания по EF?
Уровень знаний в EF у меня средний, так получалось, что в проектах, где я участвовал, использовали не так много функций — для большей управляемости производительностью, с минимумом волшебства. Стало немного лучше, в основном, в плане кругозора.
Что для тебя было самым интересным (неожиданным, сложным, лёгким, радостным, запоминающимся) в процессе работы над переводом?
Было здорово, что в некоторых частях книги было рассмотрено несколько подходов к решению одних и тех же задач, особенно с реализацией DDD. Просто выбираешь, что больше по душе, хотя автор и рекомендует ненавязчиво.
Стоит ли переводить техническую литературу?
Однозначно стоит, из-за доступности. Лично у меня нет проблем с чтением на английском, и чаще это намного лучше, но скорость прочтения на русском все равно выше. А когда ты начинающий разработчик, узнавать что-то новое и так тяжело, родной язык частично помогает.
Как часто вы читаете книги?
Стараюсь читать постоянно, но скорость разная, в зависимости от занятости на работе, интересности книги, событий в жизни. Бывает, прочитываю пару книг за месяц, а бывает одну книгу за три. Лучше всего, если получается применить сразу, тогда и читать интересно, и чувствуется что не занимаешься чем-то бесполезным.
Какой уровень английского необходим, чтобы участвовать в переводе?
Всё зависит от книги. В большинстве технических книг английский очень простой. И поэтому с моей точки зрения нужен уровень не ниже «читаю без словаря», этого будет достаточно для большинства текстов. Но если вы берётесь переводить/править введение или какие-то главы ближе к началу книги, то они, как правило, менее технические и более «литературные». В этом случае английский нужно знать получше, чтобы понять все обороты и эвфемизмы, которые использовал автор.
Как глубоко знал EF до книги?
На уровне обычного пользователя. Модели писал, запросы писал. Сложной настройкой никогда не занимался и даже миграции от EF почти не использовал.
Помог ли перевод углубить знания по EF?
Однозначно да. Другое дело, что просто чтение (хоть и много раз) не означает, что эти знания закрепились. Без практических заданий скорее всего останутся только намёки вида «что-то я про это читал». Но мне зачастую достаточно и таких намёков, чтобы дальше найти материалы и почитать/попробовать что-то более детально, когда потребуется.
Какие английские термины вызвали самую большую сложность для придумывания русских аналогов?
EF Core достаточно простая штука, или по крайней мере в книге почти не было сложных терминов. Да, были конечно споры, нужно ли переводить какие-то термины или оставить «англицизмы». Единственный нетривиальный термин — это «relational fixup»: как это обычно бывает, это что-то сильно внутреннее и конечному пользователю не надо про это знать. Поэтому очень мало статей и других источников, где можно было бы посмотреть, «а как обычно переводят».
Как часто вы читаете книги?
Это очень непредсказуемая штука. Когда-то давно я читал практически только книги. У меня был целый шкаф книг по разным технологиям (до сих пор где-то в офисе и дома это всё лежит). Потом был период, когда я вообще не притрагивался к книгам, в 2020–2021 понемногу вернулся к чтению. Читал около 4 книг в год. В 2022 пока 2 всего прочитал, но время еще есть :)
Заключение
Это была увлекательная и интересная работа. Спасибо всей дружной команде энтузиастов, безвозмездно делающих мир лучше, а именно:
Игорь Лабутин
Сергей Бензенко
Дмитрий Жабин
Радмир Тагиров
Рустам Сафин
Илья Лазарев
Вадим Мингажев
Алексей Ростов
Евгений Буторин
Андрей Беленцов
Виталий Илюхин
Анатолий Кулаков
Надеемся, книга будет вам интересна. Ее уже сейчас можно заказать на сайте издательства, тем более что с промокодом DotNetRu
она будет на 25% дешевле.
Если вам интересно принять участие в переводе книг, пообщаться с редакторами перевода, задать вопросы, предложить новые книги или просто подискутировать на тему переводов, то ждем вас в нашем чате в телеграм.
О нас
DotNet.Ru — это группа независимых сообществ .NET разработчиков со всей России. Мы объединяем людей вокруг .NET платформы, чтобы способствовать обмену опытом и знаниями. Проводим регулярные встречи, чтобы делиться новостями и лучшими практиками в разработке программных продуктов.
Организуем митапы и выкладываем записи докладов на YouTube.
Делимся новостями в vk и tg, общаемся в чатике.
Ведём подкасты: RadioDotNet, DotNet & More и BookClub DotNet.
А еще мы помогаем делать крупнейшую российскую .NET-конференцию DotNext. Этой осенью она пройдет в два этапа: онлайн 3–4 ноября и оффлайн (с трансляцией большинства активностей) 20 ноября в Москве. Традиционный промокод:
DotNetRu2022JRGpc