Forwarded from Типичный программист
Собрали для вас подборку новогодних адвент-календарей, которые помогут интересно скрасить декабрь. Здесь задачи, статьи, видео и немного HTML-ужасов.
AdventJS. Классический адвент с задачами по JavaScript и TypeScript, живёт с 2015 года. В декабре вас ждут 24 задачи — по одной каждый день.
PerfPlanet Performance Calendar. Ежегодный адвент про web performance. Внутри свежие статьи, практики оптимизации и кейсы от инженеров крупных компаний.
HTMHell Advent Calendar. Адвент-календарь из HTML-антипаттернов. Каждый день вас ждёт забавный, но поучительный пример того, как верстать не нужно (и чем это заменить).
CSS Advent Calendar. Короткие ежедневные сниппеты про современный CSS. Хороший способ подтянуть свежие фичи и приёмы без длинных статей.
Accessibility Advent. Адвент, посвящённый доступности интерфейсов. Практики, паттерны и методы, которые помогают сделать продукты удобнее для разных пользователей.
CS Advent (C#). Каждый день публикуют по два материала про разработку на C#. Формат — статьи от практиков, фокус на реальных задачах и инструментах.
Java Advent. Адвент для всех, кто шарит за Java.
Raku Advent Calendar. Raku — это тот самый бывший Perl 6. В календаре статьи про приложения, полезные модули, техники программирования, контейнеры и даже гайды по миграции с Perl.
Knowit Julekalender. Адвент от норвежской компании Knowit для всех, кто любит программировать. За каждой «дверцей» спрятана задачка, на которую нужно ответить текстом или числом; уровень сложности плавает.
Advent of Sysadmin. 12-дневный адвент с задачами по Linux и DevOps разной сложности (с 1 по 12 декабря).
Advent of Agents (Google). Бесплатный адвент от Google для тех, кто хочет «подружиться» с ИИ-агентами. 25 дней коротких уроков, материалы под рукой и копируемый код — от быстрого старта до оркестрации мультиагентных систем.
Advent of Code 2025. Культовый адвент для тех, кто любит программные головоломки. Каждый день — новая задачка, где важны и алгоритмы, и аккуратное чтение условия.
Bekk Christmas. Контентный адвент от команды Bekk. Каждый день до 25 декабря выходят новые статьи, подкасты, туториалы, чек-листы и видео от разработчиков, дизайнеров, менеджеров и консалтеров.
Festive Tech Calendar. Месячный комьюнити-адвент с ежедневными видео, вебинарами и воркшопами по техтемам (Azure, .NET, AI, security).
А если знаете ещё какие-то крутые календари, то присылайте в комментарии. Добавим их в подборку!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
A Series of Vignettes From My Childhood and Early Career.pdf
191.9 KB
Джейсон Шайрер собрал истории из своей карьеры про «смерть программирования». В 1996 ему объясняли, что ООП всё автоматизирует и бизнес будет собирать софт как LEGO. В 2000 коллега показывал IntelliJ с рефакторингом и говорил «нам конец». Мультимедиа должно было всё изменить. Дотком-бум должен был всё изменить.
Каждый раз новая технология обещала заменить разработчиков. Каждый раз становилась просто ещё одним инструментом. Автор до сих пор пишет код и получает за это деньги — почти 30 лет спустя.
Бонусом — две истории про автоматизацию. В одной он написал скрипт, который делал за подрядчика его шестимесячный контракт. В другой — автоматизировал собственную работу и жил в страхе разоблачения, пока задачу просто не передали другому отделу. Работа всегда находилась.
Статья короткая, читается за 5 минут. Полезно для калибровки на фоне очередного «ИИ заменит программистов». PDF-версию прикрепляю к посту.
@prog_stuff
Каждый раз новая технология обещала заменить разработчиков. Каждый раз становилась просто ещё одним инструментом. Автор до сих пор пишет код и получает за это деньги — почти 30 лет спустя.
Бонусом — две истории про автоматизацию. В одной он написал скрипт, который делал за подрядчика его шестимесячный контракт. В другой — автоматизировал собственную работу и жил в страхе разоблачения, пока задачу просто не передали другому отделу. Работа всегда находилась.
Статья короткая, читается за 5 минут. Полезно для калибровки на фоне очередного «ИИ заменит программистов». PDF-версию прикрепляю к посту.
@prog_stuff
❤2👍1
Вышел C3 0.7.8 — в этой версии добавили struct splatting (
C3 — это эволюция языка C. Идея: как бы выглядел C, если бы не нужна была обратная совместимость. В отличие от Zig и Odin, которые придумывают новый синтаксис, C3 остаётся максимально похожим на C. Если знаешь C — читать код на C3 можно сразу.
Что добавили поверх C
🔘 Модули вместо header-файлов
🔘 Встроенные слайсы и строки
🔘 Дженерики и семантические макросы
🔘 Обработка ошибок через Result-подобный механизм
🔘 defer, контракты (pre/post conditions), compile-time рефлексия
🔘 First-class SIMD-векторы
Главное — полная совместимость с C ABI. Можно вызывать C из C3 и наоборот без обёрток. Не нужно переписывать всё — можно постепенно добавлять C3-код в существующий проект.
Компилятор использует LLVM-бекенд, есть встроенная билд-система. Сейчас версия 0.7.x, план — выпустить 1.0 когда стабилизируется стандартная библиотека.
У языка есть свой сайт, и репо на гитхабе.
@prog_stuff
some_call(...a_struct, 1, 2) — распаковка полей структуры в аргументы) и vector swizzle initialization (int[<3>] x = { .xy = 3, .z = 5 }).C3 — это эволюция языка C. Идея: как бы выглядел C, если бы не нужна была обратная совместимость. В отличие от Zig и Odin, которые придумывают новый синтаксис, C3 остаётся максимально похожим на C. Если знаешь C — читать код на C3 можно сразу.
Что добавили поверх C
Главное — полная совместимость с C ABI. Можно вызывать C из C3 и наоборот без обёрток. Не нужно переписывать всё — можно постепенно добавлять C3-код в существующий проект.
Компилятор использует LLVM-бекенд, есть встроенная билд-система. Сейчас версия 0.7.x, план — выпустить 1.0 когда стабилизируется стандартная библиотека.
У языка есть свой сайт, и репо на гитхабе.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔2
Forwarded from GameDev: разработка игр
На dos.zone добавили Norton Commander и Volkov Commander — те самые синие панели с F8 для удаления. Внутри каждого ещё по 10 DOS-игр.
Работает на js-dos — обёртка над DOSBox, скомпилированным в WebAssembly. Проект опенсорсный, живёт на гитхабе. Поддерживает несколько бекендов: обычный DOSBox и DOSBox-X. Тянет даже Diablo и Dune 2000, есть мультиплеер и облачные сейвы.
Интеграция элементарная:
Больше не могу говорить, ушёл играть в GOLDEN AXE💃
@make_game
Работает на js-dos — обёртка над DOSBox, скомпилированным в WebAssembly. Проект опенсорсный, живёт на гитхабе. Поддерживает несколько бекендов: обычный DOSBox и DOSBox-X. Тянет даже Diablo и Dune 2000, есть мультиплеер и облачные сейвы.
Интеграция элементарная:
Dos(element).run("game.jsdos"). Если нужно встроить ретро-игру в свой проект или поэкспериментировать с эмуляцией DOS в вебе — вполне рабочий вариант.Больше не могу говорить, ушёл играть в GOLDEN AXE
@make_game
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Самое ценное — не сам челлендж, а разборы решений. Статья от QuestDB показывает путь от наивных 71 секунды до 1.7 секунды: SIMD, branchless-парсинг, memory-mapped files, кастомные хеш-таблицы. Есть аналогичные разборы для Go и Python (от 10 минут до 4 секунд через Polars).
Идеальный материал, чтобы разобраться как реально работает низкоуровневая оптимизация — branch prediction, cache locality, SIMD. Сохраняйте на выходные.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤1
RetroAssembly — опенсорсный веб-кабинет ретро-игр. Открываете страницу, закидываете ROM-ы, играете. Прогресс сохраняется и синхронизируется между устройствами.
Можно поднять self-hosted через Docker. Эмуляция происходит прямо в браузере, NAS только хранит файлы. Есть тёмная тема, полноэкранный режим, автозагрузка последнего сейва.
Если хотите глубже — под капотом libretro/RetroArch, скомпилированный в WebAssembly. Похожий подход использует PCjs, где можно запустить DOS, Windows 3.1, OS/2 и даже поиграть в оригинальный Spacewar! на эмуляторе PDP-1.
@prog_stuff
Можно поднять self-hosted через Docker. Эмуляция происходит прямо в браузере, NAS только хранит файлы. Есть тёмная тема, полноэкранный режим, автозагрузка последнего сейва.
Если хотите глубже — под капотом libretro/RetroArch, скомпилированный в WebAssembly. Похожий подход использует PCjs, где можно запустить DOS, Windows 3.1, OS/2 и даже поиграть в оригинальный Spacewar! на эмуляторе PDP-1.
@prog_stuff
👍2❤1
Как создать свой язык программирования — подборка на сохранение:
🔘 Видео от Computerphile — 15-минутный разбор как написать интерпретатор с нуля, объясняет Laurie Tratt из King's College
🔘 Плейлист Building a Parser from scratch — полный курс: лексер → парсер → AST → интерпретатор → компилятор в ассемблер
🔘 Nand2Tetris — легендарный курс, где вы строите компьютер от логических вентилей до ОС и компилятора своего языка. Занимает ~6 месяцев, но после него вы понимаете всё
Для тех, кто давно хотел разобраться как работают языки изнутри, но руки не доходили.
@prog_stuff
Для тех, кто давно хотел разобраться как работают языки изнутри, но руки не доходили.
@prog_stuff
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1