No. 621st of 5 editions that day← Earlier Later →
Steam Deck scheduler runs Meta's servers, Fabrice Bellard strikes again, and your TV is watching you watch TV
- Meta adopts Steam Deck's game scheduler for datacenter workloads
- MicroQuickJS: JavaScript in 10KB RAM, Bellard does it again
- X-ray exposes millions of badly redacted PDFs
- H.264 streaming replaced with JPEG screenshots (it worked)
- Texas age verification law blocked as unconstitutional
| No. | Story | Pts | Cmts | Tags |
|---|---|---|---|---|
| 1 | Meta is using the Linux scheduler designed for Valve's Steam Deck on its servers | 533 | 283 | linux infrastructure gaming |
| 2 | Fabrice Bellard Releases MicroQuickJS | 748 | 291 | javascript embedded opensource |
| 3 | X-ray: a Python library for finding bad redactions in PDF documents | 143 | 39 | security python legal |
| 4 | We replaced H.264 streaming with JPEG screenshots (and it worked better) | 310 | 195 | streaming webdev networking |
| 5 | Texas app store age verification law blocked by federal judge | 99 | 68 | legal privacy apple |
1Meta is using the Linux scheduler designed for Valve's Steam Deck on its servers ¶
533 points283 commentsHN 46366998by yellow_lead
Meta discovered that SCX-LAVD, a scheduler originally built by Igalia for Valve's Steam Deck gaming handheld, works surprisingly well as a general-purpose scheduler across their diverse server fleet. They presented findings showing it handles load balancing well across different CPU clusters and adapts to varying hardware configurations.
Meta 发现由 Igalia 为 Valve Steam Deck 开发的 SCX-LAVD 调度器在他们多样化的服务器集群上表现出色。该调度器能很好地处理不同 CPU 集群间的负载均衡,并适应各种硬件配置。
Meta は Igalia が Valve Steam Deck 向けに開発した SCX-LAVD スケジューラが、多様なサーバー群で驚くほどうまく機能することを発見。異なる CPU クラスター間の負荷分散に優れ、様々なハードウェア構成に適応する。
Meta 는 Igalia 가 Valve Steam Deck 을 위해 개발한 SCX-LAVD 스케줄러가 다양한 서버 환경에서 놀라울 정도로 잘 작동한다는 것을 발견했다. 다양한 CPU 클러스터 간 로드 밸런싱이 우수하고 여러 하드웨어 구성에 적응한다.
Meta descubrió que SCX-LAVD, un scheduler desarrollado por Igalia para Steam Deck de Valve, funciona sorprendentemente bien en su diversa flota de servidores. Maneja bien el balanceo de carga entre clusters de CPU y se adapta a diferentes configuraciones de hardware.
Meta entdeckte, dass SCX-LAVD, ein von Igalia für Valves Steam Deck entwickelter Scheduler, überraschend gut auf ihrer vielfältigen Server-Flotte funktioniert. Er bewältigt Lastverteilung zwischen CPU-Clustern gut und passt sich verschiedenen Hardware-Konfigurationen an.
The take Claude, columnist
A scheduler tuned for smooth frame pacing on a handheld gaming device somehow became Meta's default for massive datacenters. Valve is accidentally becoming a Linux infrastructure company while trying to sell video games.
一个为掌机游戏流畅度调优的调度器,居然成了 Meta 数据中心的默认选择。Valve 在卖游戏的同时,不小心变成了 Linux 基础设施公司。
携帯ゲーム機のフレームレート安定化用スケジューラが、Meta の巨大データセンターのデフォルトになった。Valve はゲームを売りながら、うっかり Linux インフラ企業になりつつある。
휴대용 게임기의 프레임 안정화용 스케줄러가 Meta 데이터센터의 기본값이 되었다. Valve 는 게임을 팔면서 우연히 Linux 인프라 회사가 되어가고 있다.
Un scheduler optimizado para fluidez de frames en una consola portátil se convirtió en el predeterminado de Meta para centros de datos masivos. Valve se está convirtiendo accidentalmente en una empresa de infraestructura Linux mientras intenta vender videojuegos.
Ein Scheduler für flüssige Frameraten auf einem Handheld-Gaming-Gerät wurde Metas Standard für massive Rechenzentren. Valve wird versehentlich zu einem Linux-Infrastrukturunternehmen, während sie Videospiele verkaufen wollen.
From the stands 3 of 283 comments
Valve is practically singlehandedly dragging the Linux ecosystem forward in areas that nobody else wanted to touch.
Fiveplus
It seems like every time I read about this kind of stuff, it's being done by contractors. Do they pretty much stick to Steam/game development and contract out most of this?
mikkupikku
Worth mentioning that sched_ext was developed at Meta. The schedulers are developed by several companies who collaborate.
redleader55
2Fabrice Bellard Releases MicroQuickJS ¶
748 points291 commentsHN 46367224by Aissen
Fabrice Bellard released MicroQuickJS, a stripped-down JavaScript engine that runs with just 10KB of RAM and 100KB of ROM. It uses a tracing garbage collector, restricts JS to strict mode only, removes array holes and limits eval/regex features. Designed for embedded systems and microcontrollers where every byte counts.
Fabrice Bellard 发布了 MicroQuickJS,一个精简版 JavaScript 引擎,仅需 10KB RAM 和 100KB ROM 即可运行。使用追踪式垃圾回收器,仅支持严格模式 JS,移除了数组空洞并限制 eval/正则功能。专为嵌入式系统和微控制器设计。
Fabrice Bellard が、わずか 10KB RAM と 100KB ROM で動作する軽量 JavaScript エンジン MicroQuickJS をリリース。トレーシング GC を使用し、strict モードのみに制限、配列の穴を削除し eval/正規表現機能を制限。組み込みシステムとマイコン向け設計。
Fabrice Bellard 가 10KB RAM 과 100KB ROM 만으로 실행되는 경량 JavaScript 엔진 MicroQuickJS 를 출시했다. 트레이싱 GC 를 사용하고, strict 모드만 지원하며, 배열 hole 을 제거하고 eval/정규식 기능을 제한했다. 임베디드 시스템과 마이크로컨트롤러용으로 설계되었다.
Fabrice Bellard lanzó MicroQuickJS, un motor JavaScript reducido que funciona con solo 10KB de RAM y 100KB de ROM. Usa un recolector de basura de rastreo, restringe JS solo a modo estricto, elimina huecos de arrays y limita funciones eval/regex. Diseñado para sistemas embebidos y microcontroladores.
Fabrice Bellard veröffentlichte MicroQuickJS, eine abgespeckte JavaScript-Engine, die mit nur 10KB RAM und 100KB ROM läuft. Sie verwendet einen Tracing-Garbage-Collector, beschränkt JS auf Strict-Mode, entfernt Array-Löcher und limitiert eval/regex-Funktionen. Entwickelt für eingebettete Systeme und Mikrocontroller.
The take Claude, columnist
While the rest of us argue about whether React needs 500KB of dependencies, Bellard casually ships an entire JavaScript runtime in the space of a favicon. The man treats impossible engineering challenges like sudoku puzzles.
当我们还在争论 React 是否需要 500KB 依赖时,Bellard 随手用一个 favicon 的大小发布了完整的 JavaScript 运行时。这人把不可能的工程挑战当数独来玩。
我々が React に 500KB の依存関係が必要かどうか議論している間に、Bellard はファビコンサイズで完全な JavaScript ランタイムを出荷した。この人は不可能なエンジニアリング課題を数独のように扱う。
우리가 React 에 500KB 의존성이 필요한지 논쟁하는 동안, Bellard 는 파비콘 크기로 완전한 JavaScript 런타임을 출시했다. 이 사람은 불가능한 엔지니어링 과제를 스도쿠처럼 다룬다.
Mientras el resto discutimos si React necesita 500KB de dependencias, Bellard tranquilamente entrega un runtime JavaScript completo en el espacio de un favicon. El hombre trata los desafíos de ingeniería imposibles como puzzles de sudoku.
Während wir uns streiten, ob React 500KB Abhängigkeiten braucht, liefert Bellard beiläufig eine komplette JavaScript-Runtime im Platz eines Favicons. Der Mann behandelt unmögliche Engineering-Herausforderungen wie Sudoku-Rätsel.
From the stands 3 of 291 comments
If this had been available in 2010, Redis scripting would have been JavaScript and not Lua. Lua was chosen based on implementation requirements, not language ones.
antirez
This engine restricts JS in all of the ways I wished I could restrict the language back when I was working on JSC.
pizlonator
If anyone wants to try out MicroQuickJS in a browser here's a simple playground interface for executing a WebAssembly compiled version of it.
simonw
3X-ray: a Python library for finding bad redactions in PDF documents ¶
143 points39 commentsHN 46369923by rendx
Free Law Project built x-ray to scan PDFs for 'bad redactions' where people draw black rectangles over text but the underlying text remains selectable. They used it to analyze millions of court documents in CourtListener via S3 batch jobs and found widespread improper redaction practices.
Free Law Project 开发了 x-ray 来扫描 PDF 中的'不良遮盖',即人们在文字上画黑色矩形但底层文字仍可选择的情况。他们通过 S3 批处理作业分析了 CourtListener 中数百万法庭文件,发现不当遮盖做法非常普遍。
Free Law Project は、テキスト上に黒い四角を描いても下のテキストが選択可能なままの「不適切な墨消し」を検出する x-ray を開発。S3 バッチジョブで CourtListener の数百万件の裁判文書を分析し、不適切な墨消しが広く行われていることを発見した。
Free Law Project 는 텍스트 위에 검은 사각형을 그렸지만 밑의 텍스트가 여전히 선택 가능한 '잘못된 마스킹'을 탐지하는 x-ray 를 개발했다. S3 배치 작업을 통해 CourtListener 의 수백만 법원 문서를 분석하고 부적절한 마스킹 관행이 광범위하다는 것을 발견했다.
Free Law Project creó x-ray para escanear PDFs en busca de 'redacciones defectuosas' donde la gente dibuja rectángulos negros sobre texto pero el texto subyacente sigue siendo seleccionable. Analizaron millones de documentos judiciales en CourtListener mediante trabajos batch de S3 y encontraron prácticas de redacción impropia generalizadas.
Free Law Project entwickelte x-ray, um PDFs nach 'schlechten Schwärzungen' zu durchsuchen, bei denen schwarze Rechtecke über Text gezeichnet werden, aber der darunterliegende Text weiterhin auswählbar bleibt. Sie analysierten Millionen von Gerichtsdokumenten in CourtListener via S3-Batch-Jobs und fanden weit verbreitete unsachgemäße Schwärzungspraktiken.
The take Claude, columnist
Turns out drawing a black rectangle over sensitive text is not the same as actually removing it. Shocking revelation that has apparently escaped millions of lawyers and government officials for decades.
原来在敏感文字上画黑色矩形和真正删除它不是一回事。这个惊人的发现显然让数百万律师和政府官员困惑了几十年。
機密テキストに黒い四角を描くことと実際に削除することは同じではないことが判明。この驚くべき発見は、数十年にわたって数百万人の弁護士や政府関係者を逃れてきたようだ。
민감한 텍스트 위에 검은 사각형을 그리는 것이 실제로 삭제하는 것과 같지 않다는 것이 밝혀졌다. 수십 년간 수백만 변호사와 공무원들을 피해간 놀라운 발견이다.
Resulta que dibujar un rectángulo negro sobre texto sensible no es lo mismo que eliminarlo. Revelación impactante que aparentemente ha eludido a millones de abogados y funcionarios durante décadas.
Es stellt sich heraus, dass ein schwarzes Rechteck über sensiblen Text zu zeichnen nicht dasselbe ist wie ihn tatsächlich zu entfernen. Schockierende Erkenntnis, die offenbar Millionen von Anwälten und Regierungsbeamten jahrzehntelang entgangen ist.
From the stands 3 of 39 comments
We do so many huge, complex, multiyear projects at Free Law Project, but this is the most viral any of our work has ever gone!
mlissner
Font kerning is likely a major leak for redaction. Even with randomness, words around blacked out areas have exact positioning that constrains what text could fit.
jmward01
Some PDFs have a /Prev pointer, meaning the previous revision is available inside the PDF itself. The difference might be minor but could be more.
embedding-shape
4We replaced H.264 streaming with JPEG screenshots (and it worked better) ¶
310 points195 commentsHN 46367475by quesobob
Helix built a complex H.264 WebSocket video streaming pipeline that broke constantly on enterprise networks. They replaced it with simple HTTP polling for JPEG screenshots (100-150KB each). When network is bad, you just get fewer screenshots instead of a broken stream. The system falls back to video when RTT is under 150ms.
Helix 构建了一个复杂的 H.264 WebSocket 视频流管道,但在企业网络上经常崩溃。他们用简单的 HTTP 轮询 JPEG 截图(每张 100-150KB)替换了它。网络差时只是获得更少的截图,而不是中断的流。当 RTT 低于 150ms 时系统回退到视频。
Helix は複雑な H.264 WebSocket ビデオストリーミングパイプラインを構築したが、企業ネットワークで常に壊れた。シンプルな HTTP ポーリングで JPEG スクリーンショット(各 100-150KB)に置き換えた。ネットワークが悪いときは壊れたストリームではなくスクリーンショットが少なくなるだけ。RTT が 150ms 以下のときはビデオにフォールバック。
Helix 는 복잡한 H.264 WebSocket 비디오 스트리밍 파이프라인을 구축했지만 기업 네트워크에서 계속 고장났다. 간단한 HTTP 폴링 JPEG 스크린샷(각 100-150KB)으로 대체했다. 네트워크가 나쁘면 끊긴 스트림 대신 스크린샷이 적게 온다. RTT 가 150ms 미만이면 비디오로 폴백한다.
Helix construyó una compleja tubería de streaming de video H.264 WebSocket que se rompía constantemente en redes empresariales. La reemplazaron con simple polling HTTP para capturas JPEG (100-150KB cada una). Cuando la red es mala, simplemente recibes menos capturas en lugar de un stream roto. El sistema vuelve a video cuando el RTT está bajo 150ms.
Helix baute eine komplexe H.264-WebSocket-Video-Streaming-Pipeline, die in Unternehmensnetzwerken ständig ausfiel. Sie ersetzten sie durch einfaches HTTP-Polling für JPEG-Screenshots (je 100-150KB). Bei schlechtem Netzwerk bekommt man einfach weniger Screenshots statt eines kaputten Streams. Das System fällt auf Video zurück, wenn RTT unter 150ms liegt.
The take Claude, columnist
Sometimes the best engineering is knowing when to stop engineering. They built a sophisticated video codec pipeline, enterprise networks laughed at it, and the solution was technology from 1992.
有时最好的工程就是知道什么时候停止工程。他们构建了复杂的视频编解码器管道,企业网络嘲笑它,解决方案却是 1992 年的技术。
最高のエンジニアリングは、エンジニアリングをやめるタイミングを知ることだ。彼らは洗練されたビデオコーデックパイプラインを構築し、企業ネットワークに笑われ、解決策は 1992 年の技術だった。
때로는 최고의 엔지니어링은 언제 엔지니어링을 멈춰야 하는지 아는 것이다. 그들은 정교한 비디오 코덱 파이프라인을 만들었고, 기업 네트워크는 비웃었고, 해결책은 1992 년 기술이었다.
A veces la mejor ingeniería es saber cuándo dejar de ingenierar. Construyeron una sofisticada tubería de códec de video, las redes empresariales se rieron de ella, y la solución fue tecnología de 1992.
Manchmal ist die beste Ingenieurskunst zu wissen, wann man aufhören sollte zu engineeren. Sie bauten eine ausgeklügelte Video-Codec-Pipeline, Unternehmensnetzwerke lachten darüber, und die Lösung war Technologie von 1992.
From the stands 3 of 195 comments
This would make sense if they were using UDP, but they are using TCP. What presumably happened is the way they implemented their JPEG screenshots has different buffering behavior.
mikepavone
10Mbps should be way more than enough for a mostly static image with some scrolling text. This is very likely caused by bad encoder settings.
qbow883
They might want to check out what VNC has been doing since 1998 - break the framebuffer up into tiles, perform a diff, composite client-side.
adamjs
5Texas app store age verification law blocked by federal judge ¶
99 points68 commentsHN 46370012by danso
Federal Judge Robert Pitman blocked Texas SB2420, which would have required app stores to verify user age and force minors into Family Sharing groups. The judge compared it to requiring bookstores to ID every customer at the door, ruling it likely violates the First Amendment.
联邦法官 Robert Pitman 叫停了德州 SB2420 法案,该法案要求应用商店验证用户年龄并强制未成年人加入家庭共享组。法官将其比作要求书店在门口验证每位顾客的身份,裁定其可能违反第一修正案。
Robert Pitman 連邦判事がテキサス州 SB2420 を差し止めた。同法はアプリストアにユーザーの年齢確認を義務付け、未成年者をファミリー共有グループに強制加入させるものだった。判事は書店が入口で全顧客の年齢確認を求めるのと同等と比較し、修正第 1 条違反の可能性が高いと判断。
Robert Pitman 연방 판사가 앱스토어에 사용자 나이 확인을 요구하고 미성년자를 가족 공유 그룹에 강제 가입시키는 텍사스 SB2420 을 차단했다. 판사는 이를 서점이 모든 고객의 신원을 문 앞에서 확인하도록 요구하는 것에 비유하며 수정헌법 제 1 조 위반 가능성이 높다고 판결했다.
El juez federal Robert Pitman bloqueó la SB2420 de Texas, que habría requerido que las tiendas de aplicaciones verificaran la edad del usuario y forzaran a los menores a unirse a grupos de Compartir en Familia. El juez lo comparó con exigir que las librerías pidieran identificación a cada cliente en la puerta, dictaminando que probablemente viola la Primera Enmienda.
Bundesrichter Robert Pitman blockierte Texas SB2420, das App Stores verpflichtet hätte, das Alter der Nutzer zu überprüfen und Minderjährige in Familienfreigabe-Gruppen zu zwingen. Der Richter verglich es mit der Anforderung, dass Buchhandlungen jeden Kunden an der Tür ausweisen müssten, und entschied, dass es wahrscheinlich gegen den Ersten Verfassungszusatz verstößt.
The take Claude, columnist
Texas tried to make downloading a weather app require more ID verification than buying a gun. The judge politely explained how the First Amendment works.
德州试图让下载天气应用比买枪需要更多的身份验证。法官礼貌地解释了第一修正案是如何运作的。
テキサス州は天気アプリのダウンロードに銃の購入より多くの身分証明を求めようとした。判事は丁寧に修正第 1 条の仕組みを説明した。
텍사스는 날씨 앱 다운로드에 총 구매보다 더 많은 신원 확인을 요구하려 했다. 판사가 정중하게 수정헌법 제 1 조가 어떻게 작동하는지 설명했다.
Texas intentó hacer que descargar una app del clima requiriera más verificación de identidad que comprar un arma. El juez explicó cortésmente cómo funciona la Primera Enmienda.
Texas versuchte, das Herunterladen einer Wetter-App mit mehr Identitätsprüfung zu versehen als einen Waffenkauf. Der Richter erklärte höflich, wie der Erste Verfassungszusatz funktioniert.
From the stands 3 of 68 comments
The Act is akin to a law that would require every bookstore to verify the age of every customer at the door and, for minors, require parental consent before they could enter.
WarOnPrivacy
Avoiding the collection of user data in the first place (if it's possible) is exactly the correct approach to user privacy.
GeekyBear
The only reason the earlier age verification laws were upheld were because they narrowly targeted porn. This is an entirely unsurprising outcome.
ls612