Sj.h: A tiny little JSON parsing library in ~150 lines of C99 🔥 Горячее 💬 Длинная дискуссия
Миниатюрная библиотека sj.h для парсинга JSON весит всего 500 строк кода и использует единственный заголовочный файл. Она спроектирована для минимализма и эффективности, поддерживая базовые операции: разбор строк, чисел, булевых значений, массивов и объектов.
Библиотека не требует динамического выделения памяти, что делает её идеальной для встраиваемых систем и сред с ограниченными ресурсами. Её API интуитивен — всего несколько функций для доступа к данным, что снижает порог входа. Практический плюс: легко интегрируется в существующие C-проекты без зависимостей.
Комментарии (216)
- Обсуждаются достоинства библиотеки автора: однофайловые решения на ANSI C/Lua с фокусом на простоту, удобный интерфейс и хорошую документацию.
- Отмечаются потенциальные проблемы безопасности и корректности: отсутствие проверок на переполнение целых чисел, возможное неопределённое поведение, слабая валидация JSON.
- Поднимается вопрос о целесообразности использования: обсуждаются нишевые применения (например, embedded), недостатки для продакшена и альтернативные библиотеки.
- Упоминается необходимость тестирования на соответствие стандарту (конформность) и handling edge cases.
- Обсуждается философия подобных минималистичных библиотек: свобода от избыточной сложности ценой отказа от безопасности и обработки всех крайних случаев.
Timesketch: Collaborative forensic timeline analysis
Timesketch — это инструмент от Google для совместного анализа временных линий в цифровой криминалистике. Он позволяет исследователям импортировать, анализировать и совместно работать с данными, собранными в ходе расследований инцидентов безопасности. Система поддерживает интеграцию с популярными инструментами, такими как Plaso, и предоставляет веб-интерфейс для визуализации событий, поиска по временным меткам и аннотирования находок.
Ключевые возможности включают масштабируемость для больших объёмов данных, поддержку множества пользователей с разными ролями и расширяемость через API и плагины. Это делает Timesketch полезным как для внутренних расследований в компаниях, так и для академических или судебных исследований. Практический вывод: инструмент снижает порог входа в цифровую криминалистику, упрощая анализ сложных данных.
Комментарии (12)
- Обсуждается статус проекта Timesketch: код принадлежит Google, но не является официальным продуктом, а скорее инициативой сотрудников, выпущенной через внутренний процесс.
- Уточняется функционал инструмента: это средство для анализа временных линий (логов) с бэкендом на Python 3 и фронтендом на Vue.js, предназначенное для совместной работы при расследовании инцидентов.
- Отмечается возможное происхождение проекта от внутренних команд реагирования на инциденты Google.
- Подчеркивается, что размещение в организации Google на GitHub не означает официальной поддержки компании, а лишь то, что код был выпущен сотрудником.
- Обсуждается практическая польза инструмента для создания единой временной шкалы событий из разных источников для расследования киберинцидентов.
Комментарии (146)
- Пользователи из Испании и других стран сталкиваются с массовыми блокировками интернет-сервисов (GitHub, Twitch, Steam) из-за агрессивной борьбы LaLiga с пиратскими трансляциями футбола.
- Для доступа к интернету в выходные дни многие вынуждены использовать VPN, что создает неудобства и дополнительные расходы для обычных пользователей и бизнеса.
- Блокировки задевают критически важную инфраструктуру, такую как Cloudflare, что потенциально угрожает работе emergency-сервисов и вызывает опасения по поводу цензуры.
- Многие пользователи считают политику правообладателей чрезмерно жадной (высокие цены, необходимость множественных подписок) и видят в пиратстве ответ на неудовлетворительный сервис.
- Юридические системы стран допускают такие широкие блокировки, что вызывает вопросы о законности и лоббистском влиянии футбольных ассоциаций.
Oxford loses top 3 university ranking in the UK 💬 Длинная дискуссия
Оксфордский университет впервые выпал из тройки лучших вузов Великобритании по версии рейтинга The Times и The Sunday Times Good University Guide за 2026 год. Вместе с Кембриджем он опустился на четвёртое место из-за слабых результатов в Национальном опросе студентов, уступив третью позицию Даремскому университету.
Лидером рейтинга второй год подряд остаётся Лондонская школа экономики, а второе место сохранил Университет Сент-Эндрюс. Дарем показал резкий рост — на 30 позиций в оценках качества преподавания, что и позволило ему войти в топ-3. Вице-канцлер университета отметила, что выпускники Дарема имеют отличные карьерные перспективы.
Комментарии (348)
- Участники подвергают сомнению методологию рейтингов Times, указывая на субъективность критериев, возможные манипуляции с весами показателей и их одномерный характер, не отражающий многогранность университетов.
- Высказывается предположение, что резкий рост Durham University (на 30 позиций) может быть следствием накрутки метрик (например, оценок студентов) или изменения методики расчёта, а не реального улучшения качества.
- Многие отмечают, что репутация и качество образования сильно варьируются по предметным областям, поэтому общие рейтинги бессмысленны, и следует ориентироваться на специализированные списки.
- Подчёркивается, что ресурсы, интенсивность преподавания (например, система тьюториалов) и вступительные требования в Oxbridge по-прежнему значительно выше, чем в других вузах, и их статус остаётся неизменным.
- Некоторые связывают возможное падение Oxbridge в рейтингах с изменениями в политике приёма студентов (расширение доступа), но эта точка зрения оспаривается другими.
How to stop functional programming (2016)
Статья иронично описывает ситуацию, когда разработчика заставляют отказаться от функционального программирования из-за жалоб коллег. Менеджер принимает «техническое решение» запретить ФП, чтобы избежать конфликтов, и автор пытается следовать указанию, намеренно добавляя побочные эффекты в код.
Пример с функцией userCoworkers показывает, как чистый код постепенно усложняется: сначала добавляется мутабельная коллекция, затем логирование. Юмор в том, что даже с побочными эффектами метод остаётся чистым снаружи, а задание «просто вернуть число» ставит под вопрос, как вообще избежать функциональных подходов. Финальный совет — спросить у менеджера, как сложить числа без чистых функций — подчёркивает абсурдность таких запретов.
Комментарии (62)
- Важность написания читаемого кода с учетом целевой аудитории (уровня навыков читателей) и необходимости согласования стиля в команде.
- Критика восприятия функционального программирования (ФП) как исключительно сложного, с указанием, что проблема часто в неидиоматичном коде, излишне длинных цепочках методов или специфических особенностях языков (например, Haskell), а не в ФП как парадигме.
- Необходимость обучения, код-ревью и парного программирования для внедрения сложных концепций и выравнивания уровня команды, особенно при использовании нишевых языков (например, Scala).
- Споры о балансе между простотой (для младших разработчиков) и продвинутыми практиками, где чрезмерное упрощение может привести к посредственному коду, а сложность — к проблемам читаемости.
- Роль менеджмента в разрешении конфликтов через технические решения, которые могут ограничивать инструменты или стили (например, запрет ФП), иногда без глубокого понимания причин проблемы.
DXGI debugging: Microsoft put me on a list 🔥 Горячее
Разработчик пытался запустить игру Space Station 14 на ARM64 под Windows, но клиент крашился без логов. С помощью WinDbg выяснилось, что падение происходит в USER32!GetDC из-за недопустимой инструкции. Проблема усугублялась путаницей в архитектурах: WinDbg запускал x64-отладчик для x64-лаунчера, хотя целевые процессы были ARM64-нативными. После прямого запуска ARM64-исполняемого файла отладка заработала корректно, включая стектрейсы C#. Оказалось, что WinDbg автоматически переключает режим отладки в зависимости от архитектуры запускаемого процесса, что сбивало с толку при анализе дочерних процессов.
Комментарии (76)
- Microsoft и другие компании используют списки совместимости, основанные на имени исполняемого файла, для применения оптимизаций или исправлений, что может вызывать непредсказуемые проблемы.
- Данная практика широко распространена не только в Windows (DirectX, драйверы GPU), но и на других платформах (Linux, Proton) для обеспечения обратной совместимости.
- Подход Microsoft к реализации функций через перехват API-вызовов (Detours) без использования централизованной системы совместимости (AppCompat) критикуется как ненадежный.
- Обнаружение причины проблемы (совпадение имени файла с списком) потребовало от разработчика значительных усилий и глубоких знаний системного уровня.
- Многие комментаторы выражают удивление и недовольство подобными непрозрачными механизмами, влияющими на поведение программ без ведома разработчиков.
New thermoelectric cooling breakthrough nearly doubles efficiency
Новая технология охлаждения CHESS, разработанная в Лаборатории прикладной физики Университета Джонса Хопкинса, почти вдвое повышает эффективность термоэлектрических систем. В основе — наноинженерные тонкоплёночные материалы со сложной структурой, которые демонстрируют почти 100%-ное улучшение эффективности на уровне материала при комнатной температуре по сравнению с традиционными термоэлектриками.
Эти материалы требуют крайне мало сырья — около 0,003 см³ на устройство, что позволяет массово производить их методами полупроводниковой индустрии. Тесты в реальных условиях подтвердили повышение эффективности на 70% в полноценных системах охлаждения. Технология исключает движущиеся части и вредные хладагенты, открывая путь к компактным, тихим и экологичным решениям для бытовой техники, электроники и даже космических миссий.
Комментарии (51)
- Утверждается о двукратном повышении эффективности термоэлектрических (Пельтье) охладителей, но их КПД все равно значительно ниже, чем у традиционных компрессорных систем.
- Подчеркивается, что основное преимущество технологии — отсутствие движущихся частей, компактность и точность температурного контроля, что полезно в специализированных применениях (электроника, медтехника), а не в массовом кондиционировании.
- Высказывается скептицизм относительно методологии испытаний в исходном исследовании и реальных заявленных значений эффективности (COP).
- Отмечается, что технология не является прямой заменой тепловым насосам, а скорее дополняет их в нишевых областях, где важны малые размеры и точность, а не абсолютная эффективность.
- Обсуждение включает политический комментарий о миграционной политике США и ее влиянии на приток высококвалифицированных специалистов, таких как ведущий исследователь проекта.
The Beginner's Textbook for Fully Homomorphic Encryption
Полностью гомоморфное шифрование (FHE) позволяет выполнять вычисления на зашифрованных данных без их расшифровки, сохраняя конфиденциальность. Эта технология особенно важна для облачных вычислений, приватного машинного обучения и безопасной обработки данных. В статье представлен учебник для начинающих, который объясняет основы FHE, включая математические концепции, такие как решетки и полиномиальные кольца, а также практические аспекты реализации.
Особое внимание уделяется доступности материала: авторы стремятся сделать сложные криптографические идеи понятными даже для тех, кто не имеет глубокого математического бэкграунда. Приводятся примеры использования FHE в реальных сценариях, например, для шифрования запросов к базе данных или выполнения аналитики на чувствительной информации. Учебник также охватывает современные библиотеки и инструменты, такие как Microsoft SEAL и OpenFHE, что помогает читателям быстро приступить к экспериментированию.
Практический вывод: FHE постепенно переходит из академической области в промышленность, и понимание его основ становится ключевым навыком для разработчиков, работающих с конфиденциальными данными.
Комментарии (39)
- Обсуждаются технические ограничения и практическая применимость Fully Homomorphic Encryption (FHE), отмечается его высокая вычислительная стоимость (в миллионы раз медленнее обычных вычислений) и непригодность для больших моделей ИИ.
- Поднимается вопрос о других потенциальных применениях FHE помимо машинного обучения, например, в операционных системах или мессенджерах, но отмечается, что ценность есть только при обработке данных на чужом оборудовании.
- Упоминаются альтернативные подходы, такие как компактные zero-knowledge доказательства (ZK), как более практичное решение для конфиденциальности в машинном обучении (ZKML).
- Обсуждается принцип работы FHE, включая возможность бутстрэппинга для сброса "шума" и выполнения неограниченного количества операций, а также его абстрактная применимость к любым вычислимым функциям.
- Отмечается, что для нейросетей, использующих функции вроде ReLU, требуются эффективно вычисляемые приближения, так как сами они не полностью дифференцируемы или гомоморфны.
UUIDv7 Comes to PostgreSQL 18
UUIDv7, новая версия универсального уникального идентификатора на основе временных меток, появится в PostgreSQL 18. Она решает ключевые проблемы традиционных UUID: отсутствие сортируемости и низкую локальность индексов. В отличие от UUIDv4 со случайной структурой, UUIDv7 содержит временной компонент, что обеспечивает последовательную вставку в B-деревья и снижает фрагментацию. Это особенно полезно для распределенных систем, где клиенты генерируют ID без координации с сервером.
Хотя размер UUID остаётся 128-битным (больше, чем INT или BIGINT), современные CPU эффективно обрабатывают такие значения через SIMD-инструкции. Важно использовать бинарное представление UUID, а не строковое, для оптимизации производительности. UUIDv7 также подходит для публичных идентификаторов, так как их сложно угадать, в отличие от автоинкрементных чисел. Это делает его идеальным выбором для шардированных баз данных и сред с минимальной серверной координацией.
Комментарии (42)
- Обсуждаются проблемы безопасности UUIDv7 из-за экспозиции времени создания в публичных идентификаторах, что может упростить угадывание соседних записей.
- Предлагаются решения для сокрытия времени создания на границе API, например, преобразование UUIDv7 в UUIDv4 или шифрование временной метки.
- Отмечается, что 62 бита случайности в UUIDv7 при наличии лимита запросов обеспечивают достаточную безопасность для большинства веб-приложений.
- Поднимается вопрос о негативном влиянии UUID (по сравнению с последовательными целыми числами) на производительность БД из-за отсутствия оптимизаций для последовательных ключей.
- Утверждается, что безопасность не должна зависеть от формата первичного ключа, а проблемы угадывания ID указывают на ошибки в проектировании системы.
I forced myself to spend a week in Instagram instead of Xcode
Разработчик приложения Lagree Buddy, уже имеющего стабильные продажи после внедрения платного доступа, решил на неделю отказаться от программирования и полностью сосредоточиться на маркетинге через Instagram. Вместо написания кода он ежедневно создавал контент в формате сторителлинга — серии из 4-6 постов с нарративной дугой, например, историю о поиске и исправлении бага в приложении. Параллельно он вёл холодные рассылки студиям и тренерам, использующим Apple Watch, что привело к быстрым откликам: два ответа из десяти запросов в первый день и предложение о коллаборации от крупного сообщества Lagreeing at Home уже на второй день. Эксперимент показал, что даже краткосрочный фокус на продвижении может открыть неожиданные возможности для роста, пока код отдыхает.
Комментарии (92)
- Разработчики делятся методами организации идей и планирования контента (ведение журналов, фокусировка на аудитории).
- Подчёркивается важность маркетинга и продвижения продукта, опровергается миф "построил — и они придут".
- Обсуждаются стратегии продвижения в соцсетях: работа с инфлюенсерами, создание вирального контента, избегание спама.
- Критикуются неаутентичные методы продвижения (фейковые отзывы, сообщения) и обсуждаются этичные альтернативы.
- Затрагиваются технические аспекты мобильной разработки: выбор нативных технологий vs кроссплатформенных фреймворков.