American solar farms 💬 Длинная дискуссия
В США создана крупнейшая в мире база данных по коммерческим солнечным фермам. Она содержит 15 тысяч массивов и 2,9 миллиона панелей, покрывающих 2,3 тысячи квадратных километров.
Данные доступны в формате GeoPackage и могут быть загружены в GIS-системы вроде QGIS. В них содержатся метаданные о местонахождении каждого объекта, его форме, площади и других атрибутах.
Для работы с датасетом автор использовал DuckDB, что позволило эффективно обрабатывать данные и конвертировать их в столбцовый формат Parquet. Исходные 108 мегабайт в GPKG сжались до 37 мегабайт.
Данные охватывают 48 штатов и округ Колумбия. Они включают как крупные коммерческие проекты, так и небольшие локальные установки.
База данных будет полезна для исследований в области энергетики, экологии и урбанистики.
Комментарии (261)
- Обсуждение показало, что солнечные фермы вызывают споры из-за влияния на ландшафт, шумов и визуального восприятия, но при этом они критикуются и за то, что не создают рабочих мест и не используют местные ресурсы.
- Участники обсуждения отмечают, что вопросы, связанные с солнечными фермами, часто политизированы и что это влияет на их размещение и финансирование.
- Также было отмечено, что в некоторых штатах солнечные фермы создают значительное количество энергии, но при этом они не создают много рабочих мест и не используют местные ресурсы.
Modern Linux tools
Проект Gamedev Guide обновил раздел о современных инструментах Linux для разработчиков. Основное внимание уделено оптимизации рабочего процесса: авторы рекомендуют использовать Docker для изоляции окружений, что ускоряет сборку и тестирование. Особо отмечена интеграция с Windows Subsystem for Linux (WSL2) для кросс-платформенной разработки, а также инструменты вроде Ninja для ускоренной компиляции C++ проектов. В статье приводятся примеры настройки CI/CD пайплайнов под Linux, что особенно полезно для крупных команд. Авторы подчеркивают, что современный Linux уже не уступает в инструментах для разработки под Windows, а в чём-то даже превосходит.
Комментарии (123)
- Обсуждение в основном вращается вокруг того, что «современные» инструменты не всегда объективно лучше, а скорее улучшают UX и визуально оформляют вывод, и что важнее уметь пользоваться базовыми утилитами, чем полагаться на специфические инструменты, которые могут не оказаться в других окружениях.
- Участники обсуждают, что важно знать и уметь использовать базовые инструменты, такие как
find,grep,sed,awk,vi,ed,less,tail,head,tar,ls,cat,dd,top,ps,kill,df,du,free,uptime,w,who,last,ls,df,mount,umount,fdisk,lsblk,blkid,lsusb,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsomod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsmod,lsomod,lsmod,lsmod,lsmod,lsmod,lsomod,lsmod,lsmod,lsmod,lsmod,lsomod,lsmod,lsmod,lsomod,lsmod,lsmod,lsomod,lsmod,lsomod,lsmod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod,lsomod, `
MPTCP for Linux
Крупные компании и хостинг-провайдеры активно внедряют MPTCP (Multipath TCP) для повышения отказоустойчивости и производительности. Например, Google и Meta используют его для распределения трафика между сотовыми сетями и Wi-Fi.
MPTCP позволяет одному соединению использовать несколько сетевых интерфейсов одновременно — например, 5G и Wi-Fi — повышая надёжность: если один путь недоступен, трафик автоматически переключается на другой.
В отличие от обычного TCP, MPTCP также поддерживает многопоточность на уровне ядра Linux, что ускоряет передачу данных. Однако для работы MPTOS требуется поддержка на обоих концах соединения, что пока ограничивает его применение.
Комментарии (20)
- MPTCP и SCTP обсуждаются как способы объединения нескольких каналов, но оба сталкиваются с проблемами: MPTCP требует специфической поддержки в ядре и приложениях, а SCTP не поддерживается большинством маршрутизаторов и имеет проблемы с NAT.
- Пользователи отмечают, что MPTCP теперь имеет улучшенный API и может быть полезен для агрегации полосы пропускания и отказоустойчивости, но его использование ограничено тем, что он не может обрабатывать мобильность (handover) без сохранения старых адресов.
- SCTP, хоть и был предложен как альтернатива, но его поддержка в ядре Linux и в коммерческих устройствах оставляет желать лучшего, и он не может пройти через большинство NAT устройств.
- Вопрос о том, почему SCTP не стал широко используемым, обсуждается в контексте его сложности в прохождении через NAT и отсутствия поддержки в потребительских устройствах.
Abstraction, not syntax
В статье обсуждается, что главная проблема конфигурационных файлов — не синтаксис, а отсутствие абстракций. Хотя многие ругают YAML за сложность, реальная проблема в том, что даже простые форматы вроде JSON не решают проблему дублирования и ошибок вроде опечаток в числовых константах.
Автор показывает на примере: если нужно описать несколько однотипных ресурсов (в примере — cloud-бакетов для бэкапов), то даже в JSON или YAML придётся дублировать код, что ведёт к ошибкам. Например, в одном месте указали 2592000 секунд (30 дней), а в другом — 259200 (пропустили ноль), и из-за этого данные удаляются через 3 дня, а не 30.
Решение — использовать язык конфигурации, который поддерживает абстракции, как в языках программирования. Например, RCL позволяет использовать переменные, циклы и вычисления, что исключает ошибки из-за опечаток и дублирования. Так, вместо шести повторяющихся блоков конфигурации можно написать один цикл, который сгенерирует их все, гарантируя, что все значения согласованы.
Хотя некоторые форматы (как HCL) тоже поддерживают выражения, важно, чтобы их хватало для полного устранения дублирования. Поэтому при выборе формата конфигурации стоит смотреть не только на синтаксис, но и на возможность абстракций.
Комментарии (51)
- Обсуждение в основном вращается вокруг того, что конфигурационные языки (YAML, JSON, TOML и т.д.) не масштабируются и не имеют абстракций, что приводит к необходимости встраивать в них полноценные языки программирования, что в свою очередь создает проблемы безопасности и предсказуемости.
- Участники обсуждения подчеркивают, что вместо того, чтобы изобретать новые конфигурационные языки, следует использовать существующие общеязыковые инструменты (Python, Lisp и т.д.) для конфигурации как код, что позволит избежать проблем с безопасностью и сложностью.
- Некоторые участники также упоминают, что проблема не в синтаксисе или структуре данных, а в отсутствии стандартного языкового сервера для конфигурационных файлов, что делает невозможным автодополнение и переход к определению.
- Также поднимается вопрос о том, что если конфигурационный язык предоставляет возможность встраивать код, то это может быть использовано для вредоносных целей, и вопрос о том, как обеспечить безопасность таких файлов, становится критически важным.
- В конце концов, обсуждение сходится на том, что вместо того, чтобы продолжать изобретать новые конфигурационные языки, следует использовать существующие языки программирования и инструменты, которые уже решают эти проблемы.
Spotlight on pdfly, the Swiss Army knife for PDF files 🔥 Горячее
Команда разработчиков представила новую версию pdfly 0.5.0 — инструмента для работы с PDF, который теперь умеет подписывать документы и проверять их подписи, что повышает безопасность. Также добавлена функция извлечения страниц с аннотациями, что упрощает извлечение конкретных данных. Эти обновления делают pdfly ещё более универсальным инструментом для управления PDF-файлами.
Проект активно развивается, привлекая участников через Hacktoberfest, что демонстрирует его активное сообщество. pdfly продолжает расширять свой функционал, оставаясь ключевым инструментом в экосистеме Python для работы с PDF.
Комментарии (89)
- Обсуждение показало, что существует множество инструментов для работы с PDF, но ни один из них не является универсальным решением.
- Участники обсудили, что большинство инструментов имеют ограничения в виде отсутствия поддержки Linux, несоответствия лицензии, отсутствия GUI или CLI, и т.д.
- Обсуждались такие инструменты как poppler, qpdf, pdfcpu, pdfinfo, pdfseparate, pdfimages, pdfdetach, pdftotext, pdftohtml, pdftopng, pdf2svg, pdf2htmlEX, pdf2txt, pdf2html, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2htmlEX, pdf2txt, pdf2
- Участники также обсудили, что большинство инструментов не поддерживают все возможные операции с PDF, и что каждый инструмент имеет свои ограничения и особенности.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует множество инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальным решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструментов, которые могут быть использованы для работы с PDF, но ни один из них не является универсальым решением.
- Участники также обсудили, что существует мнольство инструмент
Go subtleties
Статья представляет собой сборник 15 тонкостей и малоизвестных возможностей языка Go, собранных автором за год работы с языком. Начиная с Go 1.22, можно использовать range с целыми числами для простого создания циклов. Интересно, что оператор ~ позволяет ограничивать универсальные типы, что полезно для типизированных констант. Пакет embed позволяет встраивать файлы прямо в бинарник, упрощая развертывание. Однако есть и подводные камни: len() со строками возвращает количество байтов, а не символов, что может привести к неожиданным результатам при работе с Unicode.
Особенно коварна работа с nil-интерфейсами: даже если значение nil, тип переменной остается ненулевым интерфейсом, что делает проверку a == nil ложной. Это может серьезно затруднить отладку кода, возвращающего интерфейсы. Также стоит отметить возможность переименования целых пакетов через LSP и индексированную строковую интерполяцию для уменьшения повторений. Функция time.After в сочетании с select предоставляет элегантный способ установки таймаутов для горутин.
Комментарии (144)
- Go-разработчики обсуждают, что язык не даёт уверенности в надёжности кода из-за непредсказуемого поведения nil и интерфейсов, а также отсутствия нормального обработчика ошибок.
- Сообщество отмечает, что вместо удобства чтения кода ради скорости компиляции выбрали неинтуитивную интерполяцию строк, что делает отладку тяжелее.
- Разработчики делятся личными историями о том, как нулевые указатели и интерфейсы ведут себя непредсказуемо, и это продолжает подстерегать даже опытных разработчиков.
- Обсуждение также затрагивает, что Go в целом поощряет писать простой код без изощрённых абстракций, что ведёт к быстрому и легкому ПО, но в то же время лишает разработчика выразительных средств.
- Некоторые участники признают, что отсутствие обобщённых дженериков до недавнего времени и отсутствие перечислений кроме как
iotaиerrorв качестве встроенных типов делает язык менее выразителен, чем он мог бы быть.
HTTP3 Explained
HTTP/3 — это новая версия протокола HTTP, работающая поверх QUIC (Quick UDP Internet Connections) вместо традиционного TCP. Основное преимущество — решение проблемы "head of line blocking", когда потеря одного пакета блокирует всю передачу данных. HTTP/3 использует UDP, что позволяет параллельно обрабатывать пакеты без ожидания восстановления связи. Протокол включает встроенную безопасность с TLS 1.3 и поддерживает 0-RTT handshakes для снижения задержки при повторных подключениях.
Книга подробно разбирает эволюцию протокола: от HTTP/2 с его ограничениями TCP до современных возможностей QUIC. HTTP/3 сохраняет такие функции HTTP/2, как мультиплексирование запросов и приоритизацию, но с улучшенной производительностью. Особое внимание уделено техническим деталям: работа с потоками, сравнение с HTTP/2, а также критика и перспективы развития. Документ доступен на нескольких языках и представляет собой исчерпывающее руководство для разработчиков, интересующихся современными веб-протоколами.
Комментарии (57)
- Обсуждение охватывает отсутствие обновлений документации HTTP/3, проблемы с потерей пакетов в HTTP/2, и то, что HTTP/3 уже поддерживается большинством браузеров и сайтов, но документация и инструменты отстают.
- Участники обсуждают, что HTTP/3 в основном использует UDP, что вызывает споры о безопасности и приватности, а также то, что TCP может быть выключен в будущем.
- Также обсуждается, что HTTP/3 уже активно используется, но не всегда очевидно, что это именно он, так как внешне это может быть незаметно.
- Участники также отмечают, что документация и инструменты для HTTP/3 развиты недостаточно, и что будущее HTTP/4 неясно.
- В конце обсуждение сдвигается к тому, что HTTP/3 уже здесь и сейчас, и мы должны начать его использовать и развивать экосистему вокруг него.
Minds, brains, and programs (1980) [pdf]
Джон Сёрль в статье "Разумы, мозги и программы" критикует концепцию "сильного ИИ", утверждающего, что правильно запрограммированный компьютер действительно обладает сознанием и пониманием. Он выдвигает два ключевых тезиса: во-первых, интенциональность (направленность сознания на объекты) возникает исключительно из причинных свойств мозга; во-вторых, выполнение компьючтерной программы само по себе никогда не является достаточным условием для интенциональности. Сёрль приводит знаменитый мысленный эксперимент "китайская комната": человек, не знающий китайского, следует инструкциям на английском, манипулируя китайскими символами, и успешно отвечает на вопросы на китайском, не понимая их смысла. Это доказывает, что система может симулировать понимание, не обладая им.
Из этого следует, что объяснение работы сознания не может сводиться к выполнению компьютерной программы, а создание искусственного сознания потребует воспроизведения именно причинных свойств мозга, а не просто написания кода. Сёрль подчеркивает, что сильный ИИ фокусируется на программах, а не на машинах, и никакая программа сама по себе не может обеспечить мышление или понимание.
Комментарии (32)
- Обсуждение всплеснуло вокруг смерти Джона Сёрла и его знаменитого аргумента «Китайская комната», а также вокруг того, как именно эта мысль-эксперимент влияет на дискуссию об ИИ и сознании.
- Участники обсуждали, насколько справедливо применять человеческие категории к машинам, и какие именно когнитивные способности можно приписать компьютеру.
- Также поднимался вопрос о том, какие именно когнитивные способности могут быть приписаны ИИ, и какие нет, и какие из них могут быть реализованы в принципе, а какие нет.
- Обсуждались также этические и философские аспекты ИИ, включая вопрос о том, что такое сознание и как мы можем знать, что что-то обладает сознанием, и как мы можем это проверить.
- В конце обсуждение перешло к тому, что именно является сознанием и как мы можем знать, что что-то обладает сознанием, и как мы можем это проверить.
Комментарии (33)
I’ll take the chance to link to Derek Yu’s (of Spelunky fame) pixel art tutorial, where he explains techniques such as anti-aliasing and sel-out: https://www.derekyu.com/makegames/pixelart.html [delayed] It genuinely baffles me that people are nostalgic about CRTs. CRTs were univ
Комментарии (132)
I saw this post on telegram, and noticed something weird about the webpage preview <meta property="og:description" content="Fastmail now has native apps for Mac, Windows & Linux."> It says "native", electron is opposite of that As a happy paying user of fastmail, I'm beyond s