Вот одна из модных темок, которые внезапно полетели с развитием агентов: гиперкастомизация (это когда у тебя 23 клиента, и каждого ты наё*** каждому ты продаёшь базу + обёртку с доп.множеством локальных фич под видом отдельного продукта :). Конечно и раньше такое было, но крайне трудоёмко: девопс вручную резолвил конфликты при каждом обновлении ядра. И хотя внутри был огромный JSON с настройками для каждого клиента, сам код всё представлял собой говно-спагетти с миллионами проверок. А ежели ещё и микросервисы, то получался ад 23 деплоя, 23 лога, 23 апдейта зависимостей... Да и не получалось на практике столько клиентов.
Теперь же каждая надстройка живёт изолированно (не в одном коде с флагами! а отдельно физически). При обновлении ядра N-я надстройка пересобирается автоматически, AI сам решает, как наложить изменения, сам тестирует результат, а чел только проверяет и одобряет сложные кейсы.
Каждая клиентская версия - отдельная git-ветка от main.
В каждой ветке файл PATCH md (что уникального сделано для клиента).
При каждом комите в main создаётся PR из main в каждую клиентскую ветку.
Агент локально обрабатывает PR: мержит, чинит конфликты, тестирует, и более того, делает скрины UI. Дешёвый и быстрый способ верификации: вместо "скачай ветку, задеплой проект, проверь" просто смотришь картинки из браузера (принимаешь работу по визуальным доказательствам). Общение просто через тот же телеграмм.
Погуглите сами, спросите AI.
=
Ну а с ментатами в "Функциональных архитектурах", разберём это всё с точки зрения теорката: есть один базовый объект, и есть семейство морфизмов из него в клиентские объекты. Эволюция ядра -- это функториальность (апдейт базы индуцирует обновления клиентских версий не вручную, а по правилу, сохраняющему структуру, на уровне всех зависимых вариантов).
Merge/rebase формализуем коммутативной диаграммой: можно сначала обновить ядро, а потом применить клиентскую кастомизацию, а можно взять старую клиентскую версию и перенести её на новое ядро, пофиг.
PATCH md -- человеко-читаемое описание морфизма кастомизации.
Агент соответственно, категориально пытается найти корректное продолжение морфизма после изменения базы :)
Смок-чеки -- это булевы предикаты жизнеспособности, а скрины нейронка умеет распознавать, они становятся источниками тестовых признаков (базис наблюдаемых инвариантов, cвидетельства корректности морфизма).
Когда клиентов твоего псевдо-индивидуального продукта 5-10, ты ещё сможешь жить на инженерных эвристиках. А когда 50, без общей модели всё расползается. Формализация же превращает "много частных случаев" в "много экземпляров одной конструкции": ядро, формализованные вариации, автоматическая миграция и верификация производных продуктов.
Вместо O(N), где N- количество клиентов (а когда N вырастет под 20, получишь O(N^N))
имеем O(K << N) где K -- число ручных правок.
Я даже думаю, что наверно подробно для Функциональных архитектур буду это ещё долго расписывать, поэтому по многим этим темкам хочу лучших моих ментатов консультировать индивидуально.
P.S. Напишите мне кстати, товарищи ментаты, кому гиперкастомизация актуальна.
Теперь же каждая надстройка живёт изолированно (не в одном коде с флагами! а отдельно физически). При обновлении ядра N-я надстройка пересобирается автоматически, AI сам решает, как наложить изменения, сам тестирует результат, а чел только проверяет и одобряет сложные кейсы.
Каждая клиентская версия - отдельная git-ветка от main.
В каждой ветке файл PATCH md (что уникального сделано для клиента).
При каждом комите в main создаётся PR из main в каждую клиентскую ветку.
Агент локально обрабатывает PR: мержит, чинит конфликты, тестирует, и более того, делает скрины UI. Дешёвый и быстрый способ верификации: вместо "скачай ветку, задеплой проект, проверь" просто смотришь картинки из браузера (принимаешь работу по визуальным доказательствам). Общение просто через тот же телеграмм.
Погуглите сами, спросите AI.
=
Ну а с ментатами в "Функциональных архитектурах", разберём это всё с точки зрения теорката: есть один базовый объект, и есть семейство морфизмов из него в клиентские объекты. Эволюция ядра -- это функториальность (апдейт базы индуцирует обновления клиентских версий не вручную, а по правилу, сохраняющему структуру, на уровне всех зависимых вариантов).
Merge/rebase формализуем коммутативной диаграммой: можно сначала обновить ядро, а потом применить клиентскую кастомизацию, а можно взять старую клиентскую версию и перенести её на новое ядро, пофиг.
PATCH md -- человеко-читаемое описание морфизма кастомизации.
Агент соответственно, категориально пытается найти корректное продолжение морфизма после изменения базы :)
Смок-чеки -- это булевы предикаты жизнеспособности, а скрины нейронка умеет распознавать, они становятся источниками тестовых признаков (базис наблюдаемых инвариантов, cвидетельства корректности морфизма).
Когда клиентов твоего псевдо-индивидуального продукта 5-10, ты ещё сможешь жить на инженерных эвристиках. А когда 50, без общей модели всё расползается. Формализация же превращает "много частных случаев" в "много экземпляров одной конструкции": ядро, формализованные вариации, автоматическая миграция и верификация производных продуктов.
Вместо O(N), где N- количество клиентов (а когда N вырастет под 20, получишь O(N^N))
имеем O(K << N) где K -- число ручных правок.
Я даже думаю, что наверно подробно для Функциональных архитектур буду это ещё долго расписывать, поэтому по многим этим темкам хочу лучших моих ментатов консультировать индивидуально.
P.S. Напишите мне кстати, товарищи ментаты, кому гиперкастомизация актуальна.
5👍39❤8🤔4✍3💯2
Вчера я классно порассуждал письмом, и походу сделал такой важный вывод, что исходная цель Функциональных архитектур "повысить мастерство, не прокачивая скиллы" сейчас оказалось почти полностью перевёрнутой 🙈 В этом гайде я уделяю довольно большое внимание теоретической базе, плавно подводя к результирующей практике, но это как раз и есть прокачка скилов. А я хочу давать тупо прикладные методики, которые ускорят реализацию проекта с помощью AI в идеале до 1000-кратной компактности кода по Алану Кэю, позволят экономить токены агентов в 2-3-4 порядка...
Поэтому сейчас перехожу чисто на методологическую работу 🤓
В ближайшие дни напишу ментатам, в каких ситуациях буду вам помогать индивидуально. Пока бесплатно, а вообще стратегически планирую уходить от 30-40 занимающихся на моих курсах, как сейчас, до 3-7 сеньоров полностью индивидуальная работа по функциональным архитектурам с AI.
Ну и на сам гайд конечно, где будут лайт-версии этих методик, цена станет существенно расти. Свежий отзыв по нему :)
От Функциональных Архитектур я в восторге, это просто настольная книга, молитвенник какой-то, не знаю как это назвать. Эссенциальный сборник святых инженерных откровений. Я читаю и перечитываю сам, и клода туда тыкаю постоянно.
Пока не решил, за какой из модулей возьмусь, основных семь, скорее всего за
AI и Math
...
Как быстро получить пользу от pullback в агентах
Моноид в бикатегории расслоений на F#
Identity span как протокол саморефлексии
или
Мета-AI DSL
...
DSL и формальная семантика
Уровни иерархии DSL
Почему DSL -- это (пока) искусство
DSL и математика домена
Сперва пожалуй что-то компактное выкачу (с целью отладки методологии генерации методологий :), какой-нибудь жалкий порядок токенов сэкономить простенькой математической фичей для агентов. Собственно, это уже можно и самим вывести, но наша цель так то "повысить мастерство, не прокачивая скиллы" 🔥
Поэтому сейчас перехожу чисто на методологическую работу 🤓
В ближайшие дни напишу ментатам, в каких ситуациях буду вам помогать индивидуально. Пока бесплатно, а вообще стратегически планирую уходить от 30-40 занимающихся на моих курсах, как сейчас, до 3-7 сеньоров полностью индивидуальная работа по функциональным архитектурам с AI.
Ну и на сам гайд конечно, где будут лайт-версии этих методик, цена станет существенно расти. Свежий отзыв по нему :)
От Функциональных Архитектур я в восторге, это просто настольная книга, молитвенник какой-то, не знаю как это назвать. Эссенциальный сборник святых инженерных откровений. Я читаю и перечитываю сам, и клода туда тыкаю постоянно.
Пока не решил, за какой из модулей возьмусь, основных семь, скорее всего за
AI и Math
...
Как быстро получить пользу от pullback в агентах
Моноид в бикатегории расслоений на F#
Identity span как протокол саморефлексии
или
Мета-AI DSL
...
DSL и формальная семантика
Уровни иерархии DSL
Почему DSL -- это (пока) искусство
DSL и математика домена
Сперва пожалуй что-то компактное выкачу (с целью отладки методологии генерации методологий :), какой-нибудь жалкий порядок токенов сэкономить простенькой математической фичей для агентов. Собственно, это уже можно и самим вывести, но наша цель так то "повысить мастерство, не прокачивая скиллы" 🔥
21❤32⚡8❤🔥4✍2
Покупал на туту билеты в Финляндию с женой (достало всё, честно), до чего же там кривой ui! Словно нарочно он так сделан, чтобы юзер ошибался (например, в процессе оформления дата время рейса не пишутся).
Оформил возврат, в письме пишут: "деньги вернутся мгновенно или в течение 5 дней". Позанудствовал: "мгновенно или" излишне, т.к. "мгновенно" уже входит в "течение 5 дней".
Удивительно, но в данном случае жена меня поддержала! :)
Она когда-то учила малышей по топовым учебникам Петерсона, так уже во втором-третьем (!) классах они проходили понятие множества (объединение, пересечение) и говорит, это детишкам очень нравилось.
Ну а потом Стэнфордские ставленники реализовали таки очередную профессиональную операцию по оглуплению наших сограждан, и на смену Петерсону в школы пришёл откровенный дебилизм.
Сейчас, собственно (личное суждение оценочное мнение), мы наглядно видим уже на более масштабном уровне профессиональное (и увы очень успешное) продолжение спецопераций АНБ ЦРУ по окончательному разрушению с таким трудом годами формировавшихся социальный связей между патриотически настроенными умными людьми в Рунете под прямым контролем заморских кураторов...
Оформил возврат, в письме пишут: "деньги вернутся мгновенно или в течение 5 дней". Позанудствовал: "мгновенно или" излишне, т.к. "мгновенно" уже входит в "течение 5 дней".
Удивительно, но в данном случае жена меня поддержала! :)
Она когда-то учила малышей по топовым учебникам Петерсона, так уже во втором-третьем (!) классах они проходили понятие множества (объединение, пересечение) и говорит, это детишкам очень нравилось.
Ну а потом Стэнфордские ставленники реализовали таки очередную профессиональную операцию по оглуплению наших сограждан, и на смену Петерсону в школы пришёл откровенный дебилизм.
Сейчас, собственно (личное суждение оценочное мнение), мы наглядно видим уже на более масштабном уровне профессиональное (и увы очень успешное) продолжение спецопераций АНБ ЦРУ по окончательному разрушению с таким трудом годами формировавшихся социальный связей между патриотически настроенными умными людьми в Рунете под прямым контролем заморских кураторов...
2🐳30🤔18💯5✍4😎2
Ладно, меня уже настоятельно попросили сдать билеты в Финляндию, теперь жена в Питер полетит отдохнуть с подружкой (или любовником? 🤔) .
Остаюсь навсегда в любимой Российской Федерации (и даже только в Москве (и даже только в Ховрино!)!)! ❤️❤️❤️
Главное, знающие пацаны подсказали, что это всё на самом деле была многоходовая "медовая" операция прикрытия, о которой уже можно сказать открыто: как раз надо было выявить всю эту цэрэушную вражью иноагентуру, и прежде всего источники и спонсоров финансирования разрушения русского Рунета. Операция проведена блестяще, все тайники явки пароли детально выяснены, и уже к осенним выборам 26 начнутся посадки.
(а может быть, это всё плод моей больной фантазии под влиянием тяжёлых нейролептиков, или даже админ это всё писал 😬)
Особо хочу примкнуть к словам уважаемой В.Бони, что "не являюсь каким-то оппозиционером" 🤘
(Абсолютно кстати не согласен с "философом" Дугиным: "То, что власть живо реагирует на какую-то Боню и вообще никак не реагирует на народ, несколько изумляет". Боня как раз не какая-то, она и есть самый что ни на есть народ я/ты/мы/они! она буквально глас народа с самых что ни на есть низов особенно женщин! У неё в МАКСЕ одном 100500 подписчиков! а у Дугина? ноль! вот он и бесится!)
оффтоп закончен.
Остаюсь навсегда в любимой Российской Федерации (и даже только в Москве (и даже только в Ховрино!)!)! ❤️❤️❤️
Главное, знающие пацаны подсказали, что это всё на самом деле была многоходовая "медовая" операция прикрытия, о которой уже можно сказать открыто: как раз надо было выявить всю эту цэрэушную вражью иноагентуру, и прежде всего источники и спонсоров финансирования разрушения русского Рунета. Операция проведена блестяще, все тайники явки пароли детально выяснены, и уже к осенним выборам 26 начнутся посадки.
Особо хочу примкнуть к словам уважаемой В.Бони, что "не являюсь каким-то оппозиционером" 🤘
(Абсолютно кстати не согласен с "философом" Дугиным: "То, что власть живо реагирует на какую-то Боню и вообще никак не реагирует на народ, несколько изумляет". Боня как раз не какая-то, она и есть самый что ни на есть народ я/ты/мы/они! она буквально глас народа с самых что ни на есть низов особенно женщин! У неё в МАКСЕ одном 100500 подписчиков! а у Дугина? ноль! вот он и бесится!)
оффтоп закончен.
😁44🐳10❤9
Гарри Поттер и МММ
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 3. Третий страж.
— ...Неорганические не могут сделать так, чтобы тип заклинания стал чем-то другим. Но правила, по которым мы комбинируем типы... они могут их атаковать. Через самореференцию. Через парадоксы. Через ловушки, в которых решение перестает существовать.
— Ты говоришь так, будто они намеренно послали тебе этот сон, — сказала Гермиона тихо.
Гарри остановился.
— А разве нет? Они хотят, чтобы я искал неподвижную точку. Или думал, что ищу. Или думал, что думаю, что ищу. — Он потер переносицу. — Гермиона, у меня такое чувство, что я уже внутри чьего-то плана, и проснулся только для того, чтобы это заметить.
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 3. Третий страж.
— ...Неорганические не могут сделать так, чтобы тип заклинания стал чем-то другим. Но правила, по которым мы комбинируем типы... они могут их атаковать. Через самореференцию. Через парадоксы. Через ловушки, в которых решение перестает существовать.
— Ты говоришь так, будто они намеренно послали тебе этот сон, — сказала Гермиона тихо.
Гарри остановился.
— А разве нет? Они хотят, чтобы я искал неподвижную точку. Или думал, что ищу. Или думал, что думаю, что ищу. — Он потер переносицу. — Гермиона, у меня такое чувство, что я уже внутри чьего-то плана, и проснулся только для того, чтобы это заметить.
✍29❤11👍6
Контринтуитивное: оказывается теория категорий - казалось бы, просто абстрактные кружочки без содержания, стрелочки и композиция - по сложности куда круче чем теория типов! Очень сложна, хотя и совсем по-другому.
В типах всё просто: терм, тип, правило вывода, пруф. Сложность по большому счёту больше на уровне синтаксиса. А в теоркате куча смыслов: класс объектов, класс морфизмов, законы композиции, универсальные свойства, функториальность, натуральность, эквивалентности вместо равенств, уровни абстракции поверх уровней абстракции...
Внешне мало символов, но смысловая плотность огромная. И перейти на уровни понимания универсальных свойств программистам например очень тяжело.
Но зато какой это космический буст для прокачки скилла архитекторства и системного мышления! Думаем всегда мыслью "какую роль эта штука играет среди всех других штук?" -- и формально!
Это Искусство видеть многоуровневые структуры в абстрактном хаосе.
Например прокачавшись в теоркате вы будете постоянно получать инсайты в своих проектах "так это же вообще одна и та же конструкция/паттерн в 12 разных местах!"
Теория категорий -- это самый мощный на сегодня и при этом очень жёсткий язык сверхсжатого мышления, где за одной стрелкой может стоять целая вселенная.
В типах всё просто: терм, тип, правило вывода, пруф. Сложность по большому счёту больше на уровне синтаксиса. А в теоркате куча смыслов: класс объектов, класс морфизмов, законы композиции, универсальные свойства, функториальность, натуральность, эквивалентности вместо равенств, уровни абстракции поверх уровней абстракции...
Внешне мало символов, но смысловая плотность огромная. И перейти на уровни понимания универсальных свойств программистам например очень тяжело.
Но зато какой это космический буст для прокачки скилла архитекторства и системного мышления! Думаем всегда мыслью "какую роль эта штука играет среди всех других штук?" -- и формально!
Это Искусство видеть многоуровневые структуры в абстрактном хаосе.
Например прокачавшись в теоркате вы будете постоянно получать инсайты в своих проектах "так это же вообще одна и та же конструкция/паттерн в 12 разных местах!"
Теория категорий -- это самый мощный на сегодня и при этом очень жёсткий язык сверхсжатого мышления, где за одной стрелкой может стоять целая вселенная.
10🤔28✍16❤10😁1
Ну, с Днём Науки СССР!
В развитие последних идей - дать любому рядовому программисту набор методик, в один миг превращающий его с помощью агентов в сеньора-архитектора (что сегодня очевидно можно объективно измерить очень легко),
думаю над следующим шагом: как вообще уничтожить всё программирование, чтобы вместо того чтобы годами учиться, фигак, и получил в руки абсолютный инструмент lowcode/nocode. Какие-то совсем базовые devops-темки часов 5-50 максимум подучить и всё, да и то временно.
Почему этим никто не занимается? Ну, потому что это не про бабло, а про его потерю :)
В геймдеве кстати сейчас такое уже довольно успешно практикуется, потому что игры - продукты автономные, практически все делаются по типовым шаблонам, разница только в контенте. Это может быть прекрасный полигон для откатки DSL.
Вот хорошие темки, в которых было бы неплохо ликвидировать весь мировой бизнес: навскидку, SERP Analytics, Competitive Price Intelligence, web scraping api / под LLM, E-commerce Data Collection, где тысячи стартаперов и инди-хакеров жрут друг друга.
По мне всё это, особенно классический парсинг - откровенно мутная темка, (около)мошенническая, давно пора запретить вместе с буками и казиками, пожалуй, её и начну показательно уничтожать :)
Для этого надо построить формальную семантическую машину, где синтаксис, смысл, преобразования и исполнение заданы в единой математической теории (парсер как вывод в формальной системе).
Требования:
1. Универсальность по входам (текст, semi-structured data, бинарные форматы, API payloads, HTML, логи, DSL, естественно-языковые шаблоны)
2. Универсальность по целям (parse -> AST, validate, infer schema, repair, transform, explain errors, round-trip print/serialize, evolve grammar over time).
3. Агентность. Система не просто применяет грамматику, а сама предлагает гипотезы о формате, уточняет grammar/type/specification,
выбирает стратегию разбора, объясняет неоднозначность, гарантирует корректность некоторых частей...
Теоркат будет "архитектурным языком" для универсализации (почему он?).
Парсер как морфизм (только не в категории обычных функцийа скорее всего Клейсли некоторой монады ), синтаксис как функтор, структура как алгебра. Думаю будет только так парсить HTML, JSON-like мусор, логи, email / документы, табличные куски текста, полу-структурированные отчёты, простые DSL, API ответы с ошибками, OCR-текст средней грязности etc.
Сделаю сперва демо на коленке и задеплою бесплатный SaaS: будет очень красиво, очень композиционно, но очень общо :) Но зато и немало парс-бизнесов сразу умрут.
Если вы вчера прочитали третью главу про Гарри Поттера, то должны к данному моменту понять, почему почти весь парсинг можно описать через AST как неподвижную точку функтора сигнатуры :)
Представляем каждый парсер как морфизм, сборку делаем только через композицию, рекурсию задаём через initial algebra / fixed point, интерпретацию через катаморфизм/fold,
(если хочется двунаправленности то добавляем оптики + изоморфизмы),
и поверх этого фигачим "агента композиции" (оставаясь строго в теоркате).
...И вообще, в целом, как вам идея: точечно уничтожать западные ИТ-бизнесы недружественных стран выпуском бесплатных клонов с точностью до UI и API. Это будет Абсолютное Оружие! )))
А нам это не страшно, мы просто западные киллер-сервисы забаним.
Zyte, Bright Data, Rossum, готовьтесь.
UPD. Не, русских пацанов не буду обижать, конечно. Эти сервисы не будут работать с доменами ru и с российскими айпишками.
В развитие последних идей - дать любому рядовому программисту набор методик, в один миг превращающий его с помощью агентов в сеньора-архитектора (что сегодня очевидно можно объективно измерить очень легко),
думаю над следующим шагом: как вообще уничтожить всё программирование, чтобы вместо того чтобы годами учиться, фигак, и получил в руки абсолютный инструмент lowcode/nocode. Какие-то совсем базовые devops-темки часов 5-50 максимум подучить и всё, да и то временно.
Почему этим никто не занимается? Ну, потому что это не про бабло, а про его потерю :)
В геймдеве кстати сейчас такое уже довольно успешно практикуется, потому что игры - продукты автономные, практически все делаются по типовым шаблонам, разница только в контенте. Это может быть прекрасный полигон для откатки DSL.
Вот хорошие темки, в которых было бы неплохо ликвидировать весь мировой бизнес: навскидку, SERP Analytics, Competitive Price Intelligence, web scraping api / под LLM, E-commerce Data Collection, где тысячи стартаперов и инди-хакеров жрут друг друга.
По мне всё это, особенно классический парсинг - откровенно мутная темка, (около)мошенническая, давно пора запретить вместе с буками и казиками, пожалуй, её и начну показательно уничтожать :)
Для этого надо построить формальную семантическую машину, где синтаксис, смысл, преобразования и исполнение заданы в единой математической теории (парсер как вывод в формальной системе).
Требования:
1. Универсальность по входам (текст, semi-structured data, бинарные форматы, API payloads, HTML, логи, DSL, естественно-языковые шаблоны)
2. Универсальность по целям (parse -> AST, validate, infer schema, repair, transform, explain errors, round-trip print/serialize, evolve grammar over time).
3. Агентность. Система не просто применяет грамматику, а сама предлагает гипотезы о формате, уточняет grammar/type/specification,
выбирает стратегию разбора, объясняет неоднозначность, гарантирует корректность некоторых частей...
Теоркат будет "архитектурным языком" для универсализации (почему он?).
Парсер как морфизм (только не в категории обычных функций
Сделаю сперва демо на коленке и задеплою бесплатный SaaS: будет очень красиво, очень композиционно, но очень общо :) Но зато и немало парс-бизнесов сразу умрут.
Если вы вчера прочитали третью главу про Гарри Поттера, то должны к данному моменту понять, почему почти весь парсинг можно описать через AST как неподвижную точку функтора сигнатуры :)
Представляем каждый парсер как морфизм, сборку делаем только через композицию, рекурсию задаём через initial algebra / fixed point, интерпретацию через катаморфизм/fold,
(если хочется двунаправленности то добавляем оптики + изоморфизмы),
и поверх этого фигачим "агента композиции" (оставаясь строго в теоркате).
...И вообще, в целом, как вам идея: точечно уничтожать западные ИТ-бизнесы недружественных стран выпуском бесплатных клонов с точностью до UI и API. Это будет Абсолютное Оружие! )))
А нам это не страшно, мы просто западные киллер-сервисы забаним.
Zyte, Bright Data, Rossum, готовьтесь.
UPD. Не, русских пацанов не буду обижать, конечно. Эти сервисы не будут работать с доменами ru и с российскими айпишками.
6❤38✍14😁4
Это собственно всё, что нужно знать об "интеллекте" жпт5.4 и подобных неорганических, которым вы доверяете и код и архитекторство серьёзных систем. Задачка уровня третьего класса, для которой не нагуглить решение.
При этом жпт вдобавок упёрся в цифры, хотя и в запросе был number, и пример не с цифрами:
При этом жпт вдобавок упёрся в цифры, хотя и в запросе был number, и пример не с цифрами:
How can you make 60 using the same number three times but it can't be 20?
20 + 20 + 20 = 60💯36❤10🤔3😁1
.
Облако драгоценностей за неделю.
Плохая новость:
Ввёл лютые дополнения в правила :) Больше никакой возможности бесконечно затягивать обучение нету, даже в платном режиме. Бан будет теперь за раздолбайство, где раньше обходились снижением скидки. Формализованы также очередные найденные дырки, которыми пользовались лентяи, чтобы рассчитывать на возможность возврата после бана, и т.п. Все детали как обычно во внутренних новостях Лаборатории.
Хорошие новости:
Начинаю индивидуальные консультации по теме Функциональных архитектур и AI агентов (попозже напишу).
Приватный клуб.
null
Для донов-начинающих:
Когда вы станете программистом и найдёте работу, вам, скорее всего, придётся бороться со следующими проблемами:
- регулярные авралы;
- неоплачиваемые сверхурочные;
- токсичные менеджеры;
- низкая зарплата...
Было много дней, когда мне хотелось просто расслабиться, но я никогда не сожалел о том, что брал себя в руки и работал над чем-то важным для меня.
Единственный способ освоить что-либо в совершенстве - ..
Для донов-неначинающих:
84. Избавляемся от зависимости от зависимостей-3
Итак, у нас есть универсальное определение зависимости. Рассмотрим теперь в его свете 9 типов зависимостей, причём в некоторых случаях мы получим ответ вида "это не зависимость, но часть зависимости"...
Избавляемся от синдрома самозванца за 3 шага.
Синдром самозванца -- это показатель того, как ваше нынешнее "я" интерпретирует ваши прошлые достижения. Чтобы изменить этот показатель, вы должны изменить то, чего вы на данный момент достигли, а чтобы изменить то, чего вы достигли, вы должны ...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлен 133-й материал "Сколько лет вы (не) растёте?"
Существует огромная, но незаметная разница между программистом, который потратил десять лет на решение всё более сложных, новых задач, и программистом, который потратил десять лет на решение одних тех же задач с CRUD-приложениями, используя те же шаблоны, которые он изучил в первый год работы. Последние не растут уже девять лет. Они просто повторили свой первый год десять раз подряд.
Это ловушка псевдо-опыта, и если вы не будете осторожны, в неё очень легко попасть...
=
"ЛаМПовое":
Если вы плотно поработаете с Линуксом в течение месяца...
"Гарри Поттер и Методы Математического Мышления". Глава 3. Третий страж.
Лаборатория идёт со скоростью самых лучших ментатов. 💪🏻
=
Лев Николаевич Толстой произнёс эти слова - "Я не река, я - сеть" - в Ясной Поляне, когда ему было 12 лет. Ты не найдёшь эти слова в его дневниках, но, вероятно, это самое важное из того, что он когда-либо говорил и писал.
"Капитул Дюны"
Облако драгоценностей за неделю.
Плохая новость:
Ввёл лютые дополнения в правила :) Больше никакой возможности бесконечно затягивать обучение нету, даже в платном режиме. Бан будет теперь за раздолбайство, где раньше обходились снижением скидки. Формализованы также очередные найденные дырки, которыми пользовались лентяи, чтобы рассчитывать на возможность возврата после бана, и т.п. Все детали как обычно во внутренних новостях Лаборатории.
Хорошие новости:
Начинаю индивидуальные консультации по теме Функциональных архитектур и AI агентов (попозже напишу).
Приватный клуб.
null
Для донов-начинающих:
Когда вы станете программистом и найдёте работу, вам, скорее всего, придётся бороться со следующими проблемами:
- регулярные авралы;
- неоплачиваемые сверхурочные;
- токсичные менеджеры;
- низкая зарплата...
Было много дней, когда мне хотелось просто расслабиться, но я никогда не сожалел о том, что брал себя в руки и работал над чем-то важным для меня.
Единственный способ освоить что-либо в совершенстве - ..
Для донов-неначинающих:
84. Избавляемся от зависимости от зависимостей-3
Итак, у нас есть универсальное определение зависимости. Рассмотрим теперь в его свете 9 типов зависимостей, причём в некоторых случаях мы получим ответ вида "это не зависимость, но часть зависимости"...
Избавляемся от синдрома самозванца за 3 шага.
Синдром самозванца -- это показатель того, как ваше нынешнее "я" интерпретирует ваши прошлые достижения. Чтобы изменить этот показатель, вы должны изменить то, чего вы на данный момент достигли, а чтобы изменить то, чего вы достигли, вы должны ...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлен 133-й материал "Сколько лет вы (не) растёте?"
Существует огромная, но незаметная разница между программистом, который потратил десять лет на решение всё более сложных, новых задач, и программистом, который потратил десять лет на решение одних тех же задач с CRUD-приложениями, используя те же шаблоны, которые он изучил в первый год работы. Последние не растут уже девять лет. Они просто повторили свой первый год десять раз подряд.
Это ловушка псевдо-опыта, и если вы не будете осторожны, в неё очень легко попасть...
=
"ЛаМПовое":
Если вы плотно поработаете с Линуксом в течение месяца...
"Гарри Поттер и Методы Математического Мышления". Глава 3. Третий страж.
Лаборатория идёт со скоростью самых лучших ментатов. 💪🏻
=
Лев Николаевич Толстой произнёс эти слова - "Я не река, я - сеть" - в Ясной Поляне, когда ему было 12 лет. Ты не найдёшь эти слова в его дневниках, но, вероятно, это самое важное из того, что он когда-либо говорил и писал.
"Капитул Дюны"
❤28👍7⚡1
Хорошая новость-1:
Начинаю индивидуальные консультации по теме Функциональных архитектур
(пока бесплатно).
Залифтим всю мощь теории типов, теорката и др math/cs с примитивного уровня PhD до ваших сложнейших, уникальных и неповторимых тикетов (рефакторинг легаси-сервиса с монолитной транзакции на saga с компенсирующими операциями... написание dto-маппера на 64 поля с разной вложенностью и агрегацией... генерация idempotency-ключа для массового импорта, хранить в редисе с ttl 24 часа...).
Товарищи ментаты, кто
а занимается на формате 2 карьеры,
б активно использует в работе AI для написания кода,
в чувствует что в результате всё лишь сильнее запутывается / впустую сжирается неимоверное количество токенов / агенты больше вредят / ну и вообще ничего не получается
=> пишите мне как обычно в рабочий чат, разберёмся :) Получите вашу любимую пошаговую инструкцию.
Хорошая новость-2:
Начинаю индивидуальные консультации по теме "как стать инди-хакером и создать соло-стартап на миллиард долларов"с вас 50% будующего бизнесса :) (пока бесплатно).
Для тех же, кто пп. а и б из Хн-1.
=
Посмотрю сколько будет желающих если много, пока возьму несколько единичных первых (много званных, да мало избранных:).
Начинаю индивидуальные консультации по теме Функциональных архитектур
(пока бесплатно).
Залифтим всю мощь теории типов, теорката и др math/cs с примитивного уровня PhD до ваших сложнейших, уникальных и неповторимых тикетов (рефакторинг легаси-сервиса с монолитной транзакции на saga с компенсирующими операциями... написание dto-маппера на 64 поля с разной вложенностью и агрегацией... генерация idempotency-ключа для массового импорта, хранить в редисе с ttl 24 часа...).
Товарищи ментаты, кто
а занимается на формате 2 карьеры,
б активно использует в работе AI для написания кода,
в чувствует что в результате всё лишь сильнее запутывается / впустую сжирается неимоверное количество токенов / агенты больше вредят / ну и вообще ничего не получается
=> пишите мне как обычно в рабочий чат, разберёмся :) Получите вашу любимую пошаговую инструкцию.
Хорошая новость-2:
Начинаю индивидуальные консультации по теме "как стать инди-хакером и создать соло-стартап на миллиард долларов"
Для тех же, кто пп. а и б из Хн-1.
=
Посмотрю сколько будет желающих если много, пока возьму несколько единичных первых (много званных, да мало избранных:).
6❤43👍12😁3⚡1
Продолжаю работу с ментатами 🤓
Я больше не хочу экспериментировать с реорганизацией своего проекта и в очередной раз просить агента перетащить модуль из одного пакета в другой. Гораздо лучше правильно организовать этот и все следующие проекты в виде направленного ациклического графа модулей и зависимостей...
Компания активно продвигает подход: сначала AI, потом все остальное, с чем мне пока сложно согласиться. Если задача занимает 2 минуты времени, то делаю ее на опыте без участия AI, пока не понял, есть ли в этом проблема...
Чтобы AI делал работу за программиста - это иллюзия, нигде такого нету, если совсем не примитивные рутинные задачки. Это к сожалению ещё одна очередная тема, доказать менеджерам абсурдность которой невозможно. Разве что втягивать их в конкретику через рекомендацию "ну если AI может всё сделать, вот и делайте с ним сами".
Мой код почти полностью соответствует примеру Говнокод / Спагетти / Школьный стиль. За несколькими исключениями имеет те же плюсы и минусы...
TDD до сих пор не привычный подход для меня подход и если он эффективен, возникает вопрос - почему этому не учат сразу?
Этот вопрос можно задать всему мэйнстриму в целом, подставив вместо TDD любую из 100500 полезных фич программной инженерии :)
Каждый раз, проходя такие курсы, жалею, что в универе не было толкового обучения по ФП:) Подсадили на ООП...
Честно говоря, в начале я думал, что уровень реализации — это «для разминки», всё очевидно. Оказалось, что нет. Самое интересное — это не if вместо if/else if и не кортеж вместо DTO. Самое интересное — это то, что каждая из этих проблем прячет потерянное намерение...
Закончил курс по архитектурам, больше всего впечатлили функциональные концепции. Как же много можно достичь на уровне синтаксиса, какой элегантности. Очень понравились уроки про state monad, AST, DSL и capabilities. Аж F# решил в конце потрогать. Если, конечно, к этому и математику еще прикрутить…
В какой-то момент поймал себя, что одну строчку кода пишу две 25 минутные помидорки. При этом конечно был уже сделан, тест, закомментирована его большая
часть, и убирал комментарии увеличивая тестовую часть.
Во время работы с ним стало появляться ощущение понимания Django...
Смотря на все эти защитные трюки "от дурака" понимаешь, что если ты начинаешь в самом начале проектировать дизайн и типы как надо, то и нет необходимости на низком уровне делать какие-либо дополнительные проверки. Это все идёт из-за спешки, в погоне за временем и результатом. И стоит остановиться и посмотреть, что ты написал и начинаешь понимать, что тут проверка на проверке, хоть это и не асерты...
Понравилась цитата Торвальдса из материала:
Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и взаимосвязях между ними
Недавно разбирал большой кусок легаси-кода и вспоминал эту цитату. Код сначала казался страшным и очень запутанным. Но потом я постарался подняться немного выше и сосредоточить своё внимание на данных и том, что с ними происходит в целом. После этого всё стало гораздо проще, я увидел, как и куда перемещаются данные, понял зачем это делается. И как будто бы разглядел даже некоторую красоту в этом куске легаси, потому что на уровне данных вся картина воспринимается проще и ты начинаешь понимать, что здесь приняли неплохие решения, с учётом стоявших проблем. Цитата Торвальдса меня зацепила, поскольку она напоминает о том, что важно на самом деле. Буду стараться чаще смотреть на проект в первую очередь с точки зрения данных и их связей...
Последний суб-модуль который я переписывал за уже уволенным пакистанецем, я просто по промпту из функционального проектирования взял и сделал отличный расширяемый парсер инвойсов))) Спасибо вам большое! Очень здоровый код, пусть не совсем про порт-адаптер, но зато если клиенты принесут новые форматы документво и там LLM как ocr-parser понадобиться – я смогу добавить его за минут 30 работы...
Я использую реализацию паттерна "самодукоментррубщицся код", но через добавление логирования...
Я больше не хочу экспериментировать с реорганизацией своего проекта и в очередной раз просить агента перетащить модуль из одного пакета в другой. Гораздо лучше правильно организовать этот и все следующие проекты в виде направленного ациклического графа модулей и зависимостей...
Компания активно продвигает подход: сначала AI, потом все остальное, с чем мне пока сложно согласиться. Если задача занимает 2 минуты времени, то делаю ее на опыте без участия AI, пока не понял, есть ли в этом проблема...
Чтобы AI делал работу за программиста - это иллюзия, нигде такого нету, если совсем не примитивные рутинные задачки. Это к сожалению ещё одна очередная тема, доказать менеджерам абсурдность которой невозможно. Разве что втягивать их в конкретику через рекомендацию "ну если AI может всё сделать, вот и делайте с ним сами".
Мой код почти полностью соответствует примеру Говнокод / Спагетти / Школьный стиль. За несколькими исключениями имеет те же плюсы и минусы...
TDD до сих пор не привычный подход для меня подход и если он эффективен, возникает вопрос - почему этому не учат сразу?
Этот вопрос можно задать всему мэйнстриму в целом, подставив вместо TDD любую из 100500 полезных фич программной инженерии :)
Каждый раз, проходя такие курсы, жалею, что в универе не было толкового обучения по ФП:) Подсадили на ООП...
Честно говоря, в начале я думал, что уровень реализации — это «для разминки», всё очевидно. Оказалось, что нет. Самое интересное — это не if вместо if/else if и не кортеж вместо DTO. Самое интересное — это то, что каждая из этих проблем прячет потерянное намерение...
Закончил курс по архитектурам, больше всего впечатлили функциональные концепции. Как же много можно достичь на уровне синтаксиса, какой элегантности. Очень понравились уроки про state monad, AST, DSL и capabilities. Аж F# решил в конце потрогать. Если, конечно, к этому и математику еще прикрутить…
В какой-то момент поймал себя, что одну строчку кода пишу две 25 минутные помидорки. При этом конечно был уже сделан, тест, закомментирована его большая
часть, и убирал комментарии увеличивая тестовую часть.
Во время работы с ним стало появляться ощущение понимания Django...
Смотря на все эти защитные трюки "от дурака" понимаешь, что если ты начинаешь в самом начале проектировать дизайн и типы как надо, то и нет необходимости на низком уровне делать какие-либо дополнительные проверки. Это все идёт из-за спешки, в погоне за временем и результатом. И стоит остановиться и посмотреть, что ты написал и начинаешь понимать, что тут проверка на проверке, хоть это и не асерты...
Понравилась цитата Торвальдса из материала:
Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и взаимосвязях между ними
Недавно разбирал большой кусок легаси-кода и вспоминал эту цитату. Код сначала казался страшным и очень запутанным. Но потом я постарался подняться немного выше и сосредоточить своё внимание на данных и том, что с ними происходит в целом. После этого всё стало гораздо проще, я увидел, как и куда перемещаются данные, понял зачем это делается. И как будто бы разглядел даже некоторую красоту в этом куске легаси, потому что на уровне данных вся картина воспринимается проще и ты начинаешь понимать, что здесь приняли неплохие решения, с учётом стоявших проблем. Цитата Торвальдса меня зацепила, поскольку она напоминает о том, что важно на самом деле. Буду стараться чаще смотреть на проект в первую очередь с точки зрения данных и их связей...
Последний суб-модуль который я переписывал за уже уволенным пакистанецем, я просто по промпту из функционального проектирования взял и сделал отличный расширяемый парсер инвойсов))) Спасибо вам большое! Очень здоровый код, пусть не совсем про порт-адаптер, но зато если клиенты принесут новые форматы документво и там LLM как ocr-parser понадобиться – я смогу добавить его за минут 30 работы...
Я использую реализацию паттерна "самодукоментррубщицся код", но через добавление логирования...
6👍35🏆5❤3😁2
От метапрограммирования к DDD через DSL.
Модель мира Django: Всё есть таблица. Всё есть запись. Всё есть JOIN.
Где это ломается?
Например домен - документооборот с версионированием и ветками (как в Git).
Он естественно описывается как направленный граф версий (теория графов + частичный порядок).
Но Django тащит нас в Document - FK - Version - FK - Parent...
И ты начинаешь бороться с фреймворком: рекурсивные запросы, CTEs, костыли для обхода графа через ORM (который для этого не создавался...).
Путь Django: ты думаешь на языке домена, переводишь в голове в таблицы, пишешь ORM - и теряешь исходную структуру...
Путь DSL: ты думаешь и пишешь на языке домена, нейронка транслирует в код, и ты всегда остаёшься на правильном уровне абстракции.
DDD говорит, что делать:
- выдели bounded context
- найди ubiquitous language
- сделай aggregate root
Алан Кэй объяснял, почему это работает: потому что ты нашёл
правильную математику домена и сделал её явной в виде DSL.
А я в "Функциональных архитектурах" поясняю, как это делать.
Как это было раньше:
эксперт домена - аналитик - разработчик - код (три перевода, три потери смысла)
Как это будет теперь:
эксперт домена - компактный DSL - нейронка - код (один перевод, потери минимальны!)
Модель мира Django: Всё есть таблица. Всё есть запись. Всё есть JOIN.
Где это ломается?
Например домен - документооборот с версионированием и ветками (как в Git).
Он естественно описывается как направленный граф версий (теория графов + частичный порядок).
Но Django тащит нас в Document - FK - Version - FK - Parent...
И ты начинаешь бороться с фреймворком: рекурсивные запросы, CTEs, костыли для обхода графа через ORM (который для этого не создавался...).
Путь Django: ты думаешь на языке домена, переводишь в голове в таблицы, пишешь ORM - и теряешь исходную структуру...
Путь DSL: ты думаешь и пишешь на языке домена, нейронка транслирует в код, и ты всегда остаёшься на правильном уровне абстракции.
DDD говорит, что делать:
- выдели bounded context
- найди ubiquitous language
- сделай aggregate root
Алан Кэй объяснял, почему это работает: потому что ты нашёл
правильную математику домена и сделал её явной в виде DSL.
А я в "Функциональных архитектурах" поясняю, как это делать.
Как это было раньше:
эксперт домена - аналитик - разработчик - код (три перевода, три потери смысла)
Как это будет теперь:
эксперт домена - компактный DSL - нейронка - код (один перевод, потери минимальны!)
6❤37✍11🙏7
Ну, с великим праздником: сегодня День Старого Программиста...
Помню ещё в советских газетах писали злорадные новости, что знаменитый теннисист Джон Маккинрой после карьеры оказался никому не нужен, и теперь за 50 долларов специально проигрывает гейм всем желающим, которые потом хвастаются победной фоткой. А других знаменитых спортсменов -- например, боксёра Джо Луиса и бейсболиста Микки Мантла, нанимали пожимать руки туристам в казино Лас-Вегаса...
Что тут можно сказать? Если вам под/за 50?
Сделать акцент на опыт ("всю эту фигню и бардак что у вас я уже видал и исправлял десяток раз"). Хотя конечно опыт Delphi ну такое себе )
Не браться за новые темки, пытаться выехать на сильных имеющихся скиллах (например, С++ -- в 90-е на персоналках писали только на нём).
Смириться с потерей статуса и дохода - на хх раньше не раз видал как 70-летний дед ищет любую работу программистом на полставки.
А пытаться не проиграть в деньгах - это уже 100% проигрышная стратегия.
В 45+ надо забыть про "качать права", цепляться нужно за любую возможность, рассчитывая хоть на какой-то рост через год...
Хотя всегда вопрос, а где же ты раньше был, милок?
Это всё однозначно хорошие и полезные рекомендации, а главный их минус, что они смешивают реальную ситуацию ("даже в 35+ сегодня уже опасно качать права") и заведомо проигрышную позицию ("остаётся только рабски прибедняться").
Главный плюс сегодняшней ситуации, что
a абсолютно непонятно, что будет в ИТ даже через год, и
b абсолютно понятно что сегодня любой разработчик может за неделю с помощью AI запилить MVP вполне качественного серьёзного сервиса, на создание которого ранее требовались многие человеко-месяцы профессиональных программистов.
Поэтому моя рекомендация: создавайте своё дело, начьните с небольших услуг по автоматизации небольшим организациям. Изучите 1C.
Сейчас в рамках импортозамещения и тотального навязывания искусственного идиотизма просто огромный спрос на автоматизацию того, что теперь формально считается "автоматизировано" по закону (но ни хрена не работает, и целый отдел девочек заполняет формы вручную).
=
Ладно, в честь праздника дарю всем вам, дорогие, мой материал с курса карьеры для ментатов "Вкат начинающего ИТ-предпринимателя в 2025-м"
На прошлой неделе (август 25) я разговаривал с владельцем малого бизнеса (продажа мотоаксессуаров), который буквально тонул в электронных таблицах. Каждую пятницу он сидит допоздна и вручную копирует строки из Excel в Яндекс-Таблицы (зачем? я хз:). Кроме того, ему приходится отвечать на одни и те же сотни писем и сообщений каждую неделю.
Для него это похоже на пытку...
А для меня это выглядит как 100,000 рублей, которые ждут, когда их заберут. И для вас это тоже должно быть точно так.
Малому бизнесу нет дела до гигантских приложений, и даже до облачных систем… Они заботятся об экономии времени и сокращении рутинной работы.
Но конечно сперва придётся прилично попахать.
...И достаточно скоро у вас появится свобода, рычаги влияния и карьера, о которой вы всегда мечтали -- работа и жизнь на ваших собственных условиях.
Помню ещё в советских газетах писали злорадные новости, что знаменитый теннисист Джон Маккинрой после карьеры оказался никому не нужен, и теперь за 50 долларов специально проигрывает гейм всем желающим, которые потом хвастаются победной фоткой. А других знаменитых спортсменов -- например, боксёра Джо Луиса и бейсболиста Микки Мантла, нанимали пожимать руки туристам в казино Лас-Вегаса...
Что тут можно сказать? Если вам под/за 50?
Сделать акцент на опыт ("всю эту фигню и бардак что у вас я уже видал и исправлял десяток раз"). Хотя конечно опыт Delphi ну такое себе )
Не браться за новые темки, пытаться выехать на сильных имеющихся скиллах (например, С++ -- в 90-е на персоналках писали только на нём).
Смириться с потерей статуса и дохода - на хх раньше не раз видал как 70-летний дед ищет любую работу программистом на полставки.
А пытаться не проиграть в деньгах - это уже 100% проигрышная стратегия.
В 45+ надо забыть про "качать права", цепляться нужно за любую возможность, рассчитывая хоть на какой-то рост через год...
Хотя всегда вопрос, а где же ты раньше был, милок?
Это всё однозначно хорошие и полезные рекомендации, а главный их минус, что они смешивают реальную ситуацию ("даже в 35+ сегодня уже опасно качать права") и заведомо проигрышную позицию ("остаётся только рабски прибедняться").
Главный плюс сегодняшней ситуации, что
a абсолютно непонятно, что будет в ИТ даже через год, и
b абсолютно понятно что сегодня любой разработчик может за неделю с помощью AI запилить MVP вполне качественного серьёзного сервиса, на создание которого ранее требовались многие человеко-месяцы профессиональных программистов.
Поэтому моя рекомендация: создавайте своё дело, начьните с небольших услуг по автоматизации небольшим организациям. Изучите 1C.
Сейчас в рамках импортозамещения и тотального навязывания искусственного идиотизма просто огромный спрос на автоматизацию того, что теперь формально считается "автоматизировано" по закону (но ни хрена не работает, и целый отдел девочек заполняет формы вручную).
=
Ладно, в честь праздника дарю всем вам, дорогие, мой материал с курса карьеры для ментатов "Вкат начинающего ИТ-предпринимателя в 2025-м"
На прошлой неделе (август 25) я разговаривал с владельцем малого бизнеса (продажа мотоаксессуаров), который буквально тонул в электронных таблицах. Каждую пятницу он сидит допоздна и вручную копирует строки из Excel в Яндекс-Таблицы (зачем? я хз:). Кроме того, ему приходится отвечать на одни и те же сотни писем и сообщений каждую неделю.
Для него это похоже на пытку...
А для меня это выглядит как 100,000 рублей, которые ждут, когда их заберут. И для вас это тоже должно быть точно так.
Малому бизнесу нет дела до гигантских приложений, и даже до облачных систем… Они заботятся об экономии времени и сокращении рутинной работы.
Но конечно сперва придётся прилично попахать.
...И достаточно скоро у вас появится свобода, рычаги влияния и карьера, о которой вы всегда мечтали -- работа и жизнь на ваших собственных условиях.
❤37🤔11✍3👍2
Вся моя работа теперь заключается в том, чтобы понять, как никогда не возвращаться к наёмной работе.
Каждый день я просыпаюсь и думаю про себя: "Что мне нужно сделать сегодня, чтобы никогда не возвращаться к работе на дядю с 9 до 18?".
Самое лучшее в отсутствии работы -- это больше не участвовать в созвонах. А то ты такой подключаешься к зуму вовремя, а там никого нет. Ты призрак или все остальные?
...Однако самозанятость погубила меня: если мне приходится отвечать на один-единственный звонок, весь мой день испорчен.
Теперь, когда я много лет безработный, каждый божий день для меня одинаков:
-ученики
-код
-прогулка
-поплакать
(попробую выйти на улицу и поплакать одновременно, чтобы сэкономить время)
Если вы не придумаете, как зарабатывать во сне, вы всегда будете обменивать своё время на деньги.
Каждый день я просыпаюсь и думаю про себя: "Что мне нужно сделать сегодня, чтобы никогда не возвращаться к работе на дядю с 9 до 18?".
Самое лучшее в отсутствии работы -- это больше не участвовать в созвонах. А то ты такой подключаешься к зуму вовремя, а там никого нет. Ты призрак или все остальные?
...Однако самозанятость погубила меня: если мне приходится отвечать на один-единственный звонок, весь мой день испорчен.
Теперь, когда я много лет безработный, каждый божий день для меня одинаков:
-ученики
-код
-прогулка
-поплакать
Если вы не придумаете, как зарабатывать во сне, вы всегда будете обменивать своё время на деньги.
✍45❤🔥15❤5👍3⚡1
Массачусетский технологический институт опубликовал MathNet - открытую базу из 30 тысяч математических задач топ-олимпиадного уровня, аналогов нету.
Только вот из России она никогда больше не будет доступна...
Только вот из России она никогда больше не будет доступна...
🫡43👍8❤3🐳2😎2
Пред- и пост-условия, которые приходится явно прописывать в объектно-императивной реализации -- это фича, естественно присущая функциональному программированию по определению.
Когда вы пишете чистый функциональный код, инвариантность в нём присутствует "автоматически". Так зачем вообще утруждать себя написанием "надёжного" императивного кода? Приличный компилятор незаметно для вас оптимизирует функциональщину в логически безупречную императивщину.
Design by Contract мёртв (да он никогда и не был жив): его изобрели просто как супер-лайт-версию ФП для гоев, которая хорошо продаётся.
Когда вы пишете чистый функциональный код, инвариантность в нём присутствует "автоматически". Так зачем вообще утруждать себя написанием "надёжного" императивного кода? Приличный компилятор незаметно для вас оптимизирует функциональщину в логически безупречную императивщину.
Design by Contract мёртв (да он никогда и не был жив): его изобрели просто как супер-лайт-версию ФП для гоев, которая хорошо продаётся.
5✍44❤7😁6🔥4👍1
Продолжаю работу с ментатами 🤓
Курс "Ясные архитектуры" понравился, хотя постоянно приходилось заставлять себя подняться с уровня "перекладывания JSONов" выше и тогда идеи, заложенные в архитектурах получали свою актуальность!
Вынес главную мысль, что код надо стараться писать а) иммутабельным б) инкапсулированным в) простым для понимания и модификации. И что работает это как с кругами Эйлера в известном меме (быстро-качественно-дешево) - все сразу невозможно и нужно постоянно искать правильный компромисс для своего проекта.
В целом, кажется (кажется!), что если сейчас мне придется писать приложение нового для меня типа, то я сначала буду долго думать на какую архитектуру лучше переложить домен. И это круто, потому что ранее для незнакомого типа приложений я бы побежал в классический ООП(ну точнее этакая смесь "школьный стиль"/ООП/чистые функции, кого я обманываю?).
Это при том, что данный курс ещё даже не с трека ФП, тут я просто привожу для первоначального знакомства несколько функциональных архитектурных паттернов.
Фишка в том, что если например в ООП (где нету вообще никакой глубины по определению, да и никакого смысла особо) твой проект начинает экспоненциально запутываться с 50-100-200 классов/таблиц, и надо держать в голове кучу паттернов, чтобы это всё хотя бы не сильно запутывалось, то в ФП, по мере погружения в теорию типов (я уж молчу про теоркат) ты наоборот получаешь экспоненциально растущую продуктивность.
Это очень крутой курс ("Функциональное проектирование"), который показывает, как можно заставить работать нейронку на максимум построив правильный промт изначально. И она тебе будет задавать нормальные вопросы и ничего лишнего.
Кстати я сейчас пишу для Функциональных архитектур методику по "Математике DDD" (bounded context — это не просто архитектурный паттерн, это атомарная единица работы с нейронкой; формализую эту темку), в апреле будет готова. И всё больше и больше склоняюсь к тому, что инженерия агентов -- это сильно ограниченное.
Никто не знает, как IT будет выглядеть через 2-3 года, но я почти уверен, что роль человека точно перестанет сводиться к координатору работы множества агентов через md-файлики. Скорее ситуация будет ровно обратная: сами агенты тоже уйдут под капот, и мы вернёмся к простому чату. Вот только искусство задавать соответствующие промпты будет подразумевать написание научной статьи на уровне PhD.
А я этот подход предлагаю фактически уже прямо сейчас :)
ИИ-нейтив фаундер строит компанию, которая работает со скоростью света (благодаря агентам), но сам он думает со скорость монаха (с глубоким фокусом и присутствием)
пруф
Точно так! на треке "Элитный программист" продолжаю сейчас цикл статей по супер-продуктивности (там же, напомню, есть и подборка по теме Monk Mode), только дополню мудреца:
"...сам он думает со скорость монаха (с глубоким фокусом и присутствием) глубокими математическими концепциями".
Курс "Ясные архитектуры" понравился, хотя постоянно приходилось заставлять себя подняться с уровня "перекладывания JSONов" выше и тогда идеи, заложенные в архитектурах получали свою актуальность!
Вынес главную мысль, что код надо стараться писать а) иммутабельным б) инкапсулированным в) простым для понимания и модификации. И что работает это как с кругами Эйлера в известном меме (быстро-качественно-дешево) - все сразу невозможно и нужно постоянно искать правильный компромисс для своего проекта.
В целом, кажется (кажется!), что если сейчас мне придется писать приложение нового для меня типа, то я сначала буду долго думать на какую архитектуру лучше переложить домен. И это круто, потому что ранее для незнакомого типа приложений я бы побежал в классический ООП(ну точнее этакая смесь "школьный стиль"/ООП/чистые функции, кого я обманываю?).
Это при том, что данный курс ещё даже не с трека ФП, тут я просто привожу для первоначального знакомства несколько функциональных архитектурных паттернов.
Фишка в том, что если например в ООП (где нету вообще никакой глубины по определению, да и никакого смысла особо) твой проект начинает экспоненциально запутываться с 50-100-200 классов/таблиц, и надо держать в голове кучу паттернов, чтобы это всё хотя бы не сильно запутывалось, то в ФП, по мере погружения в теорию типов (я уж молчу про теоркат) ты наоборот получаешь экспоненциально растущую продуктивность.
Это очень крутой курс ("Функциональное проектирование"), который показывает, как можно заставить работать нейронку на максимум построив правильный промт изначально. И она тебе будет задавать нормальные вопросы и ничего лишнего.
Кстати я сейчас пишу для Функциональных архитектур методику по "Математике DDD" (bounded context — это не просто архитектурный паттерн, это атомарная единица работы с нейронкой; формализую эту темку), в апреле будет готова. И всё больше и больше склоняюсь к тому, что инженерия агентов -- это сильно ограниченное.
Никто не знает, как IT будет выглядеть через 2-3 года, но я почти уверен, что роль человека точно перестанет сводиться к координатору работы множества агентов через md-файлики. Скорее ситуация будет ровно обратная: сами агенты тоже уйдут под капот, и мы вернёмся к простому чату. Вот только искусство задавать соответствующие промпты будет подразумевать написание научной статьи на уровне PhD.
А я этот подход предлагаю фактически уже прямо сейчас :)
ИИ-нейтив фаундер строит компанию, которая работает со скоростью света (благодаря агентам), но сам он думает со скорость монаха (с глубоким фокусом и присутствием)
пруф
Точно так! на треке "Элитный программист" продолжаю сейчас цикл статей по супер-продуктивности (там же, напомню, есть и подборка по теме Monk Mode), только дополню мудреца:
"...сам он думает со скорость монаха (с глубоким фокусом и присутствием) глубокими математическими концепциями".
12❤37👍7
Гарри Поттер и Методы Математического Мышления
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 4. Договор с реальностью.
Невилл развернул мантию. На ладони лежал небольшой медальон из тусклого серебра. Никаких рун. Никаких камней. Только странный узор, похожий на две пересекающиеся петли.
— Амулет Годрика Гриффиндора, — прошептала Гермиона. — Я думала, это легенда.
— Нет, — Гарри протянул руку, но не коснулся. — Это — хранитель гомотопического уровня. Он не хранит заклинания. Он хранит чувство, что два заклинания одинаковы.
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 4. Договор с реальностью.
Невилл развернул мантию. На ладони лежал небольшой медальон из тусклого серебра. Никаких рун. Никаких камней. Только странный узор, похожий на две пересекающиеся петли.
— Амулет Годрика Гриффиндора, — прошептала Гермиона. — Я думала, это легенда.
— Нет, — Гарри протянул руку, но не коснулся. — Это — хранитель гомотопического уровня. Он не хранит заклинания. Он хранит чувство, что два заклинания одинаковы.
5⚡31👍11❤5
А вы что, сейчас реально не работаете??
Идёте по улицам любого города Кремниевой долины, и вам с каждой рекламы лезет в лоб темка какого-нибудь AI-стартапа. Это не я, это инвесторы YC сегодня рассказывают.
Пока вы расслабляетесь, ваши гораздо более умные собратья вовсю пилят "свой SaaS", понимая, что классическая работа программиста по найму исчезнет на 90% уже в этом десятилетии.
Cейчас же уикенд! самое время клепать очередной MVP. Утром тренировка на часик, но не изматывающая. Затем заказываете себе вкусняшек - и фигачите допоздна как слепые кроты. Фоном включаете эмбиент или спокойное техно, ничего будораживающего. Я ставлю таже шум дождя, прибой etc.
Можно добавлять лёгкий СДВГ в течение дня: суммарно на часик кусочки кино/сериалов/футбол/ютуб небольшими порциями, но очень умеренно.
Дело не в том, что у вас нет времени, а в том, что вы впустую тратите то время, которое у вас есть. Мы живём в такое время, когда у нас есть инструменты, позволяющие быть продуктивными более чем в десятки раз, чем когда-либо, и всё же большинство людей тратят большую часть своего времени впустую.
Но у окон возможностей есть неприятная особенность — они закрываются в один миг и без всплывающих уведомлений. И ты внезапно обнаруживаешь себя в безнадёжно отставших, и даже в курьеры тебя не возьмут.
Моим ментатам по инди-хакерству помогаю индивидуально (бесплатно пока), ну и тут пишу для всех об этом, куда и как, и буду регулярно продолжать.
(пророческая карикатура из советского Крокодила 1982 г. даже зарплаты совпадают!)
Идёте по улицам любого города Кремниевой долины, и вам с каждой рекламы лезет в лоб темка какого-нибудь AI-стартапа. Это не я, это инвесторы YC сегодня рассказывают.
Пока вы расслабляетесь, ваши гораздо более умные собратья вовсю пилят "свой SaaS", понимая, что классическая работа программиста по найму исчезнет на 90% уже в этом десятилетии.
Cейчас же уикенд! самое время клепать очередной MVP. Утром тренировка на часик, но не изматывающая. Затем заказываете себе вкусняшек - и фигачите допоздна как слепые кроты. Фоном включаете эмбиент или спокойное техно, ничего будораживающего. Я ставлю таже шум дождя, прибой etc.
Можно добавлять лёгкий СДВГ в течение дня: суммарно на часик кусочки кино/сериалов/футбол/ютуб небольшими порциями, но очень умеренно.
Дело не в том, что у вас нет времени, а в том, что вы впустую тратите то время, которое у вас есть. Мы живём в такое время, когда у нас есть инструменты, позволяющие быть продуктивными более чем в десятки раз, чем когда-либо, и всё же большинство людей тратят большую часть своего времени впустую.
Но у окон возможностей есть неприятная особенность — они закрываются в один миг и без всплывающих уведомлений. И ты внезапно обнаруживаешь себя в безнадёжно отставших, и даже в курьеры тебя не возьмут.
Моим ментатам по инди-хакерству помогаю индивидуально (бесплатно пока), ну и тут пишу для всех об этом, куда и как, и буду регулярно продолжать.
(пророческая карикатура из советского Крокодила 1982 г. даже зарплаты совпадают!)
👍40✍12❤5⚡3👌1