Лаборатория Математики и Программирования Сергея Бобровского
1.3K subscribers
1.18K photos
24 videos
920 links
ЛаМПовое с Бобровским
Download Telegram
Это всё, что надо знать о том, как современные AI-тьюторы "помогают" в индивидуальном обучении. Очередной разрекламированный AI-сервис даёт план по запросу "Как войти в ИТ в 2025-м?".

Начьните со стэнфордских лекций Кнута "Анализ алгоритмов" (говорят, что его многотомник "Искусство Программирования" не дочитал до конца ни один человек в мире :), и отшлифуйте полным гарвардским курсом по Computer Science.

И ведь люди реально будут следовать подобным рекомендациям...
😁52👍9❤‍🔥7🐳32
Интересное, буквально сегодня вышло исследование, которое американские цензоры уже пытаются запретить: "Stereotypes of the Intelligence of Nations"
Про то, что корреляция между "стандартными"/шаблонными представлениями людей об интеллекте различных наций, и (относительно) реальным средним интеллектом этих стран по IQ, достигает аж 0,78 !

Казалось бы, в разных странах пропаганда должна приводить к сильно различным "навязанным" мнениям об интеллекте других стран, но вот оказывается в частности (впрочем, достаточно естественно), что чем выше IQ страны, тем точнее её граждане оценивают IQ других стран.

Показательно, что любимая Российская Федерация практически везде в топе 3-5-10 наиболее умных стран мира: рядом США, Израиль, Япония, местами Европа.

Поэтому, продолжаем неуклонно повышать интеллект свой и окружающих 🚀

Пока выходные/праздники, рекомендую поиграть в мета-игры наподобие Baba Is You (мета-задачки, рекурсивное мышление, а некоторые уровни остаются нерешёнными годами) и The Witness (правила в ней вообще не объясняются, подсказки скрыты в окружающем мире -- тени деревьев, звуки птиц, а финал вообще требует расшифровки реальных научных и философских концепций).
46👍17
Прекрасное: GoogleSQL Pipe Syntax. Философия Unix будет рулить вечно!
Слайды.

"SQL с пайпами" вообще красавчик, всё линейно и читаемо, существенно "больше" декларативности, чем в стандартном SQL.

Что интересно, автоматических конвертеров пока нету (внутри BigQuery что-то такое есть конечно, но проприетарное), и если сделать например такой для постгресса в виде SaaS, думаю, получился бы неплохой стартапчик.

Казалось бы, просто надо механически синтаксис переконвертировать,
но нет (линейная vs. вложенная структура, контекстные зависимости, особые операторы, оптимизация...). И всё же предположу, что сложность будет не более O(n²), где n - количество операторов в запросе.

Для курсантов скоро будет материал в СИ, легко и просто встраиваем себе думательную машинку конвейерного кодирования (улучшаем результат, не улучшая навыки) независимо от стиля (императивное функциональное декларативное...).
2816❤‍🔥43🏆2
↑↑↑ Когда попросил дипсик накидать бесплатных сервисов для тестового доступа к жпт, и он выдал такое :)
Потом правда подбросил оранжевое предупреждение, что типа извините но это на ваш страх и риск.

Хотел вчера продолжить курс по HoTT, но надо запускать внебраузерный впн, но из-за него не получается смотреть русские видеосервисы, а вчера как раз в это время смотрел хоккей (эх Динамо... видимо, следом за Личкой и Кудашов отправится).
Поэтому на это время переключился на новую темку, делаю заключительный - десятый - курс "Ясное AI" на новой платформе. Почему заключительный? Потому что на этой платформе на текущем тарифе более десяти курсов не допускается, а у меня там такая покупательная активность, что даже и текущий тариф не оправдывается :)

Где-то за 3-4 часа хоккея сделал мини-курс по созданию шаблонного AI-сервиса -- чат, где тематику общения вы задаёте просто в отдельном модуле, настраивая генерацию промтов. Я для примера сделал "мотиватор" с настройкой мягче-жёстче, вы можете на абсолютно любую другую тему настроить.

Для тестов я взял фри-модельку deepseek-prover, и на мой запрос про мотивацию она выдала не просто текст в духе just do it, а код на десятке языков программирования, где-то текст выводится как hello world :)

Но сам курс не столько вайб-кодинг, сколько про правильное проектирование. Подробно разбираем, с промптами, как использовать жпт в качестве архитектора, как вместе с ним делать спецификации и ТЗ, когда нужен скайфолдинг, и т.п. По сути, это курс про мета-вайб-проектирование.

Я сперва даже не знал, на какую тему буду делать проэкт, а через несколько часов был полностью готовый и задеплоенный сервис: серверная часть + веб-интерфес с готовым чатом. Показать не могу только потому, что халявный доступ к жпт работает со скоростью один ответ за 30 секунд :)
В проекте детально рассматриваются два варианта: доступ к AI через внешний API, или с локальной моделькой. Привожу там практически весь лайв-чат.

С вероятностью 98% к "после майских" открою и этот мини-курс, и "гомотопическую теорию для программистов (ч.1)". Но доступно это будет сперва только моим курсантам, потом донам в вк-паблике неначинающих, потом подписчикам на бусти.

/ai при этом принципиально всё делаю в простом аскетическом чате с клодом 3.7.
пока что если делать подобное со всеми этими вашими курсорами-фигорами, времени уходит гораздо больше, а главное, риска больше, что жпт внезапно всё испортит.
👍3610❤‍🔥43😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Вайб-кодинг, говорили они? Но внутри это просто статистика на стероидах...

Искусственный интеллект? Но внутри это просто триллионы if-ов...

Но-код/Лоу-код? Но внутри это огромное количество кода, написанного вручную...

БигДата? Но внутри это сотни зеттабайтов сырых данных, с которыми никто не знает что делать...

Облака? Бессерверные вычисления? Но внутри это огромное количество физических серверов...

Квантовые вычисления? Но внутри это такой вид вычислений, который сами его разработчики не смогут полностью понять в принципе...

Блокчейн? Но внутри это просто крайне неэффективная база данных, вся безопасность которой строится на тотальном недоверии...

Виртуальная реальность? Но это просто набор иллюзий с целью игнорировать окружающую нас реальность...

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

Интернет вещей? Но внутри это тостер, который начнёт стрелять в тебя жёстко прожаренным хлебом, когда его взломают хакеры...
41👍20🤓10🤔7🏆2
This media is not supported in your browser
VIEW IN TELEGRAM
Отчёт за неделю.

Основной паблик:

... мне уже совершенно очевидно, что до конца текущего десятилетия искусственный интеллект станет настолько совершенным, что заменит большинство программистов.
Заметьте, я сказал "БОЛЬШИНСТВО", а не "ВСЕХ". Причина, по которой я так сказал, заключается в моей уверенности, что выживут только те программисты, у которых...

... Заменит ли искусственный интеллект программистов? Я понятия не имею :)
Некоторые знакомые, вообще не айтишники, буквально меня поразили, продемонстрировав, что они могут создать с помощью v0, Lovable, Bolt...

=

Для донов-неначинающих:

Продолжаю выкладывать для всех донов материалы СильныхИдей -- доступны моим курсантам, но тут расширенные версии, дополненные множеством примеров.
34. Пишем правильный полиморфный код (30-й материал безвозвратно сгорел)
Чем больше смыслов охватывает наш более полиморфный универсальный код, тем меньше вариантов его реализации нам будет доступно.
И чем больше у вас конкретной, специфической информации о функциях, типах и т.п., тем большее количество операций вы можете с ними выполнять. Появляется множество способов всё испортить...

Напомню, что первые две дюжины материалов СильныхИдей (по сути две книги) пока доступны на бусти, и пока по очень дружелюбным ценам:
1. БАЗА программной инженерии
2. Software Design с акцентом на Programming in Small


=

Бусти ( коммерческая инфа для папищеков, похищенная методами промышленного шпионажа 😎 )

Красные флажки Spring: что вы никогда не должны делать
+ "Spring Boot Anti-Patterns You Should Avoid at All Costs"


"You don’t Need a Book to Know DDD (Domain-Driven Design)"


=

Курс "Ясные Системы" (как быстро и легко писать ПРОСТОЙ код систем масштаба ultra-large-scale).
Без продвижения 🤓
пока 28 эвристик, как наберётся 42, дам курсантам доступ.

Курс "Гомотопическая теория типов для малышей программистов: ТОП (Топологически Ориентированное Программирование)".
Без продвижения 🤓
"После майских" курс 💯 будет готов.

Курс "Ясное AI" про что это
"После майских" курс 💯 будет готов 🙈
36👍103
Ну, с Днём ШифроПанка Шифровальщика!

Квантовые вычисления - это фейк?
Фейк - это что "квантовые вычисления - это фейк".

NTT Communications в 2024-м представила первую в мире гибридную систему шифрования: пост-квантовые алгоритмы PQC и квантовое распределение QKD, что защищает ключи от атак квантовых компьютеров. Грядущих? Да, но "harvest now, decrypt later".

Пример практического внедрения -- сервис Tuta Mail, который использует гибридный протокол TutaCrypt (CRYSTALS-Kyber + x25519) для защиты почты.
CRYSTALS-Kyber и CRYSTALS-Dilithium кстати NIST утвердил как первые пост-квантовые алгоритмы.

В алгоритме Backdoored Encryption Algorithm 1, внезапно, был обнаружен математический бэкдор.
К 2030 году RSA-2048 может стать уязвимым из-за роста вычислительной мощности и улучшения алгоритмов факторизации.
Буквально за последние годы была скомпрометирована реализация AES/CBC (ECB уже давно устарел) и протокол TLS, и т.д. и т.п.

Официально сообщалось, что в 2020-м максимальный рекорд факторизации классическими методами составлял разложение 829-битного числа (а в 2019-м -- 795 бит), и с тех пор молчок, однако сильное подозрение, что рекорд сегодня уже сильно другой :)
На калькуляторе прикинул, что если брать историю, со 426 битов, начиная с 1994, то на сегодня получится слегка за 900 бит, а при удаче и под 1000. К концу десятилетия получим 1000-1170.

Кстати, кванты пока справляются лишь с 20-ю битами, а дальше потребуются миллионы (десятки, сотни...) кубитов.
Но не расслабляемся, а переходим на AES-GCM/256, на KEK&DEK,
RSA и DSA увеличиваем до 3072 бит, чтобы продержаться хотя бы до 2030-го.


Почитайте в тему "Криптономикон", очень рекомендую,
посмотрите "Странные числа".
"Мистер Робота" можно поглядеть; хотя он депрессивно-шизоидный более чем полностью, всё же каждому гику с ним желательно познакомиться.

Кому эта тема заходит (сегодня очевидно особо актуальная), советую поиграть в CTF.
41👍95
Где-то раз в 3-4 месяца у меня в органайзере срабатывает напоминалка "Побольше хардкора". Действительно, я довольно быстро скатываюсь в попсу и мейнстрим, чего стратегически хотелось бы максимально избегать и максимально удаляться от 100% всех современных онлайн-школ, где предлагают "только до полуночи скидка 97% на новый курс фуллстек питон с искусственными интеллектом за три месяца инженер машинного обучения средние зарплаты 150к (матьиматика не нужна)".

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

Смотрю кусочки из
PL-detective: A system for teaching programming language concepts
The educational literature recognizes that people go through a number of stages in their intellectual development. During the first stage, called received knowledge or dualism, people expect knowledge to be handed to them by authority figures (thus “received”) and think in terms of black and white (thus “dualism”). Our experience indicates that many computer science students are at this first stage of learning.

A Grounded Conceptual Model for Ownership Types in Rust | Proceedings of the ACM on Programming Languages
This paper describes our attempt to systematically design a pedagogy for ownership types. First, we studied Rust developers’ misconceptions of ownership to create the Ownership Inventory, a new instrument for measuring a person’s knowledge of ownership.

Identifying important and difficult concepts in introductory computing courses
...to identify topics that are important and difficult in each of three introductory computing subjects: discrete math, programming fundamentals, and logic design.

AI тут кстати вообще не помогает, а только тотально вредит: выжимки из подобного ну полный отстой.

=

Да, но вот только техдолг у меня уже приличный :)
"После майских" курс 💯 будет готов.

Думаю всё же пожертвовать Ясными Системами, ну или совсем их в фон перевести как минимум, там темы ближе к TDD, BDD и эволюционной разработке, но это скорее программная инженерия и системное мышление, а не computer science,
да и Ясным AI (курс по вайб-проектированию всё же закончу)

чтобы сосредоточиться на "Гомотопической теории типов (и всей сопутствующей математике) для программистов". Возможно даже, адаптировать её сперва как входной курс для вообще не умеющих программировать -- чтобы сразу растить из них Монстров и Слонищ с ужасающим по силе формальным мышлением 🚀
👍4612❤‍🔥4
Вайб-кодинг без AI: британские учёные выяснили, что среднестатистический разработчик тратит за рабочий день непосредственно на кодинг всего 47 минут, а около 30% программистов пишут код вообще полчаса и менее. Остальное время - созвоны, корпоративные чаты, обсуждения, настройки рабочего окружения, кофе печеньки, и вспоминания "а чем я вообще занимался?" после очередного менеджерского afaik.

Соответственно, возможно, и не совсем очевидное следствие будет такое, что если вообще отказаться от этих полчаса кодинга в день, ситуация с проектом особо и не изменится.
😁56🔥7💯63👌3
...Я в 1980 году ехал со своей девушкой на автобусе 50 от улицы Обуха до Перовской улицы. Я стал ей показывать крышесносные чёрно-белые рисунки Фоменко в его книге «Гомотопическая топология», которую я взял в библиотеке Мехмата МГУ для спецсеминара по топологии.
Утром моей подруге позвонила отметиться из Одессы её мама, которая была там в отпуске на экскурсии, и рассказала, что ей этой ночью приснился очень странный сон: её одноклассник, общепризнанный «математик» класса по кличке Шляпа, показывал ей математическую книжку со страшными чёрно-белыми иллюстрациями.
отсюда (блог рекомендую, давно подписан)

Попробуйте теперь всю эту гомотопичесячью бесовщину развидеть 👻

Скачать книгу можно без проблем (например отсюда): это самая абсолютная база которая будет нужна для моего курса "Гомотопическая теория типов для программистов" (шучу шучу).

Мы с котиком эту книжечку пересматриваем регулярно уже не один десяток лет, но вот насчёт крышесносности классная идея: для курса обязательно буду делать подобные картинки, с анимацией и блэкджеком (уже не шучу), в духе легендарной "Luck Be A Landlord".
👍4976🐳3😁1
С Днём Победы!

Не успел я как следует проснуться, а доставка еды уже заработала! Заказал праздничный стол из kfc. Лифты тоже не тормозили :)

Где-то ближе к 12 прокатился на велике в озон, пункт нормально работает (думаю, по wifi).

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

Ни машин, ни людей на улицах, так классно. Магазины и банкоматы не тестил, но в целом кстати большой ? : если бы мобильный интернет отключился не официально, а наоборот? Почему вдруг в такой ситуации перестают работать приёмы оплаты в магазинах? Конечно, любые кассы должны уметь работать как минимум оффлайн, кэшируя данные (как, собственно, это было всегда). И почему они не переключаются, например, на wifi или проводной интернет? Это же и к банкоматам относится. Они ведь не на улицах стоят, а в тэцэ и всяческих офисных заведениях.

Паникёр: "Сервер упал! Что делать?!"
Айтишник: "Ничего. Он всегда так делает в пятницу в 5 вечера."
😁51135👍3
Допустим, существуют условные понятия "инженерная мантра" и "инженерный коан". Как вы думаете, какой подход может быть явно более сильным и продуктивным в теме обучения программированию (на всех уровнях, с начинающего до сеньора)?
Anonymous Poll
28%
инженерная мантра
36%
инженерный коан
36%
оба примерно одинаковы
40
Я закончил курс "Вайб-проектирование с AI"
(он занял примерно на порядок больше времени чем я предполагал :)

Разбираем тему проектирования при использовании AI. Создаём AI-чат на заданную тему ("персональный мотиватор" с использованием локальной модели или внешнего API) с полного нуля, делая основной акцент на правильном процессе анализа требований и Software/System Design. Практически полностью приведено всё общение с Claude 3.7 и весь код.

Для прохождения курса ничего особенного дополнительно не потребуется,
достаточно локально поставить python + pytorch + transformers + gradio (никаких AI IDE).

Уровень скорее для AI-начинающих -- кто общался с LLM в простом чате, получал от него какие-то кусочки кода и имеет минимальное представление, насколько при таком подходе всё получается печально и как быстро всё запутывается :)
Поэтому на курсе ключевой акцент делаем на Programming in Large.
Ну и для всех тех, кто хочет запустить AI-сервис, но не знает, с чего начать.

22 топика:

БАЗА: Рабочий процесс vibe-кодинга
Рабочий процесс vibe-кодинга: база
1) Мозговой штурм и планирование
2) System Design
2) System Design - 2
2) System Design - 3
Технические шаги
3) Скаффолдинг и спецификации кода
4) Генерация кода в середине цикла
Локальная загрузка модели
Программируем чат с моделью
Генерация генератора промптов
Запускаем сервер
Делаем архитектурную ошибку
Спасаем проэкт
Добавляем внешний API
5) Генерация тестов
6) Два основных приёма отладки с AI
7) Рефакторинг
8) Документация
9) Генерация документов
Итоговый результат

Курс доступен только моим курсантам в рамках трека "Ясные Системы"
(рекомендуется после прохождения курса "Ясное BDD").

картинка от курсанта

P.S. Завтра я сделаю важное заявление о дальнейшем развитии Школы.
38👍21🔥10😁3👌1
This media is not supported in your browser
VIEW IN TELEGRAM
Дорогие, моя Школа ЗАКРЫВАЕТСЯ. Идите с Богом! :)

А я ухожу
в курьеры на постоянку за млн в финтех в стартап AI-онлифанщиц
в математический ретрит.

Больше в платном доступе "для всех" не будет НИ-ЧЕ-ГО.

=

Бусти со вчерашнего дня ЗАКРЫТ, платной подписки больше нету (в мае для последних подписчиков ещё выложу пару материалов).
Пока остаются для покупки сборники материалов СильныхИдей и ещё 2-3 гайда, но цены уже начали расти на ВСЁ.

=

На новой платформе онлайн-обучения со вчерашнего дня также ЗАКРЫТЫ бывшие доступными всем курсы: по TDD, BDD и лямбда-исчислению.

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

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

Билл Гейтс вон решил на неделе все свои 200 млрд. долл. просто раздать на благотоворительность... Я правда, ничего не накопил, но на благотворительность много лет ежемесячно доначу в три фонда: фонд "Старость", фонд Хабенского и WorldVita. Мне даже банк предлагал налоговый вычет за эти донаты (которые я хотел обратно в фонды отправить:), но потом замолк.

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

=

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

Оба паблика VK для донов продолжают работать как обычно!
Сегодня не-начинающим выложил базу про паттерн Visitor -- почему это по сути приляпка, компенсирующая качественные недостатки ООП (данные и поведение хранятся вместе по определению, но наследование может легко поломать LSP), и насколько элегантно проблема решается использованием функционального стиля. 35-й материал, а всего их за сотню будет.

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

Но, стоимость подписки новым донам в обоих пабликах в ближайшие дни РЕЗКО вырастет.

Занятия с курсантами также продолжаются как обычно, учебные сервисы тоже работают в прежнем режиме, в учебном процессе ничего не меняется
(да, но что тогда закрывается? гештальт в моей голове:).

На видео: это я в ожидании, когда через 30 минут стартует-Джиро 25 закроется моя Школа.
47🤯21🫡12👌4❤‍🔥1
...Далее, полностью сосредотачиваюсь на математике и theoretical computer science. Даже от темок программной инженерии и system design хочу отказаться, и вообще от всего айтишного, где относительно небольшой порог входа — что сегодня может норм пояснить любой ментор с сеньорским опытом или жпт с дипсинком.

В общем, пошёл для начала медитировать, по наводке Алана Кэя, на мета-компилятор Meta II, созданный 60 лет назад для 6-битного компьютера IBM 1401: "A syntax-oriented compiler writing language". Заложенные в него фишечки и по сей день остаются во многом непревзойдёнными и нереализованными.

Его автор Val Schorre придумал крошечную мета-фичу, которая однако сумела сразу охватить семантику широкого спектра языков более высокого уровня ("Math Wins!"). Он также исхитрился применить эту мета-идею к самому мета-компилятору и получить псевдокод для системы, которую смог выполнить простой интерпретатор, запущенный на 1401.

Для разминки, коан: переосмыслить null как "несуществующее даже для самого себя". Согласитесь, и синтаксически и семантически эксплицитное обозначение отсутствия чего-либо в системе, смотрится парадоксально.

Медитирую, соответственно, в мета-направлении "Math Wins!" для современного Software Design, в идеале -- через подобные микро-мета-фишки. Для чего сперва эти мета-фишечки надо смоделировать, в идеале, с помощью гомотопической теории типов. Делаю это всё, конечно, исключительно ДЛЯ ВАС 🙏🙏🙏

❤️ Я буду жить для тебя ❤️
56👍12❤‍🔥3👌1