European Union Public Licence (EUPL)
EUPL — это публичная лицензия Европейского Союза, созданная для распространения ПО, разработанного европейскими институтами. Она обеспечивает юридическую точность в терминах европейского права, включая чёткие формулировки об ограничении ответственности и гарантий, что отличает её от многих лицензий, ориентированных на законодательство США. Важной особенностью является доступность на всех официальных языках ЕС, что обеспечивает равную юридическую силу в разных юрисдикциях.
Лицензия имеет сильный copyleft, предотвращающий присвоение улучшенных версий ПО третьими сторонами. EUPL совместима с другими популярными лицензиями, такими как GPL, через специальное положение о совместимости, позволяющее комбинировать код под разными лицензиями. Хотя изначально предназначена для госсектора, она может использоваться любым правообладателем ПО.
Комментарии (102)
- EUPL моделируется после GPLv3, закрывает SaaS-лазейку, но исключает положения о тивоизации и DRM, а также явно определяет юрисдикцию ЕС.
- Лицензия фокусируется на юридической интероперабельности в ЕС, имеет список совместимых лицензий, но её совместимость с GPL вызывает споры о потенциальном релизайсинге.
- EUPL мало распространена, воспринимается как политический/правовой компромисс, а не идеологическое заявление, и её практическая полезность ставится под сомнение.
- Некоторые участники обсуждают выбор между EUPL и AGPLv3, отмечая модификации EUPL и её применимость вне ЕС.
- Поднимаются вопросы о лицензиях с ограничительными клаузами (например, против оружия или ископаемого топлива), но отмечается их непопулярность из-за неоднозначности.
Fluid Glass 🔥 Горячее
Исследователи разработали новый материал под названием «жидкое стекло», который сочетает свойства жидкости и твёрдого тела. Он представляет собой коллоидную суспензию из наночастиц стекла в жидкости, сохраняющую текучесть, но демонстрирующую аномально высокую вязкость и упругость при деформации. Это достигается за счёт формирования временной сетчатой структуры частицами при механическом воздействии.
Материал перспективен для применения в 3D-печати, производстве композитов и защитных покрытий, где требуется контролируемая текучесть и быстрое затвердевание. Его уникальные реологические свойства открывают возможности для создания адаптивных систем, реагирующих на изменение нагрузок без потери целостности.
Комментарии (108)
- Пользователи высоко оценили плавность и визуальную привлекательность интерактивной демонстрации с эффектом жидкого стекла, особенно на мобильных устройствах.
- Обсуждались технические аспекты: доступность исходного кода, высокое потребление ресурсов на десктопах, возможная основа на клеточных автоматах и низкое разрешение рендеринга.
- Были высказаны опасения по поводу практической применимости: плохая читаемость, переопределение жестов на мобильных устройствах и нецелесообразность использования в реальных продуктах.
- Отмечены интерактивные возможности: реакция на касания, движение мыши, изменение размера окна и поддержка стилуса.
- Дизайн вызвал полярные реакции: одни видят в нем смелую инновацию, другие — возрождение неудачного тренда (как в Windows Vista) и намеренное ухудшение юзабилити.
AI tools I wish existed
Автор делится списком из 28 гипотетических ИИ-инструментов, которые могли бы радикально упростить и улучшить повседневные и профессиональные задачи. Среди них — фоторедактор, превращающий снимки с iPhone в профессиональные кадры, агент для автоматической поддержки тем в интерфейсах, инструмент для декомпиляции и отладки минифицированного кода, а также персональный тренер на основе данных о тренировках.
Особый интерес вызывают идеи вроде Deep Research агента, способного рассуждать несколько дней над сложными запросами, семантических фильтров для соцсетей, скрывающих контент, вызывающий негатив, и рекомендательных систем, которые учитывают глубинные предпочтения пользователя — от книг до статей и видео. Многие предложения направлены на снижение когнитивной нагрузки, например, чат-приложение для учёта калорий или голосовой помощник для Apple Watch, дающий краткие и точные ответы.
Комментарии (67)
- Критика идеи использования ИИ для имитации мнения известных личностей (например, Хемингуэя) как принципиально неверного подхода.
- Обсуждение существующих и разрабатываемых продуктов на базе ИИ: фитнес-трекеры, рекомендательные системы, семантические фильтры для соцсетей, инструменты для анализа личных данных.
- Отмечается, что многие предложенные идеи сводятся к улучшению UI/UX существующих моделей, а не к созданию принципиально новых возможностей.
- Скептицизм относительно практической пользы и работоспособности подобных продуктов, особенно в сравнении с рекламными демо.
- Подчеркивается важность локальной обработки данных и необходимость осторожного отношения к передаче личной информации сторонним сервисам.
There is a huge pool of exceptional junior engineers 💬 Длинная дискуссия
Многие компании упускают огромный потенциал, отказываясь нанимать джуниор-инженеров, предпочитая только сеньоров. Это даёт конкурентное преимущество тем, кто готов инвестировать в молодые таланты: мотивированные джуниоры быстро обучаются с помощью ИИ, привносят свежие идеи и демонстрируют высокую лояльность. Например, Shopify планирует нанять 1000 стажёров, отмечая их энергию и влияние на команду.
Ключевые ошибки работодателей — устаревшие представления о длительном онбординге и интервью, сфокусированные на алгоритмах, а не на реальных навыках. Джуниоры, свободные от шаблонов, часто превосходят сеньоров в гибкости и скорости обучения. Чтобы найти лучших, стоит искать кандидатов вне традиционных каналов, например, среди тех, кто не прошёл в Y Combinator, но проявил инициативу.
Комментарии (278)
- Сложности найма джунов из-за заучивания LeetCode и использования ИИ в учебе, снижения страсти к профессии.
- Риски найма слабых джунов и необходимость эффективных фильтров для выявления талантов.
- Переизбыток выпускников CS на фоне сокращения числа вакансий для новичков.
- Важность реального опыта для джунов и конкуренции с ИИ.
- Разные подходы к оценке джунов: сложные задачи vs. простые, проверка мышления и сотрудничества.
Show HN: Devbox – Containers for better dev environments
Devbox — это инструмент для создания изолированных сред разработки на основе Docker. Каждый проект работает в собственном контейнере, что предотвращает конфликты зависимостей и сохраняет чистоту основной системы. Контейнеры автоматически перезапускаются и сохраняются между перезагрузками, а код остаётся на файловой системе хоста для удобного редактирования.
Инструмент предлагает простые команды CLI, встроенные проверки безопасности и шаблоны для Python, Node.js, Go и веб-разработки. Также поддерживаются расширенные функции Docker, такие как проброс портов, монтирование томов и настройка переменных окружения.
Комментарии (49)
- Обсуждаются сходства и отличия Devbox от альтернатив: Devcontainers (от Microsoft), Toolbx, Distrobox и других, с акцентом на поддержку в разных IDE и сложность их реализации вне VSCode.
- Поднимается проблема конфликта имен с другими проектами, в первую очередь с Devbox от Jetify, что указывает на возможное отсутствие анализа существующих решений.
- Отмечаются вопросы о безопасности и изоляции, в частности, возможность использования Docker-in-Docker и её последствия.
- Участники делятся личным опытом использования Devbox и аналогичных инструментов, отмечая их удобство для создания воспроизводимых сред без потери производительности.
- Обсуждается, решает ли подход с контейнерами проблему "dependency hell" и насколько он оправдан для разных языков и типов разработки (веб, мобильная).
Modern Font Stacks 🔥 Горячее
Современные стековые наборы шрифтов используют системные шрифты, доступные в операционных системах, что обеспечивает мгновенную загрузку без скачивания файлов, отсутствие смещений макета и мерцания. Они организованы по классификации типографики, включая System UI, Transitional, Old Style, Humanist и другие, каждый с оптимизированным списком шрифтов для резервного отображения.
Например, стек System UI использует system-ui, sans-serif, а Monospace Code — ui-monospace, 'Cascadia Code', Menlo, что подходит для кода. Это решение повышает производительность веб-страниц и универсальность, так как шрифты уже установлены у пользователей.
Комментарии (65)
- Использование кастомных шрифтов может привести к неожиданному рендерингу из-за настроек браузера и системных ограничений, особенно при блокировке веб-шрифтов.
- Широкие стеки шрифтов могут негативно влиять на производительность, если первый шрифт в списке не содержит нужных глифов, что особенно актуально для нелатинских шрифтов и эмодзи.
- Веб-шрифты считаются предпочтительным решением для обеспечения консистентности брендинга, а инструменты вроде screenspan.net помогают подобрать системные fallback-шрифты с похожей метрикой.
- Для внутренних дашбордов и инструментов рекомендуется использовать системные стеки (например, system-ui) для лучшей интеграции с ОС, в то время как для публичных сайтов важнее контроль над брендингом.
- На Android многие стеки шрифтов выглядят идентично из-за ограниченного набора системных шрифтов, что требует создания гибридных решений или компромиссов.
Some dogs can classify their toys by function
Некоторые собаки способны классифицировать свои игрушки по функции, а не только по внешнему виду — это продвинутый когнитивный навык, известный как «расширение меток». В отличие от животных, которым для этого требуются годы тренировок в неволе, эти собаки развили способность естественным образом, просто играя с хозяевами. Например, они могут понять, что «мяч» относится не только к конкретному предмету, но и ко всем объектам, которые можно катать или кидать, даже если те выглядят иначе.
Исследование, проведённое учёными из Университета Этвёша Лоранда в Будапеште, показывает, что такие собаки мыслят аналогично людям: ребёнок, например, называет «чашкой» и кружку, и стакан, потому что они служат одной цели. Этот навык связан с более высоким интеллектом и улучшенным зрением — собаки с короткой мордой и лучшей остротой зрения демонстрируют меньше пространственного смещения и эффективнее обрабатывают информацию.
Комментарии (19)
- Собаки демонстрируют высокую избирательность в отношении своих игрушек, различая их по типу, названию и предназначению для конкретных игр.
- Некоторые собаки способны выучивать названия игрушек и выполнять с ними сложные действия по команде (например, «принеси мяч» или «убери игрушки»).
- Поведение служебных собак кардинально меняется при надевании/снятии рабочей упряжи: они мгновенно переключаются между рабочим режимом и отдыхом.
- Собаки интерпретируют поведение и намерения человека, а также могут ошибочно идентифицировать объекты (например, принять чужую машину за свою).
- Обучение таким сложным командам, как уборка игрушек, требует дополнительной тренировки и ассоциативного мышления у собаки.
FAA is granting Boeing “limited delegation” to certify airworthiness
FAA восстановила право Boeing самостоятельно сертифицировать безопасность своих самолётов после двухлетнего перерыва. Это решение последовало за серией инцидентов, включая катастрофы 737 MAX, которые привели к усиленному надзору за производителем.
Хотя Boeing вновь получил полномочия, FAA продолжит выборочно проверять некоторые сертификационные процессы. Это частичное восстановление доверия отражает осторожный подход регулятора к возвращению ответственности компании, сохраняя при этом дополнительный контроль для предотвращения будущих сбоев.
Комментарии (70)
- Переезд Boeing в Арлингтон для усиления лоббирования и близости к регуляторам
- Критика системы самосертификации Boeing при ограниченных ресурсах FAA
- Сомнения в эффективности изменений в культуре безопасности Boeing
- Обеспокоенность влиянием политики и коррупции на решения FAA
- Предпочтение Airbus как более безопасной альтернативы Boeing
How to create an OS from scratch
Этот репозиторий содержит пошаговое руководство по созданию операционной системы с нуля на языке C и ассемблере. Он охватывает основы загрузки, управления памятью, прерываний и файловых систем, предлагая практический опыт низкоуровневого программирования.
Проект структурирован как серия уроков, каждый из которых добавляет новую функциональность, начиная с простого загрузчика и заканчивая многозадачностью. Это отличный ресурс для понимания внутреннего устройства ОС и работы с аппаратным обеспечением напрямую.
Комментарии (69)
- Создание ОС с нуля на базе устаревшего BIOS и x86 рассматривается как учебный, но непрактичный путь, погружающий в исторические детали архитектуры вместо современных концепций.
- Многие проекты ОС остаются незавершенными из-за сложности поддержки железа и драйверов, что является рутинной и нетривиальной задачей.
- В качестве более актуальных альтернатив предлагаются подходы с использованием микрокернелов, современных архитектур (RISC-V, ARM) или существующих педагогических ОС (xv6).
- Рекомендуется начинать с изучения авторитетных источников (например, wiki.osdev.org) и современных туториалов, избегая устаревших материалов с пробелами и ошибками.
- Разработка ОС углубляет понимание распределенных систем, планирования и кэширования, что полезно для инженеров, даже если они не планируют писать ядро.
Safe zero-copy operations in C#
В C# операции с массивами автоматически проверяют границы для безопасности, что может снижать производительность. Компилятор способен убрать проверки в идеальных условиях, например, в цикле с известными границами, но при передаче индексов извне проверки остаются, что видно по ассемблерному коду.
Можно использовать небезопасный код с указателями для полного избежания проверок, но это рискованно: ошибки ведут к сбоям или уязвимостям. Решение — тип Span<T>, который объединяет ссылку на данные и их длину, обеспечивая безопасный нулевой копирование доступ без дополнительных проверок. Это позволяет писать высокопроизводительный код без ущерба для безопасности, сочетая низкоуровневую эффективность с управляемыми гарантиями.
Комментарии (60)
- Использование
Span<T>иReadOnlySpan<T>позволяет избежать лишних выделений памяти и повысить производительность, особенно при работе со строками и массивами. - Эти структуры предоставляют безопасные, безграничные представления памяти, заменяя необходимость в небезопасном коде и указателях.
- Оптимизации с помощью
Span<Tнаиболее эффективны в сценариях с интенсивной обработкой данных (например, парсинг, игры), а не в типичных CMS, где узкие места обычно в БД или кэше. - Внедрение
Span<Tв .NET стандартизировало ранее фрагментированные подходы к работе с памятью, улучшив interoperability между библиотеками. - Хотя
Span<Tпредлагает контроль, сравнимый с Rust, он ограничен моделью сборки мусора C#, тогда как Rust предоставляет более строгие гарантии времени жизни на уровне компилятора.