×

«Блискавку в мої мікросхеми!» Як Ruby-розробники перекладали дитячу книжку з програмування

Коли Ruby-розробниця Ірина Заяць починала перекладати дитячу книжку з програмування, навіть не уявляла, що на неї чекає. Робота, з якою вона планувала впоратися за кілька тижнів, зайняла майже пів року. З перекладом Ірині допомагали друзі: разом розбиралися, як коректно міг би лаятися робот-пірат, вигадували вигуки, пов’язані з їжею, та вчилися писати код так, щоб він римувався. Про цікаві деталі цієї історії Ірина розповіла в інтерв’ю.

Чому я взялася за переклад книги

Усе почалося з того, що у січні 2019 року на зустрічі core-команди спільноти #pivorak ми планували події та проєкти, які могли б організувати протягом року.

Спільнота #pivorak — це львівське ком’юніті Ruby-програмістів. Свого часу вона виникла у компанії Innocode: співробітники збиралися ввечері після роботи на тимбілдинг, і на тих зустрічах завжди було пиво й раки. Зібрання відбувалися щомісяця, в останню робочу п’ятницю, і люди, які туди приходили, почали називали себе спільнотою #pivorak. Згодом зустрічі вийшли за межі компанії Innocode. Окрім спілкування, ми почали організовувати різноманітні заходи: технічні доповіді, воркшопи для підлітків, цікаві тематичні зустрічі. Але назва спільноти збереглася, пиво й раки теж — до пандемії вони були на всіх наших зібраннях. У core-команді зараз 12 людей, я одна з них.

На тій зустрічі на початку позаминулого року виникла ідея перекласти дитячу книжку про програмування на Ruby. Перекладати схожі дорослі книжки ми не бачили сенсу: щоб бути успішним розробником у дорослому віці, все одно треба знати англійську мову. А діти можуть відкривати для себе програмування раніше, коли ще не знають іноземної.

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

Спочатку все так і було. Ми знайшли книжку Еріка Вайнштейна Ruby Wizardry: An Introduction to Programming for Kids, прочитали на Amazon уривки з неї, і нам вона дуже сподобалася. Це була не «суха» теоретична книжка про програмування, а цікава історія, що відбувається в чарівному королівстві. Протягом усієї розповіді герої потрапляють у різні халепи та вибираються з них за допомогою програмування. Ми вирішили, що це гарний варіант, бо нині в дітей є багато цікавих речей — комп’ютерні ігри, планшети, телефони, тож навряд чи вони зацікавляться звичайною книжкою-довідником.

Ми звернулися до «Видавництва Старого Лева», розповіли свою ідею. Вони були раді, бо вже мають досить популярну серію дитячих книг про програмування. Видавництво купило права на переклад і спробувало знайти перекладача. Та виявилося, що книжку про Ruby дуже складно перекладати людині, яка не програмує: казкова історія там тісно переплетена з програмним кодом. Це зовсім не схоже на звичайну художню книжку. Тому редактори видавництва запропонували, щоб хтось із нашої спільноти переклав її (нехай людина без перекладацького досвіду, але з технічними знаннями), а далі текст вичитає і відредагує літературний редактор.

Ідея з перекладом дитячої книжки мені подобалась: я сама навчилася програмувати ще в дитинстві завдяки одній книжці. В мене тоді не було ні інтернету, ні комп’ютера. В гостях у подруги я побачила, як пишуть програми для комп’ютера, і подумала, що нічого цікавішого у світі не існує. Я купила у книгарні тоненьку блакитну книжку про інформатику Я. Глинського і прочитала її від початку до кінця багато разів. Програми писала у звичайному зошиті. А раз на тиждень, у вихідні, ішла з тим зошитом до подруги, щоб набрати свої програми на комп’ютері та перевірити, чи вони працюють. Так, майже випадково, знайшла улюблену справу життя. Розумію, що сьогодні зовсім інший світ, у дітей набагато більше можливостей, але якщо хтось зацікавиться програмуванням завдяки цій книжці, я буду щасливою.

Ще одна причина, чому я зголосилася перекладати її: у той час я звільнялася з роботи й планувала взяти творчу відпустку на пів року або й більше. Хотілося на якийсь час зробити перерву, відпочити, озирнутися довкола, робити щось пов’язане з програмуванням, але не програмувати. Тож переклад книжки ідеально вписувався у мій план.

Мені здавалося, що перекладати буде нескладно. Я деякий час вчилася в англомовній школі, багато читаю англійською. Думала, що все буде просто: читаєш речення англійською, перекладаєш українською, читаєш наступне речення... І так до кінця книжки. Гадала, що вдасться перекласти книжку за кілька тижнів. У видавництві мені дали на пробу перші три сторінки, і я взялася до роботи.

Майже одразу зрозуміла, що усе насправді не так просто, як я собі уявляла: я чудово розуміла англійський текст, але мені не вдавалося підібрати українські слова, щоб це було красиво, гармонійно, у стилі казки. Мій переклад здавався дерев’яним, неприродним. Я хвилювалася, що через нього книжка втратить свою магію.

Три години, щоб перекласти одне речення

На другій сторінці книжки була ілюстрація. На ній — напівробот-напівпірат, який каже: Beep boop shiver me circuits!

Beep boop — це щось на кшталт «Бі-біп», а shiver me circuits дослівно перекладається як «тремтіти мене мікросхеми». На цій фразі я застрягла. Не розуміла, як правильно перекласти. На думку спадав варіант «трясця моїм мікросхемам»... Але така граматично-неправильна форма слова me привела мене до думки, що тут, мабуть, якийсь піратський вигук. Пірати мають сленг, який змінює правила англійської граматики, і вони якраз часто замінюють my на me.

Я почала шукати в інтернеті піратські вигуки зі словом shiver і з’ясувала, що справді є піратський вигук Shiver me timbers! Він передає сильне емоційне здивування, українською — щось на кшталт «Сколихнути мої палуби!» чи «Трусити мої палуби!». Звісно, таке дослівно не перекладають, треба було знайти відповідний піратський вигук-здивування українською, і одне зі слів у ньому замінити на «мікросхеми».

Виникло питання: де знайти піратські вигуки українською? Можна було б перечитати «Острів скарбів» або іншу книжку про піратів, перекладену українською, але це зайняло б надто багато часу. Зрештою, я знайшла в інтернеті українськомовну енциклопедію піратів. У ній було багато таких висловів, серед яких і вигуки-здивування. Найбільше підходили, як мені здалося, — «Грім на мою голову!» і «Три тисячі акул мені в селезінку!». Я подумала, що останній буде звучати цікаво та ефектно.

Я перекладала книжку у кав’ярні, і якраз у цей час туди зайшов мій знайомий, фізик за освітою. Розповіла йому, що роблю, і поділилася ідеєю перекладу, яку щойно знайшла. Він вислухав і сказав, що, мабуть, «Три тисячі акул мені в селезінку!» не найбільш вдалий вибір. Загалом акули не надто небезпечні для мікросхем. У цьому плані те, що пов’язане з електрикою — грім і блискавка — може бути для них небезпечнішим. Я подумала і вирішила, що переклад «Грім на мої мікросхеми!» буде кращим. Та мій друг-фізик і з цим не погодився, бо грім — це просто звук, він безпечний, а от блискавка могла б справді зашкодити.

Я довго вагалася, який переклад обрати: зі словом «грім» (це було б більш упізнавано) чи зі словом «блискавка», щоб було більш коректно... Врешті-решт зупинилася на вигуку «Блискавку в мої мікросхеми!». Коли я нарешті визначилася з реченням, побачила, що перекладаю його вже три години. Тоді я зрозуміла, що схожих прикладів буде ще багато і перекладати доведеться довго. Але все-таки наважилася на цей проєкт.

У книжці справді було немало складних для перекладу моментів. Я перечитала величезний словник приказок і фразеологізмів, бо в оригіналі їх багато. Так, наприклад, я знайшла «перший млинець нанівець» для назви розділу про рефакторинг (в оригіналі: Second time’s the charm).

В іншому місці треба було знайти фразу, яка б водночас означала «це зрозуміло» і натякала на дощ або воду. Це зайняло, мабуть, годину, але я знайшла вислів «просто, як води напитися». Це дозволило зв’язати докупи історію з намистом короля, яке забули у ванній.

Код, написаний кирилицею

Перед тим як взятися за переклад, я купила собі «Python для дітей», ця книжка також вийшла у «Видавництві Старого Лева». У ній мене здивувало те, що всі змінні й методи перекладачі назвали кирилицею. Там, де методи фреймворку, залишилися англійські слова, а для всього решти використали кирилицю. Для мене як професійної програмістки це здалося незвичним. Вирішила, що у нашій книжці усі змінні будуть англійською — так, як заведено в програмуванні у всьому світі.

Так я переклала пів книжки, аж до сьомого розділу. Далі побачила, що вона поступово перетворюється на словник англійської мови. Я увесь час намагалася спростити назви змінних, замінити вишукані англійські слова на простіші, і через це повністю втрачалася магія книжки. «Ruby для дітей» побудована так, що читач пише код про описані події. Ті змінні, які є в коді, є і в тексті: вони герої книжки. Мікс англійської та української не працював, я зрозуміла, що треба переробляти. Тоді проконсультувалася з викладачем дитячої школи програмування LITS («Lviv IT-School»), з’ясувала, що вони роблять зі змінними на уроках програмування — називають їх англійською чи українською. Він сказав мені, що зазвичай дітям складно називати змінні англійською (приблизно ⅔ учнів, які вчаться програмувати, мають з цим труднощі), і порадив все-таки називати їх українською чи транслітом.

Я ще довго сумнівалася, бо код з українськими словами мені дуже різав око. Та зрештою вирішила писати змінні українською, як це зробили у «Python для дітей» і в інших книжках з цієї серії. Якщо дитина заплутається у павутині англійських слів і відкладе книжку — це буде гірше, ніж якщо навчиться програмувати зі змінними, записаними кирилицею, а потім просто зрозуміє, що їх треба записувати англійською.

Довелося переробити всі написані приклади коду та усі сім розділів тексту.

Приклади коду в оригіналі веселі й часто римовані. Я намагалась зберегти це у своєму перекладі. Наприклад:

if nil
puts ’Ноги на стіл.’
end

if ’звичайна стрічка’
puts ’Ледь не впала в річку!’
end

case випадкова_дрібничка
when ’зернятко для синички’
puts «Зернятко для синички! Зовсім не дрібничка!»
[...]

Спочатку це було складно. Однак потім, навіть коли я вже просто розмовляла з друзями, на думку спадали цікаві словечка та рими.

В оригіналі автор обіцяє читачам, що програмувати на Ruby — це майже як говорити простою розмовною мовою. Звісно, це так, якщо твоя рідна мова — англійська. Але для українськомовних дітей усе трохи по-іншому. Замість того, щоб додавати примітку про те, що тут автор має на увазі англомовних дітей, ми додали іншу, веселішу:

Щоправда, доведеться вивчити зо 30 слів англійською, щоб програмувати на Ruby. Але я певен: ти знаєш напам’ять навіть більше заклять із книг про Гаррі Поттера, тож вивчити ці нові слова буде не важче, ніж сказати «Алогомора!».

Редакторка з видавництва підтвердила, що перекладач може дозволяти собі такі невеличкі творчі відступи.

В ІТ багато англомовного сленгу, іноді було непросто підібрати українське слово, бо ми звикли вживати ці терміни англійською. Я не відразу здогадалась, як перекладати debugging чи troubleshooting. Доводилось постійно заглядати у словники технічних термінів. Там були цікаві знахідки, наприклад debugging — «зневадження». Звісно, не хотілось вибирати варіанти перекладу, які ніхто не використовує в реальному житті.Тож зупинилась на debugging — «налагодження програм» та troubleshooting — «усунення неполадок».

Деякі мої друзі, у кого є діти, роздруковували окремі розділи книжки й просили дітей прочитати, розказати, що зрозуміло, що ні, що сподобалося, що не дуже. Іноді виявлялося, що діти більше, глибше розуміли певні речі, ніж я очікувала. Вони допомагали визначитися і з варіантом перекладу. Наприклад, у книжці герої виконують код на казковому пристрої, який називається computing contraption. Найбільш точний переклад, мабуть, «обчислювальна штуковина». Але оскільки це дитяче видання, ми ще розглядали інший варіант — «рахувальна штуковина». Врешті-решт дали дітям почитати текст з обома варіантами перекладу і запитали, чи зрозуміли вони, що це такий казковий комп’ютер. «Рахувальна штуковина» перемогла в цьому опитуванні.

Одне з ключових слів у Ruby — yield — добре розуміють усі в Штатах. Там пишуть його на дорожніх знаках «дати дорогу». Тож автор сміливо використовує цю аналогію — що yield означає «дати дорогу іншому блокові коду». В нас немає прямого аналога, і слово yield не використовується на дорожньому знакові, тож ми намалювали нову ілюстрацію для книги, щоб якось пов’язати ці поняття:

Вигуки та жарти, пов’язані з їжею

У книзі часто згадують про їжу: є вигуки, приказки, пов’язані з нею, іноді йдеться про чудернацькі страви. Це теж було складно перекладати, вигадувати відповідні українські вигуки.

Тож ми у #pivorak створили гугл-документ, у якому будь-хто з команди міг записати усі вигуки, лайливі клятви про їжу, які спадали на думку. Це дуже допомогло. Я відкривала цей документ, надихалася або брала готову фразу, якщо вона підходила.

Іноді я працювала в кав’ярні, бо більшу частину перекладу зробила до карантину. Одного разу дізналася, що баристка, яка там працює, вчилася на перекладацькій справі. Я вирішила не втрачати цієї нагоди й консультувалася з нею. Хоч вона радо допомагала, я намагалася ставити лише одне запитання на один прихід у заклад. Тому зберігала для цієї можливості ті, що були найскладніші для мене. Наприклад, вона мені пояснила таку річ: якщо я перекладаю фразу «Вони їли лише баранину» і розумію, що це стосується історичного контексту, коли баранина була дешевим м’ясом, вважалася їжею бідняків, то для наших читачів дослівний переклад буде некоректним. Читачі краще зрозуміють, про що йдеться, якщо написати «Вони їли тільки хліб і воду». Так само варто було робити з іншими посиланнями на їжу.

Було речення, яке мені ніяк не вдавалося перекласти «And what in breakfast’s good name is chunky bacon, anyway?». Іn breakfast’s good name схоже на фразу in god’s name — заради Бога, або ж in someone’s good name — во ім’я когось. Упродовж розповіді автор часто використовує релігійні вислови, але змінює їх на тему їжі. Я не знала, як це перекласти, щоб зберегти задум і щоб жарт був зрозумілим українським читачам. З цією фразою я прийшла до баристки, і вона порадила мені взяти відому релігійну фразу во Ім’я Отця, і Сина і Святого Духа — а її частини замінити на сніданкові страви. Тож у нас вийшло: «І що таке — во ім’я каші, молока та всього солодкого — строкатий бекон?!».

Чому я переклала chunky bacon як «строкатий бекон» — окрема історія. Chunky переважно перекладають як щось неоднорідної консистенції — зі шматочками чи зі згустками, ну й bacon — бекон. Я довго гуглила цю фразу, намагалась зрозуміти, чому автор її тут використовує і що вона означає. Зрештою знайшла, що це відсилання до іншої книжки про Ruby — Why’s poignant guide to Ruby. Та книжка досить популярна у середовищі Ruby, але українською не перекладена, у нас вона не дуже відома. Там вислів chunky bacon використовують упродовж усієї книжки у значенні дивного типу бекону, про який ніхто не знає. Тому ми придумали переклад «строкатий бекон» — щоб це було химерно, незрозуміло та близько до наміру автора.

Взагалі, в оригіналі книжки було багато схожих моментів — метафор, пародій, приказок, гри слів. Коли я консультувалася з професійними перекладачами, мені часто радили не заморочуватися цим — в оригіналі якийсь вислів може цікаво працювати, а в перекладі вже ні. Казали, що в таких випадках можна просто випустити, видалити фразу, якщо вона не критична для того, щоб розуміти програмування, або додати примітку з поясненням. Але мені хотілося зберегти усі нюанси, настрій, гумор — усю чарівність, яка була в оригіналі. Це було складно, та все-таки у той чи інший спосіб нам вдалося залишити майже всі деталі, без приміток.

Дракониці, лицарки та інші фемінітиви

Я помітила, що автор написав цю книжку з доволі феміністичним настроєм. У казковій історії дракон — це дівчинка, і лицар — дівчинка, і навіть головний королівський сантехнік — теж дівчинка. Окрім того, король не дуже розуміється в програмуванні на Ruby, а королева — ще та хакерка. В сюжеті явно видно намір автора написати так, щоб дівчат і хлопців було порівну, щоб було зрозуміло, що ця книжка — і для хлопчиків, і для дівчат. Я намагалася зберегти це, та іноді з цим також були труднощі.

Візьмемо речення: «Your Majesty!» said the dragon, and she bowed so low that her head nearly brushed the earth. Англійською це нормально звучить, і всі розуміють, що дракон — жіночого роду. Спочатку я подумала, що можна перекласти «дракон сказала» — без фемінітивів. Але коли ще раз перечитала речення, то зрозуміла, що це зовсім не звучить. Я не знала, як називають дракона жіночого роду. На щастя, хтось уже стикнувся з цією проблемою і навіть написав статтю з багатьма варіантами: «дракониха, дракониця, дракончиха, драконянка, драконка, драконша, драконеса, драконелла...». Врешті я зупинилась на дракониці, і редакторка підтримала цей вибір.

Англійською автор звертається до читача you. Я перекладала це як «ти», бо загальний тон книжки легкий, розслаблений. Та англійською це гендерно-нейтральне звернення, а в українській мові, коли звертаєшся на «ти», треба вибирати рід. Зазвичай у таких випадках в українських книжках пишуть усе в чоловічому роді. Наприклад, уже перше речення в книжці могло б звучати приблизно так: «Ти знайшов мою книжку. Чудово!». Так, це звична форма, але я побачила в тому певну несправедливість, наче книжка написана лише для хлопчиків.

Задум автора був інший, тому я будувала звертання так, щоб всюди це було у гендерно-нейтральній формі. Тому перше речення переклала так: «Моя книжка потрапила тобі до рук. Чудово!». І дотримувалися цього принципу впродовж усієї книжки. Замість фрази «якщо ти це зробив, то...» писала «якщо тобі це вдалося, то...» і так далі. Звісно, щоб усе це правильно сформулювати, теж треба було докласти багато часу і зусиль.

Це був справжній crowd-sourced переклад

Мені пощастило, що з перекладом допомагали друзі: люди з core-команди #pivorak, які й подали цю ідею, і просто мої приятелі. Я перекладала книгу в гугл-доці, коли закінчувала якийсь розділ, повідомляла усім про це, просила прочитати текст, написати коментарі. Якщо мені не вдавалося щось перекласти — назви, приказки, гру слів — залишала це англійською і писала коментар: «Будь ласка, побрейнштормте, підкажіть, як перекласти». Люди активно вмикалися в роботу: шукали різні варіанти перекладу, підбирали синоніми, позначали частини, які були незрозумілі, писали, де треба щось виправити. Це дуже допомагало: усі поради й те, що я мала таку підтримку. Фактично вийшов спільний переклад.

Один мій друг у кінці проєкту, коли я вже поспішала, щоб вчасно здати текст, навіть взяв на роботі відпустку на тиждень, щоб зайнятися книгою — він уважно вичитав за мною кожен розділ. Після її виходу я порахувала усіх, хто мені допомагав у цій справі, — аж 12 людей. Це була неймовірна підтримка.

Майже уся група, яка перекладала книгу. Зліва направо: Софія Колісник, Олександра Клочко, Володимир Биньо, Іван Песін, Анна Головченко, Андрій Шийка, Володимир Свередюк, Андрій Ясинишин, Павло Білик, Іра Заяць. Також допомагали Дмитро Косарєв, Оксана Олещенко, Богдан Варщук, Денис Мединський

Я мала на переклад книжки три місяці, але не вклалася в такий термін. Загалом працювала над нею 5 місяців по 4–5 годин на день. Потім я приймала правки літературної редакторки та ще кілька разів вичитувала весь текст, усе перевіряла, але то вже була епізодична робота.

Для спільноти #pivorak це був волонтерський проєкт. Видавництво заплатило нам і за переклад, і за наукову редактуру, але ми використали ті гроші, щоб купити «Ruby для дітей» та передати їх у бібліотеки. Також провели одну благодійну зустріч спільноти, на ній просили людей дарувати гроші на книжки. Загалом закупили 225 видань. Цього вистачить щонайменше, щоб подарувати по одній книжці в усі дитячі бібліотеки Львова і ще трохи — у книгозбірні Львівської області. В мерії нам дали їх список. Нещодавно книжки приїхали з друку, з 14 грудня вже є в книгарнях, тож скоро будуть і в бібліотеках.

Мені здається, що якби я не перекладала, а сама писала схожу книжку про програмування на Ruby, то побудувала б її трохи по-іншому: дала б тільки основи, які потрібні на початковому етапі програмування, але кілька разів по-різному повторила б їх, показала на різних прикладах. Книжка «Ruby для дітей» адресована дітям від 7 років, але у ній є багато складних нюансів мови. В розмовах з програмістами ми з’ясували, що деякі аспекти не знають навіть ті люди, які багато років професійно працюють з технологією Ruby, бо не стикалися в роботі з цим.

Ми намагалися щось трохи спростити — перефразувати, простіше пояснити. Але зовсім забрати ті складні моменти, звісно, не могли, бо це задум автора. Та приємно те, що книга стає складною лише після сьомого розділу. Думаю, що до того часу дитина вже зацікавиться програмуванням, буде вмотивована розбиратися в деталях.

Крім того, ми збираємося якийсь час підтримувати наших читачів. Вже оформили сторінку в інтернеті: там можна писати питання щодо книжки, ми будемо на них відповідати. Плануємо записувати відео з поясненнями, якщо щось виявиться надто складним.

Переклад книги зайняв дуже велику частину моєї творчої відпустки, але не шкодую про це — я занурилася в іншу сферу, дізналася багато цікавого й справді відпочила. Друзі досі скидають мені різноманітні статті, цікаві історії про те, як перекладають книжки, дарують про це видання. Думаю, що перекладати ще щось схоже я б не наважилася, та й все-таки моя справа і те, що мені найкраще вдається, — програмування. Але «Ruby для дітей» — це проєкт, яким пишаюся.

Все про українське ІТ в телеграмі — підписуйтеся на канал DOU

👍ПодобаєтьсяСподобалось59
До обраногоВ обраному19
LinkedIn

Схожі статті




56 коментарів

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

Круто, але з громом фізик вам підклав свиню — є якраз приказки про «Грім би вдарив у щось», а не блискавка))

І дякую за таку добру справу!

Ми теж з ВСЛ дещо переклали — «Пришвидшений курс Python».

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

Перш ніж людині професійна інформація англійською почне заходити краще чи хоча б на тому ж рівні, що й інформація своєю мовою, їй потрібно добряче зануритись в предметну галузь англійською. І ні, не просто вивчити англійську, але й зануритись, бо якщо взяти людину з-поза IT, що добре володіє англійською, то її буде стопорити навіть базовий сленг кшталту service чи message або line (мовчу вже про swapping чи ще який гардкор), бо вона в цих словах буде бачити зовсім інше, не те, що спеціяліст в галузі. Але якщо людина вже занурена, то на біса їй взагалі дитяча книжка з програмування? Ця книжка — для дітей, що не тільки не програмують, але й англійську багато хто тільки-но почав вчити по підручниках з «Where were you in summer? — I was in the village». Їм не треба втомитись, чого від дітей вимагає радянська освіта, їм треба зрозуміти і зацікавитись.

Книжка вийшла чудова, це колосальна робота! Велике дякую за це! Я з доньокою 6,5 роки розпочали опрацьовувати книгу, і знаєте, вона про цікавість, захоплення і фантазію! Це те з чим у дитини в подальшому буде асоціюватись програмування, а не з чимось важким, занудним і не для неї.

Дякую за відгук, це дуже круто!

Дякую, дуже цікава стаття!
І книжка класна вийшла, переглядала її в книгарні.
Успіхів вам у творчій відпустці :)

Мені цікаво, скільки часу приблизно пройшло з моменту «ми звернулися до видавництва» i «видавництво купило права на переклад»?

Дякую! :) Пройшло приблизно 2 місяці.

Дякую вам дуже за вашу роботу! За те що пів року волонтерили переклавши для українських дітей дану книгу, що залучили скількох людей, що так якісно, з душею та відповідально віднеслися до цього проекту! Вражаюся вашою роботою! Ви дуже крута разом з усією командою, що вам допомагала!

Купила цю книгу своїй племінниці тиждень назад, щоб вона познайомилася взагалі що це таке програмування і дуже приємно було сьогодні побачити цю статтю про створення укр варіанту книги! І ще й таке надзвичайне створення! Мені здається це важливо розуміти скільки зусиль приклали до того, що тримаєш в руках вже готове. Надіслала цей лінк племінниці.

П.С. До тих хто читає коментарі: дуже б хотілося, що було поменше злоби та негативу, зверхньості та «я тут самий розумний, все знаю, з підгузок програмував, геній чогось-там, а ви всі тут відстающі і робите не те і не так» і тд в коментарях( Зрозуміло що знецінення в нашого суспільства це масовий прояв вшитий в поведінку, нажаль замість підтримки. Добре, що всі тут в коментарях такі круті, якби ще б тільки більше доброти і підтримки було, було б ще крутіше.

Дякую від всіх літок вам, Ірино, за таку тітанічну роботу! Вийшла чудова книга, спробую підсунути її знайомим діткам відповідного віку.

Ruby для дiтей) .Кошмар)
Сразу вспомнился анекдот:
«В Одессе: — Ой, какие у вас милые крошки! И сколько им уже лет? — Гинекологу уже шесть, а адвокату еще четыре.»

Ruby для дiтей) .Кошмар)

А с чего начать лучше? И почему?

Хрен его конечно знает как правильно.
Но я лично, малого попробую начать учить, когда заинтересуется, с языка со строгой типизацией и минимальной магией.
Что-то типа Kotlin или C#.

Лучше отведи его в любой кружок, занимающийся по программе Lego Education («Винахідник» и ко в киеве, например) — толку будет больше. Если заинтересуется — он тебя сам попросит объяснить ему за типизацию рано или поздно. А грузить дополнительными абстракциями со старта — это верный способ похерить интерес в зародыше.

Он ходил пока мы были в Киеве. В Scratch до сих пор сидит. Scratch отличная штука, но когда-то надо переходить уже на следующий уровень.

когда ему перестанет хватать скратча — тогда и перейдет

Ну тут не к Ruby претензия(оказываеться есть книги с++/java/delphi для детей). А нужно ли оно вообще ребенку в возрасте 10 лет?Некоторые подобные книги вообще для возраста 8+. Сейчас в таком возрасте в головах у детей майнкрафт и ролики на ютубчике а не программирование.

Сейчас в таком возрасте в головах у детей майнкрафт и ролики на ютубчике а не программирование.

Ну это же не причина их ничему не учить :) Так-то понятно, что если предоставить их самих себе то будет только майнкрафт и ютубчик. А если учить таки надо, то почему бы не попробовать и сабж? Из всяких там вынахидныков детвору за уши не вытащить — при том, что там им приходится и всякую скучную фигню изучать (например, как рассчитать сколько нужно оборотов колеса чтобы робот-разносчик пиццы доставил ее к нужной двери и т.п). Понятно что не всем зайдет, как и любой другой предмет. Но представление дать можно — если приложить к этому училия и сделать процесс максимально дружелюбным. А зайдет или нет конкретному ребенку... Не попробуешь — не узнаешь.

Я вражений! І вашою затятістю і дружньою спільнотою, яка підтримувала це!

И хейтерами, хейтеры тоже доставляют!

Код, написаний кирилицею

Можна ставити питання по іншому та переводити українську з кирилиці на латиницю.

І пропозиція до місцевих хейтерів: а слабо перекласти CS50 українською в коміксах для дітей?

Ірино, Ви просто неймовірні!

Дякую, мені приємно! 🙌

Вітаю, Ірино, хороша робота. Це реальний подвиг.

Так! оце якраз треба написати великими буквами тут!
Людина присвятила ПІВ РОКУ свого часу на волонтерський проект: читайте діти і програмуйте, дорослі девелопери, дайте своїм дітям книжку, перекладену з душею, хай програмують!
А тут їй: «код не такий, кирилиця, не куплю», «нащо воно треба, в 10 років без цього програмував» і т.д. Сумно, реально. Така крута робота для нас всіх, а зустрічає стільки критики.
Ми розівчились цінувати і дякувати.

У меня вот дочка ходит в НУШ, первый класс, дистационка, присылают видос по математике, там какой-то примитив типа 3-2, она такое и 3 года назад могла, и вот прямо после медленного обьяснения на украинском, что от чего отнимается, на экране начинают танцевать три мыши под какой-то мотив народный, делают они это с минуту.

К чему это я? Для какого возраста эти книги?
Моя дочка в 7, без понятия про Гарри Поттера (сложно угнатся, у них совсем другие интересы).
А в 10 я уже писал без справки на Бейсике на 386 компе.
И чтобы понять, что да как, мне не нужны были драконы и странные шуточки, это как скам, через который ты пытаешся пробраться, чтоб понять суть.
Скорее важнее иметь быстрый результат, хороший дебаг, и хочется видеть что это не игрушка, а реальная взрослая вешь.
Мне, например, в 13 по тем книгам на Delphi что у меня были, очень сложно было понять, ООП, классы, было не понятно, что такое конструктор и как его создавать, примеры были не качественные, не последовательные, я над этим бился может год.
Многие книги для взрослых, скажем так не очень хороши, но это не потому что там мало картинок и драконов.

Важливо, яку мету ми собі і дитині ставимо.
З такими книжками ми ж не ставимо мету навчити дитину програмувати на проф. рівні. Наша мета показати, що програмувати це, як мінімум, не страшно, а навіть і цікаво.
Наша мета — зацікавити, пробудити інтерес до предмету.
Більшість дітей не мотивовані розбиратись в документації (як ви — битись над чимось рік!) а мотивовані читати/слухати/гратись в казки. Тому наскрізний сюжет і ігрова форма важлива для дітей.
Віковий рівень для книжки стоїть 7+, до речі, тобто реально 8-13 років.
Якщо ви в 10 років були настільки мотивованою дитиною, що програмували без довідки, то це круто, але це тільки ваш досвід, більшість дітей навколо вас такими не були — 100%. Дехто з цих дітей зацікавився програмуванням пізніше, дехто взагалі знаходить себе в програмуванні і після 30-ти. Але вони не обов’язково зараз професійно гірші від вас, вони просто виявили що програмувати їм ЦІКАВО дещо пізніше ніж ви (можливо через відсутність інформації, можливо через особливості свого розвитку, зайнятість іншими речами). Мета таких книжок, як на мене, якраз і полягає в тому, щоб допомогти дітям знайти себе в програмуванні раніше: просто побачити, що це цікаво швидше, ніж це могло би статись без такої книжки.

У меня вот ребёнок в 5 лет поднялся на крипте, а в 11 пошёл синьором в FAANG.

К чему это я?

Хорошо, что в книге нет токсичных комментариев с ДОУ. Моих тоже, да 🤷‍♂️😎

У меня вот ребёнок в 5 лет поднялся на крипте

так вот откуда первоначальный капитал на DOU

Профессор Фортран, кстати, вообще не учил Фортрану, только в 30 лет я узнал, что это крутая тема)

Не повірите, є Delphi. Правда ще не перевели :) www.mitp.de/...​ids/Delphi-fuer-Kids.html

О боже, це — любов! :)
Думала пропустити цю книжку і не купувати малому — рубі зовсім не та мова, що цікава мені — але сам формат казки з наскрізним сюжетом — це ж супер! Тепер куплю і будемо читати!
Щодо змінних укр. мовою, то це, звичайно, спірне питання. Але, можливо воно так ріже тільки тим, хто пише код, а для решти мам-татів і дітей ок? Може це наше упередження і страх, що так стануть писати наші підопічні джуни :). Так чи так, але я теж цьому страху підвладна, тому, коли читали з малим Пайтон, то всі назви набирали транслітом і це навіть краще: не просто перенабрати, а вже на етапі набирання робити зміни і слідкувати за змінними.
Дякую за переклад — це круто, що є люди, ладні вкладати свій час і душу в таку роботу!

У ній мене здивувало те, що всі змінні й методи перекладачі назвали кирилицею.

І це головна причина, чому я не купив цю книгу своїй дитині. В момент, коли ти бачиш код зі змінними кирилицею відразу стає зрозуміло, що це не справжній код. Такий код не напише ніякий справжній програміст, ні в якому справжньому проекті. Бажання спростити розуміння книги приводить до того, що книга вчить дітей чомусь неіснуючому в реальному світі. Коли читав статтю і дійшов до

Вирішила, що у нашій книжці усі змінні будуть англійською — так, як заведено в програмуванні у всьому світі.

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

Книжка «Ruby для дітей» адресована дітям від 7 років

Ох... 7 років — це перший чи другий клас. То відверто рано, діти ще плутаються в базовій арифметиці, мають проблеми з читанням/письмом навіть своєю рідною мовою. Якби цілитися десь на 10-11 років — можна було б попасти в значно більшу аудиторію, не боятися використовувати ділення, дроби, відсотки і все таке інше (це, звичайно, зауваження не до команди перекладачів, а до авторів оригіналу).

Добре, що у нас намагаються перекладати книги. І видно, що люди стараються. Але все ж я поки що не бачив у нас в країні книги, яку б хотілося купити своїй дитині.

В момент, коли ти бачиш код зі змінними кирилицею відразу стає зрозуміло, що це не справжній код. Такий код не напише ніякий справжній програміст, ні в якому справжньому проекті.

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

Коли дитина вчиться грати на піаніно — її садять за справжнє піаніно і пояснюють, як натискати його справжні клавіші. Коли дитина вчиться плавати — її запускають у справжній басей зі справжньою водою. Коли дитина вчить іноземну мову — їй показують справжні літери і слова цієї мови.

І лише коли дитина вчить програмування — хтось чомусь вирішує, що то занадто складно і перед тим, як показати реальне програмування — треба вчити дитину якомусь Скретчу, Лазарусу, Пітону чи Рубі з кириличними змінними або ще якійсь єресі. Вреші решт це формує у дитини взагалі хибне враження про те чим є програмування і як воно виглядає, приводить до витрат часу на вивчення штучно вигаданих конструктів, хоча цей час з першої хвилини можна було б витратити на вивчення чогось справжнього (як у прикладах з піаніно, басейном чи іноземною мовою).

Вреші решт це формує у дитини взагалі хибне враження про те чим є програмування і як воно виглядає, приводить до витрат часу на вивчення штучно вигаданих конструктів, хоча цей час з першої хвилини можна було б витратити на вивчення чогось справжнього

Правильно, в топку всі хеловорлди, дитина повинна починати свій шлях з рефактора двадцятирічної давнини програми на MFC.

Во-первых, кириллические переменные не делают «настоящее» программирование «ненастоящим».

Во-вторых, как и с любыми предметами вообще, обучение детей не ставит задачей получить галерных гребцов в кратчайшие сроки — задача стоит познакомить с предметом, заинтересовать. Для этого нужно сделать кривую обучения максимально пологой — поэтому «все эти скретчи и прочая ересь» на самом деле отличный инструмент для задачи.

Надо просто языки нормальные делать, а то

ru.citaty.net/...​ishete-kherniu-kakuiu-to

Напевно тому, що для написання змінних англійською — дитина повинна її розуміти) зазвичай ці книги для молодшого шкільного віку. Сенс таких книжок зазвичай познайомити і зацікавити програмуванням, а не вийти на співбесіду після прочитання :)

Саме тому 7-річок і не потрібно вчити програмуванню. В них ще немає бази. Будь-які книжки будуть недоцільними. Це все одно що в 7 років розказувати дитині, що Земля стоїть на трьох слонах та черепасі, бо дитина ще не здатна зрозуміти законів Кеплера. Ми ж так не робимо, ми чекаємо до 5 класу і вже там розповідаємо справжню фізику. Так треба і тут. Не потрібне «придумане програмування» в першому класі. Потрібне справжнє в п’ятому.

як показати реальне програмування

або реальну математику. от чого не показують її дітям?

або ще якійсь єресі

скільком дітям ви показали «реальне програмування» і вони пройшли хоча б перші 10 занять, і щось второпали-зробили?

Вреші решт це формує у дитини взагалі хибне враження про те чим є програмування

а я впевен що у чималої кількості реальних програмістів — хибне враження про те чим вони займаються, і що такє — програмування.

а початківцям студентам — я би тестові завдання давав на Скратчі. Бо вони тіпа вже проходили реальне програмування, і лаби навіть писали — а програмувати не вміють.

Коли молодшій сестрі важко давалася математика, то я дуже довго приховував від неї, що існують від"ємні числа, а про уявні взагалі не згадував ;) Так, не треба травмувати дитячу психіку ;).

або реальну математику. от чого не показують її дітям?

Показують, чому ж ні? З самого початку дітям пояснюють справжні цифри, справжні арифметичні дії. Ніхто не вигадує чогось неіснуючого заради спрощення.

скільком дітям ви показали «реальне програмування» і вони пройшли хоча б перші 10 занять, і щось второпали-зробили?

Дуже багатьом, маю близько 4 років досвіду викладання інформатики школярам. І досі періодично викладаю.

Показують, чому ж ні? З самого початку дітям пояснюють справжні цифри, справжні арифметичні дії.

не зустрічав поки, де показують справжню математику, а не вчать працювати замість калькулятора.
звісно завжди є виключення, і є такі викладачі, що вчать наприклад різниці між цифрою та числом.

Дуже багатьом, маю близько 4 років досвіду викладання інформатики школярам

як мені сказав один батько двох хлопчиків — ви за 12 занять дали те, що на уроках інформатики дають 2 роки.

звісно, як і з математикою — залежить від викладача.

але цікаво — як ви вчите дітей вирішувати — проблеми. мислити.
з тезою:

І лише коли дитина вчить програмування — хтось чомусь вирішує, що то занадто складно і перед тим, як показати реальне програмування

тому що від реального програмування і нам фахівцям нерідко робиться сумно і нецікаво їм займатися.
а вам вдається дітей реальним програмуванням заохочити?
цікаво — як

4 роки викладання дуже багатьом — чималий досвід
в мене менший, але з кім не спілкувався — всі за Скратч як початок для дитини.
а не розбиратись відразу з
SyntaxError: invalid syntax
та
TypeError: unsupported operand type(s) for +: ’int’ and ’str’

На Скретчі можна забацати просту гру за пару хвилин, тобто там вже купа питань вирішена. А алгоритмічні структури в усіх мовах однакові. Так що, молодша школа — Скретч — це ОК,

саме так. мені якось дали групу відразу на Пітон.
головна проблеми — дітям вкрай важко читати и писати.
друга проблема — жах перед всім що нагадує математику, і тому як тільки приклад щось порахувати — все, кататонія і ступор.
всі ресурси мозку дитини витрачаються на це, і на концепції — змінні, умови, цикли вже не вистачає.
а наполегливості ще немає. і бажання займатись далі — зникає

тому перша мова для дітей повинна бути Скратч і тільки Скратч (або щось подібне з візуального програмування)

хто не згоден, і має свої теорії про викладання програмування дітям — то нехай спробує сам, позайматись з дітьми до 14 які ніколи нічого не програмували, і яким не дуже пощастило з вчителькою з інформатики.

зазвичай це перший клас, дитина вчиться читати а їй уже давай пиши код)))ну таке

Можливо хтось з форумчан пам’ятає — раніше, трохи більше 30 років назад, використовували «Рапіру»... мені не довелось з нею «працювати», але я її ще застав.

Для мене взагалі тоді то виглядало як «хакерство» — ті хлопці, які щось там писали в «Школьнице», в той час як ми намагались вивчати Бейсік, мріяли про асемблер і купу часу марнували на ігри.

Втім, думаю, немає різниці яка мова, важливо — які завдання. Тоді діти читали та писали програми на калькуляторах Б3 та МК, яка там мова...

Дуже важливим моментом, для мене, як для дитини, і пізніше теж, була гарно написана — доступна та зрозуміла книжка. Ті ж калькулятори були цікаві завдяки іграм та цікавим статтям у журналах. Мені тоді подарували на 23-тє книжку Романовского Т.Б. «Микрокалькуляторы в рассказах и играх.» Досі вдячний за цей подарунок, немало часу потім писав свої речі на Basic, базуючись на цій книжечці.

Ооо))) пам’ятаю, що на «Рапіру» потрапив у якомусь журналі, але конструкції кирилицею мені здались якимись мутними і я продовжив колупати gwbasic і, згодом, pascal. Ваш коментар дуже влучний, у дитинстві легко було зацікавити як програмувати на МК завдяки іграм — спочатку ти просто вбиваєш програму щоб погратись, а потім і сам цікавишся як вона влаштована.

Підхід до кирилічних змінних мені не подобається незручністю, коли постійно потрібно буде перемикатись між UA/EN щоб набрати і спробувати шматок коду. А так діти заодно б підтягували англійську.

В момент, коли ти бачиш код зі змінними кирилицею відразу стає зрозуміло, що це не справжній код. Такий код не напише ніякий справжній програміст, ні в якому справжньому проекті. Бажання спростити розуміння книги приводить до того, що книга вчить дітей чомусь неіснуючому в реальному світі.

Одразу відчутно, що автор коментаря ніколи не пробував навчити дитину програмуванню. Можливо і доросу людина також не навчив програмуванню з таким підходом.

Ох... 7 років — це перший чи другий клас. То відверто рано, діти ще плутаються в базовій арифметиці, мають проблеми з читанням/письмом навіть своєю рідною мовою

Свою першу книжку «Бейсик для детей» я прочитав в 7 років і відсутніть розуміння базової арифметики аж ніяк не завадило цій інформації заполонити моє серце і душу бажанням покращити світ через код. Тоді навіть комп’ютера ще не було, а код писав в зошиті ручкою. Головне зацікавити і стимулювати бажання до навчання, бо вже через ~10-15 років це бажання відіб’ють на «справжньому» проекті оці ваші «справжні» програмісти.

Одразу відчутно, що автор коментаря ніколи не пробував навчити дитину програмуванню.

Автор коментаря 4 роки викладав інформатику в школі. Думаю, кількість дітей, яких я вчив, в сотні разів перевищує середнє значення по авторам інших коментарів тут.

Свою першу книжку «Бейсик для детей» я прочитав в 7 років і відсутніть розуміння базової арифметики аж ніяк не завадило цій інформації заполонити моє серце і душу бажанням покращити світ через код. Тоді навіть комп’ютера ще не було, а код писав в зошиті ручкою.

В мене було все те саме. І в 7 років я бився головю об ту книжку, не розуміючи її через слово. Без множення, ділення, відсотків, остачі від ділення, дробів — ти не просунешся нікуди далі від Hello World. Повернувся я до тієї книги в 10 — і мене просто осяяло її простотою та логічністю.

Автор коментаря 4 роки викладав інформатику в школі. Думаю, кількість дітей, яких я вчив,

головне не скільки ви вчили — а скільки навчились.

Підписатись на коментарі