Обещанное продолжение по HoTT ❤️❤️❤️
Но сперва небольшое отступление.
Ту реализацию гомотопической теории, которую я в основном сделал (осталось поотлаживаться на достаточно сложных примерах), я назвал
ТОП (топологически-ориентированное программирование)
(пока подобного термина нигде не было)
PHPoTT (моя программная реализация ТОП) -- это такой игрушечный функциональный язык с зависимыми типами, который однако умеет мощные штуки: прежде всего это явная работа с гомотопическими путями и высшими индуктивными типами.
Ну, да, нечто подобное по-взрослому умеют кубическая Agda, Arend, Coq с HoTT, Lean... Хотя нет, экспериментальная поддержка HoTT была в Lean 2, начиная с Lean 3 от HoTT отказались в пользу классической математики, а текущий Lean 4 вообще практически полностью сфокусировался на формализации обычной математики.
...В смысле? Разве HoTT -- это не "обычная математика"?
Нет, не обычная )
В "обычной математике" фундамент -- это абстрактная теория множеств, дискретность и статичность, а главное, сами доказательства -- это внешние по отношению к объектам конструкции. А HoTT -- про динамическую природу типов и конструктивные доказательства сами как объекты первого класса.
=
В ряде деталей PHPoTT обходит вышеупомянутые языки и пруверы. Ну например, конечно, тому же языку F* в целом прилично проигрываем, но...
В F* абстрактные refinement types, а у меня конкретные реализации высших индуктивных типов. В F* сложная система эффектов: они там первоклассные сущности в системе типов, и каждая функция должна явно декларировать, какие побочные эффекты она будет "производить" :) Хочешь исключение выбросить? Ставь ручками метку Exn. Надеешься, что чистая тотальная? Ставь Tot. И т.п. А PHPoTT -- простая система с явными гомотопическими путями.
=
Да, но "а что это всё вообще кому-то даст на практике??"
1. Конечно, прежде всего тема формальной верификации -- большое отдельное, которое много лет остаётся дорогим и мало популярным, но... Сегодня в связи с тем, что потихонечку получается получать более-менее рабочий код во всяческих жпт из естественной речи (хотя чем дороже ллмка, тем более (а не менее!) она требовательна к точности и формализмам в словесной заявке), думаю эта тема будет взлетать очень сильно.
2. Когда у нас есть доказуемые изоморфизмы, мы можем верифицировать пути преобразований между всяческими форматами данных например - на уровне математически правильной спецификации для уровня жпт, сформированной автоматически (т.к. HoTT и про гарантированное сохранение свойств при трансформациях).
3. Мы также можем строго доказывать эквивалентность различных представлений криптографических структур :) включая формальную верификацию свойств "гладкости" криптографических функций. Формально описывать криптографические протоколы с сохранением их топологической структуры с верификацией свойств безопасности на уровне типов.
Получаем формальные гарантии безопасности,
верифицируем протоколы математически,
имеем возможность доказательного композирования криптографических примитивов,
получаем дешёвые и простые готовые инструменты для анализа устойчивости криптосистем,
и т.п. и т.д.
(картинки - это реально работающий код, шаблоны для конкретных задач, а не просто набранный в редакторе для демонстрации :)
Представляете, когда я обучу вас легко и просто подобным формальным подходам, которые сейчас и близко никто не понимает и не представляет (они даже не знают, что они этого не знают:)? С совершенно конкретным скиллом применения этого в вашей повседневной работе! 💪🏻💪🏻💪🏻💥💥🚀🚀🚀
(если конечно не релоцируюсь:)
Продолжение по курсам 3.0 следует; в следующий раз, как обещал, конкретно про самостоятельное начальное обучение этому напишу (сперва конечно надо в голову встроить соответствующую думательную машинку).
/dev прогресс по курсам 3.0: 23% => 27%
...
2. Фреймворк курса: 0% => 15%
Но сперва небольшое отступление.
Ту реализацию гомотопической теории, которую я в основном сделал (осталось поотлаживаться на достаточно сложных примерах), я назвал
ТОП (топологически-ориентированное программирование)
(пока подобного термина нигде не было)
PHPoTT (моя программная реализация ТОП) -- это такой игрушечный функциональный язык с зависимыми типами, который однако умеет мощные штуки: прежде всего это явная работа с гомотопическими путями и высшими индуктивными типами.
Ну, да, нечто подобное по-взрослому умеют кубическая Agda, Arend, Coq с HoTT, Lean... Хотя нет, экспериментальная поддержка HoTT была в Lean 2, начиная с Lean 3 от HoTT отказались в пользу классической математики, а текущий Lean 4 вообще практически полностью сфокусировался на формализации обычной математики.
...В смысле? Разве HoTT -- это не "обычная математика"?
Нет, не обычная )
В "обычной математике" фундамент -- это абстрактная теория множеств, дискретность и статичность, а главное, сами доказательства -- это внешние по отношению к объектам конструкции. А HoTT -- про динамическую природу типов и конструктивные доказательства сами как объекты первого класса.
=
В ряде деталей PHPoTT обходит вышеупомянутые языки и пруверы. Ну например, конечно, тому же языку F* в целом прилично проигрываем, но...
В F* абстрактные refinement types, а у меня конкретные реализации высших индуктивных типов. В F* сложная система эффектов: они там первоклассные сущности в системе типов, и каждая функция должна явно декларировать, какие побочные эффекты она будет "производить" :) Хочешь исключение выбросить? Ставь ручками метку Exn. Надеешься, что чистая тотальная? Ставь Tot. И т.п. А PHPoTT -- простая система с явными гомотопическими путями.
=
Да, но "а что это всё вообще кому-то даст на практике??"
1. Конечно, прежде всего тема формальной верификации -- большое отдельное, которое много лет остаётся дорогим и мало популярным, но... Сегодня в связи с тем, что потихонечку получается получать более-менее рабочий код во всяческих жпт из естественной речи (хотя чем дороже ллмка, тем более (а не менее!) она требовательна к точности и формализмам в словесной заявке), думаю эта тема будет взлетать очень сильно.
2. Когда у нас есть доказуемые изоморфизмы, мы можем верифицировать пути преобразований между всяческими форматами данных например - на уровне математически правильной спецификации для уровня жпт, сформированной автоматически (т.к. HoTT и про гарантированное сохранение свойств при трансформациях).
3. Мы также можем строго доказывать эквивалентность различных представлений криптографических структур :) включая формальную верификацию свойств "гладкости" криптографических функций. Формально описывать криптографические протоколы с сохранением их топологической структуры с верификацией свойств безопасности на уровне типов.
Получаем формальные гарантии безопасности,
верифицируем протоколы математически,
имеем возможность доказательного композирования криптографических примитивов,
получаем дешёвые и простые готовые инструменты для анализа устойчивости криптосистем,
и т.п. и т.д.
(картинки - это реально работающий код, шаблоны для конкретных задач, а не просто набранный в редакторе для демонстрации :)
Представляете, когда я обучу вас легко и просто подобным формальным подходам, которые сейчас и близко никто не понимает и не представляет (они даже не знают, что они этого не знают:)? С совершенно конкретным скиллом применения этого в вашей повседневной работе! 💪🏻💪🏻💪🏻💥💥🚀🚀🚀
(если конечно не релоцируюсь:)
Продолжение по курсам 3.0 следует; в следующий раз, как обещал, конкретно про самостоятельное начальное обучение этому напишу (сперва конечно надо в голову встроить соответствующую думательную машинку).
/dev прогресс по курсам 3.0: 23% => 27%
...
2. Фреймворк курса: 0% => 15%
50❤51👍18🔥5😇1
Эта инфа льётся из каждого docker-контейнера (даже из тех, которые помечены как production only), паблики устали её репостить:
"курьеры зарабатывают уже больше чем айтишники, и при этом спрос на них только растёт"
Чтобы стало понятнее, а почему так получается, напомню ещё одну заезженную тему, которая тоже настолько распространена, что её можно найти в исходном коде микроволновки моей бабушки (причём в режиме дебаггера она выводится вместо времени приготовления):
"для IT отрасли созданы очень комфортные налоговые льготы и послабления..."
Сермяга в том, что для той обширной ниши сферы услуг, где существует "профессия" курьер, созданы такие налоговые льготы, что русской айтишке и не снились даже после третьей чашки предрелизного кофе, или когда деплой прошёл с первой попытки.
Какие-то особые налоговые условия для ИТ -- это миф из той же серии, что и "код без багов', "понятная документация" и "заказчик точно знает, чего хочет". Это как верить, что твой код будет работать быстрее, если очень вежливо попросить процессор. Пока мы оптимизируем хвостовую рекурсию, владельцы курьерских бизнесов оптимизируют маршруты до налоговой.
/rtfm выбираем современный gui фреймворк для питона (впн)
"курьеры зарабатывают уже больше чем айтишники, и при этом спрос на них только растёт"
Чтобы стало понятнее, а почему так получается, напомню ещё одну заезженную тему, которая тоже настолько распространена, что её можно найти в исходном коде микроволновки моей бабушки (причём в режиме дебаггера она выводится вместо времени приготовления):
"для IT отрасли созданы очень комфортные налоговые льготы и послабления..."
Сермяга в том, что для той обширной ниши сферы услуг, где существует "профессия" курьер, созданы такие налоговые льготы, что русской айтишке и не снились даже после третьей чашки предрелизного кофе, или когда деплой прошёл с первой попытки.
Какие-то особые налоговые условия для ИТ -- это миф из той же серии, что и "код без багов', "понятная документация" и "заказчик точно знает, чего хочет". Это как верить, что твой код будет работать быстрее, если очень вежливо попросить процессор. Пока мы оптимизируем хвостовую рекурсию, владельцы курьерских бизнесов оптимизируют маршруты до налоговой.
/rtfm выбираем современный gui фреймворк для питона (впн)
1🔥39🤔16👍4❤2😁2
Итоги года с Сергеем Бобровским. Москва, Ховрино, 12 часов.
Сдул пыль с роадмапа Школы (пока он старый). В последний раз я его редактировал более года назад.
За 2024й из новых курсов добавился только один, по software design ("Незримые механизмы логики"). Обновил также оба курса по АСД - около полусотни новых задач добавилось.
Основной фокус я делал на контенте:
- 1000-й пост в паблике на 13т папищеков(успей всё прочитать до 1 января, потом паблик станет вне закона) ;
- 100-й материал СильныхИдей
"...Можно ли генерировать код из спецификаций? Во-первых, вы можете ошибиться при создании или внедрении спецификации, что может в дальнейшем привести к серьёзным логическим ошибками. Во-вторых, реализация со временем наверняка будет "дрейфовать", а про обновление спецификации вы забудете, что приведёт к неожиданным проблемам с архитектурой. И чем здесь вам поможет AI? Нет, вы не можете это делать. ...Но есть и хорошие новости."
- 93-й материал "Есть ли у вас план Б?" курсы карьеры
Если вы зацикливаетесь на определённом плане развития карьеры, частые ошибки неизбежны. По мере роста в профессии у вас регулярно будут возникать одновременно несколько хороших возможностей для рассмотрения. Так вот, особенно если некоторые из этих возможностей одинаково привлекательны, полезно учитывать следующее...
- 56-й материал "Это убивает вашу зарплату" трека " Элитный программист"
По всему миру распространяется опасная эпидемия, но НИКТО об этом не говорит. Это не прогресс, это регресс ...
- 52-й материал "Последнее, о чём вам следует просить по офферу" трека "Бесстрашных переговоров о зарплате"
и т.д.
=
Из небольших факапов по Школе, ну разве что я стал важничать, что превращаюсь в нечто вроде боксскиллдалогии, начал проявлять больше "гуманности" к новеньким кто записывается ко мне (типа, "клиент всегда прав"), сю-сю-сю -- и в результате впустил несколько неадекватных персонажей, юных дарований, которые стали по треугольнику Карпмана занимать позицию Преследователя. И были быстро и успешно забанены :) Причём красные флажки были, с самого начала: типа, чел делает задание явно небрежно, не соблюдает правила занятий, начинает выпендриваться, проявлять пассивную агрессию и т.п.
Ну, соответствующие фиксы теперь я просто добавляю в правила занятий (предупреждение, сгорание скидок, отчисление), и когда курсант пишет что-то, что мне не нравится (абсолютно субъективно и волюнтаристски), просто молча даю ему прямую ссылочку на пункт правил. 1 минута - и +10 евро :)
Впрочем, последний маленький набор на мои курсы я делал в последний раз 3-го сентября (взял пять человек, и то случайно, хотел двух-трёх, но не успел через две минуты закрыть набор, набижали молниеносно :), и раньше весны вряд ли его возобновлю.
=
На 2025-й планы такие:
1. Прокачиваю Школу и систему курсов (будут если не в открытом, то в относительно открытом доступе 💯) до уровня 3.0 (в контексте ТОП).
Ну ок, для дальнейшего усиления мотивации обязуюсь выпустить первый курс 3.0 до 01.02.2025.
(вчера кстати общий прогресс на пару процентов откатился назад :) стоит, блин, дать жпт хотя бы чуть-чуть свободы, выпустить из ежовых рукавиц тестов и формальных спецификаций, как оно тут же начинает нести пургу и фигачить баги, которые проявляются позже и ломают вообще всё в дизайне; супер опыт кстати получается, расскажу потом как делать проект с жпт минимальными расходами по времени и деньгам)
2. Надоели окончательно "айти-консалтинги": денег платят дофига, но в любом случае это упирается в фактически почасовую мою работу, а в итоге из рекомендаций, которые у меня так просили, буквально умоляли, и которыми были очень довольны, внедряется от силы 2%.
Поэтому, ухожу в инфоцыганствоследом за Аязом )))
(продолжение после спокойного перерыва на вкусный обед)
Сдул пыль с роадмапа Школы (пока он старый). В последний раз я его редактировал более года назад.
За 2024й из новых курсов добавился только один, по software design ("Незримые механизмы логики"). Обновил также оба курса по АСД - около полусотни новых задач добавилось.
Основной фокус я делал на контенте:
- 1000-й пост в паблике на 13т папищеков
- 100-й материал СильныхИдей
"...Можно ли генерировать код из спецификаций? Во-первых, вы можете ошибиться при создании или внедрении спецификации, что может в дальнейшем привести к серьёзным логическим ошибками. Во-вторых, реализация со временем наверняка будет "дрейфовать", а про обновление спецификации вы забудете, что приведёт к неожиданным проблемам с архитектурой. И чем здесь вам поможет AI? Нет, вы не можете это делать. ...Но есть и хорошие новости."
- 93-й материал "Есть ли у вас план Б?" курсы карьеры
Если вы зацикливаетесь на определённом плане развития карьеры, частые ошибки неизбежны. По мере роста в профессии у вас регулярно будут возникать одновременно несколько хороших возможностей для рассмотрения. Так вот, особенно если некоторые из этих возможностей одинаково привлекательны, полезно учитывать следующее...
- 56-й материал "Это убивает вашу зарплату" трека " Элитный программист"
По всему миру распространяется опасная эпидемия, но НИКТО об этом не говорит. Это не прогресс, это регресс ...
- 52-й материал "Последнее, о чём вам следует просить по офферу" трека "Бесстрашных переговоров о зарплате"
и т.д.
=
Из небольших факапов по Школе, ну разве что я стал важничать, что превращаюсь в нечто вроде боксскиллдалогии, начал проявлять больше "гуманности" к новеньким кто записывается ко мне (типа, "клиент всегда прав"), сю-сю-сю -- и в результате впустил несколько неадекватных персонажей, юных дарований, которые стали по треугольнику Карпмана занимать позицию Преследователя. И были быстро и успешно забанены :) Причём красные флажки были, с самого начала: типа, чел делает задание явно небрежно, не соблюдает правила занятий, начинает выпендриваться, проявлять пассивную агрессию и т.п.
Ну, соответствующие фиксы теперь я просто добавляю в правила занятий (предупреждение, сгорание скидок, отчисление), и когда курсант пишет что-то, что мне не нравится (абсолютно субъективно и волюнтаристски), просто молча даю ему прямую ссылочку на пункт правил. 1 минута - и +10 евро :)
Впрочем, последний маленький набор на мои курсы я делал в последний раз 3-го сентября (взял пять человек, и то случайно, хотел двух-трёх, но не успел через две минуты закрыть набор, набижали молниеносно :), и раньше весны вряд ли его возобновлю.
=
На 2025-й планы такие:
1. Прокачиваю Школу и систему курсов (будут если не в открытом, то в относительно открытом доступе 💯) до уровня 3.0 (в контексте ТОП).
Ну ок, для дальнейшего усиления мотивации обязуюсь выпустить первый курс 3.0 до 01.02.2025.
2. Надоели окончательно "айти-консалтинги": денег платят дофига, но в любом случае это упирается в фактически почасовую мою работу, а в итоге из рекомендаций, которые у меня так просили, буквально умоляли, и которыми были очень довольны, внедряется от силы 2%.
Поэтому, ухожу в инфоцыганство
(продолжение после спокойного перерыва на вкусный обед)
6👍56❤16🔥5🥰3👏2
2. ...Ухожу в инфоцыганство ↑↑↑
...только оно будет не простое, а математическое :)
Типа такого:
1. ШОКИРУЮЩАЯ ПРАВДА о монадах, которую скрывают функциональные программисты! Узнай, как простой джуниор поднял производительность на 1000% с помощью одного паттерна!
2. ВСЕ МАТЕМАТИКИ НЕНАВИДЯТ ЕГО! Разработчик нашёл способ доказывать теоремы Карри-Говарда без изучения лямбда-исчисления. Только 24 часа доступа к секретной методике!
3. ОН ВЗЛОМАЛ МАТРИЦУ ТИПОВ! Бывший дворник за две недели освоил теорию категорий и теперь зарабатывает на смарт-контрактах!
(СЛИВ СХЕМЫ в закрытом телеграм-канале "Ватинформ")
4. НЕ ОТКРЫВАЙ, ПОКА НЕ ГОТОВ! Древний секрет комбинаторной логики Смаллиана, который превращает джуниоров в сеньоров за 14 дней!
Количество мест в потоке ОГРАНИЧЕНО!!1
5. СРОЧНО! Эксклюзивный курс гомотопической теории типов для домохозяек! Узнай, как писать доказуемо корректные программы, не выходя из декрета!
СКИДКА 99.9% только сегодня!
Бонус: СЛИВ ИНСАЙДА!Профессор математики случайно проговорился о секретной формуле превращения императивного кода в чистый функциональный! Спринт-марафон по теоркату всего за 49,999 рублей.
...только оно будет не простое, а математическое :)
Типа такого:
1. ШОКИРУЮЩАЯ ПРАВДА о монадах, которую скрывают функциональные программисты! Узнай, как простой джуниор поднял производительность на 1000% с помощью одного паттерна!
2. ВСЕ МАТЕМАТИКИ НЕНАВИДЯТ ЕГО! Разработчик нашёл способ доказывать теоремы Карри-Говарда без изучения лямбда-исчисления. Только 24 часа доступа к секретной методике!
3. ОН ВЗЛОМАЛ МАТРИЦУ ТИПОВ! Бывший дворник за две недели освоил теорию категорий и теперь зарабатывает на смарт-контрактах!
(СЛИВ СХЕМЫ в закрытом телеграм-канале "Ватинформ")
4. НЕ ОТКРЫВАЙ, ПОКА НЕ ГОТОВ! Древний секрет комбинаторной логики Смаллиана, который превращает джуниоров в сеньоров за 14 дней!
Количество мест в потоке ОГРАНИЧЕНО!!1
5. СРОЧНО! Эксклюзивный курс гомотопической теории типов для домохозяек! Узнай, как писать доказуемо корректные программы, не выходя из декрета!
СКИДКА 99.9% только сегодня!
Бонус: СЛИВ ИНСАЙДА!
4😁66❤13🔥12👍5🤯1
...пункт 3, последний. Новый роадмап на 2025-й и далее.
Я поставил "2024-??" в старом плане, потому что, честно говорю, не верил что сделаю в этом году хотя бы что-нибудь одно из этого. А уж про "курс по Homotopy type theory как "языку программирования" даже и не мечтал, честно. Вообще не думал что получится это хоть когда-нибудь, потому что уж слишком сложной темка казалась, и понимания не хватало, как в математике сопутствующей, так и куда и как мне двигать Школу дальше стратегически.
А уж что я сделаю это в одиночку! в виде реально работающей технологии! за один месяц! да ещё и на пыхе :) Скажи мне это кто-нибудь ещё в ноябре, совершенно бы не поверил ...
Но (не без помощи моего гуру 🙏🙏🙏), вот буквально за один этот декабрь, я с нуля в потенциальном виде реализовал ВСЁ что там упоминал, и даже существенно больше чем планировал, и все эти старые пункты теперь гармонично укладываются в зонтичную концепцию ТОП как её естественные составляющие.
Все эти пункты (да и много чего ещё другого) в простом ясном и понятном виде (причём с акцентом на это ваше "прикладное полезненькое") я постараюсь сделать в 2025-м.
=
Не могу сказать с чем этот прорыв связать осознанно, но в целом, полагаю, причина в том, что я уже много десятков лет стабильно читаю и перечитываю всяческие полезные книги: по саморазвитию прежде всего, по математике, computer science, не менее одной книги в неделю. Ну и рано или поздно всё это накапливаемое в подсознании, периодически проявляется вот в такой вот пиковый прорыв, чего и вам искренне желаю.
На этой неделе кстати закончил книгу "Максимум. Как достичь личного совершенства с помощью современных научных открытий" Андерс Эрикссон, Роберт Пул, которая в оригинале неспроста называется "PEAK" :)
(но это не рекомендация бросаться читать именно её как какую-то серебряную пулю)
А технологическую сингулярность сдвигаем пока аккуратно с 2042-го на 2033-й.
Я поставил "2024-??" в старом плане, потому что, честно говорю, не верил что сделаю в этом году хотя бы что-нибудь одно из этого. А уж про "курс по Homotopy type theory как "языку программирования" даже и не мечтал, честно. Вообще не думал что получится это хоть когда-нибудь, потому что уж слишком сложной темка казалась, и понимания не хватало, как в математике сопутствующей, так и куда и как мне двигать Школу дальше стратегически.
А уж что я сделаю это в одиночку! в виде реально работающей технологии! за один месяц! да ещё и на пыхе :) Скажи мне это кто-нибудь ещё в ноябре, совершенно бы не поверил ...
Но (не без помощи моего гуру 🙏🙏🙏), вот буквально за один этот декабрь, я с нуля в потенциальном виде реализовал ВСЁ что там упоминал, и даже существенно больше чем планировал, и все эти старые пункты теперь гармонично укладываются в зонтичную концепцию ТОП как её естественные составляющие.
Все эти пункты (да и много чего ещё другого) в простом ясном и понятном виде (причём с акцентом на это ваше "прикладное полезненькое") я постараюсь сделать в 2025-м.
=
Не могу сказать с чем этот прорыв связать осознанно, но в целом, полагаю, причина в том, что я уже много десятков лет стабильно читаю и перечитываю всяческие полезные книги: по саморазвитию прежде всего, по математике, computer science, не менее одной книги в неделю. Ну и рано или поздно всё это накапливаемое в подсознании, периодически проявляется вот в такой вот пиковый прорыв, чего и вам искренне желаю.
На этой неделе кстати закончил книгу "Максимум. Как достичь личного совершенства с помощью современных научных открытий" Андерс Эрикссон, Роберт Пул, которая в оригинале неспроста называется "PEAK" :)
(но это не рекомендация бросаться читать именно её как какую-то серебряную пулю)
А технологическую сингулярность сдвигаем пока аккуратно с 2042-го на 2033-й.
2👍50🔥13👏3❤2⚡1
Заключительное.
...Когда ушли первые 100 долларов на жпт, я всё ещё думал, что не получится 98%, много раз хотел слиться, потому что грядущим сотням долларов, утекающим впустую c мутными перспективами, казалось, не будет ни конца ни края. Я кстати делал всё на клоде 3.5, жпт-4o явно слабее, но у клода оказался такой недостаток, что он слишком разговорчив и слишком подробно пишет код с кучей примеров, тестов и пояснений. Стоит чуть-чуть расслабиться, и токены сгорят только так.
У меня даже были греховные мысли -- а не попробовать ли жпт o1 или клод опус, в иллюзорной надежде что уж они-то за 200 долларов в месяц (причём за весьма небольшое число токенов на такую сумму) сразу будут писать много кода практически без переделок и дополнений. ага ага щас.
Пока все эти жпт для программистов -- большой мыльный пузырь, который всё раздувается и раздувается , инфоцыганство для умной ЦА. Коготок увяз -- всей птичке пропасть.
БАЗА:
НЕ планируйте делать целый проект с жпт -- это ТУПИК.
НИКОГДА не впускайте этих инопланетян на уровень архитектуры и software design.
И вот то, чему я учу в Школе, что начинал ещё 6 лет назад (и ни разу не отклонялся),
что ещё полгода назад казалось никому особо не нужным академическим умничанием, сегодня в контексте AI получается прям топчик абсолютный. Университетское понимание вычислительных моделей (включая параллелизм), ООАП, ФП, всяческие спецификации и формализмы -- вот это вот всё получается 98% попадание в темку "как легко и быстро просто и дёшево X1000 разрабатывать надёжные программные проекты с помощью жпт".
Все десятки курсов моей Школы теперь естественно складываются в эту тему как готовый паззл.
СЕНСАЦИЯ! ВЗЛОМАН КОД УСПЕХА! =>
Русский программист после десятилетий отшельничества и глубоких исследований в теории типов и категорий в 2024-м СЛУЧАЙНО обнаружил, что некоторые формальные методы - это ТОЧНЫЙ КЛЮЧ к управлению искусственным интеллектом! НЕЙРОСЕТИ В ШОКЕ: применяя зависимые типы и формальные спецификации, можно заставить AI писать ДОКАЗУЕМО КОРРЕКТНЫЙ КОД в 1000 раз быстрее обычных программистов!
На моём ЗАКРЫТОМ МАРАФОНЕ вы узнаете, как использовать монадические трансформеры для точного контроля над GPT, превращая любой промт в ИДЕАЛЬНЫЙ КОД! Забудьте про галлюцинации AI - типизированные нейросети под контролем теории категорий работают как ШВЕЙЦАРСКИЕ ЧАСЫ!
ЭКСКЛЮЗИВ: участники марафона получат доступ к секретной формуле композиции функторов, которая заставляет ChatGPT писать код чище, чем сеньор-разработчик с 20-летним стажем!
Осталось всего 3 места по старой цене! Успей застолбить место в новой IT-элите!
#AIпослушныйкакКотёнок #МонадическийИИ #ТипыПобеждаютВсё
Всем бобра 💥 дорогие! ❤️
...Когда ушли первые 100 долларов на жпт, я всё ещё думал, что не получится 98%, много раз хотел слиться, потому что грядущим сотням долларов, утекающим впустую c мутными перспективами, казалось, не будет ни конца ни края. Я кстати делал всё на клоде 3.5, жпт-4o явно слабее, но у клода оказался такой недостаток, что он слишком разговорчив и слишком подробно пишет код с кучей примеров, тестов и пояснений. Стоит чуть-чуть расслабиться, и токены сгорят только так.
У меня даже были греховные мысли -- а не попробовать ли жпт o1 или клод опус, в иллюзорной надежде что уж они-то за 200 долларов в месяц (причём за весьма небольшое число токенов на такую сумму) сразу будут писать много кода практически без переделок и дополнений. ага ага щас.
Пока все эти жпт для программистов -- большой мыльный пузырь, который всё раздувается и раздувается , инфоцыганство для умной ЦА. Коготок увяз -- всей птичке пропасть.
БАЗА:
НЕ планируйте делать целый проект с жпт -- это ТУПИК.
НИКОГДА не впускайте этих инопланетян на уровень архитектуры и software design.
И вот то, чему я учу в Школе, что начинал ещё 6 лет назад (и ни разу не отклонялся),
что ещё полгода назад казалось никому особо не нужным академическим умничанием, сегодня в контексте AI получается прям топчик абсолютный. Университетское понимание вычислительных моделей (включая параллелизм), ООАП, ФП, всяческие спецификации и формализмы -- вот это вот всё получается 98% попадание в темку "как легко и быстро просто и дёшево X1000 разрабатывать надёжные программные проекты с помощью жпт".
Все десятки курсов моей Школы теперь естественно складываются в эту тему как готовый паззл.
СЕНСАЦИЯ! ВЗЛОМАН КОД УСПЕХА! =>
На моём ЗАКРЫТОМ МАРАФОНЕ вы узнаете, как использовать монадические трансформеры для точного контроля над GPT, превращая любой промт в ИДЕАЛЬНЫЙ КОД! Забудьте про галлюцинации AI - типизированные нейросети под контролем теории категорий работают как ШВЕЙЦАРСКИЕ ЧАСЫ!
ЭКСКЛЮЗИВ: участники марафона получат доступ к секретной формуле композиции функторов, которая заставляет ChatGPT писать код чище, чем сеньор-разработчик с 20-летним стажем!
Осталось всего 3 места по старой цене! Успей застолбить место в новой IT-элите!
5❤59😁24👍11😇1
Тысяча кокошников, как же круто получается писать прозаический прикладной код с дешёвой жпт (или даже локально бесплатной, как gpt4all), в чистом функциональном стиле и чистой функциональной архитектуре.
Надо будет кстати ещё с завтипчиками поэкспериментировать, а вдруг такая мощная система типов ллм-кам как раз хорошо зайдёт. Они ведь в математике шарят уже весьма неплохо, явно лучше чем в программировании :)
/imho serverless всё. bigtech начал от них массово отказываться (как немного раньше от nosql), многие профильные облачные сервисы закрываются, и хорошо ещё если вы успеете спасти свои серверлесс-проекты, перетащив их в микросервисы.
Надо будет кстати ещё с завтипчиками поэкспериментировать, а вдруг такая мощная система типов ллм-кам как раз хорошо зайдёт. Они ведь в математике шарят уже весьма неплохо, явно лучше чем в программировании :)
/imho serverless всё. bigtech начал от них массово отказываться (как немного раньше от nosql), многие профильные облачные сервисы закрываются, и хорошо ещё если вы успеете спасти свои серверлесс-проекты, перетащив их в микросервисы.
1👍35❤26💯4
Сейчас многие хайпуют на теме, что дескать RuComNadzor хочет через провайдеров добраться до каждого пользователя который пользует впн и подобное, чтобы потом, видимо, что? штраф? провайдер забанит? сообщат Куда Надо и в кутузку? Вроде как хотят отслеживать тех, кто тайно посещает виртуальных любовниц: а вдруг он на ютубе смотрит ролики индийских программистов??
На самом деле причина совершенно в другом (моё оценочное суждение).
В подавляющем большинстве стран использование впн для доступа к социальным сетям и другим онлайн-сервисам само по себе не считается незаконным.
Например в Бразилии штрафы чуть ли не $1000 в день , но только если ты через впн конкретно пытаешься почитать твиттер. В Европах, если утянул торрентом пиратский фильм, получишь автоматический штраф от провайдера на несколько сотен долларов (врут наверное? это всё кремлёвская пропаганда?), и сразу побежишь оформлять платную подписку на онлайн-кинотеатры официальные.
Но сермяга в другом: современные дпи уже достаточно легко и просто выявляют типичные паттерны (например, по лагу) использования впн, даже если трафик зашифрован (вы же знаете что такое гомоморфное шифрование?).
ВПН-сервисы работают обычно в известном диапазоне ип-адресов, а сами эти сервисы с большой любовью (а нередко и по собственной инициативе) сливают свои логи по первому запросу соответствующих структур.
Если вы как в Бразилии пытаетесь через впн обращаться не к невинному сайту (например, куора), а к официально запрещённому (например, к стиму; немного ему осталоcь, полагаю :), то в любом случае будут палиться всяческие метаданные (временные метки, паттерны запросов и ответов под конкретный сервис...). А если вы используете стандартный днс, то просто в открытую палите доменные имена на которые через впн заходите lol
И в целом, любой интернет-сервис от соцсетей и игр до API и пустого лендинга, генерирует свой собственный уникальный паттерн трафика (хоть через впн, без разницы).
Кроме того совсем не факт что сам впн будет скрывать как следует ип-адреса к которым вы обращаетесь, особенно если он бесплатный.
Хост-заголовки HTTP запросов и SNI заголовки TLS соединений могут прозрачно включать имя сервера, к которому вы обращаетесь. И т.д. и т.п.
То есть смысла именно сам впн-доступ блокировать нету, т.к. в 98% случаях и при випене можно определить, а куда это Олег регулярно заходит?
Но тогда зачем вся это активность?
Ну, как бы когда тебе дают миллиарды рублей на подобные проэкты, разве ты откажешься? :)
Тем более что в отчётах по результату ты можешь написать какие угодно циферки успеха с потолка, потому что их проверить практически нереально.
На самом деле причина совершенно в другом (моё оценочное суждение).
В подавляющем большинстве стран использование впн для доступа к социальным сетям и другим онлайн-сервисам само по себе не считается незаконным.
Например в Бразилии штрафы чуть ли не $1000 в день , но только если ты через впн конкретно пытаешься почитать твиттер. В Европах, если утянул торрентом пиратский фильм, получишь автоматический штраф от провайдера на несколько сотен долларов (врут наверное? это всё кремлёвская пропаганда?), и сразу побежишь оформлять платную подписку на онлайн-кинотеатры официальные.
Но сермяга в другом: современные дпи уже достаточно легко и просто выявляют типичные паттерны (например, по лагу) использования впн, даже если трафик зашифрован (вы же знаете что такое гомоморфное шифрование?).
ВПН-сервисы работают обычно в известном диапазоне ип-адресов, а сами эти сервисы с большой любовью (а нередко и по собственной инициативе) сливают свои логи по первому запросу соответствующих структур.
Если вы как в Бразилии пытаетесь через впн обращаться не к невинному сайту (например, куора), а к официально запрещённому (например, к стиму; немного ему осталоcь, полагаю :), то в любом случае будут палиться всяческие метаданные (временные метки, паттерны запросов и ответов под конкретный сервис...). А если вы используете стандартный днс, то просто в открытую палите доменные имена на которые через впн заходите lol
И в целом, любой интернет-сервис от соцсетей и игр до API и пустого лендинга, генерирует свой собственный уникальный паттерн трафика (хоть через впн, без разницы).
Кроме того совсем не факт что сам впн будет скрывать как следует ип-адреса к которым вы обращаетесь, особенно если он бесплатный.
Хост-заголовки HTTP запросов и SNI заголовки TLS соединений могут прозрачно включать имя сервера, к которому вы обращаетесь. И т.д. и т.п.
То есть смысла именно сам впн-доступ блокировать нету, т.к. в 98% случаях и при випене можно определить, а куда это Олег регулярно заходит?
Но тогда зачем вся это активность?
Ну, как бы когда тебе дают миллиарды рублей на подобные проэкты, разве ты откажешься? :)
Тем более что в отчётах по результату ты можешь написать какие угодно циферки успеха с потолка, потому что их проверить практически нереально.
2✍48👍19🤔8😁3💯2
Довольно большой получился материал по теме "а что по этому всему можно поизучать с околонуля" ❤️❤️❤️❤️❤️
выложил его в паблике вк.
Кажется невозможным охватить множество эволюционно развивающихся областей в ИТ, и большинству людей не удаётся оставаться актуальными на рынке труда достаточно долго.
Но есть несколько избранных, которым, несмотря ни на что, удаётся учиться и развиваться почти с нечеловеческой скоростью… совсем скоро им станут доступны мои курсы 3.0 нового поколения, и они дойдут в обучении до семитысячного гиперзвука.
/dev Отчёт по продвижению к Школе 3.0
В целом 27% => 30%.
1. "Движок". 41% => 50%
...
Как я затрахался с парсингом и расцветками синтаксиса :) несколько суток слил. Расскажу попозже, что случилось, и какой формат лучше всего использовать для описания достаточно сложных структур(json должен умереть, однозначно:) .
выложил его в паблике вк.
Кажется невозможным охватить множество эволюционно развивающихся областей в ИТ, и большинству людей не удаётся оставаться актуальными на рынке труда достаточно долго.
Но есть несколько избранных, которым, несмотря ни на что, удаётся учиться и развиваться почти с нечеловеческой скоростью… совсем скоро им станут доступны мои курсы 3.0 нового поколения, и они дойдут в обучении до семитысячного гиперзвука.
/dev Отчёт по продвижению к Школе 3.0
В целом 27% => 30%.
1. "Движок". 41% => 50%
...
Как я затрахался с парсингом и расцветками синтаксиса :) несколько суток слил. Расскажу попозже, что случилось, и какой формат лучше всего использовать для описания достаточно сложных структур
✍34😁19❤9👍6🔥1
в редкие минуты отдыха в круглосуточном кодинге переключаю мозг на короткое время, например смотрю на телевизоре что-нибудь преимущественно из пиратского.
сериал the day of the jackal прекрасен, и главное, очень поучителен для программистов: весь фильм строится по сути вокруг пятиминутного сюжета на тему важности внимания в абсолютно любой ситуации.
засмотрелся на миг на птичку в небе или на симпатичную кадровичку в короткой юбочке, вернулся к коду и.... нифига не понятно и всё позабыл что собирался сделать )
во время одного из таких переключений мозг выдал базу: как сделать так, чтобы русские видеосервисы вроде рутуба и vkвидео стали за одни сутки популярными во всём мире, причём без нарушения авторских прав и даже наоборот, совершенно реальная схема, чтобы все топ-блогеры мировые пришли к нам.
серьёзно, без иронии:
надо сделать монетизацию на рутубе в два-три раза выгоднее чем на ютюбе.
вот и всё.
а почему такого не будет догадайтесь сами :)
сериал the day of the jackal прекрасен, и главное, очень поучителен для программистов: весь фильм строится по сути вокруг пятиминутного сюжета на тему важности внимания в абсолютно любой ситуации.
засмотрелся на миг на птичку в небе или на симпатичную кадровичку в короткой юбочке, вернулся к коду и.... нифига не понятно и всё позабыл что собирался сделать )
во время одного из таких переключений мозг выдал базу: как сделать так, чтобы русские видеосервисы вроде рутуба и vkвидео стали за одни сутки популярными во всём мире, причём без нарушения авторских прав и даже наоборот, совершенно реальная схема, чтобы все топ-блогеры мировые пришли к нам.
серьёзно, без иронии:
вот и всё.
а почему такого не будет догадайтесь сами :)
😁56✍12🤔7👍3❤1
Какой образ выбираешь по своей айти-карьере?
Anonymous Poll
33%
каждой собаке -- палку и кость, каждому волку -- зубы и злость
67%
брось меня на растерзание волкам, и я вернусь во главе стаи
👍23🤔9🐳9🏆6
Смотрю, что-то много времени стало сливаться на кодинг курсов 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