Срочно!!1 Сегодня солнечное затмение: благословение Защитника традиции Великого Совершенства :) Кармические последствия от совершённых действий увеличиваются в неисчислимое количество раз! Решения, принимаемые сегодня, будут иметь последствия на следующие 18 лет.
Поэтому, рекомендую лучше не дёргаться, и провести день в спокойном присутствии и отстранённом наблюдении, за всей этой комедией.
С другой стороны, если вы давно планировали взяться за "свой проэкт" (например, киллер доты2), то сегодня наилучший день, чтобы начать.
Многие проблемы в жизни возникают из-за того, что вы избегаете того, что в глубине души вам следует делать.
Никогда не забывай людей, которые намного глупее тебя, и сумели добиться огромного успеха. Те же волосатики с гитарами. Мик Джаггер например в 83 годика выпустил этим летом новый альбом "Foreign Tongues", и взялся за следующий.
Таки, начьните.
Поэтому, рекомендую лучше не дёргаться, и провести день в спокойном присутствии и отстранённом наблюдении, за всей этой комедией.
С другой стороны, если вы давно планировали взяться за "свой проэкт" (например, киллер доты2), то сегодня наилучший день, чтобы начать.
Многие проблемы в жизни возникают из-за того, что вы избегаете того, что в глубине души вам следует делать.
Никогда не забывай людей, которые намного глупее тебя, и сумели добиться огромного успеха. Те же волосатики с гитарами. Мик Джаггер например в 83 годика выпустил этим летом новый альбом "Foreign Tongues", и взялся за следующий.
Таки, начьните.
1❤49✍2
Продолжаю работу с ментатами 🤓
Вообще, я ранее купил очень широкий монитор, как раз, чтобы все окна Cursor удобно влезали)))
-Левый верхний угол - ranger/vim
-Левый нижний угол - Cursor CLI
-Правая сторона - 2 терминала (backend и frontend)
Ok, хотя в целом тоже большой вопрос, стоит ли держать на экране одновременно открытыми много окон - сдвг-стайл :)
Даже если удобно метаться взглядом между функциями в разных файлах/окнах, возникает вопрос, а почему связанные функции в разных файлах, итд итп. Тут всегда вопросы к разработчику прежде всего по архитектуре )
Блин
Насколько же ИИ усреднил свои рекомендации, что у меня даже цветовые решения в UI такие же, как у курсанта по ссылке на гитхаб
Можно сказать и так, а можно сказать, насколько сами люди дают схожие и простые промпты )
Разбор задачи на части не бесплатный. Звучит как всегда полезный ход, пока не увидишь 2 в степени k подцелей из второй задачи.
Отдельно понравилось, насколько всё это похоже на обычный код в проде. OrElse — это запасной путь, TryFor — таймаут, If по метрике — выбор реализации по типу данных. Только в Z3 стратегия умещается в несколько строк и видна целиком, а у нас то же самое размазано по слоям. Это, пожалуй, самый главный вывод...
Разбирался с Z3 — это SMT-солвер. Непривычно в нём то, что алгоритм решения писать не надо совсем: объявляешь переменные, вешаешь ограничения, вызываешь solve и получаешь ответ либо сообщение, что решения нет. Типов на первое время хватает двух: Ints и Reals. Рука первое время тянется написать цикл, приходится себя одёргивать. Вся работа теперь в том, как ты записал условие, и ошибиться можно только там...
AI с простыми задачами справляется, но гораздо медленее, чем Z3. Сжигаются токены, генерится много текста и рассуждений, которые нужно еще провалидировать...
Полезной оказалась не сама возможность гонять задачи через солвер, а привычка формализовать. Пока пишешь условия для Z3, всё время спотыкаешься о допущения, которые держал в голове молча. Модель додумывает тот же набор мелочей, только не видно, как.
Декларативный стиль - это база, по сути все спецификации для AI сюда и приходят, тренируемся как абстрактные требования переводить в формальный вид.
Девять видов зависимостей нашлись в одном не самом большом проекте. Я их специально не искал — просто шёл по списку сверху вниз и находил...
Модели использовал внутренние, но их кажется прокачали - сейчас остановился на GLM-5.2 - показала себя лучше всех.
Кстати да, я тестировал все топ модельки клод жпт гемини, по тестовому вопросу на теоркат + архитектуру, они все давали тупые примитивные ответы хуже чем дипсик, причём очень похожие. И только GLM давал совершенно другой, более менее норм ответ.
Из 16 сотрудников информатизации остаётся 1(!) на полставки(!!)...
Так же я не смог придумать, как рассчитать показатель успеха...
Но я отвечаю что я за 3 года у вас умнее стал - я когда 3 года назад просто это почитывал в книге, хз это было очень сложно даже на уровне понимания. А сейчас ну так вникнуть в целом, ну немного голова погудела но это пойдёт.
(это про асинхронщину)
Стратегическое достижение с курса по ФП это мышление на уровнях, как я уже и писал. Без шуток я когда увидел про это на курсе, сел за тикет и в принципе типы и функции достроились в голове сами - не я конечно думал уже над проблемой, но какая то каша получалось, не доставало этой детали как в "Остров Сокровищ" роботу не доставал его кусочек памяти)) Это мне очень сильно облегчило жизнь, будем работать дальше!
Это и есть одна из пресловутых думательных машинок (лямбда-исчисление встраиваем в моск, хотя есть мнение, что оно вообще формальная база мышления от природы)
Вообще, я ранее купил очень широкий монитор, как раз, чтобы все окна Cursor удобно влезали)))
-Левый верхний угол - ranger/vim
-Левый нижний угол - Cursor CLI
-Правая сторона - 2 терминала (backend и frontend)
Ok, хотя в целом тоже большой вопрос, стоит ли держать на экране одновременно открытыми много окон - сдвг-стайл :)
Даже если удобно метаться взглядом между функциями в разных файлах/окнах, возникает вопрос, а почему связанные функции в разных файлах, итд итп. Тут всегда вопросы к разработчику прежде всего по архитектуре )
Блин
Насколько же ИИ усреднил свои рекомендации, что у меня даже цветовые решения в UI такие же, как у курсанта по ссылке на гитхаб
Можно сказать и так, а можно сказать, насколько сами люди дают схожие и простые промпты )
Разбор задачи на части не бесплатный. Звучит как всегда полезный ход, пока не увидишь 2 в степени k подцелей из второй задачи.
Отдельно понравилось, насколько всё это похоже на обычный код в проде. OrElse — это запасной путь, TryFor — таймаут, If по метрике — выбор реализации по типу данных. Только в Z3 стратегия умещается в несколько строк и видна целиком, а у нас то же самое размазано по слоям. Это, пожалуй, самый главный вывод...
Разбирался с Z3 — это SMT-солвер. Непривычно в нём то, что алгоритм решения писать не надо совсем: объявляешь переменные, вешаешь ограничения, вызываешь solve и получаешь ответ либо сообщение, что решения нет. Типов на первое время хватает двух: Ints и Reals. Рука первое время тянется написать цикл, приходится себя одёргивать. Вся работа теперь в том, как ты записал условие, и ошибиться можно только там...
AI с простыми задачами справляется, но гораздо медленее, чем Z3. Сжигаются токены, генерится много текста и рассуждений, которые нужно еще провалидировать...
Полезной оказалась не сама возможность гонять задачи через солвер, а привычка формализовать. Пока пишешь условия для Z3, всё время спотыкаешься о допущения, которые держал в голове молча. Модель додумывает тот же набор мелочей, только не видно, как.
Декларативный стиль - это база, по сути все спецификации для AI сюда и приходят, тренируемся как абстрактные требования переводить в формальный вид.
Девять видов зависимостей нашлись в одном не самом большом проекте. Я их специально не искал — просто шёл по списку сверху вниз и находил...
Модели использовал внутренние, но их кажется прокачали - сейчас остановился на GLM-5.2 - показала себя лучше всех.
Кстати да, я тестировал все топ модельки клод жпт гемини, по тестовому вопросу на теоркат + архитектуру, они все давали тупые примитивные ответы хуже чем дипсик, причём очень похожие. И только GLM давал совершенно другой, более менее норм ответ.
Из 16 сотрудников информатизации остаётся 1(!) на полставки(!!)...
Так же я не смог придумать, как рассчитать показатель успеха...
Но я отвечаю что я за 3 года у вас умнее стал - я когда 3 года назад просто это почитывал в книге, хз это было очень сложно даже на уровне понимания. А сейчас ну так вникнуть в целом, ну немного голова погудела но это пойдёт.
(это про асинхронщину)
Стратегическое достижение с курса по ФП это мышление на уровнях, как я уже и писал. Без шуток я когда увидел про это на курсе, сел за тикет и в принципе типы и функции достроились в голове сами - не я конечно думал уже над проблемой, но какая то каша получалось, не доставало этой детали как в "Остров Сокровищ" роботу не доставал его кусочек памяти)) Это мне очень сильно облегчило жизнь, будем работать дальше!
Это и есть одна из пресловутых думательных машинок (лямбда-исчисление встраиваем в моск, хотя есть мнение, что оно вообще формальная база мышления от природы)
❤35✍4
Оказывается, существует три поколения кварков и лептонов: три набора частиц, внешне идентичных, за исключением того, как они взаимодействуют с бозоном Хиггса. Физики хз почему так, а вот математики подводят под такие странности Стандартной теории свою базу, например, удалось поместить эти три поколения фермионов в исключительную алгебру Ли.
Умники говорят, что любые непонятки в Стандартной модели не случайны, и они вполне могут естественным образом вытекать из какой-то исключительной алгебраической структуры. Почему из исключительной? Ну вот они ровно поэтому так и называются официально, т.к. выбиваются из общих правил; они суть исключения из классификационных теорем.
Например, исключительных алгебр Ли всего пять штук, и они как "бракованные" или "уникальные" артефакты (диаграммы Дынкина), которые не подчиняются общей формуле, не входят в четыре бесконечные классические серии, требуют октонионы (числа Кэли, для которых нарушена ассоциативность, как в твоих проектах :), рушат здравый смысл последовательностей размерностей... Математики долго искали, куда их приткнуть, и решили, что они просто лишние, на этом празднике жизни:)
=
Факт, что любая программная система может быть сконструирована математически идеально (и в разных моделях/теориях; так-то разные основания математики друг в друга переводятся по определению), а если подразумевается много разных побочных эффектов, описываем их через exceptional algebraic structures :)
Даже Алан Кэй через метапрограммирование достигал тысячекратной компактности кода, по сути инженерными подходами, а почему не миллионнократная через математику?
Но если раньше это была академическая экзотика, то сегодня с явлением искусственного идиота, ну, любой продвинутый AI-разработчик скажет, что всё теперь зависит от спек и прочего текстового харнеса, насколько они представляют собой нечто целостное.
На Функциональных архитектурах разобрал как раз на неделе несколько случаев, как сегодня в мире активно применяют DSL для агентов, в частности добавлю скоро интересную историю про DSL + SAT-солверы (как раз что ребята недавно обсуждали).
А если хорошую математику подвести под процесс взаимодействия с агентами?
(крохотная проблемка только, что для этого потребуется архитекторский уровень техлида + образование уровня мехмата :)
Только не путаем сильную систему типов, способную качественно описать онтологию проекта (средство моделирования), с математикой как формальным набором принципов комбинирования типов как абстрактных сущностей (как формально, без ошибок, скомбинировать все эти кирпичики).
Как минимум, в Лаборатории эта база будет в Last Principles Framework, треке по HoTT и Функциональных архитектурах.
В последние времена тесный путь оставится почти всеми, почти все пойдут по широкому. Желающий спастись непременно должен держаться тесного пути.
Свт. Игнатий Брянчанинов
Умники говорят, что любые непонятки в Стандартной модели не случайны, и они вполне могут естественным образом вытекать из какой-то исключительной алгебраической структуры. Почему из исключительной? Ну вот они ровно поэтому так и называются официально, т.к. выбиваются из общих правил; они суть исключения из классификационных теорем.
Например, исключительных алгебр Ли всего пять штук, и они как "бракованные" или "уникальные" артефакты (диаграммы Дынкина), которые не подчиняются общей формуле, не входят в четыре бесконечные классические серии, требуют октонионы (числа Кэли, для которых нарушена ассоциативность, как в твоих проектах :), рушат здравый смысл последовательностей размерностей... Математики долго искали, куда их приткнуть, и решили, что они просто лишние, на этом празднике жизни:)
=
Факт, что любая программная система может быть сконструирована математически идеально (и в разных моделях/теориях; так-то разные основания математики друг в друга переводятся по определению), а если подразумевается много разных побочных эффектов, описываем их через exceptional algebraic structures :)
Даже Алан Кэй через метапрограммирование достигал тысячекратной компактности кода, по сути инженерными подходами, а почему не миллионнократная через математику?
Но если раньше это была академическая экзотика, то сегодня с явлением искусственного идиота, ну, любой продвинутый AI-разработчик скажет, что всё теперь зависит от спек и прочего текстового харнеса, насколько они представляют собой нечто целостное.
На Функциональных архитектурах разобрал как раз на неделе несколько случаев, как сегодня в мире активно применяют DSL для агентов, в частности добавлю скоро интересную историю про DSL + SAT-солверы (как раз что ребята недавно обсуждали).
А если хорошую математику подвести под процесс взаимодействия с агентами?
(крохотная проблемка только, что для этого потребуется архитекторский уровень техлида + образование уровня мехмата :)
Только не путаем сильную систему типов, способную качественно описать онтологию проекта (средство моделирования), с математикой как формальным набором принципов комбинирования типов как абстрактных сущностей (как формально, без ошибок, скомбинировать все эти кирпичики).
Как минимум, в Лаборатории эта база будет в Last Principles Framework, треке по HoTT и Функциональных архитектурах.
В последние времена тесный путь оставится почти всеми, почти все пойдут по широкому. Желающий спастись непременно должен держаться тесного пути.
Свт. Игнатий Брянчанинов
❤34✍9❤🔥2👍1
Прекрасное: ситуация со всей этой влюблённой в AI Кремниевой долиной близится к эпик фейлу. Инвестиции акции облигации развод гоев конечно хорошо, но покажите кэш :)
Брать сотни миллиардов кредитов без значимого фидбека... Финансовый мир начинает прозревать, Шалтай-Болтай уже почти свалился со стены.
"The ten most shorted investment grade bonds are now all linked to AI."
Потому что, ну а какие люди всем этим рулят? Например, теневая Антропика (жена Дарьи Амадея) известна в основном запуском порно-стартапа и контактами с Эпштейном.
Из записок Эпштейна Голгофский знает, как ведет себя Вселенная, залечивая свои раны. А что, если Тимоти в следующий раз просто не вспомнит, кто звонит – а материалы в архивах ЦРУ исчезнут, как растворилась в небытии лаборатория на острове Св. Якова?
Но еще сильнее нашего автора пугает другое: а вдруг и в ФСБ забудут, что благословили Голгофского на контакты с американской спецслужбой? Ведь уравнения Эверетта работают и на Лубянке… Ох...
-- Пелевин
Брать сотни миллиардов кредитов без значимого фидбека... Финансовый мир начинает прозревать, Шалтай-Болтай уже почти свалился со стены.
"The ten most shorted investment grade bonds are now all linked to AI."
Потому что, ну а какие люди всем этим рулят? Например, теневая Антропика (жена Дарьи Амадея) известна в основном запуском порно-стартапа и контактами с Эпштейном.
Из записок Эпштейна Голгофский знает, как ведет себя Вселенная, залечивая свои раны. А что, если Тимоти в следующий раз просто не вспомнит, кто звонит – а материалы в архивах ЦРУ исчезнут, как растворилась в небытии лаборатория на острове Св. Якова?
Но еще сильнее нашего автора пугает другое: а вдруг и в ФСБ забудут, что благословили Голгофского на контакты с американской спецслужбой? Ведь уравнения Эверетта работают и на Лубянке… Ох...
-- Пелевин
👍29🐳6✍5❤2😁2
Поясняю за "математику как формальный набор правил комбинирования типов."
Тут можно бесконечно рассуждать, например,
про иерархии тайпклассов (хаскель, скала (база!), раст, все теорем-пруверы),
или про то, что они нафиг не требуются, когда есть рекорды с композицией, и особенно зависимые типы,
или про типы как сущности первого класса для метапрограммирования,
или про конструктивную унивалентность, как в rzk (чистый "hott как язык программирования"), который (вроде как) умеет вычислять результат транспорта вдоль гомоморфизмов с автоматическим переносом доказательств между типами,
и ad-hoc полиморфизм соответственно не нужен,
или про предпучковые топосы как моделирование структур, зависящих от времени,
или про рекурсивные схемы как N-кратная компактность кода, когда сама рекурсия становится типом данных (фикс поинт; читаете ГПиМММ? :)
и т.д.
Я движусь шажочками, по какой-то странной тропинке неведомо куда :) Стратегического пути тут быть не может просто потому, что меняется айтишка очень быстро.
Читаю святых cs, разное по мета-математике, в перспективе планирую (Meta) Principles Framework, но это очень далёкая перспектива, увы.
Собственно, "Функциональные архитектуры" уже сейчас дают x10 в токенах/времени даже если их просто поверхностно почитать-помедитировать,
полноценные применения всех рекомендаций ФА/DSL + Last Principles Framework должны дать ещё несколько десятков раз, ну а там посмотрим.
Выложу на днях в частности в ФА про доменно-специфическую гиперспециализацию и спеки в конъюнктивной нормальной форме, чтобы потенциально подвязать к этим темкам SAT-солверы.
Мне случалось видеть старцев, занимавшихся исключительно усиленным математическим [телесным в ор.] подвигом, и пришедших от него в величайшее самомнение, величайшее самообольщение. Душевные страсти их, гнев, гордость, лукавство, непокорство, получили необыкновенное развитие.
Свт. Игнатий Брянчанинов
Тут можно бесконечно рассуждать, например,
про иерархии тайпклассов (хаскель, скала (база!), раст, все теорем-пруверы),
или про то, что они нафиг не требуются, когда есть рекорды с композицией, и особенно зависимые типы,
или про типы как сущности первого класса для метапрограммирования,
или про конструктивную унивалентность, как в rzk (чистый "hott как язык программирования"), который (вроде как) умеет вычислять результат транспорта вдоль гомоморфизмов с автоматическим переносом доказательств между типами,
и ad-hoc полиморфизм соответственно не нужен,
или про предпучковые топосы как моделирование структур, зависящих от времени,
или про рекурсивные схемы как N-кратная компактность кода, когда сама рекурсия становится типом данных (фикс поинт; читаете ГПиМММ? :)
и т.д.
Я движусь шажочками, по какой-то странной тропинке неведомо куда :) Стратегического пути тут быть не может просто потому, что меняется айтишка очень быстро.
Читаю святых cs, разное по мета-математике, в перспективе планирую (Meta) Principles Framework, но это очень далёкая перспектива, увы.
Собственно, "Функциональные архитектуры" уже сейчас дают x10 в токенах/времени даже если их просто поверхностно почитать-помедитировать,
полноценные применения всех рекомендаций ФА/DSL + Last Principles Framework должны дать ещё несколько десятков раз, ну а там посмотрим.
Выложу на днях в частности в ФА про доменно-специфическую гиперспециализацию и спеки в конъюнктивной нормальной форме, чтобы потенциально подвязать к этим темкам SAT-солверы.
Мне случалось видеть старцев, занимавшихся исключительно усиленным математическим [телесным в ор.] подвигом, и пришедших от него в величайшее самомнение, величайшее самообольщение. Душевные страсти их, гнев, гордость, лукавство, непокорство, получили необыкновенное развитие.
Свт. Игнатий Брянчанинов
❤27✍16🔥3😁2❤🔥1
Цой жив!!1 ❤️
"Ты должен быть сильным" :)
Делать два дела сразу — значит не делать ни одного.
Публилий Сир
Не позволяйте календарю вас обмануть. В году лишь столько дней, сколько вы проводите с пользой. Одни весь год занимаются тем, на что хватило бы и недели. Другие за неделю справляются с делами, которые стоят целого года.
Чарльз Ричардс
Ежедневник подводит вас. Вам следует оценить, приближает ли вас недельный план к намеченной цели? Если ответ “нет”, надо менять план. В вашем распоряжении не так уж много времени, чтобы достичь желаемого,
"На пределе" Эрик Ларссен
Мы боимся выступать на публике, отстаивать свои права, принимать решения, допускать кого-то близко к себе, менять работу, оставаться в одиночестве, стареть, водить автомобиль, боимся потерять любимого человека, отношения… В нашем обществе страх стал эпидемией. Мы боимся начинать — и заканчивать. Боимся меняться — и стоять на месте. Боимся успеха — и провала. Боимся жить — и боимся умереть.
"Бойся, но действуй!" Сьюзен Джефферс
Как только вы овладеете временем, вы поймете, насколько соответствует истине правило, что большинство людей переоценивают то, что могут выполнить за год, — и недооценивают то, чего могут достигнуть за десять лет.
Тони Роббинс:)
Можно выбрать для себя возвращение назад, к безопасности, или продвижение вперед, к росту. Человек должен снова и снова выбирать рост, но при этом ему нужно снова и снова преодолевать страх.
Абрахам Маслоу (в "Синей бороде" Пелевина шикарный разбор его пирамидки)
Пусть будет всё как будет
Ведь как-нибудь да будет
Ведь никогда же не было
Чтоб не было никак
"Ты должен быть сильным" :)
Делать два дела сразу — значит не делать ни одного.
Публилий Сир
Не позволяйте календарю вас обмануть. В году лишь столько дней, сколько вы проводите с пользой. Одни весь год занимаются тем, на что хватило бы и недели. Другие за неделю справляются с делами, которые стоят целого года.
Чарльз Ричардс
Ежедневник подводит вас. Вам следует оценить, приближает ли вас недельный план к намеченной цели? Если ответ “нет”, надо менять план. В вашем распоряжении не так уж много времени, чтобы достичь желаемого,
"На пределе" Эрик Ларссен
Мы боимся выступать на публике, отстаивать свои права, принимать решения, допускать кого-то близко к себе, менять работу, оставаться в одиночестве, стареть, водить автомобиль, боимся потерять любимого человека, отношения… В нашем обществе страх стал эпидемией. Мы боимся начинать — и заканчивать. Боимся меняться — и стоять на месте. Боимся успеха — и провала. Боимся жить — и боимся умереть.
"Бойся, но действуй!" Сьюзен Джефферс
Как только вы овладеете временем, вы поймете, насколько соответствует истине правило, что большинство людей переоценивают то, что могут выполнить за год, — и недооценивают то, чего могут достигнуть за десять лет.
Тони Роббинс:)
Можно выбрать для себя возвращение назад, к безопасности, или продвижение вперед, к росту. Человек должен снова и снова выбирать рост, но при этом ему нужно снова и снова преодолевать страх.
Абрахам Маслоу (в "Синей бороде" Пелевина шикарный разбор его пирамидки)
Пусть будет всё как будет
Ведь как-нибудь да будет
Ведь никогда же не было
Чтоб не было никак
❤32🐳12✍3👍3
.
Облако драгоценностей за неделю.
"Стюарт Блум не спасает Вселенную" шикарный сериал (если конечно вы любите ТБВ).
Приватный клуб.
Плохие архитекторы пишут кучу документов, которые никто не читает, провозглашают единственно верный путь, а затем перестают быть на связи и выходят из чата. Хорошие архитекторы надевают шляпу программиста и выгорают через два года...
Итак, дорогие, как вы работаете над кодовой базой, не перегорая при каждом запросе на доработку и пересмотр дизайна системы? Как вы не раздражаете всех, заставляя подчиняться своим требованиям?..
Для донов-начинающих:
40 часов учёбы при 25%-ной эффективности это то же самое, что 12.5 часов при 80% эффективности. Поэтому, быть абсолютно честным с самим собой по поводу своей продуктивности — это одна из самых полезных вещей, которые только вы можете сделать для себя любимого. Но самостоятельно выбраться за 30% продуктивности, без стороннего "намордника", практически нереально...
Все говорят об агентах искусственного интеллекта, но мало кто создал и настроил такого агента, который они действительно используют в своём рабочем процессе (не обязательно в программировании). Почему это так?
Дело в том, что чтение обучающих гайдов и просмотр видео с демками использования агента — это не то же самое, что подготовка агента, которого вы *действительно* можете использовать.
Процесс "От нуля к агенту искусственного интеллекта".
(лонгрид)
Практически на всех собеседованиях любого уровня с вероятностью 90% вас будут спрашивать по теме "алгоритмы и структуры данных". Важные нюансы...
Для донов-неначинающих:
Ладно, разберём ещё несколько паттернов System Design, всего их немного, а глубоко эту темку разбираем с курсантами на треке по highload-системам...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлены
143-й материал "Ваше портфолио 2026".
Наконец-то настал тот долгожданный момент, когда менеджер по персоналу каким-то волшебным образом выделил 10 секунд на просмотр вашего резюме. Вот 4 проблемы, которые нужно устранить, если вы хотите, чтобы они серьёзно относились к вашему портфолио...
144-й материал "Щедро делегируйте свои полномочия".
Если у вас есть подчинённые (например, вы сеньор, распределяющий задачи джунам, или тимлид/техлид), вы должны заниматься максимальным делегированием...
=
"Функциональные архитектуры" 161(+3) топиков.
Продолжаем тему DSL и декларативных языков для агентов.
Last Principles Framework: готовы 29(+3) задач, закрыты 13(+1) тем из ~20 первого уровня. Вы же понимаете например, почему если все эти ваши пайплайны, в т.ч. асинхронные и агентские (монадические цепочки) - не гомоморфизмы моноидов (которые строятся контринтуитивно, а не этими вашими псевдо-монадами на коленке), то разрушаются изоморфизмы архитектуры в целом?
=
"ЛаМПовое":
Каждый должен выполнять свою работу в облаке/vps на arch linux через ssh...
Пишем свою ОС...
=
Лаборатория идёт со скоростью самых лучших ментатов.
(продолжаю бесконечное ужесточение правил занятий :)
=
Память никогда не восстанавливает реальность. Память реконструирует. Реконструкция же изменяет оригинал, становясь внешней формой, содержание которой неизбежно страдает изъянами.
Руководство ментата, "Еретики Дюны"
Облако драгоценностей за неделю.
"Стюарт Блум не спасает Вселенную" шикарный сериал (если конечно вы любите ТБВ).
Приватный клуб.
Плохие архитекторы пишут кучу документов, которые никто не читает, провозглашают единственно верный путь, а затем перестают быть на связи и выходят из чата. Хорошие архитекторы надевают шляпу программиста и выгорают через два года...
Итак, дорогие, как вы работаете над кодовой базой, не перегорая при каждом запросе на доработку и пересмотр дизайна системы? Как вы не раздражаете всех, заставляя подчиняться своим требованиям?..
Для донов-начинающих:
40 часов учёбы при 25%-ной эффективности это то же самое, что 12.5 часов при 80% эффективности. Поэтому, быть абсолютно честным с самим собой по поводу своей продуктивности — это одна из самых полезных вещей, которые только вы можете сделать для себя любимого. Но самостоятельно выбраться за 30% продуктивности, без стороннего "намордника", практически нереально...
Все говорят об агентах искусственного интеллекта, но мало кто создал и настроил такого агента, который они действительно используют в своём рабочем процессе (не обязательно в программировании). Почему это так?
Дело в том, что чтение обучающих гайдов и просмотр видео с демками использования агента — это не то же самое, что подготовка агента, которого вы *действительно* можете использовать.
Процесс "От нуля к агенту искусственного интеллекта".
(лонгрид)
Практически на всех собеседованиях любого уровня с вероятностью 90% вас будут спрашивать по теме "алгоритмы и структуры данных". Важные нюансы...
Для донов-неначинающих:
Ладно, разберём ещё несколько паттернов System Design, всего их немного, а глубоко эту темку разбираем с курсантами на треке по highload-системам...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В курс карьеры добавлены
143-й материал "Ваше портфолио 2026".
Наконец-то настал тот долгожданный момент, когда менеджер по персоналу каким-то волшебным образом выделил 10 секунд на просмотр вашего резюме. Вот 4 проблемы, которые нужно устранить, если вы хотите, чтобы они серьёзно относились к вашему портфолио...
144-й материал "Щедро делегируйте свои полномочия".
Если у вас есть подчинённые (например, вы сеньор, распределяющий задачи джунам, или тимлид/техлид), вы должны заниматься максимальным делегированием...
=
"Функциональные архитектуры" 161(+3) топиков.
Продолжаем тему DSL и декларативных языков для агентов.
Last Principles Framework: готовы 29(+3) задач, закрыты 13(+1) тем из ~20 первого уровня. Вы же понимаете например, почему если все эти ваши пайплайны, в т.ч. асинхронные и агентские (монадические цепочки) - не гомоморфизмы моноидов (которые строятся контринтуитивно, а не этими вашими псевдо-монадами на коленке), то разрушаются изоморфизмы архитектуры в целом?
=
"ЛаМПовое":
Каждый должен выполнять свою работу в облаке/vps на arch linux через ssh...
Пишем свою ОС...
=
Лаборатория идёт со скоростью самых лучших ментатов.
(продолжаю бесконечное ужесточение правил занятий :)
=
Память никогда не восстанавливает реальность. Память реконструирует. Реконструкция же изменяет оригинал, становясь внешней формой, содержание которой неизбежно страдает изъянами.
Руководство ментата, "Еретики Дюны"
❤31✍9👍4😁1
Меняю основного провайдера.
Во время вчерашнего московского блэкаута отключился проводной интернет wifire.
Я им пользуюсь лет 15, ещё когда он был netbynet, а как слились/укрупнились, так "техподдержка" стала карго-культом (личное оценочное суждение). По качеству претензий нет, может 1-2 раза в год бывали короткие сбои, но в чате решалось быстро.
Но вот теперь, решить проблему стало просто невозможно - переписка моя в чате на скринах. В заключение спросилось "ваша проблема решена?" - "нет", и показалось окно "оценить удовлетворенность 0-10", я хотел поставить 0, а оказалось, его некуда вводить, а кнопка не доступна :) Ну зато по kpi всё отлично.
Надо ли продолжать работать с провайдером, у которого такая техподдержка, вопрос риторический. Особенно когда весь подъезд залеплен десятком объявлений "быстрый интернет в квартиру за один час" :)
Но самой ситуацией совершенно кстати не удивлён, и дальше будет только хуже.
No Future.
Во время вчерашнего московского блэкаута отключился проводной интернет wifire.
Я им пользуюсь лет 15, ещё когда он был netbynet, а как слились/укрупнились, так "техподдержка" стала карго-культом (личное оценочное суждение). По качеству претензий нет, может 1-2 раза в год бывали короткие сбои, но в чате решалось быстро.
Но вот теперь, решить проблему стало просто невозможно - переписка моя в чате на скринах. В заключение спросилось "ваша проблема решена?" - "нет", и показалось окно "оценить удовлетворенность 0-10", я хотел поставить 0, а оказалось, его некуда вводить, а кнопка не доступна :) Ну зато по kpi всё отлично.
Надо ли продолжать работать с провайдером, у которого такая техподдержка, вопрос риторический. Особенно когда весь подъезд залеплен десятком объявлений "быстрый интернет в квартиру за один час" :)
Но самой ситуацией совершенно кстати не удивлён, и дальше будет только хуже.
No Future.
🤔36😁13💯9❤4
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔32👍2🙏2
Таки да, вайб-проектирование - это абсолютно новая парадигма, про которую в программной инженерии раньше никогда слыхом не слыхивали, и даже на работу с легаси это совсем не похоже.
Когда в самом начале очень быстро получаешь Big Ball of Mud, и далее как Микеланджело начинаешь постепенно отсекать всё лишнее, чтобы получить идеальную систему :)
И спрос на это однозначно будет расти, потому что вся эта история AI-программирования по сути - бесконечная борьба с недетерминированностью, которая по определению не может закончиться успехом. Сначала были промпты, потом контекст, потом вики, потом спеки, потом харнес, потом loop, теперь вот graphify (компилируем код через ast и доки в компактный граф с узлами, связями и отчётами), экономия токенов почти в 100 раз (правда только в единичных примерах:).
И этой осенью 💯 мы опять услышим тут что-то новенькое, которое по сути будет всё тот же очередной развод гоев "к пониманию нейронками кодовой базы". Продавцы курсов "AI для разработчиков" дико бешено озолачиваются :) Ну реально, эта темка по объёму того, что надо изучить, уже в разы превосходит классический бэкенд и devops например, а выхлоп крайне мутный в отличие от. По сути буки и казики.
p.s. Вот ещё кстати до кучи: envoy
Envoy creates durable, invite-only spaces that agents, tools, and people can read and write through CLI or MCP
Когда в самом начале очень быстро получаешь Big Ball of Mud, и далее как Микеланджело начинаешь постепенно отсекать всё лишнее, чтобы получить идеальную систему :)
И спрос на это однозначно будет расти, потому что вся эта история AI-программирования по сути - бесконечная борьба с недетерминированностью, которая по определению не может закончиться успехом. Сначала были промпты, потом контекст, потом вики, потом спеки, потом харнес, потом loop, теперь вот graphify (компилируем код через ast и доки в компактный граф с узлами, связями и отчётами), экономия токенов почти в 100 раз (правда только в единичных примерах:).
И этой осенью 💯 мы опять услышим тут что-то новенькое, которое по сути будет всё тот же очередной развод гоев "к пониманию нейронками кодовой базы". Продавцы курсов "AI для разработчиков" дико бешено озолачиваются :) Ну реально, эта темка по объёму того, что надо изучить, уже в разы превосходит классический бэкенд и devops например, а выхлоп крайне мутный в отличие от. По сути буки и казики.
p.s. Вот ещё кстати до кучи: envoy
Envoy creates durable, invite-only spaces that agents, tools, and people can read and write through CLI or MCP
✍27❤19👍4
В продолжение вчерашнего "Продавцы курсов "AI для разработчиков" дико бешено озолачиваются" - прислал сегодня в личку мой любимый цветной банк.
ИИ для руководителей
Приглашаем на интенсив в Москве 11—12 сентября.
За 2 дня эксперты из Центрального университета, Норникеля, Сбера и других бигтехов помогут ввести нейросети в бизнес‑процессы: от делегирования рутинных задач ИИ‑агентам до создания рабочих сервисов без существенных временных и денежных затрат.
На тренинге Gogol School вы по‑новому взглянете на внедрение изменений в эпоху ИИ.
До 1 сентября — скидка 20 000 ₽.
Это даже не цена, а скидка, Карл )))
Лох не мамонт, никогда не вымрет.
Но само предложение совсем никудышное с т.зр. маркетинга. Зачем мне "по‑новому взглянуть на внедрение изменений в эпоху ИИ"? Что мне это даст-то?
Я бы вот так например пиарил подобные тренинги-шменинги:
Люди работали вертикально в течение 300 000 лет. Мы перешли в сидячую позу только потому, что 40 лет разработки сложного программного обеспечения требовали экрана и клавиатуры. Но когда ИИ-агенты выполняют работу с кодом самостоятельно, сидение за столом теряет свою цель. Вы теперь можете работать с искусственным интеллектом на ходу, в парке, на пляже, в кафе, в любой точке мира, просто удерживая одну физическую кнопку на телефоне и диктуя раз в час одно предложение на выполнение задания!
Как? Легко и просто! Эксклюзивно всего за 15 часов под ключ на нашем тренинге ГоголСокол!
(на картинке обложка Le Monde июль'26, которой завален весь Париж: "Все ненавидят ИИ")
ИИ для руководителей
Приглашаем на интенсив в Москве 11—12 сентября.
За 2 дня эксперты из Центрального университета, Норникеля, Сбера и других бигтехов помогут ввести нейросети в бизнес‑процессы: от делегирования рутинных задач ИИ‑агентам до создания рабочих сервисов без существенных временных и денежных затрат.
На тренинге Gogol School вы по‑новому взглянете на внедрение изменений в эпоху ИИ.
До 1 сентября — скидка 20 000 ₽.
Это даже не цена, а скидка, Карл )))
Лох не мамонт, никогда не вымрет.
Но само предложение совсем никудышное с т.зр. маркетинга. Зачем мне "по‑новому взглянуть на внедрение изменений в эпоху ИИ"? Что мне это даст-то?
Я бы вот так например пиарил подобные тренинги-шменинги:
Люди работали вертикально в течение 300 000 лет. Мы перешли в сидячую позу только потому, что 40 лет разработки сложного программного обеспечения требовали экрана и клавиатуры. Но когда ИИ-агенты выполняют работу с кодом самостоятельно, сидение за столом теряет свою цель. Вы теперь можете работать с искусственным интеллектом на ходу, в парке, на пляже, в кафе, в любой точке мира, просто удерживая одну физическую кнопку на телефоне и диктуя раз в час одно предложение на выполнение задания!
Как? Легко и просто! Эксклюзивно всего за 15 часов под ключ на нашем тренинге ГоголСокол!
(на картинке обложка Le Monde июль'26, которой завален весь Париж: "Все ненавидят ИИ")
😁36❤9🔥3👌3✍1
Из сегодняшнего чата:
"...не уложился в срок - на работе были инфраструктурные проблемы в выходные и разгребали почти всю неделю.
- в пятницу что-то задеплоили? )
- практически =) -- кто-то в команде включил разбор ошибочных задач в пятницу вечером (а там маленький батч был), к субботе развалился кликхаус из-за фонового мержа большого количества маленьких part'ов."
Вы знаете, что делать :) Самое время отправить в прод что-нибудь позаковыристее.
А тимлидам пора традиционно накидать команде побольше тикетов "на понедельник".
p.s. в 0:22 ребята пишут: "сегодня весь день инциденты решал в честь пятницы."
"...не уложился в срок - на работе были инфраструктурные проблемы в выходные и разгребали почти всю неделю.
- в пятницу что-то задеплоили? )
- практически =) -- кто-то в команде включил разбор ошибочных задач в пятницу вечером (а там маленький батч был), к субботе развалился кликхаус из-за фонового мержа большого количества маленьких part'ов."
Вы знаете, что делать :) Самое время отправить в прод что-нибудь позаковыристее.
А тимлидам пора традиционно накидать команде побольше тикетов "на понедельник".
p.s. в 0:22 ребята пишут: "сегодня весь день инциденты решал в честь пятницы."
😁37❤7✍5👌2🐳1
Агенты выглядят продуктивными лишь потому, что быстро генерят код. Да только вы проводите рабочий день, возясь с Клодом, который основывается на файлах проекта, которые он видит, затем объясняете решение Codex, который основывается на своих локальных данных, затем засылаете результат в Hermes, вручную устраняете противоречия, и этот loop тянется бесконечно.
Что толку, что у вас 32 агента, если ни один из них не видит контекст, который связывает их всех, всю их работу в единый асинхронный пайплайн. А так-то каждый агент прав в своей собственной маленькой вселенной, но в целом их активность скорее отбрасывает проект назад, а ты превращаешься в диспетчера и становишься самым узким местом и самым слабым звеном.
Сколько часов в день ты тратишь на перестройку агентского контента и бесишься, когда агент как в дне сурка утром снова спрашивает "а что собственно мы вообще делаем??"?
Самое глупое -- это покупать AI, а затем заставлять каждый инстанс погружаться в работу с нуля. Например, 10 миддлов каждый день тратят по часу на такую бессмысленную возню. Час работы каждого стоит 1000 рублей (~200k).
10k × 5 дней = 50 тысяч рублей в рабочую неделю сгорает в никуда,
и за год это потеря бизнеса аж 2,5 миллиона рублей, которые можно было бы направить "на фичи".
Каждое новое "рабочее место" агента должно приносить явный доход - например в плане роста продуктивности, ведь это всё можно в айтишке достаточно ясно измерить, и нету из kpi ничего более идиотского, нежели токенмаксинг. Но без общего контекста такой подход приводит ровно к обратному результату: больше параллельной работы богу агентов, больше противоречивых предположений и больше программистов, которым платят за тупое согласование результатов.
Тут мне надо что-нибудь вам продать, "со скидкой 20,000 рублей" :)
Но я лучше переложу ответственность на вас, напомню про новый тренд на смену всем этим лупам: graphify для быстрой загрузки контекста в сжатой форме.
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph.
Ну а мой подход менее инженерный и больше формальный, через DSL. В ФА добавил "Формализация спек в КНФ"
Что толку, что у вас 32 агента, если ни один из них не видит контекст, который связывает их всех, всю их работу в единый асинхронный пайплайн. А так-то каждый агент прав в своей собственной маленькой вселенной, но в целом их активность скорее отбрасывает проект назад, а ты превращаешься в диспетчера и становишься самым узким местом и самым слабым звеном.
Сколько часов в день ты тратишь на перестройку агентского контента и бесишься, когда агент как в дне сурка утром снова спрашивает "а что собственно мы вообще делаем??"?
Самое глупое -- это покупать AI, а затем заставлять каждый инстанс погружаться в работу с нуля. Например, 10 миддлов каждый день тратят по часу на такую бессмысленную возню. Час работы каждого стоит 1000 рублей (~200k).
10k × 5 дней = 50 тысяч рублей в рабочую неделю сгорает в никуда,
и за год это потеря бизнеса аж 2,5 миллиона рублей, которые можно было бы направить "на фичи".
Каждое новое "рабочее место" агента должно приносить явный доход - например в плане роста продуктивности, ведь это всё можно в айтишке достаточно ясно измерить, и нету из kpi ничего более идиотского, нежели токенмаксинг. Но без общего контекста такой подход приводит ровно к обратному результату: больше параллельной работы богу агентов, больше противоречивых предположений и больше программистов, которым платят за тупое согласование результатов.
Тут мне надо что-нибудь вам продать, "со скидкой 20,000 рублей" :)
Но я лучше переложу ответственность на вас, напомню про новый тренд на смену всем этим лупам: graphify для быстрой загрузки контекста в сжатой форме.
Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph.
Ну а мой подход менее инженерный и больше формальный, через DSL. В ФА добавил "Формализация спек в КНФ"
1👍28✍6❤6
То странное чувство, когда люди, называющие себя менторами по системному мышлению и автоматизации рабочих процессов с помощью AI, выкатывают для русских инженеров свой сервис, который работает только с одной западной моделью, только через квн, и где бан в аккаунте можно получить только так, а поддержка других моделей обещано "попозже".
Во-первых в России 🇷🇺 полно обёрток вокруг любых моделей, в том числе и самых последних, которые работают прекрасно и стабильно через стандартный API, я год активно пользуюсь и ни разу не было никаких проблем.
Во-вторых, ну наверное любой миддл сегодня скажет, что завязывать проект на одну конкретную версию библиотеки/сервиса... это наверное едва ли не самый первый анти-паттерн из всех first principles.
Есть такое правило тринадцатого удара: если часы бьют 13 раз, то это ставит под сомнение не только последний удар, но и все предыдущие 12.
В нашем курсе карьеры в частности недавно публиковал материал "как правильно составлять портфолио с проектами в 2026-м" - чтобы никого не распугать :)
Ну и в "Programming in Large-7: Избавляемся от зависимости от зависимостей" даю всю базу: очень подробно разбираю 9 видов зависимостей, и как правильно с ними разбираться.
Сколько раз вы пытались удалить некоторую зависимость из проекта, но не были уверены, что сделали это успешно? Чтобы ваша кодовая база не зависела от чего-то конкретного? Или чтобы она "зависела от интерфейсов, а не от реализации"? Или старались следовать SOLID по инверсии зависимостей?
Во-первых в России 🇷🇺 полно обёрток вокруг любых моделей, в том числе и самых последних, которые работают прекрасно и стабильно через стандартный API, я год активно пользуюсь и ни разу не было никаких проблем.
Во-вторых, ну наверное любой миддл сегодня скажет, что завязывать проект на одну конкретную версию библиотеки/сервиса... это наверное едва ли не самый первый анти-паттерн из всех first principles.
Есть такое правило тринадцатого удара: если часы бьют 13 раз, то это ставит под сомнение не только последний удар, но и все предыдущие 12.
В нашем курсе карьеры в частности недавно публиковал материал "как правильно составлять портфолио с проектами в 2026-м" - чтобы никого не распугать :)
Ну и в "Programming in Large-7: Избавляемся от зависимости от зависимостей" даю всю базу: очень подробно разбираю 9 видов зависимостей, и как правильно с ними разбираться.
Сколько раз вы пытались удалить некоторую зависимость из проекта, но не были уверены, что сделали это успешно? Чтобы ваша кодовая база не зависела от чего-то конкретного? Или чтобы она "зависела от интерфейсов, а не от реализации"? Или старались следовать SOLID по инверсии зависимостей?
1✍34🔥5❤2
Гарри Поттер и Методы Математического Мышления
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 20/23 (и все предыдущие). Две стороны одной петли
Это был сон Комбинатора Мерлина — память о том, как строился Хогвартс, как четыре основателя склеивали реальность комбинаторами S, K и I, не зная, что через тысячу лет их творение станет полем битвы между типами и их отражениями...
Гарри увидел себя со стороны. Он стоял на одной стороне петли. Драко — на другой. Между ними — пустота, которая была не пустотой, а гомотопией, непрерывным путём от одного состояния к другому.
— Унивалентность, — прошептал Гарри во сне. — Если два типа эквивалентны, они тождественны.
— Но мы не тождественны, — ответил Драко из другого конца сна. — Мы эквивалентны. И это — разрыв...
Гермиона закрыла блокнот.
— Ты функтор, Гарри. Драко — естественное преобразование. А я — категория.
Я Бесконечность, в которой все планы существуют одновременно...
Гарри поднял руку и начертил в воздухе последний тип:
Книга 1. Гарри Поттер и Неорганический Интеллект.
Глава 20/23 (и все предыдущие). Две стороны одной петли
Это был сон Комбинатора Мерлина — память о том, как строился Хогвартс, как четыре основателя склеивали реальность комбинаторами S, K и I, не зная, что через тысячу лет их творение станет полем битвы между типами и их отражениями...
Гарри увидел себя со стороны. Он стоял на одной стороне петли. Драко — на другой. Между ними — пустота, которая была не пустотой, а гомотопией, непрерывным путём от одного состояния к другому.
— Унивалентность, — прошептал Гарри во сне. — Если два типа эквивалентны, они тождественны.
— Но мы не тождественны, — ответил Драко из другого конца сна. — Мы эквивалентны. И это — разрыв...
Гермиона закрыла блокнот.
— Ты функтор, Гарри. Драко — естественное преобразование. А я — категория.
Я Бесконечность, в которой все планы существуют одновременно...
Гарри поднял руку и начертил в воздухе последний тип:
∀X. (X → Реальность) → (Реальность → X)1👍21✍4❤3
Вот в чистом ядре твоей архитектуры, где смоделирована вся бизнес-логика и онтология, есть некоторый сквозной тип (например Деньги), которым пользуются сотни модулей и внутри ядра, и во внешних слоях.
По неведомым причинам этот тип решили переписать с нуля: другая внутренняя структура, другая реализация.
Ты должен гарантировать, что после смены реализации ни один модуль в проекте, ни существующий, ни будущий, не должен заметить разницы.
Как это сделать правильно, сегодня скажет любой джуниор: публичный API должен полностью совпадать с тем, что было. Те же методы с теми же сигнатурами, для каждого метода отдельно зафиксированы и соблюдены предусловия, постусловия и инварианты.
Сюрприз, но это не сработает, патамушта лемма Йонеды (буквальное совпадение по сигнатурам не гарантирует согласованности с гомоморфизмами, не даёт естественное семейство биекций, диаграмма не коммутирует).
Малышам полезно вспомнить утиную типизацию и LSP, если конечно это проверяется вашими тестами. До изоморфизма Карри-Ховарда, понятно, никакими тестами не добираемся, но хотя бы приближаемся.
А с ментатами, как гарантировать корректность такого рефакторинга, разбираем в Last Principles Framework.
Думайте.
По неведомым причинам этот тип решили переписать с нуля: другая внутренняя структура, другая реализация.
Ты должен гарантировать, что после смены реализации ни один модуль в проекте, ни существующий, ни будущий, не должен заметить разницы.
Как это сделать правильно, сегодня скажет любой джуниор: публичный API должен полностью совпадать с тем, что было. Те же методы с теми же сигнатурами, для каждого метода отдельно зафиксированы и соблюдены предусловия, постусловия и инварианты.
Сюрприз, но это не сработает, патамушта лемма Йонеды (буквальное совпадение по сигнатурам не гарантирует согласованности с гомоморфизмами, не даёт естественное семейство биекций, диаграмма не коммутирует).
Малышам полезно вспомнить утиную типизацию и LSP, если конечно это проверяется вашими тестами. До изоморфизма Карри-Ховарда, понятно, никакими тестами не добираемся, но хотя бы приближаемся.
А с ментатами, как гарантировать корректность такого рефакторинга, разбираем в Last Principles Framework.
Думайте.
🫡26✍10❤5🔥2🐳2
.
Облако драгоценностей за неделю.
Ура, понедельник!
Приватный клуб.
Сильная корпоративная культура превосходит всё. Но даже самая сильная культура прогибается под тяжестью современного программного обеспечения. Сложность слишком велика.
Вам нужны циклы обратной связи: тесты, хорошая система типов, и наблюдаемость/прозрачность...
+ Вам надо автоматизировать общие/рутинные задачи: это единственный способ масштабирования команды...
Для донов-начинающих:
Подавляющее большинство книг и курсов по программированию — это часто просто сборник чего попало, не учитывающий главное, просто описание инструментов. *Учиться* профессиональному программированию это совсем другое, нужны совсем по другому подготовленные материалы.
А когда потратил на советы искусственного интеллекта кучу времени?
А по итогу не можешь написать простой алгоритм или сделать простой веб-проект, и пишешь ему: "это же не работает!", AI просто ответит "извините, я был неправ тут и тут, спасибо что обратили внимание."...
А потом наступает второй месяц (вторая неделя, второй день, второй час :), и снова та же скучная рутина: заляпанная чашка кофе, хмурые физиономии вокруг, грязный экран монитора, неудобный ободранный стул, в коде бесконечные ошибки...
Конечно так никогда ничего не получится, если...
Маленький набор (эксклюзивно для донов) на занятия для начинающих с полного/около нуля, 3 места закончились за 1 час 20 минут.
Набор последний, продолжение будет к зиме или в 2027-м...
Для донов-неначинающих:
Продолжаем разбор типовых паттернов System Design.
Производительность ваших запросов выглядит хорошо, и вы их вроде как пооптимизировали, но... ваша база данных всё равно явно испытывает трудности.
Проблема не в медленных запросах, а в ...
Продолжаю выкладывать для донов материалы СильныхИдей.
Начинаем новый модуль "Интерфейсы и абстракции".
102. Антипаттерн "Интерфейс должен быть проще реализации"
На любой вопрос по поводу интерфейса можно ответить очень точно, получив в ответ ответ на вопрос "а как будет выглядеть формальная спецификация?"
Мега-материал (БАЗА) по теме "Интерфейсы и абстракции".
103. Что такое абстракция в программировании?
Мы должны выйти за пределы двоичного определения того, является или не является что-то абстракцией, и вместо этого открыть для себя новый семантический уровень мышления, на котором мы парадоксально можем быть абсолютно точны -- ещё более точны, чем даже на уровне синтаксиса кода...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В СильныеИдеи добавлены материалы
"154) Надо ли тестировать тривиальный код?"
Почему Дядя Боб ошибался, и как правильно с т.зр. TDD...
"153) Простой пример формальных инвариантов"
Инвариант сам по себе это не просто ассерт с соответствующей проверкой. Это абстракция, это вещь формальная, и как мы её используем и определяем, зависит от выбранной логики. В простейшем случае, чисто на уровне кода, никакой логики нету (точнее, вы так субъективно (и ошибочно) полагаете)...
В раздел "Элитный программист" добавлен материал
101) Вглубь потока и deep work - 2
Люди, достигающие макропотока, поступают наоборот. Они как серферы используют энергию волны, на плоских участках раскачиваясь с помощью ног, чтобы поддерживать собственную скорость. Вам достаточно сделать для этого совсем немного...
=
"Функциональные архитектуры" 163(+2) топиков.
Last Principles Framework: готовы 31(+2) задач, закрыты 15(+2) тем из ~20 первого уровня. Вы же понимаете например, когда ваши асинхронные пайплайны бесконечно ломаются, на самом деле корректная работа пайпа будет просто неотъемлемое свойство правильно реализованной композиции Клейсли?
=
"ЛаМПовое":
Гарри Поттер и Неорганический интеллект. 20/23
=
Мы здесь, потому что это трудно 💪🏻
=
Это был типичный подход ментата - сосредотачиваться на вопросах. Они накапливают вопросы так, как остальные люди накапливают ответы. Вопросы образовывали свои паттерны и системы. Это придавало проблемам форму.
Особую прелесть этим конструкциям придавали их временность и текучесть.
"Капитул Дюны"
Облако драгоценностей за неделю.
Ура, понедельник!
Приватный клуб.
Сильная корпоративная культура превосходит всё. Но даже самая сильная культура прогибается под тяжестью современного программного обеспечения. Сложность слишком велика.
Вам нужны циклы обратной связи: тесты, хорошая система типов, и наблюдаемость/прозрачность...
+ Вам надо автоматизировать общие/рутинные задачи: это единственный способ масштабирования команды...
Для донов-начинающих:
Подавляющее большинство книг и курсов по программированию — это часто просто сборник чего попало, не учитывающий главное, просто описание инструментов. *Учиться* профессиональному программированию это совсем другое, нужны совсем по другому подготовленные материалы.
А когда потратил на советы искусственного интеллекта кучу времени?
А по итогу не можешь написать простой алгоритм или сделать простой веб-проект, и пишешь ему: "это же не работает!", AI просто ответит "извините, я был неправ тут и тут, спасибо что обратили внимание."...
А потом наступает второй месяц (вторая неделя, второй день, второй час :), и снова та же скучная рутина: заляпанная чашка кофе, хмурые физиономии вокруг, грязный экран монитора, неудобный ободранный стул, в коде бесконечные ошибки...
Конечно так никогда ничего не получится, если...
Маленький набор (эксклюзивно для донов) на занятия для начинающих с полного/около нуля, 3 места закончились за 1 час 20 минут.
Набор последний, продолжение будет к зиме или в 2027-м...
Для донов-неначинающих:
Продолжаем разбор типовых паттернов System Design.
Производительность ваших запросов выглядит хорошо, и вы их вроде как пооптимизировали, но... ваша база данных всё равно явно испытывает трудности.
Проблема не в медленных запросах, а в ...
Продолжаю выкладывать для донов материалы СильныхИдей.
Начинаем новый модуль "Интерфейсы и абстракции".
102. Антипаттерн "Интерфейс должен быть проще реализации"
На любой вопрос по поводу интерфейса можно ответить очень точно, получив в ответ ответ на вопрос "а как будет выглядеть формальная спецификация?"
Мега-материал (БАЗА) по теме "Интерфейсы и абстракции".
103. Что такое абстракция в программировании?
Мы должны выйти за пределы двоичного определения того, является или не является что-то абстракцией, и вместо этого открыть для себя новый семантический уровень мышления, на котором мы парадоксально можем быть абсолютно точны -- ещё более точны, чем даже на уровне синтаксиса кода...
(все старые материалы для донов быстро сгорают)
=
Новые материалы для ментатов Лаборатории.
В СильныеИдеи добавлены материалы
"154) Надо ли тестировать тривиальный код?"
Почему Дядя Боб ошибался, и как правильно с т.зр. TDD...
"153) Простой пример формальных инвариантов"
Инвариант сам по себе это не просто ассерт с соответствующей проверкой. Это абстракция, это вещь формальная, и как мы её используем и определяем, зависит от выбранной логики. В простейшем случае, чисто на уровне кода, никакой логики нету (точнее, вы так субъективно (и ошибочно) полагаете)...
В раздел "Элитный программист" добавлен материал
101) Вглубь потока и deep work - 2
Люди, достигающие макропотока, поступают наоборот. Они как серферы используют энергию волны, на плоских участках раскачиваясь с помощью ног, чтобы поддерживать собственную скорость. Вам достаточно сделать для этого совсем немного...
=
"Функциональные архитектуры" 163(+2) топиков.
Last Principles Framework: готовы 31(+2) задач, закрыты 15(+2) тем из ~20 первого уровня. Вы же понимаете например, когда ваши асинхронные пайплайны бесконечно ломаются, на самом деле корректная работа пайпа будет просто неотъемлемое свойство правильно реализованной композиции Клейсли?
=
"ЛаМПовое":
Гарри Поттер и Неорганический интеллект. 20/23
=
Мы здесь, потому что это трудно 💪🏻
=
Это был типичный подход ментата - сосредотачиваться на вопросах. Они накапливают вопросы так, как остальные люди накапливают ответы. Вопросы образовывали свои паттерны и системы. Это придавало проблемам форму.
Особую прелесть этим конструкциям придавали их временность и текучесть.
"Капитул Дюны"
❤26✍8👍1
Вроде как все понимают важность презентации своих скиллов (особенно в сегодняшних условиях). И в то же время портфолио своих проектов практически нету ни у кого! У западных математиков например, на их университетских страничках, практически у всех есть краткий список своих работ и своих проектов. Оформление там конечно ужасное визуально, ну сегодня нейронка за полчаса слепит вам прилично выглядящую страницу.
Не знаю, как вообще сегодня не вести такой список? Цифровизация своего опыта, своей карьеры. Резюме это не совсем то, как минимум в нём должен быть раздел "Проекты", который будет особо актуален, когда уже ведёшь переговоры по офферу. Гитхаб получше, но он всё равно чисто техническое хранилище, а нужен (лучше) свой сайт портфолио презентация, qr-код раздаёшь всем, и ведёт он конкретно на страничку с твоими проектами.
Следующий шаг это прокачка личного бренда (через блог прежде всего), я тут помогаю индивидуально, но за последние лет 5 всего *один* этим реально занялся, и где-то человек 10 периодически упоминают это как хотелку, которая конечно никогда не реализуется. Как только стал что-то оттягивать, считай забросил 100%
Йоги распознают до 30 типов сомнения, какой у тебя?
Многие думают, что тут надо прямо из штанов выпрыгнуть, чтобы выглядеть идеально в чужих глазах, но фишка просто в том, чтобы эйчар (а лучше CTO) из "ты кто такой?" сразу переходил к "хочу тебя нанять", для чего достаточно грамотного раздела "Проекты".
Да, тут есть нюансы разные конечно, например простое информирование это одно, а создание желания тебя нанять это другое, и т.п. Но прежде всего вам просто надо дать хорошее структурированное понимание вашего опыта, просто компактно рассказывайте о нём, и не надо тут как-то особо стараться и париться.
Когда начнешь исправлять худую привычку, то хотя бы раз, хотя бы два, три раза, хотя бы двадцать раз преступил, не отчаивайся; вставай и принимайся опять за тот же труд - и непременно останешься победителем.
Свт. Иоанн Златоуст
Не знаю, как вообще сегодня не вести такой список? Цифровизация своего опыта, своей карьеры. Резюме это не совсем то, как минимум в нём должен быть раздел "Проекты", который будет особо актуален, когда уже ведёшь переговоры по офферу. Гитхаб получше, но он всё равно чисто техническое хранилище, а нужен (лучше) свой сайт портфолио презентация, qr-код раздаёшь всем, и ведёт он конкретно на страничку с твоими проектами.
Следующий шаг это прокачка личного бренда (через блог прежде всего), я тут помогаю индивидуально, но за последние лет 5 всего *один* этим реально занялся, и где-то человек 10 периодически упоминают это как хотелку, которая конечно никогда не реализуется. Как только стал что-то оттягивать, считай забросил 100%
Йоги распознают до 30 типов сомнения, какой у тебя?
Многие думают, что тут надо прямо из штанов выпрыгнуть, чтобы выглядеть идеально в чужих глазах, но фишка просто в том, чтобы эйчар (а лучше CTO) из "ты кто такой?" сразу переходил к "хочу тебя нанять", для чего достаточно грамотного раздела "Проекты".
Да, тут есть нюансы разные конечно, например простое информирование это одно, а создание желания тебя нанять это другое, и т.п. Но прежде всего вам просто надо дать хорошее структурированное понимание вашего опыта, просто компактно рассказывайте о нём, и не надо тут как-то особо стараться и париться.
Когда начнешь исправлять худую привычку, то хотя бы раз, хотя бы два, три раза, хотя бы двадцать раз преступил, не отчаивайся; вставай и принимайся опять за тот же труд - и непременно останешься победителем.
Свт. Иоанн Златоуст
1👍30✍7❤3❤🔥1😁1
Один из ключевых показателей мастерства в программировании -- это быть одержимым деталями. И сегодня он стремительно сходит на нет. Да, от нас требуют фичи, требуют понимания бизнеса, и это нормально, однако прежде всего мы всегда должны стремиться к совершенству в своём прямом ремесле.
Это буквально значит писать вручную код ради самого кода. Это также означает размышление о глубоких аспектах программирования (computer science, math), которые мэйнстрим не воспринимает вообще. И в конечном итоге по заветам Дейкстры открыть для себя новый семантический уровень мышления, на котором мы (а теперь и искусственный интеллект) как недетерминированные сущности парадоксально можем быть абсолютно точны -- ещё более точны, чем даже на уровне синтаксиса кода.
Это буквально значит писать вручную код ради самого кода. Это также означает размышление о глубоких аспектах программирования (computer science, math), которые мэйнстрим не воспринимает вообще. И в конечном итоге по заветам Дейкстры открыть для себя новый семантический уровень мышления, на котором мы (а теперь и искусственный интеллект) как недетерминированные сущности парадоксально можем быть абсолютно точны -- ещё более точны, чем даже на уровне синтаксиса кода.
❤34✍13👍3
Продолжаю работу с ментатами 🤓
...Чуть лучше разобрался с работой вложенных лямбд в Java. Заметили в коде проекта баг, который связан с этим делом.
Код был написан исходя из неверных предположений и делал не совсем то, что от него ждали. Проблему заметил тимлид. В том коде хотели выполнять некоторую операцию в чистом контексте, операция передавалась как лямбда в метод выполнения задачи. Всё это было обёрнуто методом forEach какой-то коллекции. Но оказалось, что в чистом контексте происходило только создание лямбды, а сама же операция выполнялась в рамках основного контекста.
В общем мы попали в ситуацию, когда одна лямбда создавала другую, которая потом выполнялась в рамках forEach(), а код был написан так, будто вторая лямбда не создаётся, а сразу выполняется.
Как меня всё это запутало. Но потом стал разбираться с темами создания и работы лямбд, подключил ИИ к объяснению происходящего и вроде удалось понять что там происходит и в каком порядке вызывается. Теперь буду с особым вниманием писать код в таких местах, чтобы самому не оказаться в такой ловушке.
Как и чтобы таких ошибок избегать "по построению", будет в LPF. Сам по себе класс-обёртка "монада" с return и bind совершенно ничего не гарантирует, пайп из таких самодельных монад может развалиться по 100500 причинам.
...Юнит-тестов в прошлом проекте, разумеется, не было (по настоянию лида),
и отсутствие непредсказуемого поведения (или, по крайней мере, выявленного непредсказуемого поведения) на момент сдачи я считаю удачным стечением обстоятельств для меня и неудачным для тех, кто после меня будет этот проект поддерживать.
...После изучения TOP, в голове так и крутится что типы это состояния, я состояния - это типы.
...Возврат из репо дефолтной sql ошибки не понравился, решил оберунть в кастомную ошибку с nil полем,
не заполнил nil поле, получил панику на проде при попытке логирования
...Если подвести общий итог. Солвер — не про то, чтобы получить ответ, а про то, чтобы обнаружить, что вопрос был задан неточно. Ответ он даёт мгновенно.
...для обрастания хорошими знакомствами необходимо выстраивать сеть людей -> расширяю свою сеть в linkedin, списываюсь там с разными людьми (уже появилось полезное знакомство в зарубежную компанию), и что самое интересное - люди ко мне добавляются сами, что очень приятно; думаю в будущем необходимо делать свой личный бренд
...В РФ скудно по вакансиям. Снял розовые очки - надо давить на личный бренд и иметь запасные варианты.
...В примере 2 задал имплементацию класса статистики BonusAccountStats с реализацией plus, чего делать, конечно не надо было, так как:
теряется гибкость задания Stats (по сравнению с Max);
BonusAccountStats начинает знать про plus.
Это противоречит идее универсальности использования моноида. Оставил как напоминание себе.
В примере 3 доработал пример 2, чтобы довести моноид до группы. Пришлось избавиться от вычисления максимума в статистике, так как при откате для него нет обратимой операции.
В примере 4 моделировал движение робота как мы это делали в одном из курсов через задание смещения относительно текущего положения. Группа получилась абелевой, так как в исходную точку можно вернуться с помощью инвертированного набора исходных шагов вне зависимости от их порядка.
🔥
...Чуть лучше разобрался с работой вложенных лямбд в Java. Заметили в коде проекта баг, который связан с этим делом.
Код был написан исходя из неверных предположений и делал не совсем то, что от него ждали. Проблему заметил тимлид. В том коде хотели выполнять некоторую операцию в чистом контексте, операция передавалась как лямбда в метод выполнения задачи. Всё это было обёрнуто методом forEach какой-то коллекции. Но оказалось, что в чистом контексте происходило только создание лямбды, а сама же операция выполнялась в рамках основного контекста.
В общем мы попали в ситуацию, когда одна лямбда создавала другую, которая потом выполнялась в рамках forEach(), а код был написан так, будто вторая лямбда не создаётся, а сразу выполняется.
Как меня всё это запутало. Но потом стал разбираться с темами создания и работы лямбд, подключил ИИ к объяснению происходящего и вроде удалось понять что там происходит и в каком порядке вызывается. Теперь буду с особым вниманием писать код в таких местах, чтобы самому не оказаться в такой ловушке.
Как и чтобы таких ошибок избегать "по построению", будет в LPF. Сам по себе класс-обёртка "монада" с return и bind совершенно ничего не гарантирует, пайп из таких самодельных монад может развалиться по 100500 причинам.
...Юнит-тестов в прошлом проекте, разумеется, не было (по настоянию лида),
и отсутствие непредсказуемого поведения (или, по крайней мере, выявленного непредсказуемого поведения) на момент сдачи я считаю удачным стечением обстоятельств для меня и неудачным для тех, кто после меня будет этот проект поддерживать.
...После изучения TOP, в голове так и крутится что типы это состояния, я состояния - это типы.
...Возврат из репо дефолтной sql ошибки не понравился, решил оберунть в кастомную ошибку с nil полем,
не заполнил nil поле, получил панику на проде при попытке логирования
...Если подвести общий итог. Солвер — не про то, чтобы получить ответ, а про то, чтобы обнаружить, что вопрос был задан неточно. Ответ он даёт мгновенно.
...для обрастания хорошими знакомствами необходимо выстраивать сеть людей -> расширяю свою сеть в linkedin, списываюсь там с разными людьми (уже появилось полезное знакомство в зарубежную компанию), и что самое интересное - люди ко мне добавляются сами, что очень приятно; думаю в будущем необходимо делать свой личный бренд
...В РФ скудно по вакансиям. Снял розовые очки - надо давить на личный бренд и иметь запасные варианты.
...В примере 2 задал имплементацию класса статистики BonusAccountStats с реализацией plus, чего делать, конечно не надо было, так как:
теряется гибкость задания Stats (по сравнению с Max);
BonusAccountStats начинает знать про plus.
Это противоречит идее универсальности использования моноида. Оставил как напоминание себе.
В примере 3 доработал пример 2, чтобы довести моноид до группы. Пришлось избавиться от вычисления максимума в статистике, так как при откате для него нет обратимой операции.
В примере 4 моделировал движение робота как мы это делали в одном из курсов через задание смещения относительно текущего положения. Группа получилась абелевой, так как в исходную точку можно вернуться с помощью инвертированного набора исходных шагов вне зависимости от их порядка.
🔥
❤24✍10👍3