Він стояв перед батьком на кухні їхньої квартири, а той відчитував його. Мати стояла осторонь, за спиною чоловіка, похмуро кидаючи згоджуючи погляди. Батько ніколи не сварився, а тепер ледве стримувався, щоб не перейти на крик. Орест, здивований і не розуміючи слів, нерозбірливо випромінював свій погляд через окуляри батька. В їхніх стеклах відбивалося не кухонне оздоблення, а монітор комп'ютера. Здавалося, батько звертався не до нього, а до екрана.
Придивившись до відображення, Орест побачив знайомий код, над яким працював останнім часом. Батько, здається, виявив помилку і говорив про неї. Орест намагався розглянути, де ж вона, але в окулярах код мерехтів, і йому так і не вдалося вловити, що саме сповіщав батько.
Прокинувшись, Орест почав пригадувати, що могло піти не так, щоб його мертвий батько знову лаяв його в снах. Часто, коли він зосереджувався на написанні програми, йому снився батько, який вичитував його за помилки. Завжди після таких снів він знаходив якісь грубі промахи чи неправильні рішення у структурі коду. Іноді вже у сні він бачив, що було не так, і відразу після пробудження виправляв помилки. Сьогодні ж батько майже кричав.
“Тато, який завжди був прикладом стриманості… Скільки я пам’ятаю його, завжди… Навіть коли його дратували студенти, він поводився бездоганно. А сьогодні ледь стримувався, отже, я, напевно, десь добряче накосячив. Треба все уважно перевірити з самого початку…”
Лежачи в ліжку, Орест так міркував. Кіт, нахабно влаштувавшись на подушці біля голови Ореста, муркотів, відчуваючи, що скоро буде смачна їжа. Це його заспокоювало. З перших днів кіт почав вкладатися в узголів'я. Спочатку Орест його ганяв, але той все одно підкрадався і, врешті-решт, прокидався на подушці.
***
Пройшов тиждень, як кіт увірвався в холостяцьке життя Ореста. Він змайстрував двигун з указкою на стелі та передав його під управління Джапа, а той грався з котом. Так Оресту вдалося відвернути нахабу від своїх колін. Як тільки хлопець сідав до праці, кіт залазив йому на руки, муркотів і топтався на колінах, роблячи болючий масаж своїми пазурами. В такі моменти програмування відходило на другий план. Нічого не допомагало, а от рухома червона точка на підлозі захоплювала Розбійника понад усе.
Орест так і не придумав коту ім'я, тому кликав його Розбійник. І він справді поводився відповідно до свого забарвлення: зненацька підкрадався і кусався, граючи. Коли хлопець сідав їсти, Розбійник кумедно підчіпляв щось із тарілки своїми кігтями і тут же, ричачи та фиркаючи, починав їсти, немовби боявся, що у нього це заберуть. Орест намагався перекласти кота до його миски на підлогу, але той уперто знову повертався та намагався вкрасти шматок із тарілки. Доводилося їсти разом, накладаючи порцію на двох.
Іноді здавалося, що кіт слухає і все розуміє. Після кількох нотацій або щирих розмов Розбійник трохи змінював свою поведінку, неначе стримувався. Чи то йому насправді хотілося змінитися, чи він дійсно все розумів — після появи Розбійника Оресту стало веселіше.
З Матвієм у кота склалися особливі стосунки: коли той мав прийти до Ореста, кіт сідав під дверима та ричав, як пес. Не раз, заходячи до квартири, Матвій ставав жертвою Розбійника. Кіт не заспокоювався, поки не вхопить Матвія — тоді друг віддавався на поталу, дозволяючи коту його вкусити або дряпнути. Лише після цього Розбійник, з почуттям виконаного обов’язку, спокійно відходив, гордо піднявши хвіст.
— Привіт, Кіло! Нарешті я звільнився з роботи, якщо так можна сказати, — повідомив Матвій телефоном.
— Привіт, Мат! А чому майже? — поцікавився Орест.
— Шеф не хотів відпускати, навіть платню піднімав, бо на моє місце нікого немає... Погодився, що поки він знайде заміну, я віддалено підтримуватиму хмару.
— Мат, ти зможеш почати? Чи ні? Мені потрібно знати.
— Звісно, можу!
— Тоді їдь до мене.
— А ти купив намордник для кота? Бо він гірше собаки! Де ти його знайшов? — жартував Матвій.
— То не я його знайшов, а він мене! — з гумором відповів Орест.
— Він тебе ще не вигнав?
— Ні! Поки домовилися!
— За годину буду.
— Чекаю.
***
“Треба передати Матвію частину розробленого коду з кібербезпеки. Для гри я розробив трирівневий захист, а для фірми Бориса вистачить і двох. Звісно, я міг би скинути код на хмару. Матвій — гарний програміст, він швидко розбереться, але є одне «але»…
Паскаль — компільована мова програмування, і, до того ж вона вже застаріла… Мат точно буде реготати та жартувати наді мною. Напевно, іронізуватиме: «Ти ще взяв би Бейсік або Фортран!» Але хай кепкує, поки не побачить самого ПАЖа. Паскаль — фундамент ПАЖа, він чудово лягає на залізо і добре поєднується з Асемблером. Асемблер — мова для машин, і це те, що треба. Обидва ці мови компілюються в бінарний код.
Те, що ці мови старі та майже не використовуються, насправді великий плюс для безпеки. Зараз ними майже ніхто не пише, і мало хто їх пам'ятає. Якщо хтось і володіє, без компілятора з двійкового коду він нічого не переведе. Абракадабру з ПАЖа, взагалі, без моєї програми компіляції не зможе зламати.
В інституті ми ці мови вивчали, як на екскурсії в музеї артефактів. Ось Паскаль, ось Асемблер — і все, ходімо далі… Батько казав, що Паскаль та Асемблер можуть відродитися — от я й відродив їх. А от з Голангом від Гугла прийшлося довго довбати.
Побудова нейронної системи для Джапа має бути із вбудованими засобами для паралельних обчислень і віддаленого керування пакунками. Го для цього підходить, крім цього, вона теж компільована. Ці три мови ідеальні для кодування Джапа. Цікаво, коли я думав, як назвати нову мову, навіть не задумувався про абревіатуру. Раптом виникла цікава асоціація — Джап навпаки.
Як ПАЖа треба було навчати, так і Джапа теж. Цікаво! Код ПАЖа займає мало пам'яті, обробка даних також… Джапу було комфортно в телефоні. Нейро-схема Джапа стала більшою, і він навчається швидше, ніж я розраховував. Ось тобі і “Create your own world”! Ні, все-таки гра буде гарна — факт.
Відредаговано: 13.11.2024