Показать HN: RM2000 Tape Recorder, аудиосемплер для macOS=news.ycombinator.com=

Показать HN: RM2000 Tape Recorder, аудиосэмплер для macOS ( rm2000.app ) RM2000 Tape Recorder максимально упрощает процесс извлечения аудиосэмплов и их организации: просто запишите сэмпл, дайте ему название (и, возможно, несколько тегов), и он будет аккуратно сохранен в выбранном вами каталоге.

Я большой собиратель данных и всегда ценил инструменты/сервисы вроде PureRef и Are.na, которые помогают мне разобраться во всем, что я собираю. Эти сервисы занимаются изображениями и видео – я задавался вопросом, почему то же самое нельзя сделать с музыкой и аудиофайлами?

На самом деле я черпал вдохновение для схемы именования файлов из пакета Emacs Denote — каждый образец сохраняется в формате title–tag1–tag2.mp3. Emacs Denote делает что-то похожее, например, идентификатор–title–keywords.org.

Я выбрал этот метод, так как любой файловый браузер с нечетким поиском может искать по образцам, например, файловый браузер Ableton. Просто выполните поиск по некоторым тегам и названию, и вы сможете найти свой образец.

Я также хотел, чтобы это приложение выглядело хорошо (и именно поэтому я потратил так много времени на его создание!). Приложение создано с использованием SwiftUI и AppKit, а ресурсы были отрисованы в Sketch.

Я ценю ваше время и хотел бы услышать ваши мысли по этому поводу. Если вы скачаете его и найдете предложения / ошибки, пожалуйста, дайте мне знать!

Ваше здоровье

asdhtjkujh 11 минут назад [–]
Молодец; это приложение было нужно всегда, но шокирующе отсутствовало в течение многих лет. У меня есть несколько домашних решений в Max/MSP и Ableton, но они громоздкие.

Моя единственная просьба/вопрос: можно ли как-то это запустить с помощью глобальной комбинации клавиш? Я давно мечтал о возможности записывать окружающий звук из фильмов во время просмотра, не выходя из полноэкранного режима, как если бы кто-то делал снимок экрана.


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Извлечение запомненных фрагментов книг из моделей открытого языка=news.ycombinator.com=

Извлечение запомненных фрагментов книг из моделей открытого языка ( arxiv.org )


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Эстроген: отчет о поездке=news.ycombinator.com=

Эстроген: отчет о поездке ( smoothbrains.net )

calico96 10 минут назад [–]
Линн Конвэй, бывшая студентка Массачусетского технологического института, задокументировала свой биохимический путь с помощью эстрогеновой терапии 1960-х годов: https://ai.eecs.umich.edu/people/conway/LynnsStory.html


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Тестирование надежного сетевого кода с помощью Godot=news.ycombinator.com=

Тестирование надежного сетевого кода с помощью Godot ( ptilouk.net )

matthewkayin 16 минут назад | [–]
Я заметил, что ваша игра есть в Steam. Вы в итоге использовали какие-либо сетевые функции Steam через Steam SDK и Godot Steamworks?

Я использую ENet для своего проекта RTS и обнаружил, что сетевой код Steam предлагает многие из тех же функций, что и ENet (включая надежную, упорядоченную доставку пакетов, что бесценно для игры RTS). Мне удалось абстрагироваться так, что моя игра использует ENet в играх по локальной сети и сетевое взаимодействие Steam для онлайн-игр, а остальная часть кода игры не становится умнее.

sosodev 12 минут назад | | [–]
Сетевые сокеты Steam предлагают ту же функциональность, что и ENet. Возможно ли использовать Steam Datagram Relay без сетевых сокетов Steam? Я бы так предположил. Не уверен, что вижу выгоду от поддержки обоих.
sosodev 18 минут назад | [–]
Интересная статья. Удивлен, что автор не упомянул https://github.com/foxssake/netfox

Ядро сетевого кода Godot слишком минимально. Оно дает вам возможность синхронизировать состояние и делать RPC. Вот и все.

Как упоминает автор, добавление функциональности более высокого уровня, такой как прогнозирование, откат и т. д., чрезвычайно сложно, поэтому приятно, что netfox берет на себя большую часть этой сложности.


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Элиза: Кукла, которая учит девочек программированию=news.ycombinator.com=

Элиза: Кукла, которая учит девочек программированию ( elizadolls.com )

JoeOfTexas 1 минуту назад [–]
Ой, это не шутка? Моя дочь сказала, что ей будут сниться кошмары.


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Компиляция LLM в MegaKernel: путь к выводу с малой задержкой=news.ycombinator.com=

Компиляция LLM в MegaKernel: путь к выводу с малой задержкой ( zhihaojia.medium.com )

baq 4 минуты назад | [–]
Следующий шаг — компилировать напрямую в Verilog, чтобы я мог купить несколько LLM на AliExpress.
NitroPython 8 минут назад | [–]
Интеграция Олламы?


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Доморощенные затворы для Uxn=news.ycombinator.com=

Доморощенные затворы для Uxn ( krzysckh.org )


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Звездотрясения и чудовищные ударные волны=news.ycombinator.com=

Звездотрясения и чудовищные ударные волны ( caltech.edu )


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Публичный/защищенный/частный — ненужная функция=news.ycombinator.com=

Публичный/защищенный/частный — ненужная функция ( catern.com )

jonathanlydall 49 минут назад | [–]
Я в основном работаю с C#, и модификаторы доступа позволяют мне ограничивать, какие типы или их члены доступны другим типам или сборкам.

Это особенно полезно при создании библиотек, поскольку я знаю, что для всего, что не является общедоступным, я могу выполнить рефакторинг по своему усмотрению (при условии, что внешне наблюдаемое поведение останется неизменным).

Немного жаль, что Visual Studio лишь сравнительно недавно изменила шаблон для новых классов, чтобы использовать internal вместо public.

В кодовых базах, над которыми я работаю, есть много публичных классов, которые, вероятно, являются публичными только из-за старого значения по умолчанию и не используются извне, поэтому их можно было бы рефакторить, но в этом трудно быть уверенным.

Тогда как с внутренними классами я могу быть уверен (если только кто-то не использовал рефлексию, но тогда это их проблемы).

Dwedit 1 час назад | | [–]
Блокировка резервных полей от объекта недвижимости не является ненужной функцией.
scotty79 50 минут назад | | [–]
Если кому-то нужен доступ к полю бэкинга, то обычно на то есть веская причина. А если вы его ограничите, они просто разветвят ваш код и перезапишут все, что им нужно.

В лучшем случае это должна быть мягкая аннотация, предотвращающая автоматическое заполнение, а не ограничение.

magichippo 3 минуты назад | | | [–]
Мне нравится подход Boost[1], заключающийся в использовании отдельного пространства имен для этих специфичных для реализации вещей, а не модификаторов видимости.

Тогда внутренности доступны, если они вам нужны для временного обходного пути или чего-то в этом роде, но они также очень очевидны, когда вы обращаетесь к вещам, которые вам на самом деле не нужны. И разработчики по-прежнему вольны перестраивать внутренности так, как они считают нужным.

[1]: Я не говорю, что Boost это изобрёл, просто я это увидел первым.

49 минут назад | | | | [–]
и тогда они также несут ответственность за эти изменения в будущем.
ctxc 50 минут назад | | [–]
Вы действительно хотите создать интерфейс для каждого возможного места, где можно использовать `private`?
WorldMaker 39 минут назад | | [–]
Да, даже если это всего лишь синтаксический сахар для «чистого» дуала `interface`, как утверждается в статье, синтаксический сахар все равно имеет преимущества/достоинства во многих сценариях.
ctxc 28 минут назад | | | [–]
Точно. По-моему, большинство классов не предназначены для наследования, а хотят предоставить чистый публичный API.

Хотя верно, что все классы могут быть унаследованы, рассмотрение _всех_ классов с предположением, что они будут таковыми, просто приведет к лабиринту кода.

jimbob45 16 минут назад | | [–]
Хотелось бы, чтобы private был предложением, а не строго соблюдался, как типы не строго соблюдаются в C. Microsoft любит делать public переменные private в течение многих лет во время обновлений, и может быть невозможно переписать ваше приложение, чтобы избежать использования этой теперь недоступной переменной. Глядя на вас, обновление ASP.NET до .NET Core…
xyst 31 минут назад | [–]
В некоторых языках они также необязательны 🙂

Давным-давно в мире Java Corp команды создавали свои собственные библиотеки интеграции с подозрительными/ужасными контрактами. В итоге пришлось просто использовать API отражения Java для обновления модификаторов доступа, чтобы заставить свою дерьмовую библиотеку работать, пока они ее не исправят (месяцы спустя…).

deepsun 23 минуты назад | [–]
Или ввести корпоративное правило, делающее все публичным, если ограничения все равно не работают.


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Зачем нам нужен DNSSEC?=news.ycombinator.com=

Зачем нам нужен DNSSEC? ( howdnssec.works )

tptacek 54 минуты назад | [–]
Мы не делаем этого. Если бы мы делали это, мы бы уже это сделали. Прошло более 25 лет с момента подачи подобных обращений.

Это забавный сайт! Я не совсем уверен, почему главный герой — зеленое тако, но я могу понять, почему поставщик DNS сделал мультяшное объяснение протокола. Просто этот конкретный протокол не так важен, как звучит из его названия.

throw0101d 0 минут назад | | [–]
> Мы не делаем этого. Если бы мы делали это, мы бы уже это сделали. Прошло более 25 лет с момента подачи подобных призывов.

См. также IPv6. 😉

iscoelho 43 минуты назад | | | [–]
Это важно. Это досадная риторика, которая вредит безопасности интернета.

«Например, в апреле 2018 года российский провайдер объявил ряд IP-префиксов (групп IP-адресов), которые на самом деле принадлежат DNS-серверам Amazon Route53».

Используя BGP-перехват Route53, злоумышленники не только смогли перенаправить веб-сайт на разные IP-адреса по всему миру, но и сгенерировать SSL-сертификаты для этого веб-сайта. Они использовали это, чтобы украсть 152 000 долларов в криптовалюте. (Я знаю, я знаю, «криптовалюта», но это может случиться с любым сайтом: банковским, медицинским, инфраструктурным)

Также, прежде чем вы скажете, RPKI тоже не решает эту проблему, хотя и является шагом в правильном направлении. DNSSEC также является шагом в правильном направлении.

[1] https://www.cloudflare.com/learning/security/glossary/bgp-hi…

Маппетмен 28 минут назад | | | [–]
DNSSec на данный момент стал причиной стольких сбоев, что это просто смешно.

Нужно быть невероятно осторожным и планировать все до мельчайших подробностей, иначе все сломается: https://internetnz.nz/news-and-articles/dnssec-chain-validat…

Идея важна. То, что она призвана защищать, важно. Текущая реализация ужасна, слишком сложна и переполнена таким количеством земельных разумов, что никто не хочет к ней прикасаться.

Если Джефф Хьюстон предполагает, что пришло время вставить вилку в DNSSec, поскольку он уже готов, то, по моему скромному мнению, он уже хорошо приготовлен. https://blog.apnic.net/2024/05/28/calling-time-on-dnssec/

iscoelho 27 минут назад | | | [–]
Да, я ни в коем случае не говорю, что реализация хороша. RPKI тоже, по-моему, шутка. Но это все, что у нас есть сейчас.

Я утверждаю, что нечестно игнорировать реальную угрозу безопасности, возникающую из-за отсутствия DNSSEC.

zahllos 36 минут назад | | | | [–]
Аргумент против DNSsec заключается в том, что если вы пытаетесь найти случайную запись A для сервера, чтобы узнать, является ли она правильной, TLS прекрасно с этим справится, если вы разумно доверяете работе проверки контроля домена, т. е. центрам сертификации (CA) видна подлинность DNS.

Аргументом в пользу DNSSEC является любая служба, настроенная записями SRV. Для записи srv чего-либо может быть совершенно законным указывать на запись A в совершенно другой зоне. С точки зрения TLS вы не можете этого сказать, потому что делегирование произошло с помощью записей SRV, и вы узнаете, является ли это подлинным, только если у вас есть подписанная запись или прямое зашифрованное соединение с авторитетным сервером (соединение TLS с evil.service.example будет действительным).

Так что все зависит от того, чего вы ожидаете от DNS.

iscoelho 30 минут назад | | | [–]
TLS не обеспечивает никакой безопасности в этом случае, поскольку сертификаты TLS генерируются на основе DNS. См. Lets Encrypt.
tptacek 40 минут назад | | | | [–]
Атаки BGP изменяют семантическое значение самих IP-адресов. DNSSEC работает на уровне выше. Единственное место, где это имеет значение в пост-HTTPS-везде-мире, — это центры сертификации, которые теперь все переходят на многоперспективную проверку.
phillipseamore 15 минут назад | | | [–]
И, по крайней мере, Let's encrypt действительно проверяет DNSSEC перед выдачей сертификатов. Думаю, это скоро станет обязательным для всех CA. DNSSEC для домена плюс ограничительные правила CAA должны гарантировать, что ни один авторитетный CA не выдаст мошеннический сертификат.
tptacek 11 минут назад | | | [–]
Этого точно не будет. Большинство доменов изначально не взламываются путем подмены DNS.
iscoelho 7 минут назад | | | [–]
“Большинство доменов”. Да, возможно, никто не беспокоится о DNS-перехвате ваших доменов. К сожалению, я работал в организациях, где это случалось, и теперь у них есть DNSSEC.
tptacek 6 минут назад | | | [–]
Я предлагаю всем, кто думает, что это подстава, открыть список Tranco research самых популярных/важных доменов в Интернете (это просто текстовый файл с зонами, по одной в строке) и написать тривиальный цикл bash `for`, чтобы `dig +short ds` для каждой из этих зон и посчитать, сколько из них имеют DNSSEC.

Для начала вы можете попробовать `dig +short ds google.com`. Это даст вам представление о том, чего ожидать.

iscoelho 38 минут назад | | | | [–]
Как вам должно быть известно, многоперспективная проверка ничего не решает, если ваш захват BGP принят как глобальный. Вы получите 100% трафика.

DNSSEC оказывает большую помощь в решении этой проблемы: он мог бы предотвратить указанный инцидент.

tptacek 37 минут назад | | | [–]
Злоумышленнику BGP не нужно изменять DNS для перехвата трафика; он уже перехватывает целевой трафик на уровне селективности IP.
iscoelho 32 минуты назад | | | [–]
Есть два способа осуществить эту атаку:

1. Взломать сервер HTTP/HTTPS. Для некоторых диапазонов IP это совершенно неосуществимо. Например, взлом диапазона HTTP/HTTPS CloudFlare был бы практически невозможен теоретически, исходя из технических деталей, которые я не буду перечислять.

2. Взломать DNS-сервер. Поскольку существует полное равнодушие к безопасности DNS-сервера (как вы показываете), эта атака очень часто игнорируется. Именно поэтому в упомянутом инциденте злоумышленники смогли с легкостью взломать Amazon Route53. *DNSSEC решает эту проблему.*

Если 1 или 2 сработали, вы успешно взломали сайт. Оба должны быть безопасными, чтобы предотвратить это.

tptacek 28 минут назад | | | [–]
Подводя итог, вы предлагаете радикальное обновление DNS, требующее сотен миллионов долларов усилий от операторов по всему миру, внедряя систему, которая регулярно полностью отключает некоторые из самых сложных платформ от Интернета, когда их хрупкая конфигурация выходит из строя, чтобы решить проблему глобального перехвата всех адресов Route53 кем-то.

На этом этапе вы могли бы просто заставить CABForum придумать новый благословенный метод проверки на основе RDAP. Это действительно может произойти, в отличие от DNSSEC, который этого не сделает. DNSSEC терял подписанные зоны в Северной Америке в течение нескольких последних интервалов.

Мне нравится, что предлагаемая вами модель угроз применима только к сайтам, работающим за Cloudflare.

iscoelho 21 минут назад | | | [–]
«Мне нравится, что предлагаемая вами модель угроз применима только к сайтам, работающим за Cloudflare».

Предложенная мной модель угроз является последовательной для Cloudflare, поскольку они проделали большую работу по проектированию, чтобы сделать практически невозможным глобальный захват их IP-адресов с помощью BGP. Это делает многоперспективную проверку действительно полезной. Да, другие интернет-провайдеры гораздо более уязвимы, чем Cloudflare, есть ли смысл?

Вы не говорите, что DNSSEC не служит реальной цели. Вы говорите, что его неудобно внедрять, и он не получил широкого распространения. Это само по себе заставляет меня считать ваши аргументы немного нечестными, и я воздержусь от дальнейшего обсуждения.

tptacek 15 минут назад | | | [–]
Нет, я говорю, что это не служит реальной цели. Я 30 лет профессионально занимаюсь безопасностью, и одна из основных вещей, которую я понял, заключается в том, что безопасность по сути является экономической проблемой. Работа защитника заключается в асимметричном повышении расходов для злоумышленников. Посмотрите, как сегодня перехватываются зоны DNS и сертификаты. Вы предлагаете радикально повысить расходы защитника таким образом, чтобы это не повлияло существенно на расходы злоумышленников , потому что они в основном не используют экзотическую атаку, на которой вы зациклились.

Если бы мы действительно хотели решительно противостоять этому вектору атаки, мы бы на уровне CA полностью отказались от использования протокола DNS, используемого браузерами для поиска имен хостов, и заменили бы его прямой аттестацией от регистраторов, которую можно было бы сделать _произвольно_ безопасной без странных жестов, которые DNSSEC использует для одновременного обслуживания массовых поисков из браузеров и этого варианта использования CA.

Но речь идет не о реальных моделях угроз. Речь идет о крошечном меньшинстве технологов, имеющих парасоциальные отношения с устаревшим протоколом.

iscoelho 10 минут назад | | | [–]
О чем вы говорите? Речь идет о реальных моделях угроз. DNS-перехваты реальны и документированы. DNSSEC решает их.

Больше похоже на то, что у вас парасоциальные отношения с DNSSEC (и судя по всему, не очень хорошие).

tptacek 8 минут назад | | | [–]
Вы утверждаете, что большинство случаев перехвата зон DNS происходит из-за того, что злоумышленник по пути перехватывает и подделывает ответы на запросы DNS? Это не так.
iscoelho 5 минут назад | | | [–]
Я не говорил “большинство”. Я сказал, что это происходит и документируется.
tptacek 1 минуту назад | | | [–]
Я вполне удовлетворен тем, как эта часть ветки представляет эту часть моих аргументов.
xorcist 24 минуты назад | | | | [–]
Это, конечно, облегчает задачу. Конечно, мы можем обойтись и без этого, но криптографическое подписание записей DNS полезно для ряда вещей.
tptacek 21 минут назад | | | [–]
Контрапункт: нет, это не так, поэтому практически никто этим не пользуется. Даже атака, на которой сосредоточена эта ветка — захват BGP целевых серверов DNSSEC для подделки подписей CA — это заметка об ошибке округления по сравнению с тем, как на практике перехватываются зоны DNS (атаки ATO против поставщиков DNS).

Если бы люди относились к этому серьезно, они бы начали с требования, чтобы каждый поставщик DNS принимал U2F и/или Passkeys, а не вялый TOTP, который многие из них делают прямо сейчас. Но это несерьезно; это просто мотивированное рассуждение в защиту DNSSEC, в сохранении которого некоторые люди странным образом заинтересованы.

iscoelho 18 минут назад | | | [–]
Вы снова игнорируете тот факт, что DNSSEC предотвратил бы взлом на $152 000. Да, мы знаем, что организации не всегда серьезно относятся к безопасности. Для тех, кто серьезно, DNSSEC — полезный инструмент.
tptacek 12 минут назад | | | [–]
Нет, это не так. Он пытается и в основном не может справиться с одной ультраэкзотической атакой, за абсолютно огромные деньги, в основном потому, что сообщество интернет-стандартов настолько зависимо от пути, что не может вернуть плохую криптосистему, разработанную в середине 1990-х годов, обратно на чертежную доску. Вы не можете просто так назвать свой путь к принятию этого протокола; люди пытались сделать это годами, и в результате принятие в Северной Америке упало .

Компании, которые вы высмеиваете за несерьёзное отношение к безопасности в целом, тратят на безопасность значительно больше , чем компании, которые её приняли. Ни одна часть вашего аргумента не выдерживает критики.

ysofunny 2 минуты назад | | | | [–]
поскольку простой текст слишком ненадежен, мы должны шифровать все, даже простой текст

чтобы злобные шпионы из вражеского государства не раскрыли наши самые постыдные национальные тайны!

immibis 43 минуты назад | | | [–]
Нам нужно многое из того, чего у нас нет.

Обратите внимание, что без безопасности DNS любой, кто контролирует ваш DNS-сервер или надежно находится на пути к вашему DNS-серверу, может выдавать сертификаты для вашего домена. Единственная контрмера против этого — прозрачность сертификатов, которая позволяет вам громко кричать, что кто-то выдает себя за вас, но не мешает им делать это на самом деле.

tptacek 42 минуты назад | | | [–]
В этом случае на поддержку проблемной области, в которую DNSSEC пытается внести свой вклад, тратится огромное количество денег и ресурсов, а тот факт, что она развернута практически в 0% организаций с большими группами безопасности, говорит сам за себя.
iscoelho 39 минут назад | | | [–]
Я бы сказал, что это скорее свидетельство плачевного состояния кибербезопасности. Эти “теоретические” атаки случаются. Все просто думают, что это будут не они.
tptacek 39 минут назад | | | [–]
Мое опровержение заключается в том, что корневые ключи DNSSEC могут попасть на Pastebin сегодня вечером, и почти в каждой организации мира никому не придется отправлять сообщение . Это не гипербола.
avidiax 30 минут назад | | | [–]
Вы в основном правы, но я бы надеялся, что некоторые основные компании и организации безопасности получат пейджинг. Корневые центры сертификации и регистраторы доменов и т.п. должны иметь проверку DNSSEC.

К сожалению, DNSSEC немного дорог в плане поддержки, дополнительных ошибок, снижения производительности и т. д. Чтобы избавиться от всех проблем, понадобится кто-то вроде Apple, который включит проверку DNSSEC по умолчанию. Или понадобится эксплуатируемая уязвимость, например, подмена SIM-карты, чтобы убедить Let's Encrypt! и подобные сервисы, зависящие от proof-by-dns, что им необходимо требовать подпись DNSSEC.

tptacek 25 минут назад | | | [–]
Подмена SIM-карты — гораздо более важный вектор атаки, чем перехват трафика по пути/вне пути, и он ближе к тому, как на практике происходит перехват DNS (путем захвата учетных записей у регистраторов).
aspbee555 43 минуты назад | | [–]
потому что я могу указать свой центр сертификации в своих записях DNS, и мое приложение может проверить, что сертификат CA получен из надежного/проверенного источника
davidu 1 час назад | | [–]
Рассказчик: Мы этого не делаем.
aberoham 1 час назад | [–]
Пейджинг tptacek


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com