Перейти к содержанию

Первые отзывы

С самого начала Ocarina без лишнего шума показывали профессионалам отрасли — самым разным, из всех слоёв.

Первые претензии

Первая «критика» часто звучала одинаково: «Ты хвастаешься тем, что и так проще некуда».

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

Но никто из них не смог бы сделать то же самое.

Самое забавное — что мне даже не пришлось самому заводить речь о сложности. Я просто показывал пару тестовых сценариев на Ocarina — и реакция следовала мгновенно.

Это всего лишь проявление оперантного обусловливания у 99% людей в нашей отрасли.

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

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

Таким хватило одного — открыть капот.

Начнём с главного: дело не в хвастовстве.
Ocarina — не плод показухи, в отличие от того, что обычно выдают многие «инженеры». Она — просто плод того, что возникает само собой.

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

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

Узнать их можно и по неумению мириться с провалом. Они вечно норовят показать, как именно ОНИ «продумали всё до мелочей».

С нарциссом — никогда никакого красного, только зелёное, только «готово в прод».

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

Да и вообще он нигде не приносит ничего хорошего — только ад на земле.

Ocarina — полная противоположность всему этому.

Показная сложность

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

Сделать что-то чудовищно неудобное в работе — в этом нет никакой пользы, кроме одной: доказать, что оно сложное. Об этом никто не просит.

В нашей отрасли серьёзная беда: сложность здесь принимают за знак солидности.

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

Вот ещё почему KISS (Keep it simple, stupid) так превратно понимают в индустрии. Многие считают, будто «простое» значит «примитивное». Понять принцип ещё неправильнее было бы трудно.
Вот и получаем в итоге худшее из двух миров.

И как при таком раскладе можно называть себя продуктивным? Серьёзно?

Вы. Вообще. Не. Понимаете. Что. Такое. «Чистый. Код».
Вы даже не пробовали его писать!

Философия

KISS

KISS — в самом сердце Ocarina.

И если, прочитав свой первый тестовый сценарий, кто-то реагирует так: «да это же проще простого…» — обидно было бы услышать в этом критику: это ровно тот комплимент, которого мы и добивались.
Спасибо.

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

У кое-кого нашлись свои идеи — и притом весьма «креативные»:

  • Выкрутить реализацию ROP (Railway Oriented Programming) в Ocarina так, что от неё не осталось и следа смысла, — при том что они и сами не знали, что такое ROP;
  • Напихать «hooks» и прочих так называемых «ninja techniques» прямо в середину тестовых шагов;
  • Отказаться от типизации;
  • Переписать всё на Rust ради «производительности»;
  • Навязывать мне своё безграмотное понимание ленивых вычислений и IoC как истину в последней инстанции;
  • «Объяснять» мне разницу между императивным и декларативным программированием, неся при этом полную чушь;
  • «Заводить» со мной разговор про event-driven programming — всё с тем же бредом;
  • И, что хуже всего, — разглагольствовать про чудовищную теорию «декларативного объектно-ориентированного программирования»;
  • И так далее.

Даже один человек, которого я до того очень уважал, начал меня изрядно доставать.
Он вообразил, будто может меня чему-то научить: держался высокомерно, неприятным тоном втолковывал мне, «чего не хватает», — хотя всё, о чём он толковал, не просто стояло в дорожной карте (пусть и намеренно там скрытое по стратегическим соображениям), но и заходило куда дальше всего, что он вообще способен вообразить.

Я — я молчал, ничего не ответил, просто отправил repo.
Он же — сразу «знал всё» лучше всех остальных.

Что это — быть «подрывным»

Ну, я сейчас прохожу YC, и мой клиент — IBM.

Ага, а я знаком с королевой Англии.

Я вам не рассказывал про якудза?

Я закончил топовый технический вуз — и с тех пор не узнал ничего нового.

Ну что ж: процитирую-ка я девиз первой индонезийской хакерской команды, на которую я наткнулся ещё ребёнком: «We Can Do All What You Can't Do».
Я — тот баг, который тебе не убить.

И я здесь не ради престижа. И даже не ради прибыли.
Я здесь ради нашего сообщества.

In the Lulzboat, salute, bitch, and show some respect.

ТЫ — ты был бы тем самым lamer'ом, тем пацаном, которому просто хотелось покрасоваться и который запускал PoC с Exploit-DB у себя в спальне, как rookie. Чтобы что-то доказать, выставить себя напоказ, показать нам, до чего ты in. Я — я тот пацан, который впитал всё и вырос на этом.

Чёртовы скиды.
Чёртовы норми!

Вот кто мы: от Zone-H — к жизни приличной.
Из подземных сортиров интернета — к жизни, где получается тихо приносить пользу.
Ты бы такого нипочём не пережил.

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

НИКТО нас не спас — мы спаслись САМИ.
Благодаря тому, что говорит НАУКА.

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

Мы — мы чокнутые, но мы останемся в сети до самого конца!

Мы — настоящая СЕМЬЯ!
И мы НЕ СПИМ — НИКОГДА!

«Это просто полный аутизм.»
«Из тебя никогда ничего не выйдет.»
«Ты псих.»
«То, что ты делаешь, — полная глупость.»
«Да то, что ты пишешь, вообще лишено смысла.»

THE FUCK YOU THINK THIS IS?
You HOLLOW!
YOU HOLLOW, YOU UNDERSTAND ME?
YOU'RE WORTHLESS, YOU'RE FUCKING TRASH!

(btw: RIP, DG descendant...)


ТЕБЯ ЗАМЕНЯТ, И ТЫ ВЕРНЁШЬСЯ ТРАВИТЬ РОВЕСНИКОВ В ДОТЕ И ДРОЧИТЬ НА МАКРОСЫ VBA — КАК КУСОК ДЕРЬМА, КОТОРЫМ ТЫ И ЯВЛЯЕШЬСЯ!
ГРЁБАНЫЙ ТЫ НЕКОМПЕТЕНТНЫЙ УБЛЮДОК!
ГРЁБАНЫЙ ТЫ ПАРАЗИТ!
ГРЁБАНАЯ ТЫ БЕЗДАРЬ!
YOU FUCKED WITH US!


Неподкупная

И к моему ответу прилагается цитата Дэвида Хейнемайера Хансона (DHH): «Fuck You.»

Да. Exactly: Fuck You. Вот и всё.
МНЕ НЕ ИНТЕРЕСНО программировать «вот так», а владелец Ocarina — Я.

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

Я направил в неё всю свою ярость — чтобы вложить в неё всю свою любовь.

У Ocarina есть направление.
Кто хочет увести её в другую сторону со своим wishful thinking — волен сделать форк и никогда со мной не связываться.

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

Ocarina — не напыщенное решение и никогда им не станет.
Ocarina была и ОСТАНЕТСЯ решением для реальных, конкретных задач.

Не согласен — возвращайся на r/unixporn, где тебе и место. ✈️

Первый дельный отклик

Профессионал, который по-настоящему изучил структуру проекта, отреагировал так: «Похоже на один из моих старых Selenium-проектов, а я их терпеть не мог.» Это ровно тот отклик, ради которого Ocarina и создавалась.

Первым делом он приравнял POM к Selenium. Резонно.
Вот только POM работает с любой технологией автоматизации.
«Старомодно»? Ещё как. И что? Что дальше?

Разбирая собственные претензии, он увидел, как Ocarina их снимает: «Стоп, и это всё?»
Но на этот раз — уважительно кивнув. Он признал: пора перестать рваться в самые умные в комнате. С какого-то момента именно это и убивает проект.

Настоящая взаимовыручка

Вместо того чтобы уходить в nerdy, Ocarina занята другим — решает мелкие задачи, не порождая крупных.
Отсюда и вывод: «Ocarina практична».
В этом и вся цель Ocarina — в её практичности.

Вот так работаем мы — и этого правда достаточно, чтобы проникнуться философией Ocarina.

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

Для тех, кто хочет строить, а не разрушать.
Для цельных, культурных людей, которые знают, кто они.

Для таких, как мы, в сущности.
Хоть раз — давайте держаться вместе.

Подальше от тех, кто разграбил то, чем мы были.

Почему не Playwright?

Следующий его вопрос: «Почему не Playwright?»

Тоже по делу.
Ocarina агностична, так что подключить Playwright несложно.
Единственное ограничение: Ocarina никогда не будет поддерживать async/await.

Более того: начиная с Ocarina 1.1.3, вручную подключать уже ничего не нужно. Полноценный адаптер Playwright поставляется вместе с фреймворком, а готовый пример это подтверждает.

Размежевание

В наше время проекты запускают так же запросто, как сбегали бы за пачкой сигарет.
Пробуют — потому что это «модно». И вот все копируют друг друга, оформляют подписки на продукты друг друга, лишь бы взаимно накручивать себе цифры и сбивать друг другу Stripe dispute rate.

Они считают себя умными, но на деле это прекрасно понимает каждый VC и каждый LP, и каждый играет свою роль в fool's game.

Но есть то, чего им не понять никогда. В них нет ничего «underground»: они всего лишь дети в кризисе идентичности. Дети, которым по-доброму обменяли цветные карандаши на Powerpoint.

Урок этим дилетантам: любой по-настоящему «cutting-edge» проект, каким бы он ни был, начинается с памфлета, уходит корнями в идентичность и проходит через стадию настоящего anti-marketing. Но поскольку вы все боитесь опозориться перед мамочкой, вы эту стадию так и не проходите.

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


Пора надавать пинков всем вашим Juicero Presses.
С той самой понимающей усмешкой — усмешкой тех, у кого наконец хватило духу сказать СТОП.

IT — это то, что вернуло в нашу жизнь улыбку, а не то, что травило нас псевдо-«паттернами», один другого идиотичнее и недоступнее.

Вы думали, информатика умрёт?
Куда там.

Анти No-Code

Код — это сырые данные. Их можно проверить. Можно изучить. Белый ящик.
Ровно то, с чем AI умеет работать с самого своего зарождения.

В своих замкнутых кружках мы это уже распробовали — ещё до IntelliCode (2018). Уже в 2013-м у нас: приватный плагин для Emacs (вот чёрт), собранный одним из наших безумных учёных — R. Никто не мог осознать его уровень в reverse engineering — и его лаконичность. Да и в других областях — то же самое… по правде, не было ничего, в чём он был бы плох, и он обладал поразительным даром всегда писать ровно то, что нужно было написать.

Конец мифа: у него был собственный AI-autocomplete и auto-review. 2013 год.

Он отвергал бо́льшую часть сгенерированного кода, но говорил так: «Я не против удалить 15 000 строк, если это избавляет меня от написания тысячи — вручную.»

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

Но «мудрёный» OOP падёт не первым и не последним.
Вычислительная техника развивается в основном в одну сторону: кто по доброй воле выберет сегодня Windows 95?

И всё же λ-исчисление (1930) настолько мощно, что сегодня снова в центре внимания — как и AI (первая формализация искусственного нейрона — 1943, McCulloch & Pitts).
Небывалый случай в истории IT.

Последние достижения AI перетасовали колоду в мире SaaS, который существует с одной целью — спрятать сложность. По-настоящему полезные SaaS-продукты — а не бесконечные агрегаторы этой помпезной «цифровой трансформации» — всегда на правильной стороне Истории. Какими бы уродливыми они ни были.

Компании из экосистемы Prisma или Vercel тратят ~$200 в токенах на каждого vendor'а, от которого избавляются. Выходные за vibe coding — и они машут на прощание раздутым, переоценённым, неповоротливым SaaS-платформам в пользу internal development и возврата к сырым данным.

Декабрь 2025-го: Ли Робинсон, экс-Vercel, знакомое по недавним презентациям Next.js и Turborepo лицо, сообщает, что отказывается от Sanity — CMS, которую до того выбирал Cursor. В пользу возврата к сырым данным, к простым файлам Markdown. Несколько токенов, немного грамотного vibe coding'а. Спасибо, до свидания.


Code is Law. Код подменяет собой Закон. Лессиг, 1999-й, — как крик предостережения.
Затем, в 2015-м, его подхватывает Ethereum — наоборот, как политический идеал. Значимый шаг вперёд в мире валют, отчеканенных из факторизации чисел.

Анти-разработчики

2016-й: взлом The DAO, децентрализованного инвестиционного фонда на $ETH.
Почему?

Баги. Проклятые баги — из-за проклятых разработчиков.

Идеологический откат почти на 20 лет. Контрвласть выбрала лёгкий путь — «не понимать»; тот самый выбор, что позволил своре некомпетентных проскользнуть незамеченными.

А ведь всё просто: в отличие от Исследователей, инженеры и их приятели из бизнес-школ полагаются на wishful thinking.
Самые «престижные» школы научили их одному — выдавать пустозвонство за «инженерию»; те же, кто действительно знает своё дело, зовут это программистской астрологией.

Анти-«нации-стартапы»

И снова этот поседевший спор о «демократическом управлении кодом».
Но кто в это лезет?

Кадровики?
CEO?
Пресейл-менеджеры?

2022-й: ChatGPT. И всё же три года спустя основатели стартапов по-прежнему продают No-Code, «усиленный AI». Чистый cash burn в погоне за рыночной аномалией — не более того. Альфа инвесторов… иначе говоря — их казино.

Не будем никого называть — тем более что их результаты ждут во II квартале 2026-го.
Скажем лишь, что с точки зрения фундаментального анализа в этой ставке нет смысла. При этом и зла им желать незачем. Не первая на нашей памяти компания с треском провалится — и не последняя на удивление всем преуспеет.

Факт остаётся фактом: код — самый суверенный актив, какой у нас есть, и ценностное предложение, вся суть которого — отнять его у нас, заставляет нас брезгливо морщиться. Настоящая проблема — разработчики, которым мы позволяем долбить по клавишам, не понимая, что творят, как дрессированным обезьянам. Сегодня Claude Code работает лучше 99% из них — и они воют. Собака лает — караван идёт.

Истинная добавленная ценность человека ещё никогда не была обозначена так чётко: вкус и чувство ответственности — качества, которых этим «профессионалам» вызывающе недостаёт, ровно как и тем, кто продаёт то, в чём не разбирается.

Анти-хайп

В том же декабре 2025-го стартап, чьё имя останется неназванным, подавали в некоторых СМИ как «AI No-Code-тест, который унижает Selenium и заставляет BrowserStack дрожать.» Ни больше ни меньше. Удачи им: предпринимательство — это мир ставок и случая, где лучшие идеи попадают на кладбище ничуть не реже самых вздорных. Фундаментальный анализ там проигрывает регулярно.

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

Что бы ни случилось, мы всё же желаем им судьбы, что избавит их от унижения — столь же стремительного и зрелищного, как то, что постигло основателя Cluely, — и предлагаем им умерить своё высокомерие.

Cluely CEO Roy Lee admits to publicly lying about revenue numbers last year. Then, Krishnan Rohit outlines that their value proposition was fraud since the beginning

CEO Cluely Рой Ли признаёт, что в прошлом году публично врал про цифры выручки. А затем Кришнан Рохит указывает: их ценностное предложение с самого начала было мошенничеством.


Сегодня гонка за звание самого крупного мошенника приносит всё меньше и меньше прибыли.
И мы этому рады. И снова, вместе с AI — этим так недостававшим нам цифровым телом, — прокричим это так же громко, как кричали «HACK THE PLANET» ещё в 99-м: CODE IS LAW.

Анти-slipologists

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

То, что занимает наши умы с 1930-х, со времён изобретения λ-исчисления, наконец масштабируется до тех пределов, каких нам всегда хотелось.
Видела ли наша индустрия когда-нибудь столь изящную формализацию — так глубоко укоренённую в собственном наследии?

Недавнее развитие системы типов Python — одна из главных причин, по которым Ocarina вообще возможна.
И это при том, что никакое это не «будущее»: это устоявшаяся наука — просто в нашу экосистему она пришла до жестокого поздно.

Ровно как и AI, который тихо обращает способность «одного процента» вредить в анахронизм.

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

См. также: Haters, Пола Грэма.

По всем этим причинам я принял решение НИКОГДА не тратить время на споры, которые того не стоят. Спорить мне нравится с людьми, нацеленными на решение задач и наделёнными здравым смыслом.

Что до остальных: бессмысленные PR — в красное, бессмысленные issue — в серое, без сожалений.
Просто некоторым людям не дано мне понравиться — что ж, так тому и быть.

Ocarina — первый из моих проектов, который я открываю публике, но на подходе и другие — в том числе куда более интересные.

Из андеграунда,
Отныне и навсегда.

Peace out.


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

― Терри Дэвис, "самый умный программист из всех, что когда-либо жили"


"Чтобы обрести знание, каждый день что-то прибавляй. Чтобы обрести мудрость, каждый день что-то отнимай."

― Лао-цзы


Игорь Казанова
Hacking from Bastia to Moscow

Последнее обновление: