TGViewer
Лаборатория Математики и Программирования Сергея Бобровского Лаборатория Математики и Программирования Сергея Бобровского @lambda_brain · 1.41K subscribers
Post #2637 588
Про важность формальных методов, или даже про важность правильной думательной машинки для некоторой (любой) технологии.

Например, мэйнстримовская модель k8s заточена под цель "продавать курсы/техподдержку" - cмотрите как здорово, декларативные манифесты, контроллеры, "просто задекларируй желаемое состояние, и система мгновенно и надёжно приводит себя в него", срочно внедряем - совершенно не учитывает вычислительные модели распределённых систем (разбираем на соответствующем треке). А тут надо понимать прежде всего асинхронщину, частичную готовность, когда команда на удаление ушла, а под ещё жив и доедает твой трафик,
или наоборот не готов его принимать,
или часть подов новой версии, а часть старой, и они могут так сосуществовать бесконечно,
а что kubectl apply прошёл успешно, так конвергенция может вообще не наступить из-за ошибок и т.д. и т.п.

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

Например, думаем о кубере как о "едином оркестраторе", но когда API тормозит, etcd теряет кворум, поды зависают, контроллеры в бесконечном ретрае (что кстати в условно формальной модели k8s не баг а фича ахаха), оказывается что никто к этому не готов, потому что их приучили думать, что когда kubectl apply зелёный, это гарантия.

Всё больше думаю двинуть куда-нибудь в кибербез ибо ФСТЭК и ГОСТы (КИИ, СКЗИ, ВТС...), где ещё минимально остаются взрослые формальные подходы, и люди понимают, что напиши хоть миллион тестов, это вообще ничего не гарантирует кроме patch-and-pray и никак особо не приближает к системе, которая полностью корректна (по крайней мере, в отношении некоторой спецификации)...

Именно тут как раз и может дать невероятный буст метапрограммирование по Алану Кэю, в "Функциональных архитектурах" разбирал много уже. Одно дело сертифицировать 100500 строк говнокода на Java (это миллионы (если не десятки миллионов) строк доказательств на каком-нибудь lean4), и другое дело -- 150 строк DSL в соответствующем домене. Например, Calculus of Constructions я реализовал на F# где-то в сотне строк.

Хотя, как говорили мастера дзен,
Даже если я объясню, никто не поймёт.
Думаю, мне лучше промолчать в лесу...
  • 🤔 25
  • ✍ 17
  • ❤ 9
  • 👍 2
More from @lambda_brain
  1. Sep 25, 2026Гарри Поттер и Методы Математического Мышления Книга 1. Гарри Поттер и Неорганический Инте…
  2. Sep 25, 2026Свежее от ребят (и девчат). ...Так же было собеседование в Сбере, каким то чудом прошел их…
  3. Sep 24, 2026Приятный синхронизм: сразу двое ребят в один день прислали отчёты - второй курс по гомотоп…
  4. Sep 24, 2026Post #2665
  5. Sep 23, 2026Помните, летом я писал, что каждый месяц будет какая-то "новая" AI-темка (шоу должно продо…
  6. Sep 23, 2026Сейчас по сути наступил золотой век разработки программного обеспечения: - вы можете созда…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →