News for hackers. Stuff that matters.

nickcw

Re:Domain hacks with unusual Unicode characters (2018) on Sunday November 01, 2026 @01:36PM (#50328328)
Ha! Yes I discovered that this is true in C as part of my IOCCC entry:

https://github.com/ioccc-src/winner/blob/master/2025/ncw3/pr...

Re:Neal Stephenson on AI and What Comes Next [video] on Friday October 30, 2026 @12:24PM (#50306190)
Thirded for Anathem. It isn't for everyone, you've got to have a high tolerance for made up words and enjoy puzzling things out but if that is you (likely if you read HN) then it is great. Probably my favourite sci-fi book ever by number of re-reads!
Re:Gforth 1.0 on Tuesday October 27, 2026 @11:26AM (#50260780)
You may enjoy ccforth then which is a mostly gforth compatible compiler which compiles to native via C.

https://github.com/ncw/ccforth

I wrote it as an experiment in having both a forth interpreter and compiler running at the same time.

Re:How does Fable 5.1 hide messages in images? on Friday October 23, 2026 @05:07AM (#50206262)
I missed that and that is much more pleasing than the LLM reading the SVG source!
Re:How does Fable 5.1 hide messages in images? on Friday October 23, 2026 @04:47AM (#50206123)
I thought this was a fun idea and the images are quite pleasing.

I decoded the Morse code image with MkI eyeball. It's quite difficult to read when the trails overlap. I suspect the LLM is reading the SVG source where that doesn't matter so this could do with a little tweak so the dits and dahs don't overlap if it is intended for humans to decode.

If it isn't intended for humans then you might as well use the last 8 bits of your 32 bit float coordinates.

Re:Google cloud outage takes down banks on Tuesday October 20, 2026 @07:34AM (#50164718)
From Google's status page https://status.cloud.google.com/incidents/Xs2XTHzAVC9YnafnPy...

    We are experiencing an issue with multiple services in
    europe-west2 beginning on Monday, 2026-10-19 23:08 PDT.
    
    Due to a power event we had suffered an outage within
    europe-west2-b zone. The power event is mitigated. Partial
    mitigation to infrastructure services will be observed within the
    next 30 minutes and the remaining services will be mitigated there
    after.
So some kind of power failure happened to bring down one zone. Unfortunate, but this kind of stuff happens. That is why all the cloud providers have multiple zones, and I'm amazed the big companies reported as down weren't using multiple zones.

(Also reporting the times in PDT is quite unhelpful for users of this zone who are likely based in the UK or EU)

I think about Vinge's treatment of time often. Though I find "see you in a kilosecond" doesn't go down well with the family, so clearly some cultural adjustments needed!
Here is the team radio of Lewis Hamilton literally turning his car off and in again on the formation lap!

https://youtu.be/e1bPfbNn_TU?is=zrTGCKm_6klH0JwZ

Re:C's Flexible Integer Sizes Were Not a Design Mistake on Sunday September 27, 2026 @06:47AM (#49865489)
The fixed size int types int32_t and friends weren't introduced until C99. Microsoft held out until 2013 before it put <inttypes.h> into Visual Studio!

So there has been a really long time in C's evolution where we haven't had fixed size types which has been a super annoying mess of #ifdefs in portable code.

The variable size ints have allowed some super weird architectures though. I remember looking at the datasheet for the Motorola 56000 DSP and noting that the C compiler set char = short = int = 24 bits! That was because the hardware could not address anything smaller than 24 bits. I think long could be 48 bits.

I know pi to 50 places learned through lots of repetition. I've always been good at remembering numbers though.

I don't find the memory palace tricks helpful at all though. I think that is a consequence of my Aphantasia and something I only realised recently. I can't visualise a memory palace so placing things in it is impossible!

Re:SDCC – Small Device C Compiler on Saturday September 19, 2026 @04:27AM (#49764529)
I used sdcc for an 8051 based commercial project a while back. I seem to remember spending more time reading the assembly to figure out workarounds for the compiler than actually writing C code!

Whereas sdcc works brilliantly for z80 lineage processors. I wrote quite a lot of C for Gameboy recently and didn't find a single compiler bug in sdcc which revised my opinion of it upwards greatly.

Re:A 386 PC for Your RP2350 on Monday September 14, 2026 @09:33AM (#49696603)
Was the performance mentioned anywhere - I couldn't find it on the page?
Re:2026 Hugo Awards on Sunday September 06, 2026 @12:07PM (#49587880)
Disappointed to see I already read the Hugo winner for best novel - The Everlasting by Alix E. Harrow.

It is a worthy winner in my opinion. Fantasy with a sci-fi element along with a story which takes some untangling. Five stars from me :-)

Yes I update the CVE-PENDING once the CVEs are in to keep the record straight.
I got a 6 month free subscription of Claude Code Max under Anthropic's open source program which has been very helpful.
This describes my life as an open source maintainer at the moment!

In the first 10 years of the rclone project we received about 20 security disclosures through GitHub. We had to deal with over 40 in the last month! That has taken a huge amount of my time, even using AI tools to triage and come up with fixes for review.

The hit rate for those security disclosures is pretty good - about 75% of them have a nugget of something which needs looking at. The configurations for rclone have got increasingly unlikely so I'm hoping they will dry up eventually.

I was considering just merging the fixes straight to master just to make my life easier rather than holding a dozen independent security fixes on branches and merging them at the point release and hoping not to have too many conflicts to fix up. I've decided to stick with the process for the moment.

GitHub assigns CVEs for the advisories. Before the AI apocalypse they took 2-3 days for an assignment but now it they are running at 3-4 weeks so I have to send the point releases out with CVE-PENDING in the changelog which isn't ideal.

Not sure what the solution is, but it is definitely a problem for us.

Re:CSS: The bomb inside your inbox on Sunday August 09, 2026 @01:18PM (#49233372)
Here is an idea...

Why don't we give up on HTML in emails and just use markdown instead? It is readable and writable by humans and doesn't have insane security problems.

It seems to be our AI overlords' preferred communication format too so it would future proof email for the aipocalypse.

This would, alas, make the the people sending you marketing emails very unhappy. Maybe they could attach a PDF instead, I'm sure that would be safe.

/s

Re:Show HN: SIMD Viterbi Decoder in Rust on Wednesday August 05, 2026 @06:06AM (#49180683)
I was looking at the reed Solomon implementation. I've done a few of those in the past! I note that you are using logs for multiplication. I always used to use a 64kb table for direct lookup, though maybe that isn't faster on modern processors?

Next LDPC codes?

Re:Twenty Years of RISC OS Open on Sunday August 02, 2026 @10:10AM (#49144884)
I used and developed software for RISC OS for many years and it was there I cut my teeth as an open source developer.

I wrote the very popular !Director application which let you customize your Desktop and add lots of nifty shortcuts. It could be expanded with BASIC plugins to do just about anything! It was distributed by the Arcade BBS to start with then Acorn User magazine put it on the floppy disk that came with the magazine.

Amazingly Director was written entirely in ARM assembler (with the help of lots of macros). I used to really enjoy writing ARM assembler and used to grit my teeth whenever I had to read the assembly output of the C compiler! I remember writing quicksort in ARM assembler as part of this (to sort menu entries) which was a lot of fun.

I still have a RiscPC under my desk, but I don't think I've turned it on for nearly 15 years :-(

Re:An Uncomplicated Man on Tuesday July 28, 2026 @03:15AM (#49080448)
[after a pretty scathing review which I mostly agree with]

> Despite all this, the release of The Odyssey is still an event to celebrate. In what we are told is the streaming era, this epic is bringing audiences back to cinemas. In what we are told is a time of declining literacy and the ‘death of the humanities’, translations of The Odyssey, including mine, are flying off the shelves. Some of those who buy the book or show up in cinemas to watch Tom Holland may go on to study ancient Greek. Perhaps the film will persuade a few college administrators not to cut their literature, language and history departments. Nolan, who studied English at University College London – where students still study The Odyssey as a first year ‘foundational text’ – is doing his best to get the general public reading again, and I am grateful.

Re:How is the Bun Rewrite in Rust going? on Monday July 27, 2026 @09:01AM (#49069100)
Maybe it would have made more sense for Anthropic to rewrite Claude Code in rust, and cut out the middle man (bun)?
I set my name as Sir and I enjoy the obsequious responses this generates :-)

It worked well in my banking app too which greets me with " Good morning, Sir" which is the level of relationship I want with my bank!

I had a look through the code to see how it manages not to use a pile of C libraries with cgo like other Go GUI libraries.

The answer is platform dependent:

Windows loads the relevant DLLs by hand and calls them. This is a well established technique in Go programs and due to the super stable DLL interface works well.

Linux has an x11 and Wayland backends and these implement (through a library) the wire protocols directly in Go which is nice and will make cross compilation and distribution easy.

macOS does appear to use cgo to access the cocoa libraries. macOS doesn't like statically linked Go programs anyway though as they don't use system name resolution so this isn't a bad compromise, but will mean macOS stuff needs to be built on macOS I think.

I didn't see Android or iOS support.

A nice innovative approach to GUI building. Since the lowest common denominator for the backends is an RGBA buffer, this will bypass all accessibility things the OS provides.

The above gleaned after a few minutes reading the source so may not be 100% accurate.

One of the disappointing realisations I got from my physics degree was that as you move into the real world with non-spherical cows you can no longer solve any of the equations.
Re:Life with Hazard Ratios on Friday July 10, 2026 @07:47AM (#48858642)
From the article:

> This is essentially the observation Keyfitz made in his 1977 paper, “What Difference Would It Make if Cancer Were Eradicated?” Cancer is responsible for 18 percent of deaths, so does that mean eradicating it would increase lifespan by 18 percent, or around 13.6 years? Nope, Keyfitz says, it’s only 2.3 years.

A very interesting thought!

Re:Show HN: 18 Words on Thursday July 09, 2026 @10:56AM (#48846977)
I didn't realise at first that you could choose letters which weren't adjacent which made it very hard! Guess I've been playing too much https://zanagrams.com/ (which was also posted here recently).
Maybe it does measure the distance to your face to work out where to show the viewfinder rectangle...
Re:1.38 Millimeter Microcontroller on Monday June 29, 2026 @05:17AM (#48716818)
Ha! I'm going to rename my home office "The Room of Dreams"

Older »