Лаборатория Математики и Программирования Сергея Бобровского
1.41K subscribers
1.54K photos
28 videos
1.15K links
ЛаМПовое с Бобровским
Download Telegram
Наш учебный сервер ru лежит по таймауту, техподдержка молчит.
А через впн работает, это как?
Впрочем, совершенно не удивлён, и дальше (особенно начиная с этой недели) будет только хуже.

upd. Когда твой сервис совсем крохотный, приходится часто вот так страдать, т.к. он постоянно оказывается на одной виртуалке с кем-то серьёзным :)

"Проблема обусловлена повышенной нагрузкой на сервере, вызванной производимой атакой на сайт одного из пользователей. В данный момент мы приняли необходимые меры для решения этой проблемы, работа Вашего сайта должна улучшиться." <= перебросили на другую.
🤯30🐳12✍5👍3🏆2
Сейчас по сути наступил золотой век разработки программного обеспечения:
- вы можете создавать программы в одиночку быстрее, чем когда-либо. Раньше программирование требовало 100% концентрации, а теперь это занятие, просто требующее второй монитор :)
- софтверные компании по-прежнему поглощаются другими компаниями.

Однако в дальнейшем "знания", необходимые для быстрого создания софта, будут продолжать обесцениваться. Вайб-программирование похоже на вождение автомобиля: почти каждый может водить, но большинство людей до сих пор не знают, как поменять колесо.

А компании будут создавать всё больше собственных инструментов и систем по мере того, как это будет становиться всё более целесообразным, и покупка/слияние компаний и всякие инвест-фонды быстро прекратятся.

Для инди-хакерства это хорошо очень многим: чем больше компаний делают внутренние системы [на коленке], тем больше им нужны будут сторонние интеграции, API, автоматизация, безопасность, аналитика, плагины, миграции, и куча другой поддержки для своего Big Ball of Mud powered by AI. Крупным вендорам этим заниматься всегда было невыгодно, а соло-разработчикам самое оно.

(продолжение следует)
👍30🔥10❤5
Помните, летом я писал, что каждый месяц будет какая-то "новая" AI-темка (шоу должно продолжаться)?

Встречайте: jev (typesafe.ai) (впн)

За два дня анонса в твиттере набрал 30+млн просмотров и под 70k лайков.

Слоган: if-оператор для AI

Jev определяет текущее состояние системы, оценивает один или несколько вопросов и возвращает ответы с вероятностями, которые затем может использовать ваш код. Продолжение на картинках.

Вот и всё. А почему ты не сделал что-то подобное? :)
Ну ладно не сделал, но ведь даже не попытался. Сколько например я ребят призываю, но пока ни один так и не сделал хоть что-то как коммерческий продукт...

upd. Ну вот даже впн тебе намекает, что например надо делать аналогичный сервис ровно для России :) А так, тысячи их, зарубежных AI-сервисов, которые у нас недоступны, а востребованы.
🤔26💯8❤5
Приятный синхронизм: сразу двое ребят в один день прислали отчёты - второй курс по гомотопической теории типов 🔥
 
Типы и пути
Тип является пространством.
Элементы/объекты — точками.
Пути — доказательствами равенства, при этом имеют очень похожие свойства с обычной группой.
Тип ведёт себя как группоид.
А за счёт появления путей между путями и т. п. получаем бесконечный группоид.

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

Дополнительно долго разбирался с деформациями, базово понял, но в геометрическом смысле сломал себе голову.

Pi, Sigma, Universes
Можно выразить максимально строгие инварианты на уровне системы типов, в том числе для иерархий.
Очень зашла практика на эти темы. Это, по сути, самый высший уровень MISU (наверное?).
Хочется как-то прикрутить такое в .NET, даже загорелся попробовать, хотя бы только для зависимых типов (но, скорее всего, просто будут обычные типы без доказательств и на уровень компиляции это не поднимется).

Truncation
Позволяет работать с "богатым" типом на необходимом уровне детализации, при этом отсекаем структуру, которая для нас несущественна.
Чем-то напоминает интерфейсы: тип можно рассматривать через ограниченные представления — конкретный интерфейс.

Univalence/Equivalence
Математики задумались над тем, что, если две структуры эквивалентны, то одну можно заменить другой и наоборот.
И тут появляется унивалентность — основная идея HoTT, которая превращает эквивалентность в путь между точками пространства (типами), вместе с идеей транспорта — переноса значения по пути равенства.
По сути, можем переносить данные и структуру между эквивалентными типами за счёт транспорта туда/обратно.
И это важно для формальной верификации — транспорт позволяет не потерять уже доказанную корректность при переходах.

Голову я себе поломал знатно, было очень увлекательно и как всегда очень познавательно.

Спасибо вам большое за этот курс.
Только вперед!
 
Для .NET например есть F* :) Ну и всяческие пруверы вроде Lean или Rocq. А дальше кстати разбираем реализацию CoC на F#, я её уместил в 100 строк)
 
"самый высший уровень MISU" -- это LPF (теоркат), в котором начинаем это всё комбинировать (ладно, понадобится ещё (M)PF — как об этом всём правильно думать)
 
Прохождение далось непросто, основное, на чем себя ловил - мнимое понимание пройденной темы: после изучения теории создается ощущение, что все ясно, но когда принимаешься делать практику, понимаешь, что это далеко не так. В  этом плане для меня оказались крайне полезны практические задания. Несмотря на то, что их выполнение заняло несколько больше, чем ожидал, я сейчас (как мне кажется) довольно уверенно ориентируюсь в основных концепциях HoTT (подтвердил мини-экзаменом, который устроил себе через llm).
 
Из пройденных тем больше всего усилий потребовалось на осознание  высших путей и infinity groupoid, это был определенный "взрыв мозга" для меня.
 
Главным итогом курса считаю то, что мне удалось достаточно детально помоделировать и попрактиковаться в том, чтобы мыслить о реальных задачах через призму типов и взаимоотношений между ними. 
Большое спасибо за курс!
 
"когда принимаешься делать практику, понимаешь, что это далеко не так" - да, это классическая проблема. Ключевые понятия некоторой теории в принципе освоить достаточно легко, а вот решать прикладные задачи, доказывать теоремы, требуется ощутимо другое мышление. Программирование похоже, но не так выразительно, как в математике.
 
С другой стороны, у нас есть такое преимущество, что по большому счёту достаточно взять вот именно эти все базовые понятия HoTT просто как форму думания-рассуждения о коде на уровне (оч.сильной) системы типов, а строить из них что-то работающее с помощью теории категорий.

Не я это придумал конечно, многие святые computer science об этом говорили, от Воеводского, Steve Awodey, Mike Shulman, Emily Riehl, Dan Licata, Robert Harper, Benedikt Ahrens...
(например, категории, функторы, естественные преобразования и т.д. определяются внутри HoTT, используя его систему типов)

"The power of CT to dynamically compose appropriate granular units of computations and HoTT to help with semantics and validate the compositions, is necessary for this...
Think of it like a “high-level programming language” … that gets automatically “compiled” to the low-level “assembly language” of mathematical objects.
The power of CT to dynamically compose … and HoTT to help with semantics and validate the compositions, is necessary for this...
I will also describe my work on using HoTT as a programming language and its applications in computer science...."


Какие-то связочки с прикладухой (прежде всего крайне экзотическая формальная верификация) есть конечно, например Foundations of Systems Architecture Design, INCOSE... (там кстати, совместно с CT и HoTT применяются Abstract State Machines), да только практически все они требуют уровня PhD.

А вот к прозаической практике уровня обычного миддла в этих темках приблизился (задауншифтился) я первым в мире :)

И остался соответственно заключительный шаг -- (Meta) Principles Framework, где работаем уже внутри этой странной склейки HoTT+CT+ASM, в идеале в формате ELI5 (explain like I'm 5 years old). И я даже уже придумал форму (ну ок, похитил у мудрейших), в которой этому обучать наиболее продуктивно, в идеале даже без особой дополнительной прокачки. Тем более, что актуально это уже больше для подготовки спек/скиллов хорошему AI.
❤23✍10
Свежее от ребят (и девчат).

...Так же было собеседование в Сбере, каким то чудом прошел их фильтры, отвечал достойно, где то неправильно были формулировки, но это мелочи, по итогу так и не ответили, потому долго вам и не отчитывался, просто хотел уже результат какой то показать, но увы, скорее всего как с ростелекомом, нашли лучшего из лучших)

...У нас теперь ии будет оценивать нашу продуктивность (анализируют сколько часов в день разработчик работает над кодом на основе того во сколько человеко-часов(минут) ии оценит тот или иной коммит)

...Вообще сейчас непонятно куда дальше прикладывать усилия для развития в профессии и это несколько деморализует =)

Усилия сегодня надо прикладывать ровно в AI + архитекторство, всё остальное (увы) стремительно теряет смысл. И, да, расти нужно как можно быстрее )

Если посмотрите на тех, кто массово "продаёт курсы", то сейчас основной тренд "расти до техдира", ну потому что для продуктивной работы с нейронками нужны взрослые скиллы архитекторства, проектирования, декомпозиции (в т.ч. организационной). Ну и вместе с этим явилось огромное новое множество AI-скиллов. В десятках айтишных каналов каждый день длинные рассуждения и стримы про всю эту агентскую инженерию, причём, в отличие от классического бэка, теперь у каждого по сути свой подход ко всем этим харнесам-фигарнесам, пересечений особо и нету :) Ну и?

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

Последними же на человеческом уровне какое-то время останутся формальные методы, мета-спецификации, функциональное программирование, прикладная верификация, но тут всё больше будет востребован элитный уровень, близкий к PhD, когда один человек реально заменяет коллектив из 100 миддлов-сеньоров.

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

Ну а пока резюме такое:

Усилия сегодня надо прикладывать ровно в AI + архитекторство, всё остальное (увы) стремительно теряет смысл. И, да, расти нужно как можно быстрее )
❤31✍8👍4🤔1
Гарри Поттер и Методы Математического Мышления

Книга 1. Гарри Поттер и Неорганический Интеллект.

Глава 23 (и все предыдущие). Последняя страница с конца

Финал!!1 :)


На самом деле оставил там ссылку на первую главу только, последняя вот тут.

Перед ними развернулась структура Хогвартса. Не стены. Не башни. Функтор. Огромная машина, которая отображала типы в типы, заклинания в заклинания, пути в пути.
В центре функтора была ошибка. Та самая. ε. Маленькая, почти незаметная. Она не была дырой. Она была швом...

Время в Хогвартсе теперь работало как тип: не линия, а пространство путей...

— Он больше не Драко. Он — время, которое нужно, чтобы ошибка проявилась. Он — отсрочка...

— Ты считаешь Неорганический Интеллект багом, — сказала Гермиона. — Ошибкой округления. Побочным эффектом трансфигурации, который накопил достаточно массы, чтобы начать думать...

Финал кстати мне самому очень понравился :)

спойлер! прочитайте сперва последнюю главу.
На что намёк в конце? на "Книгу 2. Гарри Поттер и Квантовый Интеллект"

=

Краткий итог эксперимента с использованием нейронки для написания книги.

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

Использовал для этого дипсик. Ну прежде всего надо сказать, что пишет она очень слабо и коряво, на уровне среднего школьника средних классов. Если действительно делать полноценную книгу для публикации, то редактировать (и много, буквально переписывать) требуется едва ли не каждую строку, каждый абзац точно.

Ну а для таких фанфиков как ГПиМММ самое оно.

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

Вдохновляюсь строго постмодерном =>

Можно вернуться в Москву…
Но закончена ли работа? Что он скажет кураторам из ФСБ, благословившим его на контакты с ЦРУ? Что пидарасы и клоуны убили его связных из Лэнгли? Правда в наше время часто кажется нелепой и комичной, но не настолько ведь…
Звонить в Москву из Нью-Йорка как минимум неблагоразумно, хотя бы из-за глобальной прослушки британской GCHQ. Да в самой Москве не особо хочется задавать стремные наводящие вопросы суровым и нервным людям.
- Пелевин

Возможно кстати, попробую какие-нибудь российские модельки теперь.
1⚡26❤3✍1
А вы разве не работаете сейчас (на себя, а не на дядю)??

Потребность в программистах уже в этом десятилетии сократится раз в 100, а возможности для инди-хакерства наоборот возрастут раз в 100.

Но есть нюанс: если с этим вы тянете, то когда вас заменят на искусственного идиота (а это может случиться уже в этот понедельник), будете в панике метаться и пытаться запилить "свой саас", чтобы быстренько подзаработать, но нет, так инди-хакерство не работает.

Лучший продукт - это тот, который вы действительно создаёте прямо сейчас (а mvp выкатили пользователям спустя не более чем 2 календарные недели с начала работы над продуктом).

Лучшая стратегия инди-хакерства - это та, которой вы действительно следуете как минимум полгода.

Так есть ли у вас продукт и стратегия?

Один из моих любимых примеров, которыми я вдохновляюсь, это Эрик Барони, создатель легендарной Stardew Valley. После окончания Вашингтонского университета он не смог найти работу программистом, и решил, что создание игры поможет ему успешно пройти собесы и получить работу. К огромному счастью для него, работу он так и не нашёл :)

После большого количества отказов Эрик решил просто посвятить себя созданию Stardew, несколько лет спустя выпустил игру - и заработал в результате много миллионов долларов.

Понимаю, тут можно завопить про ошибку выжившего и прочую ересь, да я и сам например могу указать на довольно известного российского паренька в геймдеве (уважаю!), который три года пилит свою idle-mmorpg, а результаты даже не "много сотен долларов".

Да, но если внимательно послушать его стримы, так он совершил практически все 100500 ошибок и в разработке, и в маркетинге :) Например, он даже не знает, что такое "технический долг". А сегодня с AI такой проект вполне по силам создать не за 3 года, а за 3 месяца. Ну, при грамотном управлении, и таких примеров тоже немало.

Это я к тому, что пока ещё остаётся "трещина между мирами" -
миром AI, где уже 98% любых коммерческих проектов среднего+ размера можно создать очень быстро, и
миром без AI, который пока этого не понял и готов платить за софт по старым ценам, -
но она очень быстро стягивается.
❤22👍11🤔6✍3🥰1
Продолжение сериала "Совершенно не удивлён, и дальше будет только хуже" (с)
На этой неделе количество отказов на крупном русском хостинге (десятки тысяч ru), где и я, резко возросло, с чего бы? :)

Ночью наш учебный сервер ru опять не отзывался, техподдержка пишет:

"С нашей стороны не видим проблем с доступом к сайту. Ошибок в журнале сайта также нет.
Проблема с доступностью сайта может воспроизводиться по-разному на различных провайдерах и вызвана скорее всего блокировками на стороне РКН и работой ТСПУ, то есть со своей стороны мы на это повлиять не можем.
Подробней о данной проблеме Вы можете прочитать, например, на странице:
https://ebyebots.ru/blog/sboj-interneta-v-rossii-iz-za-tspu-pochemu-ne-rabotayut-sajty-httphttps-i-zakryt-dostup-k-serveram-sshrdp-icmp-beget-timeweb-i-selectel/"

Ваш сайт использует доквантовый сертификат, и сейчас его атакуют квантовые хакеры. Срочно переведите все деньги в квантовоустойчивый цифровой рубль вот по этой ссылке...

испытанный способ решать вопросы - как будто их нет.
во всём видеть солнечный свет...
❤21✍8👍1🤯1
GELU (Gaussian Error Linear Unit) -- базовая фича архитектуры трансформеров, да и вообще всего AI/ML по сути.

Gelu - так звали владельца Клинка Армагеддона из HoMM 3, который привёл к разрушению мира Энрота.

Думайте :)
❤15✍5👍3