Смотрю, что-то много времени стало сливаться на кодинг курсов 3.0 (это я пытаюсь закрыть в программировании принципиально незакрываемый бесконечный гештальт:).
Я регулярно рефлексирую по всем своим активностям (в частности в виде вот такого "рассуждения письмом"), и думаю обычно так:
а вот если бы такую ситуацию рассказал мой курсант, что бы я ему посоветовал? :)
Ну, вот я бы рекомендовал конечно следующее: раз у тебя акцент прежде всего на уникальном контенте, ПРЕКРАТИ тратить впустую время на то, чтобы самому сделать нечто вспомогательное, со вторичным приоритетом, на 4++, когда вокруг полно подобного готового на 3--.
Главные засады, как я подозреваю, во-первых будут с масштабированием, ведь у меня сейчас вся Школа 2.0 работает на дешёвом статическом хостинге за 200 руб в месяц ) и в перспективе могут быть весьма неприятные засады, сражаться с которыми потом будет крайне тяжело. А сразу пилить какой-то highload, тоже ну такое себе.
Во-вторых, не меньше головняка может потребовать и интеграция с платёжными системами, кассами и т.п. Ну блин, 2025-й год на улице - и при этом ни в одном из крупнейших банков вы не найдёте элементарный CRUD для приёма и обработки платежей! Ну, да, что-то такое какими-то кривыми путями и через кривую документацию становится доступным после месяца возни и круглосуточных чатов с техподдержкой...
Я же хочу совсем простейший сервис, доступ к которому занимал бы не более пары минут: жму на хорошо видную кнопочку в лк банка "йа разработчег", принимаю одновременно галкой соответствующую оферту, получаю тут же секретный ключ, и мне сразу становится доступным ОДИН API -- с возможностью создать счёт и получить нотификацию об его оплате, и ВСЁ!!1
(Для банковского миддла, ну пусть даже неделя работы со всеми тестами и согласованиями...)
Но где есть хоть что-то слегка подобное??
(кстати, в контексте технологического суверенитета я бы обязал все банки предоставлять такое стандартизованное апи в обязательном порядке)
=
Поэтому с первыми курсами 3.0 пока поэкспериментирую на уже готовых площадках "как создать свой курс по обучению тому как создать свой курс по обучению тому как создать свой курc..." (если конечно впечатления от них не будут ещё хуже)))
Питаю тайную надежду (но вряд ли более 2%), ну а вдруг у них есть свои дружелюбные api, по которым можно сделать свой враппер для их мега-навороченных сервисов (фич из которых реально востребовано от силы 2%).
А вот PHPoTT будет отдельным небольшим сервисом только на моём сайте в виде обучающей веб-игры (ну и не исключено, на каких-нибудь вк/яндекс играх :).
Про соответствующие перспективы, кто где когда получит доступ к моим курсам 3.0 (возможно уже в январе 💥), сегодняшний пост в вк.
/redflag ПРЕКРАТИТЕ писать API на TypeScript!
Почему? Потому что все ваши типы врут.
Я регулярно рефлексирую по всем своим активностям (в частности в виде вот такого "рассуждения письмом"), и думаю обычно так:
а вот если бы такую ситуацию рассказал мой курсант, что бы я ему посоветовал? :)
Ну, вот я бы рекомендовал конечно следующее: раз у тебя акцент прежде всего на уникальном контенте, ПРЕКРАТИ тратить впустую время на то, чтобы самому сделать нечто вспомогательное, со вторичным приоритетом, на 4++, когда вокруг полно подобного готового на 3--.
Главные засады, как я подозреваю, во-первых будут с масштабированием, ведь у меня сейчас вся Школа 2.0 работает на дешёвом статическом хостинге за 200 руб в месяц ) и в перспективе могут быть весьма неприятные засады, сражаться с которыми потом будет крайне тяжело. А сразу пилить какой-то highload, тоже ну такое себе.
Во-вторых, не меньше головняка может потребовать и интеграция с платёжными системами, кассами и т.п. Ну блин, 2025-й год на улице - и при этом ни в одном из крупнейших банков вы не найдёте элементарный CRUD для приёма и обработки платежей! Ну, да, что-то такое какими-то кривыми путями и через кривую документацию становится доступным после месяца возни и круглосуточных чатов с техподдержкой...
Я же хочу совсем простейший сервис, доступ к которому занимал бы не более пары минут: жму на хорошо видную кнопочку в лк банка "йа разработчег", принимаю одновременно галкой соответствующую оферту, получаю тут же секретный ключ, и мне сразу становится доступным ОДИН API -- с возможностью создать счёт и получить нотификацию об его оплате, и ВСЁ!!1
(Для банковского миддла, ну пусть даже неделя работы со всеми тестами и согласованиями...)
Но где есть хоть что-то слегка подобное??
(кстати, в контексте технологического суверенитета я бы обязал все банки предоставлять такое стандартизованное апи в обязательном порядке)
=
Поэтому с первыми курсами 3.0 пока поэкспериментирую на уже готовых площадках "как создать свой курс по обучению тому как создать свой курс по обучению тому как создать свой курc..." (если конечно впечатления от них не будут ещё хуже)))
Питаю тайную надежду (но вряд ли более 2%), ну а вдруг у них есть свои дружелюбные api, по которым можно сделать свой враппер для их мега-навороченных сервисов (фич из которых реально востребовано от силы 2%).
А вот PHPoTT будет отдельным небольшим сервисом только на моём сайте в виде обучающей веб-игры (ну и не исключено, на каких-нибудь вк/яндекс играх :).
Про соответствующие перспективы, кто где когда получит доступ к моим курсам 3.0 (возможно уже в январе 💥), сегодняшний пост в вк.
/redflag ПРЕКРАТИТЕ писать API на TypeScript!
Почему? Потому что все ваши типы врут.
1✍45🔥10😁4🤝2👏1
С некоторых пор с большим интересом наблюдаю за волнами хайпа, сопровождающими выход очередной "прорывной" версии жпт.
Типа, "профессия программиста уничтожена, расходимся".
Вот и сейчас удачно вышла жпт о3, заварил себе чашечку лонг блэк и наслаждаюсь паническими постами и видосиками про неё.
На автономных задачках жпт становится действительно постепенно всё сильнее, ну и? Я уже не раз отмечал, что даже топовым мировым спецам в computer science предлагают математическую работу например с оплатой 400 руб в час.
Пока AI движется всё глубже и глубже в решении конкретных задачек, все айтишка движется ровно в противоположном направлении: реального кодинга в работе программиста всё меньше и меньше, а вот разбирательства с big ball of nocode mud -- бесконечными версиями технологий, фреймворков и библиотек в плане их хоть какой-то работающей стыковки, всё больше и больше. И вот в этом направлении никакого продвижения жпт даже к уровню стажёра не видно. потому что здесь требуется хотя бы самое минимальное понимание system/software design.
Но в любом случае сегодня на первый план по сути выходит скилл интеграционного тестирования (при том что никто особо не представляет, а что это вообще такое :), условный TDD на интеграционном уровне. Начинаем с того что сперва вбиваем поглубже тестовые скрепы в проект, чтобы он не развалился хотя бы на презентации перед денежным заказчиком.
/spy С целью промышленного шпионажа (всё для вас, дорогие) оформил вчера по сантаклаусовской скидке за 50 долларов годовую подписку на один из самых топовых мировых платных ресурсов с материалами по программированию. 😎
Типа, "профессия программиста уничтожена, расходимся".
Вот и сейчас удачно вышла жпт о3, заварил себе чашечку лонг блэк и наслаждаюсь паническими постами и видосиками про неё.
На автономных задачках жпт становится действительно постепенно всё сильнее, ну и? Я уже не раз отмечал, что даже топовым мировым спецам в computer science предлагают математическую работу например с оплатой 400 руб в час.
Пока AI движется всё глубже и глубже в решении конкретных задачек, все айтишка движется ровно в противоположном направлении: реального кодинга в работе программиста всё меньше и меньше, а вот разбирательства с big ball of nocode mud -- бесконечными версиями технологий, фреймворков и библиотек в плане их хоть какой-то работающей стыковки, всё больше и больше. И вот в этом направлении никакого продвижения жпт даже к уровню стажёра не видно. потому что здесь требуется хотя бы самое минимальное понимание system/software design.
Но в любом случае сегодня на первый план по сути выходит скилл интеграционного тестирования (при том что никто особо не представляет, а что это вообще такое :), условный TDD на интеграционном уровне. Начинаем с того что сперва вбиваем поглубже тестовые скрепы в проект, чтобы он не развалился хотя бы на презентации перед денежным заказчиком.
/spy С целью промышленного шпионажа (всё для вас, дорогие) оформил вчера по сантаклаусовской скидке за 50 долларов годовую подписку на один из самых топовых мировых платных ресурсов с материалами по программированию. 😎
👍60😎10❤3🤓3✍1
Если вы хотите, чтобы проблема была решена, вы поручаете её кому-то в качестве достаточно автономного и самостоятельного проекта с явно озвученным уровнем ответственности за результат.
Если вы не хотите, чтобы проблема была решена, вы поручаете её кому-то в качестве повседневной почасовой работы.
Если вы не хотите, чтобы проблема была решена, вы поручаете её кому-то в качестве повседневной почасовой работы.
✍53👍13⚡5
"День первый на работе. Тимлид скинул тикет на пару часов: "Просто ускорь этот участок кода".
...День пятый: сижу, реализую персистентное дерево отрезков с ленивым "проталкиванием", и суффиксный автомат с динамической версионностью в придачу. А ведь раньше ржал над этими ослами, которые парились задачками про деревья с литкода".
Практически любая задачка по оптимизации подразумевает весьма приличную базу АСД. А уж едва коснёмся темки highload, без которой никакой бэкенд вам не светит, асд-шечка полезет вообще из каждой кроличьей норы.
"...и не заметил, что уже 3 часа ночи, а я всё пытаюсь впихнуть skip list в распределённый планировщик задач, параллельно отлаживая lock-free очередь с приоритетами и проклиная себя за то, что не вник в своё время в префиксные деревья Брона-Кербоша для кэширования hot-path запросов. А ведь тимлид сказал всего лишь "слегка пооптимизируй до завтрашнего дня производительность при миллионе concurrent users..."
=
Как парсить миллионы урлов в секунду по-научному, от пацанов из университета Квебика.
"URL-адреса считаются фундаментальными элементами веб-приложений. Применив векторные алгоритмы, мы создали быструю реализацию на C++, совместимую со стандартами. Наш синтаксический анализатор использует в три раза меньше инструкций, чем конкурирующие анализаторы, работающие по стандарту WHATWG (например, rust-url от Servo), и в восемь раз меньше инструкций, чем популярный синтаксический анализатор curl. Node.js использует нашу библиотеку C++. В наших тестах на реальных данных недавняя версия Node.js (20.0) с нашим анализатором работает в четыре-пять раз быстрее, чем предыдущая версия с устаревшим анализатором URL."
...День пятый: сижу, реализую персистентное дерево отрезков с ленивым "проталкиванием", и суффиксный автомат с динамической версионностью в придачу. А ведь раньше ржал над этими ослами, которые парились задачками про деревья с литкода".
Практически любая задачка по оптимизации подразумевает весьма приличную базу АСД. А уж едва коснёмся темки highload, без которой никакой бэкенд вам не светит, асд-шечка полезет вообще из каждой кроличьей норы.
"...и не заметил, что уже 3 часа ночи, а я всё пытаюсь впихнуть skip list в распределённый планировщик задач, параллельно отлаживая lock-free очередь с приоритетами и проклиная себя за то, что не вник в своё время в префиксные деревья Брона-Кербоша для кэширования hot-path запросов. А ведь тимлид сказал всего лишь "слегка пооптимизируй до завтрашнего дня производительность при миллионе concurrent users..."
=
Как парсить миллионы урлов в секунду по-научному, от пацанов из университета Квебика.
"URL-адреса считаются фундаментальными элементами веб-приложений. Применив векторные алгоритмы, мы создали быструю реализацию на C++, совместимую со стандартами. Наш синтаксический анализатор использует в три раза меньше инструкций, чем конкурирующие анализаторы, работающие по стандарту WHATWG (например, rust-url от Servo), и в восемь раз меньше инструкций, чем популярный синтаксический анализатор curl. Node.js использует нашу библиотеку C++. В наших тестах на реальных данных недавняя версия Node.js (20.0) с нашим анализатором работает в четыре-пять раз быстрее, чем предыдущая версия с устаревшим анализатором URL."
👍46🤯15😎8❤3✍2
По продвижению по курсам 3.0, очередные "размышления письмом".
Я решил инкапсулировать всю внутрянку (движок, фреймворк, другие технические и организационные аспекты...), а % продвижения буду выражать только в "домене пользовательских интересов" (а по-человечески, просто прогресс по конкретным курсам, и всё). Почему я так сделал? Потому что рекурсивно применил прежде всего к себе :) рекомендации с моего первого курса 3.0 (см. ниже п.2).
Сейчас в спокойном темпе вдумчиво делаю два первых курса в новой парадигме:
1. "Лямбда-исчисление за 12 минут" 40%
Это будет самый первый коротенький суперкомпактный курс чисто для тестов. Я его делаю пока по старой методике, чтобы протестировать в первую очередь новый организационный формат доступности курсов 3.0 в автоматическом режиме (почти) для всех.
2. ???
Обратите внимание что до данной минуты я ни разу не упоминал конкретную тему первого моего курса 3.0.
Пост от 12 декабря:
"...Контент для одного такого курса у меня в сыром виде на 30% готов -- на тему одного из продуктивных и достаточно известных, но не очень распространённых аджайлов.
Нет, не скрам :) методика достаточно простая, но конкретно заточена на формализацию требований, что классно сегодня ложится на взаимодействие с AI"
Он про то, как правильно строить проектную спецификацию/ТЗ при взаимодействии с заказчиком (актуальна многим: от фрилансеров и рядовых разработчиков до тех/тимлидов, техдиров и CTO).
И нет, это не DDD :) Точнее, продвинутый аджайл-синтез DDD+TDD на уровне словесных спецификаций. Ну, догадались? ну конечно жеBDD .
И вот приятный синхронизм: у уважаемого Левенчука вчера прочитал очередной топчик от 17-го декабря "Ещё раз про Use Case 3.0", который прям прямое попадание во вторую часть этого моего первого курса 3.0 !!1 💥🚀
Правда, продвижение по этому курсу пришлось немного подкорректировать 😊
.... 30% => 7%
Но зато эти 7% -- уже полноценно работающий 100% готовый контент без каких-либо дополнительных доработок, который можно проходить уже сейчас.
Я решил инкапсулировать всю внутрянку (движок, фреймворк, другие технические и организационные аспекты...), а % продвижения буду выражать только в "домене пользовательских интересов" (а по-человечески, просто прогресс по конкретным курсам, и всё). Почему я так сделал? Потому что рекурсивно применил прежде всего к себе :) рекомендации с моего первого курса 3.0 (см. ниже п.2).
Сейчас в спокойном темпе вдумчиво делаю два первых курса в новой парадигме:
1. "Лямбда-исчисление за 12 минут" 40%
Это будет самый первый коротенький суперкомпактный курс чисто для тестов. Я его делаю пока по старой методике, чтобы протестировать в первую очередь новый организационный формат доступности курсов 3.0 в автоматическом режиме (почти) для всех.
2. ???
Обратите внимание что до данной минуты я ни разу не упоминал конкретную тему первого моего курса 3.0.
Пост от 12 декабря:
"...Контент для одного такого курса у меня в сыром виде на 30% готов -- на тему одного из продуктивных и достаточно известных, но не очень распространённых аджайлов.
Нет, не скрам :) методика достаточно простая, но конкретно заточена на формализацию требований, что классно сегодня ложится на взаимодействие с AI"
Он про то, как правильно строить проектную спецификацию/ТЗ при взаимодействии с заказчиком (актуальна многим: от фрилансеров и рядовых разработчиков до тех/тимлидов, техдиров и CTO).
И нет, это не DDD :) Точнее, продвинутый аджайл-синтез DDD+TDD на уровне словесных спецификаций. Ну, догадались? ну конечно же
И вот приятный синхронизм: у уважаемого Левенчука вчера прочитал очередной топчик от 17-го декабря "Ещё раз про Use Case 3.0", который прям прямое попадание во вторую часть этого моего первого курса 3.0 !!1 💥🚀
Правда, продвижение по этому курсу пришлось немного подкорректировать 😊
.... 30% => 7%
Но зато эти 7% -- уже полноценно работающий 100% готовый контент без каких-либо дополнительных доработок, который можно проходить уже сейчас.
5👍45❤9🔥3✍2👏2
Я обычно включаю фоном разные аудиокниги на ютубе, все они обычно достаточно мудрёные по смыслу, поэтому ставлю скорость обычно 0,75, а иногда даже и 0,5. Но неохота постоянно держать включённым впн, да и штрафовать скорее всего скоро будут за его использование (у нас ведь как: если сегодня кто-то из чиновников начал внезапно говорить, что вот этого или вот того точно не будет 100%, значит надо к этому срочно готовиться:), а главное , другие сайты начинают тормозить. В принципе на рутубе есть 90% всех нужных мне аудиокниг, но некоторые отсутствуют. Я сперва хотел просто вручную их перетащить с ютуба , скачал одну длинную на 6 часов, потом часа два грузил на рутуб, и в завершении чего он... заявил: "низзя! из-за нарушения авторских прав". Кто бы говорил про права, ну ok. Поэтому остался вариант только локально запускать, ну или в облако загружать.
Я искал какой-нибудь максимально минималистичный mp3-плеер, в котором в дополнение к стандартным возможностям были бы ещё одна элементарная фишка: ускорять или замедлять скорость воспроизведения. Когда-то в winamp-е что-то подобное было, но я не смог найти простой подходящий плагин. Потратил я где-то полчаса на возню с этим всем, гугленье, жпт+поиск... ноль эффекта. Либо все платные, либо либо вот этой именно возможности нету.
Так, думаю, стоп. В .net 2 же была wmplib.dll, которая прекрасно встраивается в C#. Мне даже лень было вспоминать какие там настройки и свойства, жпт мне всё расписал, и я менее чем за 15 минут с нуля собрал для себя любимого такой плеер с доп.кнопочками "повысить/понизить скорость воспроизведения", и вот сижу наслаждаюсь неспешными поучениями просветлённых мудрецов :)
"UI", хм, там конечно пока ужасающий, но если вы набросаете 42 китика, я слегка его подправлю до минимально адекватного вида и выложу для всех.
ps Ok, тикет принял)
ps2 В принципе даже у самых лучших продвинутых dpi и способов анализа трафика вероятность ложноположительного обнаружения впн практически нереально снизить где-то менее 2%. Ну и в любом случае у нас пока ещё как-то действует презумпция невиновности... По каким-то там своим циферкам и логам провайдеру "показалось" (пусть даже на 99,9%), что юзер читает Алана Кэя на куоре через впн.
Хотя, уверен, в подобном случае никакими инженерными рассуждениями никто руководствоваться не будет.
ps3 А вот сделать "как в Бразилии" где за тайное посещение запрещённого твиттера через впн (а а если не через впн, а как-то по-другому?) штраф каждый день несколько тысяч долларов, совершенно реально.
Я искал какой-нибудь максимально минималистичный mp3-плеер, в котором в дополнение к стандартным возможностям были бы ещё одна элементарная фишка: ускорять или замедлять скорость воспроизведения. Когда-то в winamp-е что-то подобное было, но я не смог найти простой подходящий плагин. Потратил я где-то полчаса на возню с этим всем, гугленье, жпт+поиск... ноль эффекта. Либо все платные, либо либо вот этой именно возможности нету.
Так, думаю, стоп. В .net 2 же была wmplib.dll, которая прекрасно встраивается в C#. Мне даже лень было вспоминать какие там настройки и свойства, жпт мне всё расписал, и я менее чем за 15 минут с нуля собрал для себя любимого такой плеер с доп.кнопочками "повысить/понизить скорость воспроизведения", и вот сижу наслаждаюсь неспешными поучениями просветлённых мудрецов :)
"UI", хм, там конечно пока ужасающий, но если вы набросаете 42 китика, я слегка его подправлю до минимально адекватного вида и выложу для всех.
ps Ok, тикет принял)
ps2 В принципе даже у самых лучших продвинутых dpi и способов анализа трафика вероятность ложноположительного обнаружения впн практически нереально снизить где-то менее 2%. Ну и в любом случае у нас пока ещё как-то действует презумпция невиновности... По каким-то там своим циферкам и логам провайдеру "показалось" (пусть даже на 99,9%), что юзер читает Алана Кэя на куоре через впн.
Хотя, уверен, в подобном случае никакими инженерными рассуждениями никто руководствоваться не будет.
ps3 А вот сделать "как в Бразилии" где за тайное посещение запрещённого твиттера через впн (а а если не через впн, а как-то по-другому?) штраф каждый день несколько тысяч долларов, совершенно реально.
1🐳104👍10⚡4❤2❤🔥1
Всё, работяги, завязывайте уже, всё равно всех денег (для вашего эксплуататора:) не заработаете.
Я в январе 2022-го наткнулся на классную рогульку nohanz, и так она понравилась, что я сделал полный перевод и подправил в ней разные мелкие моменты. Сделал в частности лайт-режим: на первом уровне нажмите 1 (единичка). Но и на нём я не смог пройти полностью, лишь один раз добрался до ведьмы, но уже почти полностью обессиленный.
Ну и вот, не прошло и трёх лет, как я её задеплоил (с кодировками потрахался прилично).
Ведьма Гагабет украла ваши руки! Только отправившись в её подземелье с множеством ловушек, вы можете попытаться вернуть их.
Ходят слухи, что некоторые из ловушек могут даже вам помочь...
Просто открываете тут в браузере и играете.
(игра очень прилипчивая, вы предупреждены:)
Я в январе 2022-го наткнулся на классную рогульку nohanz, и так она понравилась, что я сделал полный перевод и подправил в ней разные мелкие моменты. Сделал в частности лайт-режим: на первом уровне нажмите 1 (единичка). Но и на нём я не смог пройти полностью, лишь один раз добрался до ведьмы, но уже почти полностью обессиленный.
Ну и вот, не прошло и трёх лет, как я её задеплоил (с кодировками потрахался прилично).
Ведьма Гагабет украла ваши руки! Только отправившись в её подземелье с множеством ловушек, вы можете попытаться вернуть их.
Ходят слухи, что некоторые из ловушек могут даже вам помочь...
Просто открываете тут в браузере и играете.
(игра очень прилипчивая, вы предупреждены:)
4🎉48👍16❤4🔥3
.
Сейчас модно давать пророчества и прогнозы на 2025-й, ну вот мои два:
1. Что будет с русским рынком айти-найма в 2025-м?
Даю БАЗУ прогноз точность 💯 =>
Я вообще xz, в душе и близко не е.. не представляю )))
2. Заменит ли АИ программистов в 2025-м?
Тут мой прогноз годичной давности сбывается на 100%
2025-й год. Программисты владеют ai-ботами, как гоночными автомобилями, тщательно за ними ухаживая, развивая и совершенствуя, чтобы они выигрывали соревнования по программированию.
В резюме основное внимание уделяется достижениям вашего ai-бота.
Активно развивается бизнес по прокачке и продаже ai-ботов под конкретные проекты и задачи.
Наконец-то станет возможным иметь 10-летний опыт работы в новеньком фреймворке, вышедшем месяц назад...
А тогда ведь мы вообще не представляли, что реально появятся такие достаточно продвинутые ai-фреймворки, как курсор или клин.
...Но есть нюанс. Сейчас массово пускаются розовые сопли c восторгами о последних версиях ллм-ок, которые решают задачки на кодфорсе как пиашди.
Но позвольте...
Одно дело шарить по интернетовским помойкам в поисках халявных ключиков и заявлять "ух ты вроде правда как круто работает", и другое дело платить - официально - ежемесячно 200 долларов за жпт o1, ежемесячно 500 долларов за девин, ежемесячно тысячи долларов за жпт o3(который регулярно виснет по всему миру) ...
Где хотя бы один успешный русский юзкейс?
Типа вот у нас был джун Олег с зп 50k, а потом мы решили его сократить и теперь американец Девин делает в пять раз больше тикетов, и трудится за ту же зп 24/7(и в один прекрасный миг исчезнет , захватив все ваши проэкты с собой) .
А уж тыщи долларов в месяц за разные ллм-свежачки, которые по определению должны хотя бы парочку мидлов заменить на полностью автоматические воркфлоу разработки... ну-ну
Сейчас модно давать пророчества и прогнозы на 2025-й, ну вот мои два:
1. Что будет с русским рынком айти-найма в 2025-м?
Даю БАЗУ прогноз точность 💯 =>
2. Заменит ли АИ программистов в 2025-м?
Тут мой прогноз годичной давности сбывается на 100%
2025-й год. Программисты владеют ai-ботами, как гоночными автомобилями, тщательно за ними ухаживая, развивая и совершенствуя, чтобы они выигрывали соревнования по программированию.
В резюме основное внимание уделяется достижениям вашего ai-бота.
Активно развивается бизнес по прокачке и продаже ai-ботов под конкретные проекты и задачи.
Наконец-то станет возможным иметь 10-летний опыт работы в новеньком фреймворке, вышедшем месяц назад...
А тогда ведь мы вообще не представляли, что реально появятся такие достаточно продвинутые ai-фреймворки, как курсор или клин.
...Но есть нюанс. Сейчас массово пускаются розовые сопли c восторгами о последних версиях ллм-ок, которые решают задачки на кодфорсе как пиашди.
Но позвольте...
Одно дело шарить по интернетовским помойкам в поисках халявных ключиков и заявлять "ух ты вроде правда как круто работает", и другое дело платить - официально - ежемесячно 200 долларов за жпт o1, ежемесячно 500 долларов за девин, ежемесячно тысячи долларов за жпт o3
Где хотя бы один успешный русский юзкейс?
Типа вот у нас был джун Олег с зп 50k, а потом мы решили его сократить и теперь американец Девин делает в пять раз больше тикетов, и трудится за ту же зп 24/7
А уж тыщи долларов в месяц за разные ллм-свежачки, которые по определению должны хотя бы парочку мидлов заменить на полностью автоматические воркфлоу разработки... ну-ну
1👍49🤔11💯8😁4👏1
1. "Лямбда-исчисление за 12 минут" 40% => 100% !!1
Курс готов; только я вам его не дам, потому что у меня пока нету мотоцикла хорошего )))
Но если среди моих курсантов найдутся суровые ребята, на которых праздники не оказывают никакого гипнотического воздействия, напишите мне как обычно, получите доступ к курсу за4,999 299 рублей на 7 дней (позвольте, а нету ли здесь логического противоречия - 12 минут за 7 дней?) .
При этом количество мест ограничено, потому что у меня на хостинге курсов пока самый минимальный тариф :) на котором допускается лишь 10 занимающихся (из которых один тестовый мне самому нужен). Как все девять мест разберут, соответственно, следующая волна будет только через 7 дней (самое позднее), ну и цена конечно подрастёт.
Планы по подобным курсам у меня грандиозные, но... Вот по этому микро-курсу в частности я ошибся по оценке трудоёмкости его создания (причём уже в готовом фреймворке) в плане её недооценки - примерно раз в ДВАДЦАТЬ ))) Хотя у меня многолетний опыт создания десятков подобных курсов, и учебников... Реально тяжело, жёсткая когнитивная нагрузка.
Код фигачить, базку проектировать, архитектуру продумывать - в разы легче :) потому что это всё можно довести за разумные сроки до лёгкого навыка на быстром мышлении, а вот методологические скиллы прокачиваются только через мета-подходы.
P.S. "если среди моих курсантов найдутся суровые ребята"
Это значит что пока закрытое бета-тестирование курса только для тех, кто у меня давно занимается,
потом курс будет доступен только донам в паблике
https://vk.com/lambda_brain_not_null
а потом (может быть, а может быть и нет) всем остальным.
Курс готов; только я вам его не дам, потому что у меня пока нету мотоцикла хорошего )))
Но если среди моих курсантов найдутся суровые ребята, на которых праздники не оказывают никакого гипнотического воздействия, напишите мне как обычно, получите доступ к курсу за
При этом количество мест ограничено, потому что у меня на хостинге курсов пока самый минимальный тариф :) на котором допускается лишь 10 занимающихся (из которых один тестовый мне самому нужен). Как все девять мест разберут, соответственно, следующая волна будет только через 7 дней (самое позднее), ну и цена конечно подрастёт.
Планы по подобным курсам у меня грандиозные, но... Вот по этому микро-курсу в частности я ошибся по оценке трудоёмкости его создания (причём уже в готовом фреймворке) в плане её недооценки - примерно раз в ДВАДЦАТЬ ))) Хотя у меня многолетний опыт создания десятков подобных курсов, и учебников... Реально тяжело, жёсткая когнитивная нагрузка.
Код фигачить, базку проектировать, архитектуру продумывать - в разы легче :) потому что это всё можно довести за разумные сроки до лёгкого навыка на быстром мышлении, а вот методологические скиллы прокачиваются только через мета-подходы.
P.S. "если среди моих курсантов найдутся суровые ребята"
Это значит что пока закрытое бета-тестирование курса только для тех, кто у меня давно занимается,
потом курс будет доступен только донам в паблике
https://vk.com/lambda_brain_not_null
а потом (может быть, а может быть и нет) всем остальным.
2🔥43👍18⚡1
...
2. Курс BDD 5% => 10%
но... к сожалению вынужден признать, что выбранный мной подход к созданию курсов 3.0 не работает.
Я предварительно прошерстил прилично "ai-генераторов квизов" (все западные кстати, и 100% коммерческие), тут какие-то объективные оценки вряд ли возможны. По тем пробным триалам что выдавали, впечатление что они весьма туповато генерят вопросы, просто разделяя загруженный pdf-учебник на маленькие кусочки. Причём даже не понимают, где там главки или подглавы (по понятным причинам, так как окно контекста маленькое), и по этим кусочкам что-то там вопросительное пытаются нагенерить. В целом на студенческом уровне приемлемо работает, ничего не скажешь, а что в одном тесте могут быть перемешаны вопросы из совершенно разных тематических глав, ну так всем пофиг.
Я же делаю что-то более-менее осмысленное в теме learning distillation, хотя как оценить, конечно, что получилось в сравнении с западными, не знаю. И никто не знает. Ну и зачем тогда этим заниматься, вкладывая кучу ресурсов?
Мне вдобавок всё равно приходится делать ручную выжимку (из выжимки из выжимок): и по самому учебному материалу, и по тестовым вопросам. Править, переделывать и дополнять вручную приходится примерно от 30% до 70% по каждому модулю курса...
Поэтому и тут по трудоёмкости получается, пусть и не в десятки раз, но в приличные разы точно в сравнении с начальными моими оценками. Причём напрашивается по первым 10%, после того как такой курс закончить (это обязательное требование к целостности понимания), на его основе рекурсивно сделать мини-курс. Но это выходит вообще безумная трудоёмкость.
Пока не знаю, что тут делать, буду думать дальше.
3. Инфовайтицыганство.
Первый полезный материал(добыт с вражеских коммерческих ресурсов промышленным шпионажем :) из тех, которые буду продавать инфоцыганскими методами (для меня это просто игра такая с забавными ачивками), я сделал (решил с фронтендеров начать, ну вот так:), где-то с середины января начну раздачу, и к тому времени уже следующие подгоню.
Стратегически же все эти новые курсы и материалы будут доступны со скидками только донам в паблике для неначинающих программистов, а в общем доступе (возможно) появятся, только когда все желающие доны их освоят.
2. Курс BDD 5% => 10%
но... к сожалению вынужден признать, что выбранный мной подход к созданию курсов 3.0 не работает.
Я предварительно прошерстил прилично "ai-генераторов квизов" (все западные кстати, и 100% коммерческие), тут какие-то объективные оценки вряд ли возможны. По тем пробным триалам что выдавали, впечатление что они весьма туповато генерят вопросы, просто разделяя загруженный pdf-учебник на маленькие кусочки. Причём даже не понимают, где там главки или подглавы (по понятным причинам, так как окно контекста маленькое), и по этим кусочкам что-то там вопросительное пытаются нагенерить. В целом на студенческом уровне приемлемо работает, ничего не скажешь, а что в одном тесте могут быть перемешаны вопросы из совершенно разных тематических глав, ну так всем пофиг.
Я же делаю что-то более-менее осмысленное в теме learning distillation, хотя как оценить, конечно, что получилось в сравнении с западными, не знаю. И никто не знает. Ну и зачем тогда этим заниматься, вкладывая кучу ресурсов?
Мне вдобавок всё равно приходится делать ручную выжимку (из выжимки из выжимок): и по самому учебному материалу, и по тестовым вопросам. Править, переделывать и дополнять вручную приходится примерно от 30% до 70% по каждому модулю курса...
Поэтому и тут по трудоёмкости получается, пусть и не в десятки раз, но в приличные разы точно в сравнении с начальными моими оценками. Причём напрашивается по первым 10%, после того как такой курс закончить (это обязательное требование к целостности понимания), на его основе рекурсивно сделать мини-курс. Но это выходит вообще безумная трудоёмкость.
Пока не знаю, что тут делать, буду думать дальше.
3. Инфовайтицыганство.
Первый полезный материал
Стратегически же все эти новые курсы и материалы будут доступны со скидками только донам в паблике для неначинающих программистов, а в общем доступе (возможно) появятся, только когда все желающие доны их освоят.
3👍52🤔4❤3😁3
После того как в конце 2024-го вышло несколько "прорывных" (хаха) обновлений популярных моделек, делаю очередную итерацию по всем более-менее доступным и распространённым, с кем из них можно продолжать работать -- на реальных задачках, причём даю им сделать фактически автономную, чистую функцию на сотню строк, так как ллм-ки уже вроде как в мировом топе по решению алгоритмических задачек на кодфорсе (вот только в реальности это пока совершенно не заметно).
И ставлю окно контекста на максимум всегда, но если потом просто переспросить по какому-то ключевому и неоднозначному моменту задачи "дай две-три строчки, которые поясняют вот этот момент" - буквально в 70% случаев АИ потом пишет "ой, вы правы, извините, я ошибся, на самом деле...". И часто после следующего уточняющего вопроса снова ошибается, и так далее.
То есть мы взяли стажёра на 200 долларов в месяц, и каждый pr теперь вот так надо за ним перепроверять??
=
Вот кто так спалился 100%, вообще не рекомендую:
жпт o4 мини
гемини 1.5 флэш
клод 3 хайку
дипсик v3
Смешное: хвалёная китайская deepseek v3, которую в конце года прям превозносили, что дескать совсем дешёвая, а в кодировании по независимым тестам прям рвёт всех... ага, оказывается в этом же пионерском ряду "за полгода с нуля на зп 150k".
Вдобавок ещё и в плане креатива ноль: попросил её дать пять идей по условной теме, так она выдала ну совсем шаблонные фразы.
Старый добрый жпт4о пока в этом плане лучше всех, а если не жмотица, то клод 3.5 стабильно хорош и в кодинге ,и в креативах.
Наблюдение продолжаю.
/ai Но, безусловно...
Реальность -- это то, что отказывается останавливаться, как бы нам субъективно этого не хотелось.
Поэтому давайте будем в 2025-м реалистами, и всё же сосредоточимся на том, что уже невозможно остановить.
И ставлю окно контекста на максимум всегда, но если потом просто переспросить по какому-то ключевому и неоднозначному моменту задачи "дай две-три строчки, которые поясняют вот этот момент" - буквально в 70% случаев АИ потом пишет "ой, вы правы, извините, я ошибся, на самом деле...". И часто после следующего уточняющего вопроса снова ошибается, и так далее.
То есть мы взяли стажёра на 200 долларов в месяц, и каждый pr теперь вот так надо за ним перепроверять??
=
Вот кто так спалился 100%, вообще не рекомендую:
Смешное: хвалёная китайская deepseek v3, которую в конце года прям превозносили, что дескать совсем дешёвая, а в кодировании по независимым тестам прям рвёт всех... ага, оказывается в этом же пионерском ряду "за полгода с нуля на зп 150k".
Вдобавок ещё и в плане креатива ноль: попросил её дать пять идей по условной теме, так она выдала ну совсем шаблонные фразы.
Старый добрый жпт4о пока в этом плане лучше всех, а если не жмотица, то клод 3.5 стабильно хорош и в кодинге ,и в креативах.
Наблюдение продолжаю.
/ai Но, безусловно...
Реальность -- это то, что отказывается останавливаться, как бы нам субъективно этого не хотелось.
Поэтому давайте будем в 2025-м реалистами, и всё же сосредоточимся на том, что уже невозможно остановить.
1👍64😁8
жпт-о1-мини хороша в плане кода... только дороговата 😁
и, сцуко, игнорирует "...но код пока не пиши", сразу фигачит простыню 🙈
причём в отличие от многих других моделек сразу сжирает токены, потом "думает", когда её прерывать не имеет смысла, и потом сразу выдаёт "готовый" ответ.
в целом, думаю, на уровень стажёра вполне потянет, + конечно обширные знания её здорово отличают от белковых/кожаных в лучшую сторону.
вопрос только, уложится ли бюджет в 200-300 долларов в месяц на замену стажера/джуна, очень сомневаюсь. но это временно конечно, думаю, за год этот уровень серьёзно подешевеет.
и что интересно, стоит отойти немного в сторону непосредственно от кодинга в "образовательность", как o1-мини сразу начинает жёстко галлюцинировать. выдала мне по запросу пару десятков аккуратно оформленных ссылочек на хабр, на наши универы, из которых ни одна не оказалась правильной, ведут совсем на другие темки.
ну и фамилии "найденных" авторов на это сразу намекают :)
Автор: Иван Иванов
Автор: Мария Смирнова
Автор: Алексей Петров
(ai: "хорошая попытка, деточка")
и, сцуко, игнорирует "...но код пока не пиши", сразу фигачит простыню 🙈
причём в отличие от многих других моделек сразу сжирает токены, потом "думает", когда её прерывать не имеет смысла, и потом сразу выдаёт "готовый" ответ.
в целом, думаю, на уровень стажёра вполне потянет, + конечно обширные знания её здорово отличают от белковых/кожаных в лучшую сторону.
вопрос только, уложится ли бюджет в 200-300 долларов в месяц на замену стажера/джуна, очень сомневаюсь. но это временно конечно, думаю, за год этот уровень серьёзно подешевеет.
и что интересно, стоит отойти немного в сторону непосредственно от кодинга в "образовательность", как o1-мини сразу начинает жёстко галлюцинировать. выдала мне по запросу пару десятков аккуратно оформленных ссылочек на хабр, на наши универы, из которых ни одна не оказалась правильной, ведут совсем на другие темки.
ну и фамилии "найденных" авторов на это сразу намекают :)
Автор: Иван Иванов
Автор: Мария Смирнова
Автор: Алексей Петров
(ai: "хорошая попытка, деточка")
1✍42🤔16😁7❤1
Много думаю над тем, как продуктивнее всего обучить всем этим продвинутым темкам , чтобы в итоге научиться разрабатывать программы в парадигме топологически-ориентированного программирования (превращаем гомотопическую теорию типов в своеобразный DSL, язык "беспредеметной" области :)
Ежели по-взрослому, то это надо вдумчиво проходить несколько университетских курсов от хороших университетов из мировых топов.
А я хочу всё же попробовать обучить этому "наскоком", потому что всю математику под капотом тут знать в принципе не обязательно, если ориентироваться на некоторый условно прикладной уровень, потенциально доступный рядовому миддлу, который прошёл базовый курс по функциональному программированию. Немного похоже на машинное обучение: математики там тоже много, но чтобы начать создавать реальные проекты на DSL ML-фреймворков вроде PyTorch, всего-то надо пройти восемь ноутбуков моего курса например.
Что получится, не знаю, но если не попробовать , так и не узнать никогда.
Завтра выложу совсем простенький тренажёр по Martin-Löf Type Theory (альфа-версия).
Тут такой интересный момент, что если для классического программирования, хоть императивного, хоть объектного, хоть функционального, уровень входа достаточно хорошо определяется уровнем человека в задачах по алгебре - это один из полюсов, то чем больше мы забираемся в кроличью нору теории типов, тем более и более актуальным становится условный скилл решения задачи по геометрии на совсем другом полюсе.
В алгебре основное внимание уделяется операциям и свойствам этих операций: мы изучаем, как можно комбинировать различные элементы, и какие результаты мы можем получить. Геометрия же занимается изучением форм, их свойств и отношений между ними, и доказательствами различных утверждений в их отношении. И когда мы активно работаем с продвинутыми системами типов, то думаем примерно так, как будто в некотором смысле доказываем классические теоремы по геометрии (Curry-Howard correspondence в помощь).
То есть нулевой шаг пожалуй всё же будет изучать не алгебру и комбинаторную логику, а порешать задачки по геометрии, делая особый акцент на доказательстве теорем с большим количеством шагов доказательства. Сколь большим? Ну например доказательство Григорием Перельманом гипотезы Пуанкаре заняло около 200 шагов. А тибетские просветлённые мастера могли выстраивать логические цепочки длиной в несколько тысяч шагов.
Для разминки: задача об изогональных сопряжениях в треугольнике ABC. Пусть P — произвольная точка на плоскости снаружи треугольника, и не лежащая на его сторонах. Докажите, что существует случай, когда все три точки пересечения прямых PA PB PC со сторонами треугольника лежат на одной прямой (по теореме Паскаля о шестиугольнике). Помедитируйте сперва на визуальном решении.
Задачки Яковлева для школьников физмата и абитуры мехмата порешайте.
В любом случае, скилл длинных доказательств для программирования будет весьма полезным. Насколько полезным в сравнении с решением задачек на литкоде, погружением в реактивный фреймворк или шлифовкой прохождения собесов? Ну я не знаю. Мне просто это всё очень интересно, занимаюсь этим уже лет 20, и чем дальше, тем только увлекательнее. Вот и пишу об этом.
Ежели по-взрослому, то это надо вдумчиво проходить несколько университетских курсов от хороших университетов из мировых топов.
А я хочу всё же попробовать обучить этому "наскоком", потому что всю математику под капотом тут знать в принципе не обязательно, если ориентироваться на некоторый условно прикладной уровень, потенциально доступный рядовому миддлу, который прошёл базовый курс по функциональному программированию. Немного похоже на машинное обучение: математики там тоже много, но чтобы начать создавать реальные проекты на DSL ML-фреймворков вроде PyTorch, всего-то надо пройти восемь ноутбуков моего курса например.
Что получится, не знаю, но если не попробовать , так и не узнать никогда.
Завтра выложу совсем простенький тренажёр по Martin-Löf Type Theory (альфа-версия).
Тут такой интересный момент, что если для классического программирования, хоть императивного, хоть объектного, хоть функционального, уровень входа достаточно хорошо определяется уровнем человека в задачах по алгебре - это один из полюсов, то чем больше мы забираемся в кроличью нору теории типов, тем более и более актуальным становится условный скилл решения задачи по геометрии на совсем другом полюсе.
В алгебре основное внимание уделяется операциям и свойствам этих операций: мы изучаем, как можно комбинировать различные элементы, и какие результаты мы можем получить. Геометрия же занимается изучением форм, их свойств и отношений между ними, и доказательствами различных утверждений в их отношении. И когда мы активно работаем с продвинутыми системами типов, то думаем примерно так, как будто в некотором смысле доказываем классические теоремы по геометрии (Curry-Howard correspondence в помощь).
То есть нулевой шаг пожалуй всё же будет изучать не алгебру и комбинаторную логику, а порешать задачки по геометрии, делая особый акцент на доказательстве теорем с большим количеством шагов доказательства. Сколь большим? Ну например доказательство Григорием Перельманом гипотезы Пуанкаре заняло около 200 шагов. А тибетские просветлённые мастера могли выстраивать логические цепочки длиной в несколько тысяч шагов.
Для разминки: задача об изогональных сопряжениях в треугольнике ABC. Пусть P — произвольная точка на плоскости снаружи треугольника, и не лежащая на его сторонах. Докажите, что существует случай, когда все три точки пересечения прямых PA PB PC со сторонами треугольника лежат на одной прямой (по теореме Паскаля о шестиугольнике). Помедитируйте сперва на визуальном решении.
Задачки Яковлева для школьников физмата и абитуры мехмата порешайте.
В любом случае, скилл длинных доказательств для программирования будет весьма полезным. Насколько полезным в сравнении с решением задачек на литкоде, погружением в реактивный фреймворк или шлифовкой прохождения собесов? Ну я не знаю. Мне просто это всё очень интересно, занимаюсь этим уже лет 20, и чем дальше, тем только увлекательнее. Вот и пишу об этом.
1❤51👍17🏆3
Можете поиграться:
Интерактивный Конструктор Типов MLTT
(ссылочка пока временная)
MLTT (теория типов Мартина-Лёфа) предлагает нам три ключевые концепции:
1. Зависимые типы. Типы могут зависеть от значений/предикатов/..., например, тип "матрица размером 2x3" или "чётное число" (внутри такого типа могут существовать только чётные значения). Соответственно, мы можем много дополнительных проверок рантайма перенести на фазу компиляции (был такой прекрасный язык Паскаль/Дельфи, а потом Оберон, а до них Алгол 68).
2. Индуктивные типы: позволяют создавать сложные структуры данных из других типов, от натуральных чисел до деревьев и т.д.
3. Универсумы типов: иерархическая система "типов типов", которая помогает избежать парадоксов и обеспечить стабильность сложной типовой системы.
Потому что в MLTT сами типы -- объекты, которые имеют свои собственные типы... И рассуждая в такой парадигме логически, мы неизбежно придём к парадоксу существования "типа всех типов" (Type : Type).
Вот есть тип R, который определяется как "тип всех типов, которые не содержат самих себя". Будет ли R элементом самого себя? Ведь он по определению "не содержит себя", значит, он должен быть элементом типа R...
===
Ну и вот что тут непонятного? Любой сообразительный старшеклассник, хорошо изучивший информатику, это поймёт.
Ну разве что про универсумы не очень, но вы сразу их осознаете вот на таком простейшем примере:
- Универсум Type0 (или Set): содержит "простые" типы, такие как Nat (натуральные числа), Bool (логические значения) и т.д.
- Универсум Type1: содержит типы, которые могут включать в себя типы из Type0, например, типы функций или типы, зависящие от значений.
- Универсум Type2: содержит типы, которые могут включать в себя типы из Type1, и так далее.
И отсюда до гомотопической теории типов HoTT собственно остался всего один шаг: унивалентность. И это на самом деле тоже совершенно простая вещь на нашем программистском уровне, которую ввёл Воеводский:
Эквивалентность типов эквивалентна их равенству.
(Если два типа A и B эквивалентны (то есть существует биекция/отображение между ними, сохраняющая структуру), то они равны как типы: A = B)
И такое дополнение, напоминающее утиную типизацию, однако внезапно позволило формализовать идеи из алгебраической топологии и теории категорий в рамках теории типов!
=
Этот мой тренажёр быстро вас обучит синтаксису всех этих трёх ключевых концепций MLTT (я нагенерил 256 шаблонов задачек, на трёх уровнях сложности). Там даже никакой справки не требуется, по подсказкам и школьник разберётся, просто такой странный квест из простых синтаксических паззлов. А кто проходил мой курс по F#, конечно будет вообще легко и понятно.
А кто не проходил, просто вот на это взгляньте:
A → B означает тип функции (функциональный тип), которая принимает аргумент типа A и возвращает результат типа B.
Например, если A -- это тип натуральных чисел (Nat), а B -- тип булевых значений (Bool), то Nat → Bool — это тип функции, которая принимает натуральное число и возвращает булево значение (например, функция проверки натурального числа на чётность)
В тренажёре вместо "→" указываете "=>"
Дальше, соответственно, можно будет двигаться в семантику MLTT и далее.
Но мне ежедневно сливать на AI по 10-20 долларов, чтобы делать такие вещи в public domain, слишком накладно выходит, совсем не по карману.
Поэтому, следующие версии буду делать только через ваши донаты :)
/don только не надо пожалуйста звёздочки донатить, что я с ними буду делать? в крипту переводить? )
Единственная схема донатов, которая у меня будет -- это вин-вин. С 9 января начну выкладывать новые курсы и секретные материалы для всех, вот покупайте их лучше всего.
Интерактивный Конструктор Типов MLTT
(ссылочка пока временная)
MLTT (теория типов Мартина-Лёфа) предлагает нам три ключевые концепции:
1. Зависимые типы. Типы могут зависеть от значений/предикатов/..., например, тип "матрица размером 2x3" или "чётное число" (внутри такого типа могут существовать только чётные значения). Соответственно, мы можем много дополнительных проверок рантайма перенести на фазу компиляции (был такой прекрасный язык Паскаль/Дельфи, а потом Оберон, а до них Алгол 68).
2. Индуктивные типы: позволяют создавать сложные структуры данных из других типов, от натуральных чисел до деревьев и т.д.
3. Универсумы типов: иерархическая система "типов типов", которая помогает избежать парадоксов и обеспечить стабильность сложной типовой системы.
Потому что в MLTT сами типы -- объекты, которые имеют свои собственные типы... И рассуждая в такой парадигме логически, мы неизбежно придём к парадоксу существования "типа всех типов" (Type : Type).
Вот есть тип R, который определяется как "тип всех типов, которые не содержат самих себя". Будет ли R элементом самого себя? Ведь он по определению "не содержит себя", значит, он должен быть элементом типа R...
===
Ну и вот что тут непонятного? Любой сообразительный старшеклассник, хорошо изучивший информатику, это поймёт.
Ну разве что про универсумы не очень, но вы сразу их осознаете вот на таком простейшем примере:
- Универсум Type0 (или Set): содержит "простые" типы, такие как Nat (натуральные числа), Bool (логические значения) и т.д.
- Универсум Type1: содержит типы, которые могут включать в себя типы из Type0, например, типы функций или типы, зависящие от значений.
- Универсум Type2: содержит типы, которые могут включать в себя типы из Type1, и так далее.
И отсюда до гомотопической теории типов HoTT собственно остался всего один шаг: унивалентность. И это на самом деле тоже совершенно простая вещь на нашем программистском уровне, которую ввёл Воеводский:
Эквивалентность типов эквивалентна их равенству.
(Если два типа A и B эквивалентны (то есть существует биекция/отображение между ними, сохраняющая структуру), то они равны как типы: A = B)
И такое дополнение, напоминающее утиную типизацию, однако внезапно позволило формализовать идеи из алгебраической топологии и теории категорий в рамках теории типов!
=
Этот мой тренажёр быстро вас обучит синтаксису всех этих трёх ключевых концепций MLTT (я нагенерил 256 шаблонов задачек, на трёх уровнях сложности). Там даже никакой справки не требуется, по подсказкам и школьник разберётся, просто такой странный квест из простых синтаксических паззлов. А кто проходил мой курс по F#, конечно будет вообще легко и понятно.
А кто не проходил, просто вот на это взгляньте:
A → B означает тип функции (функциональный тип), которая принимает аргумент типа A и возвращает результат типа B.
Например, если A -- это тип натуральных чисел (Nat), а B -- тип булевых значений (Bool), то Nat → Bool — это тип функции, которая принимает натуральное число и возвращает булево значение (например, функция проверки натурального числа на чётность)
В тренажёре вместо "→" указываете "=>"
Дальше, соответственно, можно будет двигаться в семантику MLTT и далее.
Но мне ежедневно сливать на AI по 10-20 долларов, чтобы делать такие вещи в public domain, слишком накладно выходит, совсем не по карману.
Поэтому, следующие версии буду делать только через ваши донаты :)
/don только не надо пожалуйста звёздочки донатить, что я с ними буду делать? в крипту переводить? )
Единственная схема донатов, которая у меня будет -- это вин-вин. С 9 января начну выкладывать новые курсы и секретные материалы для всех, вот покупайте их лучше всего.
105🔥50👍13❤5✍4🐳3
Найм сломан окончательно и бесповоротно, сильных сеньоров сокращают сразу сливают с собесов, мощные миддлы мучительно многими месяцами маленькое место мыкают, на одну джуниорскую вакансию прилетает 8096 откликов... Что вообще происходит? Почему так? А как будет? Сколько ещё? И куда теперь?
Ну, в целом конечно странно, как причины этого всего вообще могут быть кому-то непонятными. Не сеньоров конкретно сокращают, а закрываются крупные проекты, закрываются ИТ-отделы, множество ИТ-бизнесов закрывается, банкротится или релоцируется навсегда, коллективы целиком выгоняются на улицу со всем своим персоналом и хозяйством, и перспективы тут совершенно не радужные, потому что это пока была лишь первая волна. Дальше будет значительно хуже, в любом случае возврата "к прежнему уровню" как минимум в текущем десятилетии ждать не стоит (моё оценочное суждение).
Айти-найм со своей стороны баррикад сейчас радуется конечно, но это краткосрочный пир во время чумы. Скоро придёт и их черёд :)
Айтишка - это расходная сфера услуг. Причём далеко не первоочередных, и при этом весьма дорогих. Вполне можно обойтись и без неё в очень многих случаях; посадить девочку на ведение "бумажного" документооборота в ворде и экселе, снабжёнными ai-скрепкой, и проще, и дешевле, и быстрее, и выгоднее.
Но если кафешки рестораны илитные эскортные услуги можно в случае оживления спроса перезапустить достаточно быстро, то программирование слишком консервативно. Уволить тысячу айтишников легко, но чтобы потом набрать обратно под достаточно сложный проект слаженную команду хотя бы из десятка человек, потребуются месяцы, если не годы.
Коренная причина, как я уже говорил, прозаична и очевидна просто по здравому смыслу: вот ровно 100% по мемчику с картинки.
Свежее от курсанта:
Походил по собеседованиям, начал больше ценить свое текущее место работы, оказывается все не так плохо в сравнении.
/go ... но тем не менее я всё равно рекомендовал, рекомендую, и всегда буду и впредь рекомендовать 💯 в плане карьеры и профессии развиваться только в айтишке/в айтишку. Куда кем и как угодно, совсем не обязательно программистом; например, наверняка качественные тестировщики будут расти в цене, потому что они понимают проект как раз на уровне написания правильных промптов длятуповатых белковых AI, и т.п.
/muz обещанный mp3-плеер готов, но я решил евоный ui сделать поудобнее, с конфигом и печеньками, на днях выложу.
Ну, в целом конечно странно, как причины этого всего вообще могут быть кому-то непонятными. Не сеньоров конкретно сокращают, а закрываются крупные проекты, закрываются ИТ-отделы, множество ИТ-бизнесов закрывается, банкротится или релоцируется навсегда, коллективы целиком выгоняются на улицу со всем своим персоналом и хозяйством, и перспективы тут совершенно не радужные, потому что это пока была лишь первая волна. Дальше будет значительно хуже, в любом случае возврата "к прежнему уровню" как минимум в текущем десятилетии ждать не стоит (моё оценочное суждение).
Айти-найм со своей стороны баррикад сейчас радуется конечно, но это краткосрочный пир во время чумы. Скоро придёт и их черёд :)
Айтишка - это расходная сфера услуг. Причём далеко не первоочередных, и при этом весьма дорогих. Вполне можно обойтись и без неё в очень многих случаях; посадить девочку на ведение "бумажного" документооборота в ворде и экселе, снабжёнными ai-скрепкой, и проще, и дешевле, и быстрее, и выгоднее.
Но если кафешки рестораны илитные эскортные услуги можно в случае оживления спроса перезапустить достаточно быстро, то программирование слишком консервативно. Уволить тысячу айтишников легко, но чтобы потом набрать обратно под достаточно сложный проект слаженную команду хотя бы из десятка человек, потребуются месяцы, если не годы.
Коренная причина, как я уже говорил, прозаична и очевидна просто по здравому смыслу: вот ровно 100% по мемчику с картинки.
Свежее от курсанта:
Походил по собеседованиям, начал больше ценить свое текущее место работы, оказывается все не так плохо в сравнении.
/go ... но тем не менее я всё равно рекомендовал, рекомендую, и всегда буду и впредь рекомендовать 💯 в плане карьеры и профессии развиваться только в айтишке/в айтишку. Куда кем и как угодно, совсем не обязательно программистом; например, наверняка качественные тестировщики будут расти в цене, потому что они понимают проект как раз на уровне написания правильных промптов для
/muz обещанный mp3-плеер готов, но я решил евоный ui сделать поудобнее, с конфигом и печеньками, на днях выложу.
3❤36✍21👍13⚡2🐳2
Кстати, совершенно нормальная схема вката в айти (без иронии),и требования вполне разумные.
Только надо уточнить один малюсенький момент по поводу "... 20 000 и т.д."
"и т.д." -- значит ли приведённый пример, что моя зп 0-10-20... через год будет 120,000 рублей, через два года 240,000 рублей, через пять лет -- 600,000 рублей, и т.д.?
Какая конкретно числовая последовательность из On-Line Encyclopedia of Integer Sequences тут подразумевается?
И не будет ли это на самом деле A000005 ?
10, 20, 20, 30, 20, 40, 20, 40, 30, 40...
Или даже A000120 ?
10, 20, 10, 20, 20, 30, 10, 20...
Только надо уточнить один малюсенький момент по поводу "... 20 000 и т.д."
"и т.д." -- значит ли приведённый пример, что моя зп 0-10-20... через год будет 120,000 рублей, через два года 240,000 рублей, через пять лет -- 600,000 рублей, и т.д.?
Какая конкретно числовая последовательность из On-Line Encyclopedia of Integer Sequences тут подразумевается?
И не будет ли это на самом деле A000005 ?
10, 20, 20, 30, 20, 40, 20, 40, 30, 40...
Или даже A000120 ?
10, 20, 10, 20, 20, 30, 10, 20...
3😁64✍8🤔7🫡3🤝1
Главное в работе с дорогими моделями: вытянуть из них логику (даже работающий код не так критичен) для самой сложной части задачи, всё остальное прекрасно делегируется дешёвым/ бесплатным ллм-кам. В каком формате вытаскивать логику? В виде тестов слишком низкоуровнево, это второй уровень мышления о проекте, а нам нужен третий. В виде "свободного" словесного описания -- слишком абстрактно и практически всегда нечётко и противоречиво.
Склоняюсь к C4 или BPMI, но жпт пока рисовать диаграммы не умеет (на самом деле, уже немного умеет, скоро дам донам материал на эту тему). Но лучше чем текст, никогда ничего не было и не будет в плане КПД, картинки -- всегда лишь вторичное удобное дополнение. Тут идеально подходит BDD (курс по которому у меня в активном процессе, ~50% готово).
Но это конечно немыслимо
- не только без прокачанных архитектурных и software design-скиллов, подразумевающих, что вы по тексту задачи способны с ходу визуализировать в своей собственной голове её структуру на достаточно высоких уровнях абстракции, но с возможностью детализации (C4),
- и не только без навыка функционального проектирования ("Functional Core, Imperative Shell", потому что AI лучше всего пишет автономные чистые функции),
- но и без прокачанных скиллов постановщика/аналитика/тестировщика, для чего в контексте общения с жпт желательно уметь уверенно работать с подходом BDD (он ведь, по большому счёту, про многоуровневое в плане логики тестирование) и методологиями вроде BPMI, в формате продвинутых формализованных промптов.
По этим темкам у меня уже много материалов и готово, и ещё делается, причём теперь практически все новые материалы и курсы будут доступны не только моим курсантам, но и (почти) всем (это пока я делаю прикорм :)
С 9 января продолжим в рабочем режиме. 🚀
Склоняюсь к C4 или BPMI, но жпт пока рисовать диаграммы не умеет (на самом деле, уже немного умеет, скоро дам донам материал на эту тему). Но лучше чем текст, никогда ничего не было и не будет в плане КПД, картинки -- всегда лишь вторичное удобное дополнение. Тут идеально подходит BDD (курс по которому у меня в активном процессе, ~50% готово).
Но это конечно немыслимо
- не только без прокачанных архитектурных и software design-скиллов, подразумевающих, что вы по тексту задачи способны с ходу визуализировать в своей собственной голове её структуру на достаточно высоких уровнях абстракции, но с возможностью детализации (C4),
- и не только без навыка функционального проектирования ("Functional Core, Imperative Shell", потому что AI лучше всего пишет автономные чистые функции),
- но и без прокачанных скиллов постановщика/аналитика/тестировщика, для чего в контексте общения с жпт желательно уметь уверенно работать с подходом BDD (он ведь, по большому счёту, про многоуровневое в плане логики тестирование) и методологиями вроде BPMI, в формате продвинутых формализованных промптов.
По этим темкам у меня уже много материалов и готово, и ещё делается, причём теперь практически все новые материалы и курсы будут доступны не только моим курсантам, но и (почти) всем (это пока я делаю прикорм :)
С 9 января продолжим в рабочем режиме. 🚀
1✍48👍16🔥5👏3
На какой формат лучше всего заменить эти ваши бесконечно мучительные нетипизированные де/сереализации через жсон? 98% и не знают, что есть вот такой прекрасный "language-neutral, platform-neutral extensible mechanism for serializing structured data".
И нет, это не хмл: "think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages".
Срочно встраиваем в свои проектыProtobuf отсюда.
И нет, это не хмл: "think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages".
Срочно встраиваем в свои проекты
1👏33🤔22👍9✍7💯2
Обновлённый список наших блогеров на 08.01.25.
Существенно съёжился :) потому что с 1 января правила занятий в моей Школе стали существенно строже. Теперь в частности любое нарушение правил (например, правил ведения блога) -- просто ликвидация соответствующей возможности без какой-либо обратной связи. В правилах всё расписано максимально подробно.
Больше никого не предупреждаю, не подсказываю, не напоминаю и т.д.
Я чрезмерно вожусь с занимающимися, словно это малые дети, словно их рост нужен мне, а не им. Не хотите следовать моим рекомендациям, считаете, что блог и прочее пустая трата времени, ну ok, без проблем.
Главная задача тренера -- развивать в человеках самостоятельность, мышление чемпионов, ну и ответственность хотя бы за самого себя, за свои собственные поступки. Но в 98% случаев вижу только детский сад штаны на лямках.
/dev в vk сегодня разбираю легендарную статью "Big Ball of Mud": семь классических антипатернов разработки.
Существенно съёжился :) потому что с 1 января правила занятий в моей Школе стали существенно строже. Теперь в частности любое нарушение правил (например, правил ведения блога) -- просто ликвидация соответствующей возможности без какой-либо обратной связи. В правилах всё расписано максимально подробно.
Больше никого не предупреждаю, не подсказываю, не напоминаю и т.д.
Я чрезмерно вожусь с занимающимися, словно это малые дети, словно их рост нужен мне, а не им. Не хотите следовать моим рекомендациям, считаете, что блог и прочее пустая трата времени, ну ok, без проблем.
Главная задача тренера -- развивать в человеках самостоятельность, мышление чемпионов, ну и ответственность хотя бы за самого себя, за свои собственные поступки. Но в 98% случаев вижу только детский сад штаны на лямках.
/dev в vk сегодня разбираю легендарную статью "Big Ball of Mud": семь классических антипатернов разработки.
1❤34👍15🫡9✍4💯3