frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

Fixing a bug with byte order marks

https://alexwlchan.net/2026/byte-order-marks/
5•surprisetalk•5d ago

Comments

flohofwoe•24m ago
Ugh, why are BOMs even still a thing in the 21st century? E.g. when will Windows finally arrive in the late 1990s and switch to UTF-8 for everything?

The UTF-8 BOM is especially bizarre because UTF-8 is completely endian-agnostic (so the BOM is at most an indicator that this file is UTF-8 encoded, but guess what? Outside the Windows bubble, all text files are UTF-8 anyway).

remnavi•23m ago
The csv.DictReader version of this bug is the one that got me. Open a UTF-8-with-BOM CSV as plain utf-8 and your first column name comes back with an invisible U+FEFF glued to the front of it, so every lookup on that one field fails while the other columns behave perfectly. You end up suspecting the source data, the header row, anything except the encoding.

json.loads has a similar tell: a leading BOM gives you "Expecting value: line 1 column 1 (char 0)", which reads like malformed JSON when the JSON is fine.

Same fix, utf-8-sig at the open, and I think the lesson generalises past subtitles: deal with encoding once at the I/O boundary so nothing downstream ever needs to know a BOM existed. Mid-file BOMs like yours are what it looks like when that leaks.

mr_mitm•20m ago
I hate the BOM so much. It causes so many subtle issues and I don't even understand why it's needed.

More Tailscale tricks for your jailbroken Kindle

https://tailscale.com/blog/jailbroken-kindle-proxy-tun-modes
161•Error6571•4h ago•47 comments

User Interfaces of the Demo Scene

https://www.datagubbe.se/scenegui/
157•zdw•4h ago•25 comments

Codex Security

https://github.com/openai/codex-security
491•bakigul•12h ago•163 comments

SQLite in Production: Optimizing WAL Mode, Concurrency, and VFS Layers

https://micrologics.org/blog/sqlite-in-production-optimizing-wal-mode-concurrency-and-vfs-layers-...
16•ankitg12•1h ago•0 comments

Show HN: I was tired of opening 2 tabs for every HN link, so I made a userscript

https://github.com/twalichiewicz/HNewhere
302•twalichiewicz•10h ago•79 comments

Substack writers, you need a website

https://elizabethtai.com/2026/06/10/substack-writers-you-need-a-website/
524•speckx•16h ago•264 comments

Cracking Windows Open: Porting RADV to Win32

https://www.collabora.com/news-and-blog/news-and-events/cracking-windows-open-porting-radv-to-win...
38•zdw•4h ago•8 comments

Half-Life ported to Mac OS 9

https://mac-classic.com/news/half-life-ported-to-mac-os-9/
235•freediver•12h ago•110 comments

LearnVector – Andrew Ng's AI company building one‑to‑one learning experiences

https://learnvector.ai/
174•ajhai•7h ago•103 comments

ReFrame – The EPaper Camera

https://reframe.camera/
120•phil294•9h ago•22 comments

Kimi K3 Architecture Overview and Notes

https://sebastianraschka.com/blog/2026/kimi-k3-architecture-notes.html
410•ModelForge•17h ago•75 comments

Transformer Transformer: A Unified Model for Motion-Conditioned Robot Co-Design

https://transformer-transformer.github.io/
49•ilreb•5h ago•2 comments

Teach yourself programming in ten years (1998)

https://www.norvig.com/21-days.html
128•vinhnx•3d ago•80 comments

Truth is not a direction: a Tarski attack on LLM probes

https://abeljansma.nl/2026/07/10/truth-is-not-a-direction.html
90•abelaer•1d ago•36 comments

Hubble: Open-source notetaking app for you and your agents

https://www.hubble.md/
104•handfuloflight•8h ago•37 comments

Steel Bank Common Lisp version 2.6.7

https://sbcl.org/all-news.html?2.6.7
230•tmtvl•15h ago•98 comments

Delayed Gratification – Proud to Be 'Last to Breaking News'

https://www.slow-journalism.com/
293•speerer•17h ago•164 comments

Hooray for the Sockets Interface

https://blog.apnic.net/2026/07/28/hooray-for-the-sockets-interface/
34•jruohonen•6h ago•18 comments

Mag Computer: A Mag History of RAM (1960–2025)

https://magworld.pw/episodes/computer/
21•evakhoury•4d ago•2 comments

Log is non-monotonic in PHP and Lua

https://purplesyringa.moe/blog/log-is-non-monotonic-in-php-and-lua/
51•ibobev•5d ago•29 comments

Fixing a bug with byte order marks

https://alexwlchan.net/2026/byte-order-marks/
5•surprisetalk•5d ago•3 comments

Beyond Greece and Rome

https://aeon.co/essays/uncovering-a-global-ancient-history-beyond-greece-and-rome
31•diodorus•1d ago•25 comments

The iPhone Upgrade Program is being replaced by Apple Upgrade

https://www.apple.com/shop/iphone/iphone-upgrade-program
177•lkurtz•15h ago•323 comments

Zig's Incremental Compilation Internals

https://mlugg.co.uk/posts/incremental-compilation-internals/
237•garyhtou•17h ago•165 comments

Una GPS smart watch – Repairable, USB-C charging, developer-friendly

https://unawatch.com/
206•pimterry•18h ago•129 comments

60 Years Ago, a Submerged Submarine Circled the Globe for the First Time (2020)

https://www.popularmechanics.com/military/weapons/a32009109/operation-sandblast-sumbarine-circumn...
14•baud147258•1d ago•5 comments

Multiple Mouse Cursors in Wayland

https://blinry.org/multi-seat-wayland/
119•marvinborner•8h ago•81 comments

Interview with Boris Cherny [video]

https://www.youtube.com/watch?v=qyPCVqFUyDo
53•knighthacker•1d ago•62 comments

Now is the time to give LLMs access to the ACM digital library

https://cacm.acm.org/opinion/now-is-the-time-to-give-llms-access-to-the-acm-digital-library/
156•rbanffy•17h ago•125 comments

Discovering Cryptographic Weaknesses with Claude

https://www.anthropic.com/research/discovering-cryptographic-weaknesses
216•gslin•15h ago•155 comments