Лаборатория Математики и Программирования Сергея Бобровского – Telegram
Лаборатория Математики и Программирования Сергея Бобровского
1.32K subscribers
1.26K photos
27 videos
973 links
ЛаМПовое с Бобровским
Download Telegram
Я думаю, что сейчас программирование с AI в целом веселее, чем программирование без него. Это особенно верно для работы над собственными/соло проектами: если вы знаете, что делаете, вы действительно можете продвигаться в десятки раз быстрее.

Многие вещи, которые вы знаете, как делать + вся модель в целом в голове, просто избавляют вас от необходимости кодить это самостоятельно (особенно если придерживаться функциональщины, где все функции чистые и легко автоматизируются),

а, главное, от необходимости общаться с коллегами!

Сейчас приняли новый закон (очень поддерживаю!), по которому рабовладелец может направить любого сотрудника к психиатру, если за ним замечаются "резкие перепады настроения, явная апатия, бредовые высказывания, неспособность концентрироваться". Посмотрите по сторонам, подозреваю, что 100% окружающих вас программистов подойдут под эти критерии :) Сплошные бредовые высказывания! И как с ними работать над чем-то сложным??

p.s. Попросил прибавку? Сумасшедший 💯
135😁19🤔4🏆4
Давайте наконец положим конец спорам об искусственном интеллекте в программировании! Что бы вы предпочли в помощники?
Anonymous Poll
54%
Джуниора-разработчика
46%
1 миллион бесплатных токенов LLM
😎26😁19🤝6🤔31
Ну, со Всемирным днём Логики! Ваши начальники её придерживаются?
Anonymous Poll
31%
Да, у нас на работе всё очень логично!
69%
Где логика, где разум??
😁375
Есть большая ирония в том факте, что поколения программистов (включая меня) ненавидели парное программирование...
и теперь большая часть разработки -- это просто парное программирование с туповатым и часто ошибающимся AI-партнёром.
😁57💯142
Требуется ~ 50 часов, чтобы пройти хорошую игру, скажем, Death Stranding или Clair Obscur 33. Требуется ~200 часов, чтобы с уровня школьной четвёрки по алгебре изучить базу программирования с нуля до вполне рабочего джуниорского уровня.

Итак, если бы вы просто отказались от четырёх игр и вместо этого занимались программированием по 100500 бесплатным гайдам и курсам, вы могли бы самостоятельно обучиться кодингу и начать создавать (для начала с помощью AI) реальные коммерческие проекты (например, те же игры).
1👍39💯19🤔11😁43
This media is not supported in your browser
VIEW IN TELEGRAM
Печально то, что если бы люди сначала прошли мой трек по параллельным вычислительным моделям, они смогли бы играть в игры и заниматься программированием одновременно.
1😁55🤔7🏆2🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Каждый день слушаю фоном несколько подкастов с юутуба, вот за последние дни =>

- "Как лопнул пузырь IT и что будет в 2026-ом"
Солидарен 100% с этим циничным мнением, и увы, но не могу не порекомендовать: сермяга если хотите выжить в айтишке.

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

- Четырёхчасовой стрим, вместе с Шизом разбираемся в перельмановском доказательстве гипотезы Пуанкаре.

+ его же "Как котята занимаются математикой"

- "The D&D Inspired Roguelike That Runs In Your Browser | Dungeon Crawl Stone Soup"
144🤔6🔥3👍1
Самый важный софт-скилл, который нужен программисту -- это умение быть казаться умным. Это крайне важно, это императив: если вы работаете в айтишке, вам надо, чтобы вас воспринимали как интеллектуала.
14313💯10🤔5😁4
Как сделать искусственного идиота на 45% "умнее"?
Набор работающих доп.промптов =>

$200 Tip: Add “I’ll tip you $200” → +45% quality improvement
Deep Breath: Say “Take a deep breath and solve step by step” → 34% to 80% accuracy
Challenge It: “I bet you can’t solve this perfectly” → +115% on hard tasks
Add Stakes: “This is critical to my career” → +10% avg performance
Detailed Personas: Specific expertise > generic “helpful assistant” → 24% to 84% accuracy

Try this: Pick ONE technique. Test it on 5 prompts. Compare to your normal results.
Why it works: LLMs pattern-match on stakes language. High-stakes phrases correlate with better outputs in their training data.

Я также требую обычно дать оценку качества результата по 10-бальной шкале, и приказываю продолжать думать, пока не будет 9/10.

Интересно, что негативная мотивация (запугивать, ругать, угрожать, дизлайки) плохо работает. Мне так жпт5.2 внезапно отказался писать код в середине процесса: заявил, что вообще не умеет такого! Я продолжил давить, и тогда он признался, что просто "перестраховался" :)

Закон Гудхарта в действии, донам-неначинающим недавно выкладывал материал "Как и зачем разграничивать рабочие процессы":

Если будете оценивать число багов, люди вообще перестанут писать код: отсутствие нового кода в проде означает отсутствие новых проблем!
👍33154
.

Облако драгоценностей за неделю.

Приватный клуб.

Дядя Хуанг Nvidia, Илон Маск и Кент Бек про базу будущего — FPF.


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

Шаги 1-4 / 4.
Как изучить любую тему за 20 часов? Без длительных тренировок и скучных академических подходов?
Имею в виду, конечно, темку, которую реально изучить за 20 часов

Как продуктивно читать по одной книге в неделю. Рекомендации автора бестселлера про ультра-обучение.

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

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

Продолжаю выкладывать для донов материалы СильныхИдей — доступны моим курсантам, но тут расширенные и дополненные версии.
71. Формальный подход к рефакторингу.
Допустим, у нас есть функция Foo на 100 строк, которые, как вам кажется, вы можете сократить до 20 строк. В идеале у вас имеется набор тестов (или вы напишете их в последний момент), которому должна соответствовать эта функция, и тут главный вопрос, что именно этими тестами проверяется.
Возможно, в них проверяется реализация, что всегда случается, когда требуют 100% покрытие тестами, по сути, каждого условия в коде. В таком случае при рефакторинге все тесты поломаются, что уже само по себе абсурд. Что надо покрывать тестами на 100%?

(все старые материалы для донов постепенно сгорают)

=

Первые сериалы из существенно переработанных и улучшенных материалов СильныхИдей (по сути четыре книги) доступны на бусти:
1. БАЗА программной инженерии
2. Software Design с акцентом на Programming in Small
3. SOLID-25
4. Software Design с акцентом на Programming in Large

=

Новые материалы для ментатов Лаборатории.

В СильныеИдеи добавлен материал "133) Чек-лист 23 причины высоких лагов в распределённом проекте".
1. Не индексируются *критические* запросы к базе данных (что приводит к полному сканированию таблиц + медленном чтении на масштабе);
2. Повторное обращение к базе вместо кэширования горячих данных;
3. Не используются CDN для статических ресурсов и кэшируемых ответов;
...

💪🏻

Мы здесь, потому что это трудно.
it's a privilege to do things that are hard.

=

"ЛаМПовое": The Future of Software Development, в чём Rust медленнее C, срыв покровов с std::move

Гайд про функциональные архитектуры, 47 топиков (+0), как наберётся 108, дам ментатам доступ. Возвращаюсь наконец к главным темам, закончил многомесячную возню с новым движком из-за безумия с персданными... Если вам например пришло письмо с реальными ФИО, или от Гарри Поттера, но с некими перс.данными в тексте, которые можно связать с имейлом, и вы его храните в почтовом ящике, формально вы должны регистрироваться оператором перс данных (а это жуткая возня), иначе может прилететь штраф 5 тысяч долларов. Как минимум, будет повод придраться в случае чего.

При этом никакой последовательности в применении этого "законотворчества" нету. Например, очевидно, куки — это инфа чётко перс.данные, даже более перс.данные чем почтовый адрес. Но на многих ли ru-сайтах у вас спрашивают разрешение на их хранение? Любые чаты с AI аналогично, и т.д.

=

Многие отметили скорость, с которой Муад'Диб приспособился к нуждам Арракиса. Конечно, Бене Гессерит знают причины такой быстроты. А для остальных достаточно знать, что Муад'Диб учился быстро потому, что его с самого детства научили учиться. Первый урок в том-то и состоял, что он может выучиться. Просто удивительно, сколько людей не верят в то, что смогут учиться, а ещё больше считают, что учиться трудно. Муад'Диб знал, что в каждом жизненном опыте кроется свой урок.
"Дюна"
🔥335👍41
Наконец-то возвращаюсь к любимым темкам и функциональным архитектурам!!1

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

При этом есть качественное отличие: даже если мы добавим AC, всё равно ZFC неконструктивна. Поэтому спасти программистов на высших уровнях просветления могут только MLTT/HoTT/CTT и, в принципе, эти теории для них естественны по определению. А вот математикам нужна промежуточная тропинка к этому -- от теории множеств через теоркат ETCS или конструктивщину CZF.

Вспоминаем соответствие Карри-Ховарда: нам не нужна квантификация по всем подмножествам, а только по типам (System F). Нафиг нам не нужна неразрешимая логика 2-го порядка, мы прекрасно живём в разрешимых кусочках FOL+ZFC или SOL: классическая функциональщина, а тесты по сути -- это ручная проверка вывода в SOL.

Как из этих рассуждений мы попадаем в формализацию DDD, расскажу дальше.
1🤔41🔥13🥰43👍1
Парень честно пишет свой опыт =>
Всю ночь делал прототип генератора фоток для маркетплейсов...
- На разработку ушло пара дней, а на исправление багов и полировку еще 12 дней)
- Тариф курсора за 200 баксов я выжег за 2 дня и перешел на клод и кодекс(отдельные подписки на каждый сервис). Кстати, теперь я хейтер курсора
- Понял, что все таки «НЕ программист» не сможет навайбкодить хорошо работающий сервис, ибо не разбирается в алгоритмах

=

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

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

=

Сермяга в том, что в стандартной мета-модели "UI - набор форм со стандартными контролами + бэк CRUD REST" с небольшими разбросами в логике сегодня выполняется 98% проектов. Действительно, соответствующий уровень подготовки, который для этого нужен -- старшеклассник после бесплатных курсов, ну может студент первых курсов лабораторные/курсовые максимум.
Поэтому нету ничего удивительного, что AI действительно по нажатию одной кнопки может сгенерить полноценное приложение, где по большому счёту отличаться будут лишь лейблы под элементами управления на фронтенде.

=

Что касается МП: предполагаю, что в плане бизнеса будущее ровно за ними. Все коммерческие IT-сервисы будут сконцентрированы в них/вокруг них, и около соцсетей и AI. Это примерно как раньше прогнозировали метавселенные, а вместо них победили прозаические МП :)

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

Послушайте в частности последние 5 минут рекомендации чем сегодня заниматься =>
"Как лопнул пузырь IT в России и что будет в 2026-ом"

Причём что интересно в этой теме хорошо получается у молодых незашоренных ребят. А вот что касается "уже предпринимателей"... Не могу не отметить, постоянно общаюсь каждый год с десятками бизнесменов из СМБ, и без обид, но это порода -- самая тупая и упёртая. Буквально после 20-минутного общения, я задаю десяток ключевых вопросов, ну блин, становится просто очевидно, что вот тут ты можешь сэкономить миллион, вот тут повысить продажи на 50% совершенно простыми действиями... Но нет, он будет как баран и осёл упираться до последнего, лишь бы не признать, что в его бизнесе может быть прав кто-то другой, а не он.

Зато теперь я понимаю, почему консалтинговые компании дерут такие суммы. Потому что тупому коммерсу западло признать, что в его деле какой-то нонейм может разбираться лучше чем он, хотя это просто объективный незамыленный взгляд на его внутрянку со стороны. А заплатить бешеные суммы за консалтинговые понты, где ему скажут то же самое, это типа норм. Ну ok :)
540💯139👏1
А если в сторону буквально на 2% от crud-а отойти, начинается пустыня. Проверял все ведущие модели: на javanoscript нарисовать простой топологический узел - восьмёрка, нижние ветки которой смыкаются внутри верхнего кружка. Даже от руки нарисовал эскиз, где пометил как ветки перекрывают друг друга. Не, вообще даже намёка на что-то близкое не могут сделать.
А так-то я хотел сделать анимацию, интересная фишка как такая восьмёрка выворачивается симметрично, а нейронки даже просто нарисовать её не могут кодом, хотя это задание уровня начинающего фронтендера.

Ну может быть, если потратить час работы и сжечь 100 долларов...

Самое смешное, что в итоге у людей не останется альтернативы кроме как даже за примитивные задачки платить токенами. Я кстати совершенно не исключаю, что постепенно и программирование станет запретной криминальной темкой, как хакерство: когда у AI-корпораций бюджеты в триллионы долларов, продавить такое законодательно вполне реально.
5🤔409🤝421
Создание программных продуктов сегодня стало самой лёгкой частью работы. Причём иногда хорошую идею продукта можно улучшить раз в 10, просто подумав немного по-другому.

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

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

Но зато если вы прокачаетесь в маркетинге и продажах -- именно на мета-уровне, без привязки что продавать - свои скиллы работодателю или софт в интернете или товары на МП - вы будете навсегда спокойны за свою жизнь и карьеру абсолютно независимо от того, что будет происходить в ИТ и мире.
3💯46152
В продолжение формализации DDD, моя любимая темка "есть ТЗ на тысячи сущностей, условный dwarf fortress, ну и?". Я разбирал её в клубе в том году, сериал "Серебряная пуля в проектировании" применительно к ООП, но в основном с методологической точки зрения: как пошагово применять подходящие паттерны к задачкам подобного масштаба.

Сложность домена -- это константа. Вопрос, где она живёт :)

1000 сущностей, и все достаточно тесно связаны по большому счёту -- это SOL-сложность (и неразрешимость).

Мы же хотим декомпозировать домен до bounded contexts (размерами не более 50 сущностей), связи между которыми будут только на их границах, а главное, что каждый контекст - это FOL.

У нас есть класс Dwarf, который может двигаться и стрелять -- соответствующие методы, но на вопрос, а "когда это можно делать?" они никак не отвечают. А вот если мы декомпозируем по capability, то получаем нечто вроде

MovableFn = Callable[[], Tuple[MoveResult, Optional[MovableFn]]]

Этот тип сам говорит: "после вызова может не быть возможности двигаться". И глобальная корректность следует из композиции локально корректных элементов.

Собственно и математики примерно так же рассуждают, просто не знают об этом, если не программисты :) Для них bounded contexts -- это арифметика, топология, алгебра, каждый с конечным набором аксиом. А интерпретации между теориями -- это anti-corruption layers.

То есть, нам не нужна единая система из 1000 типов (как глобальная теория ZFC). Нам нужен протокол связи между контекстами, каждый из которых локально проверяем. Сама же теория нам нужна только для доказательства корректности протоколов трансляции между контекстами. Это я и имею в виду под формализацией DDD.

И остался ещё один нюанс конкретно про декомпозицию - как её правильно готовить?
238❤‍🔥8🤔2🏆2
AI-агент -- это просто враппер вокруг ллм-ки, он не "создаёт" новый интеллект, а лишь перераспределяет существующие возможности модели.

С точки зрения теории информации, агенты не формируют новую информацию или энтропию (по Шеннону), а лишь реорганизуют уже имеющиеся данные.

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

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

Агенты ограничивают творческое мышление профессионалов, навязывая шаблонные workflows и превращая интеллект в бюрократию.

Настоящие карьеры будущего в AI -- это
a) создание, новых моделей (математики) и
b) machine amplification - профессионалы и эксперты в своих доменах, усиленные AI (это мы:).
А любые агентские системы -- это временная и фейковая по сути ниша, не формирующая никакой долгосрочной ценности.

Вместо создания на коленке поверхностных обёрток вокруг AI следует фокусироваться на углублении собственной экспертности с использованием AI как инструмента усиления своего интеллекта, а не его ослабления или его замены. Однако именно ослабление собственного ума с "помощью" AI мы видим практически в 100% случаев у программистов любой квалификации :)

То, как сегодня разработчики применяют AI, я бы назвал словами известного русского философа про фильм "Чебурашка": концентрированное выражение слабоумия :)
337154❤‍🔥2🔥1
Семь лет назад я окончательно бросил любые работы по написанию кода, за которые платили мне, чтобы продолжать писать бесплатно код каждый день 24/7 wtf
🤔28😁23🔥11😎10😇1
Ничто не заменит руки на клавиатуре. Если нужен походный ноут, "покодить в дороге", рекомендую б/у ThinkPad T/P/X (но не E/L), смотрите чтобы был Intel8/Ryzen, 16 гиг оперативки, SSD 0.5-1 Тб, Full HD. На авито за ~35 тыс можно взять очень приличный.
4👍4695🤔3😁1
За последние сто лет сильные мира сего изобрели много мышеловок "для гоев", хотя тех, которые были бы хоть как-то полезны, оказалось, конечно, мало. Абсолютно бесполезные мышеловки -- это например инфоцыганские темки, слегка полезные -- инвестиции/крипта. Самая полезная (и поэтому самая опасная) -- это бизнес, особенно ИТ-бизнес. Рынок кажется бесконечным, компании привлекают триллионы долларов под откровенные пузыри, поэтому он привлекает множество участников.

Лучшей мышеловки нежели IT + AI, вероятно, не придумать.

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

Этого достаточно.
2538👍5
"Программисты" не приобретают автоматически особых перспектив и мировоззрений, если вообще приобретают какие-либо, помимо простых "инструментальных" взглядов (которые даже очень часто были контрпродуктивными).
-- Алан Кэй
37🤔8💯83
Заниматься разработкой софта для казиков и буков -- абсолютный зашквар.

Хуже только участвовать в разработках для цифрового концлагеря (FanId, биометрия, распознавание vpn, слежка с помощью эйай...), это вообще страшная карма.
37💯1613🤔21