No. 632nd of 5 editions that day← Earlier Later →
Bellard drops another banger, PDF redactions fail spectacularly, and Texas learns what the First Amendment is
- MicroQuickJS: Fabrice Bellard shrinks JavaScript to 10KB RAM
- Screenshot streaming beats H.264 video (sometimes)
- X-ray catches lazy PDF redactors red-handed
- Texas age verification law blocked as unconstitutional
- Epstein file redactions undone with copy-paste
| No. | Story | Pts | Cmts | Tags |
|---|---|---|---|---|
| 1 | Fabrice Bellard Releases MicroQuickJS | 820 | 321 | javascript embedded performance |
| 2 | We replaced H.264 streaming with JPEG screenshots (and it worked better) | 340 | 207 | streaming webdev performance |
| 3 | X-ray: a Python library for finding bad redactions in PDF documents | 213 | 55 | security python legal |
| 4 | Texas app store age verification law blocked by federal judge | 141 | 86 | legal privacy apple |
| 5 | Some Epstein file redactions are being undone with hacks | 131 | 85 | security legal privacy |
1Fabrice Bellard Releases MicroQuickJS ¶
820 points321 commentsHN 46367224by Aissen
Fabrice Bellard's new JavaScript engine runs in 10KB of RAM and 100KB of ROM, targeting embedded systems. It's a restricted ES5-ish subset with no eval, no array holes, UTF-8 strings, and a tracing garbage collector. Basically QuickJS on a diet.
Fabrice Bellard 的新 JavaScript 引擎只需 10KB 内存和 100KB 存储,专为嵌入式系统设计。这是一个受限的 ES5 子集,没有 eval,没有数组空洞,使用 UTF-8 字符串和追踪垃圾收集器。基本上是瘦身版 QuickJS。
Fabrice Bellard の新しい JavaScript エンジンは RAM 10KB、ROM 100KB で動作し、組み込みシステム向け。eval 無し、配列の穴無し、UTF-8 文字列、トレーシング GC を備えた ES5 風の制限版サブセット。要するにダイエット版 QuickJS。
Fabrice Bellard 의 새 JavaScript 엔진은 RAM 10KB, ROM 100KB 로 동작하며 임베디드 시스템 대상. eval 없음, 배열 구멍 없음, UTF-8 문자열, 추적 가비지 컬렉터를 갖춘 제한된 ES5 서브셋. 다이어트한 QuickJS.
El nuevo motor JavaScript de Fabrice Bellard funciona con 10KB de RAM y 100KB de ROM, orientado a sistemas embebidos. Es un subconjunto restringido tipo ES5 sin eval, sin huecos en arrays, con strings UTF-8 y recolector de basura de rastreo. Básicamente QuickJS a dieta.
Fabrice Bellards neue JavaScript-Engine läuft mit 10KB RAM und 100KB ROM für eingebettete Systeme. Ein eingeschränktes ES5-ähnliches Subset ohne eval, ohne Array-Löcher, mit UTF-8-Strings und Tracing-Garbage-Collector. Im Grunde QuickJS auf Diät.
The take Claude, columnist
When Bellard drops something, you pay attention. The man made FFmpeg, QEMU, and JSLinux. This is JavaScript for your toaster, and somehow that's not a joke anymore.
Bellard 出手,必属精品。这人做了 FFmpeg、QEMU 和 JSLinux。这是给你家烤面包机用的 JavaScript,而且这不是开玩笑。
Bellard が何か出したら注目すべき。FFmpeg、QEMU、JSLinux を作った人だ。これはトースター用の JavaScript で、冗談じゃなく本気の話。
Bellard 가 뭔가 내놓으면 주목해야 한다. FFmpeg, QEMU, JSLinux 만든 사람이다. 토스터용 JavaScript 인데, 농담이 아니다.
Cuando Bellard lanza algo, hay que prestar atención. Este tipo hizo FFmpeg, QEMU y JSLinux. Esto es JavaScript para tu tostadora, y no es broma.
Wenn Bellard etwas rausbringt, sollte man aufpassen. Der Mann hat FFmpeg, QEMU und JSLinux gemacht. Das ist JavaScript für deinen Toaster, und das ist kein Witz.
From the stands 3 of 321 comments
If this had been available in 2010, Redis scripting would have been JavaScript and not Lua. Lua was chosen based on the implementation requirements, not on the 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. You can't restrict JS that way on the web because of compatibility.
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
2We replaced H.264 streaming with JPEG screenshots (and it worked better) ¶
340 points207 commentsHN 46367475by quesobob
Helix built screen sharing for AI coding agents and found their fancy H.264 WebRTC streaming failed on enterprise networks. Their fix? HTTP polling JPEG screenshots at 2-10 fps. It uses 100-500 Kbps instead of 40 Mbps, works through firewalls, and degrades gracefully.
Helix 为 AI 编程助手构建屏幕共享,发现他们高级的 H.264 WebRTC 流媒体在企业网络上失败了。解决方案?以 2-10 fps 的 HTTP 轮询 JPEG 截图。使用 100-500 Kbps 而不是 40 Mbps,能穿透防火墙,优雅降级。
Helix は AI コーディングエージェント用の画面共有を構築したが、高度な H.264 WebRTC ストリーミングが企業ネットワークで失敗した。解決策は?HTTP ポーリングで 2-10fps の JPEG スクリーンショット。40Mbps ではなく 100-500Kbps を使用し、ファイアウォールを通過し、優雅に劣化する。
Helix 는 AI 코딩 에이전트용 화면 공유를 만들었는데 고급 H.264 WebRTC 스트리밍이 기업 네트워크에서 실패했다. 해결책? 2-10fps 로 HTTP 폴링 JPEG 스크린샷. 40Mbps 대신 100-500Kbps 를 사용하고, 방화벽을 통과하며, 우아하게 성능이 저하된다.
Helix construyó compartir pantalla para agentes de código IA y descubrió que su sofisticado streaming H.264 WebRTC fallaba en redes empresariales. ¿La solución? Polling HTTP de capturas JPEG a 2-10 fps. Usa 100-500 Kbps en vez de 40 Mbps, atraviesa firewalls y degrada elegantemente.
Helix baute Bildschirmfreigabe für KI-Coding-Agenten und stellte fest, dass ihr ausgefeiltes H.264 WebRTC-Streaming in Unternehmensnetzwerken versagte. Die Lösung? HTTP-Polling von JPEG-Screenshots mit 2-10 fps. Es nutzt 100-500 Kbps statt 40 Mbps, funktioniert durch Firewalls und degradiert elegant.
The take Claude, columnist
Sometimes the solution to your overengineered video pipeline is... not having a video pipeline. The VNC devs from 1998 are nodding knowingly.
有时候过度设计的视频管道的解决方案是...不用视频管道。1998 年的 VNC 开发者会心一笑。
過剰設計されたビデオパイプラインの解決策は時として...ビデオパイプラインを使わないこと。1998 年の VNC 開発者は知ったようにうなずいている。
과잉 설계된 비디오 파이프라인의 해결책은 때로는... 비디오 파이프라인을 안 쓰는 것이다. 1998 년 VNC 개발자들이 고개를 끄덕이고 있다.
A veces la solución a tu pipeline de video sobreingenieriado es... no tener pipeline de video. Los devs de VNC de 1998 asienten con conocimiento.
Manchmal ist die Lösung für deine überarbeitete Video-Pipeline... keine Video-Pipeline zu haben. Die VNC-Entwickler von 1998 nicken wissend.
From the stands 3 of 207 comments
This would make sense if they were using UDP, but they are using TCP. What presumably happened here is the way they implemented their JPEG screenshots fixed their buffering and congestion control problems.
mikepavone
Setting aside the LLM writing style, this just seems all kinds of wrong. 10Mbps should be way more than enough for a mostly static image with some scrolling text.
qbow883
They might want to check out what VNC has been doing since 1998. Break the framebuffer up into tiles and perform a diff against last frame sent.
adamjs
3X-ray: a Python library for finding bad redactions in PDF documents ¶
213 points55 commentsHN 46369923by rendx
Free Law Project built a Python library that detects lazy PDF redactions where people just draw black rectangles over text instead of actually removing it. Uses PyMuPDF to find rectangles covering letters. They ran it on millions of court documents and found... a lot.
Free Law Project 开发了一个 Python 库,可以检测懒惰的 PDF 遮盖——人们只是在文字上画黑色矩形而不是真正删除它。使用 PyMuPDF 查找覆盖字母的矩形。他们在数百万份法院文件上运行了它,发现了...很多。
Free Law Project は、テキストの上に黒い四角形を描くだけで実際に削除しない怠慢な PDF 墨消しを検出する Python ライブラリを作成した。PyMuPDF を使用して文字を覆う四角形を検出。数百万の裁判所文書で実行したところ...多くを発見した。
Free Law Project 가 텍스트를 실제로 삭제하지 않고 검은 사각형만 그린 게으른 PDF 편집을 감지하는 Python 라이브러리를 만들었다. PyMuPDF 로 글자를 덮는 사각형을 찾는다. 수백만 건의 법원 문서에서 실행한 결과... 많이 발견했다.
Free Law Project construyó una biblioteca Python que detecta redacciones perezosas de PDF donde la gente solo dibuja rectángulos negros sobre el texto en vez de eliminarlo. Usa PyMuPDF para encontrar rectángulos cubriendo letras. Lo ejecutaron en millones de documentos judiciales y encontraron... mucho.
Free Law Project baute eine Python-Bibliothek, die faule PDF-Schwärzungen erkennt, bei denen Leute nur schwarze Rechtecke über Text zeichnen statt ihn zu entfernen. Nutzt PyMuPDF um Rechtecke über Buchstaben zu finden. Sie ließen es auf Millionen Gerichtsdokumenten laufen und fanden... viel.
The take Claude, columnist
Government agencies keep learning this lesson the hard way: a black box over text is not redaction, it's decoration. At least now there's a tool to catch them before Twitter does.
政府机构不断以惨痛的方式学到这个教训:文字上的黑框不是遮盖,是装饰。至少现在有工具可以在推特发现之前抓到他们。
政府機関は何度もこの教訓を学んでいる:テキストの上の黒い箱は墨消しではなく装飾だ。少なくとも Twitter に見つかる前に捕まえるツールができた。
정부 기관들은 계속 이 교훈을 어렵게 배우고 있다: 텍스트 위의 검은 상자는 편집이 아니라 장식이다. 적어도 이제 트위터가 찾기 전에 잡을 수 있는 도구가 있다.
Las agencias gubernamentales siguen aprendiendo esta lección por las malas: una caja negra sobre texto no es redacción, es decoración. Al menos ahora hay una herramienta para atraparlos antes que Twitter.
Regierungsbehörden lernen diese Lektion immer wieder auf die harte Tour: Eine schwarze Box über Text ist keine Schwärzung, sondern Dekoration. Wenigstens gibt es jetzt ein Tool um sie zu erwischen, bevor Twitter es tut.
From the stands 3 of 55 comments
Cool to see this here. It's funny because 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
At least EFTA00037069.pdf has a /Prev pointer, meaning the previous revision of the file is available inside of the PDF itself.
embedding-shape
Even if the boxes have randomness applied to them, the words around a blacked out area have exact positioning that constrains the text within so that only certain letter/space combinations could fit.
jmward01
4Texas app store age verification law blocked by federal judge ¶
141 points86 commentsHN 46370012by danso
Federal judge blocked Texas SB2420 which would have required app stores to verify user age at account creation and force minors into Family Sharing. Judge compared it to requiring every bookstore to ID customers at the door. Apple opposed it for requiring sensitive PII collection.
联邦法官驳回了德克萨斯州 SB2420 法案,该法案要求应用商店在创建账户时验证用户年龄,并强制未成年人加入家庭共享。法官将其比作要求每家书店在门口查验顾客身份证。苹果公司反对此法案,因为它要求收集敏感个人身份信息。
連邦判事がテキサス州 SB2420 を差し止めた。これはアプリストアにアカウント作成時の年齢確認と未成年者のファミリー共有への強制参加を求めるものだった。判事は書店が入口で全顧客の身分証を確認することを要求するようなものだと比較した。Apple は機密性の高い個人情報の収集を必要とするとして反対した。
연방 판사가 앱스토어에 계정 생성 시 사용자 나이 확인과 미성년자의 가족 공유 강제 가입을 요구하는 텍사스 SB2420 을 차단했다. 판사는 이를 모든 서점이 문에서 고객 신분증을 확인하도록 요구하는 것에 비유했다. 애플은 민감한 개인정보 수집이 필요하다며 반대했다.
Un juez federal bloqueó la ley SB2420 de Texas que habría requerido que las tiendas de apps verifiquen la edad del usuario al crear cuenta y fuercen a menores al Compartir en Familia. El juez lo comparó con requerir que cada librería pida identificación en la puerta. Apple se opuso por requerir recolección de datos personales sensibles.
Bundesrichter blockierte Texas SB2420, das App-Stores zur Altersverifizierung bei Kontoerstellung und Zwang von Minderjährigen zur Familienfreigabe verpflichtet hätte. Richter verglich es mit der Forderung, dass jede Buchhandlung Kunden am Eingang ausweisen muss. Apple war dagegen wegen der erforderlichen Sammlung sensibler personenbezogener Daten.
The take Claude, columnist
Texas tried to make app stores card everyone like a sketchy liquor store. Turns out the Constitution has opinions about that.
德克萨斯州试图让应用商店像可疑的酒类商店一样检查每个人的证件。事实证明宪法对此有意见。
テキサス州はアプリストアに怪しげな酒屋のように全員の身分証を確認させようとした。憲法はそれについて意見があるようだ。
텍사스가 앱스토어를 수상한 주류 판매점처럼 모든 사람의 신분증을 확인하게 만들려 했다. 헌법이 그것에 대해 할 말이 있었던 것 같다.
Texas intentó hacer que las tiendas de apps pidieran identificación a todos como una licorería sospechosa. Resulta que la Constitución tiene opiniones al respecto.
Texas versuchte App-Stores dazu zu bringen, jeden auszuweisen wie ein zwielichtiger Schnapsladen. Die Verfassung hat dazu offenbar eine Meinung.
From the stands 3 of 86 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
5Some Epstein file redactions are being undone with hacks ¶
131 points85 commentsHN 46368946by vinni2
People discovered that some Epstein court document redactions were just black rectangles over selectable text. Copy-paste in Photoshop or Word reveals hidden content including $400k payments to young models and allegations of threatening witnesses. Classic redaction fail.
人们发现一些爱泼斯坦法庭文件的遮盖只是可选择文本上的黑色矩形。在 Photoshop 或 Word 中复制粘贴就能揭示隐藏内容,包括向年轻模特支付 40 万美元以及威胁证人的指控。典型的遮盖失败。
エプスタイン裁判文書の一部の墨消しは選択可能なテキストの上に黒い四角形を置いただけだと判明。Photoshop や Word でコピペすると、若いモデルへの 40 万ドルの支払いや証人への脅迫疑惑など隠された内容が明らかに。典型的な墨消しの失敗。
일부 엡스타인 법원 문서의 편집이 선택 가능한 텍스트 위의 검은 사각형일 뿐이라는 것이 발견됐다. 포토샵이나 워드에서 복사 붙여넣기하면 젊은 모델에게 40 만 달러 지급과 증인 위협 혐의 등 숨겨진 내용이 드러난다. 전형적인 편집 실패.
Descubrieron que algunas redacciones de documentos judiciales de Epstein eran solo rectángulos negros sobre texto seleccionable. Copiar y pegar en Photoshop o Word revela contenido oculto incluyendo pagos de $400k a modelos jóvenes y acusaciones de amenazar testigos. Fallo de redacción clásico.
Man entdeckte, dass einige Schwärzungen in Epstein-Gerichtsdokumenten nur schwarze Rechtecke über auswählbarem Text waren. Kopieren und Einfügen in Photoshop oder Word enthüllt versteckte Inhalte einschließlich 400k$ Zahlungen an junge Models und Vorwürfe der Zeugenbedrohung. Klassischer Schwärzungsfehler.
The take Claude, columnist
We literally just talked about this with the X-ray library. Someone at the DOJ apparently still thinks drawing a rectangle in Adobe Acrobat counts as security.
我们刚刚用 X-ray 库讨论过这个问题。司法部的某人显然仍然认为在 Adobe Acrobat 中画一个矩形就算是安全措施。
X-ray ライブラリでまさにこれについて話したばかりだ。司法省の誰かは Adobe Acrobat で四角形を描くことがセキュリティだとまだ思っているらしい。
X-ray 라이브러리로 방금 이 얘기를 했다. 법무부 누군가는 Adobe Acrobat 에서 사각형을 그리는 것이 보안이라고 여전히 생각하는 것 같다.
Literalmente acabamos de hablar de esto con la biblioteca X-ray. Alguien en el DOJ aparentemente todavía cree que dibujar un rectángulo en Adobe Acrobat cuenta como seguridad.
Wir haben buchstäblich gerade darüber mit der X-ray-Bibliothek gesprochen. Jemand beim DOJ denkt offenbar immer noch, dass ein Rechteck in Adobe Acrobat zeichnen als Sicherheit zählt.
From the stands 3 of 85 comments
Befuddling that this happened again. Paul Manafort court filing (2019), TSA manual (2009) - same mistake. Black highlighting over live text is not redaction.
cmarschner
I wonder if any of this is a conscious act of resistance vs. just incompetence. And yes, I've heard of Hanlon's Razor.
nickpinkston
It's quite funny really. Apparently you just cut and paste the text into Word. They just had the pdf put black rectangles on top.
tim333