Recent submissions

Comment · 5 hours ago
All that work and then somehow transposing the A and B keys at the very end.
Comment · 9 hours ago
Funny how Enlightment was "too heavyweight" at the time it was released, and is now considered lightweight.
Comment · 12 hours ago
Path names are always really complicated, hidden invisible state or not. Just let use the Operating System's APIs to expand the full paths for you.

Then there's Path Canonicalization. This is especially hairy, and only needed in certain circumstances where you need to know when two paths are really on the same filesystem or not (Mount points and symbolic links can cause "C:\dir\file" to be on a different drive than "C:\"). Not helping this is that path canonicalization is broken on Windows in some cases. When you mount a filesystem, you are able to register the volume with the mount manager. If you do register it, path canonicalization will work, but you also get some unwanted side effects (creating a "Recycle Bin" and "System Volume Information" directory). If you don't register it with mount manager, the files are still usable, but Path Canonicalization won't find the drive. You have to enumerate every drive letter to find it, and if you mounted it inside a directory, that's even harder.

Comment · 1 day ago
If you're feeling especially crazy, you can detect when a program was started from a console or not. That lets you make a Windows program that can display messages in the console that started the program. (But the console still is accepting inputs as if no program is running)
Comment · 2 days ago
Animation production (2D or 3D) can also have raw RGB frames.
Comment · 2 days ago
4:2:0 is not lossless. 4:4:4 with quantizing down to 8-bit YCbCr isn't lossless either. But 10-bit 4:4:4 is reversible back to 8-bit RGB without loss.
Comment · 2 days ago
One uncommonly used feature of H.264 is support for lossless video. It's a bit hard to use due to tooling (not easy to discover and select the feature), and is sometimes incompatible with web browsers, but you can get actual lossless video using a mainstream video codec. You can verify that it really is lossless, and doesn't have any conversion step where it's quantized to 8-bit YUV.

"x264vfw" is one tool which supports this format, even inside of an AVI file. So older software that uses Video For Windows can create those files.

Comment · 2 days ago
Not really, lossless WEBP still decodes much faster than lossless JXL, so if you need to decode the images faster, you use WEBP. Yes, you could also speculatively decode the JXL images to hide the decode time.

For lossy, neither is in a good place, since lossy AVIF beats both lossy JXL and lossy WEBP. Lossless AVIF is a joke and barely competes with PNG.

Comment · 2 days ago
One year left before the "last major patent" expires.
Comment · 3 days ago
Windows supports letting you specify Bad RAM ranges in the BCD file. Also, do not do this. Windows will erase your Bad RAM specifications when it upgrades to the next build, leaving you with crashes and possible file corruption.
Comment · 5 days ago
I can tell that the person making the video never actually tried to run Doom on a real Windows 2000 or XP machine, otherwise they would have noticed that the game has absolutely no sound. Sound support for DOS games in Windows 2000+ was not built into the operating system. You needed to install a third party tool called "VDMSound" if you wanted sound blaster emulation for DOS games.
Comment · 6 days ago
While gerrymandering technically "only" involves the house, it can demotivate people who would otherwise turn out.
Comment · 6 days ago
I just use a tab suspender, I prefer having RAM over having something cute.
Comment · 6 days ago
"Censorship" vs "Content moderation". You can't have online discussions without moderation, and that makes moderation some form of censorship. Thus you can't have online discussions without some form of censorship. Only difference is who is doing the censoring.
Comment · 8 days ago
Those are some big song previews. 1:30 is a lot more than the typical 30 seconds.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton