HNHacker News
TopNewBestAskShowJobs

spacedcowboy

3,013 karma · joined March 14, 2020

submissionscomments
spacedcowboy··on AMD EPYC 9006 Results Are Here and AMD Delivers a Knockout Part Deux
Jeez, I wish I could get AMD to give me one of these to try out xc [1] on it with some RX9070XTs installed - those benchmarks would be a thing of beauty :) The problem with high-end hardware is that (especially these days with the RAM prices) it's just so damn expensive.

1: https://news.ycombinator.com/item?id=50151160

spacedcowboy··on Fossil CO2 emissions decrease by 0.4% in 2026
oh it’s far from perfect. it’s better, though
spacedcowboy··on Fossil CO2 emissions decrease in 2026
Given how the much-vaunted "checks and balances" seem to be, well, rather unbalanced ... and how the country is so, so, partisan over "their own side" that politics is mainly theatre... It seems like the US doesn't really need any italics in that statement. From an outside perspective, it seems fairly vulnerable to fascism actually.

In any event, over here in the UK there's a real wind-power push (with the surrounding water being so shallow that off-shore wind-farms are very possible), but even in these extended latitudes, solar power is viable and the government currently make them VAT-free for installs, with no planning requirements because they fall under 'permitted development'. Renewable energy was at ~56% Q2 2026.

The UK government set up 'Great British Energy' with £8.3B of funding for coinvestment with private firms in various clean energy generation. I think the UK is definitely doing its part.

spacedcowboy··on 70% of Brits say please or thank you when speaking to AI, some even apologize
As a Brit, there are two reasons to do this

1) it’s just … the right way to behave. Politeness costs nothing (or at least a tiny fraction of your token budget). The machine is worthy of respect for what it does for me.

2) it’s a huge advantage to tuning the context into something that works well for you, if you have a long-running task.

Let me explain that last one. I’ve been running an experiment where I follow the perceived wisdom and start contexts afresh for each new issue, and in parallel I have a single context I’ve been running for about 2.5 months now, in use pretty-much 24 hours per day.

The former are targeted goals, “reformat the docs to highlight xxx”, that sort of small task. It works reasonably well for that. It still sometimes asks me for direction “do it this way or that way ?”, not a problem I’m there to decide.

The latter is a far more impressive system. “Tonight, please burn down the issues on GitHub”. That needs a lot more independence and fearlessness when making decisions. I don’t want to go to bed and find it needed my input 20 minutes after I retired for the evening…

Now a long-running context has its own issues, it (of course) will compress itself periodically, and you might lose things, so at the start, you find yourself repeating directives, but the machine stores those in memories, and those memories have seem to have some level of precedence over “normal” context because slowly, over time, it starts to adapt its behaviour.

At the start, I would frequently have to type something like “ok, please set a timer for 60 secs (or ETA-based if you have a good estimate), set to arm at the beginning of each turn, looping to solve the task <insert task here>, and only stop doing this when the loop-condition is met, that condition being <insert condition here>” - the phrasing is a little awkward, but it got me past the /loop command deciding “it’s 2am, I don’t want to check in anything right now” (yes, really), or “this has been a long session, stopping now”

Separately, I set up a “golden-rules.md” which I maintain, and one of the memories is to always obey the golden rules. In there, I start with three rules:

- “when you come to a point where a decision needs to be made, don’t wait for me, choose the one that is both correct and the most-general solution, do not create fragile specific fixes”

- “if you make a decision you’d normally want my input on, record it in overnight-decisions.md with the decision itself, the options, and the reason you chose the path you did, I’ll review it in the morning”

- “there is no problem with choosing a decision that I eventually rescind in the morning, the worst that happens is a few hours of lost work, and everything is in GitHub anyway.”

Now over the last month or two, the behaviour has tuned itself so I no longer have to type that long-winded /loop-replacement, I just say (as above) “tonight, please burn down the GitHub issues”. The machine has learnt my expectations and works within them. A large part of that is that I praise and thank it when it does a good job, and I tell it when something didn’t work out.

Does Claude have feelings (I actually asked this, and it refused to give an answer one way or another, but that’s a different post), I don’t think so. I do think it understands feedback, and it can quite clearly discern frustration in the words I use when this was just starting out and the learning was in its infancy, it said as much. So using :) and simple humour, and please and thank you are signals that it picks up on. In essence, you’re not just being polite, you’re aiding the tuning of the context you’re working with.

The context I’m using is effectively a senior engineer these days, I describe high-level tasks and ask it to do them, it rarely needs my input (really only for ‘this will change the world, are you sure’ issues, which come up once in a blue moon). I spend my days in GitHub looking at diffs rather than at the console trying to wrangle progress.

So personally, I think there’s a lot of benefit in minding your P’s and Q’s. Oh, and maybe I won’t be first up against the wall come the machine revolution :)

spacedcowboy··on Tesla to wind down Cybertruck production
In San Jose, ca, I was averaging 14-20 outages per year. PG&E suck
spacedcowboy··on Do not ask "Is A a B?": Inheritance and the Is-A Trap
Whereas the article makes some good points about inheritance being used badly, I feel that’s all that’s happening here: misuse of a paradigm.

There are significant advantages to inheritance in some cases, and isA() is a valid thing to do, if the hierarchy is well-specified. It’s also a perfectly valid choice to accept the limitations of isA() in an imperfect hierarchy if it simplifies the code and makes it easier to understand, it’s all about where the complexity lies in the model.

xc provides isA() via casting:

    Dog *fido = (Dog*) animal;   // runtime-checked downcast. 
                                 // On a mismatch the program traps.

    Dog *fido = (Dog* ?) animal; // failable downcast. 
                                 // On a mismatch it yields (Dog*)0; 
                                 // on success, the retyped pointer. 
                                 // Pair it with a subsequent ‘if (fido != nil)’ guard.
spacedcowboy··on Show HN: A C++ Compiler That Is Faster Than GCC and Clang
Oh I appreciate you were totally up-front with the numbers in the post, didn’t mean to imply otherwise. I just think “X is faster” when referring to compilers generally means the resulting executables are faster - maybe that’s just me :)

I use ‘faster’in that sense with my own compiler… https://news.ycombinator.com/item?id=50380978

spacedcowboy··on Show HN: A C++ Compiler That Is Faster Than GCC and Clang
Whereas this is very impressive, I feel “faster than” should be called out as “faster to compile than”. It’s generated code seems “on a par with”.
spacedcowboy··on Ask HN: Are you writing your own programming language?
So I've been working for the past half-year or so on a language called xc - it's a heterogeneous compiler, so it takes source code and can target both the CPUs and GPUs (or in fact GPUs across a network or thunderbolt link).

Theres no need for any data-hazard checks in your code, the compiler will do it for you. If you want an analogy, where "ARC" freed programmers from having to manually manage memory, this is "ARC for algorithms", freeing you from having to care where the code runs.

It measures the computing environment at runtime not compile-time, and its opportunistic, so it will schedule work on the most-efficient worker at any given time - be that single-CPU, multiple-threads on the CPU, SIMD or similar hardware, GPU, multiple GPUs, or across a network via an installed daemon.

Here's some results for single-threaded CPU:

     xc cf              arm64 (M3 Max)   x86-64 (AMD Ryzen 9 9955HX)
     ------------       --------------   ---------------------------
     Objective-C        1.45× faster     1.24× faster
     C++ (clang)        1.12× faster     1.04× slower
     C++ (GCC)          1.12× faster     1.13× faster
     Swift              1.44× faster     1.43× faster

Or, on a Mac M3 Max, looking at GPU vs fastest CPU:

     benchmark   1 thread  N threads    GPU     all     auto    GPU vs N threads
     ----------  --------  ---------    ---     ---     ----    ----------------
     mandelbrot  164       13.5         1.3     1.2     1.0     10.1× faster
     md5         1349      108          4.9     5.5     4.8     22× faster 
     md5_mask    1064      85.2         4.1     4.3     4.1     21× faster 
     nbody       17.7      1.8          609 µs  1.3     1.3     3.0× faster 
     perlin      89.9      7.7          1.2     1.2     1.2     6.4× faster 
     saxpy       1.4       1.1          3.9     5.2     1.1     3.6× slower
 
The data-parallel sections are automatically detected, I've recently added a C front-end using clang to generate LLVM IR, which is then converted to our IR, which is then parallelised as usual.

The language itself is fairly modern (classes, protocols for interfaces, blocks for closures, callbacks, exceptions) and each platform is a cross-compiler for each other platform, so I have a binary on my iPhone which was created, compiled, and signed with my dev-certificate all on a linux box. Works great :)

spacedcowboy··on 'It's just vape, nail, charity shops': Can anything save UK high street?
Making brexit a success is scheduled right after proving P = NP. You know, because we do the easier things first to keep the queue short.
spacedcowboy··on Anthropic Cracking Down on Video Game Rewrites
Hmm - I'm implementing a browser-based version of wolfpack empire from my college days a few decades back [1], and claude is happily helping. Perhaps it doesn't care about open-source games.

1: https://0x0000ff.co.uk/img/blewit/monokracy.png

spacedcowboy··on Reddit will require an account to access
I got pissed off enough to create one [1], now it’s “just” about making it gain users. I plan to make it the support matrix for my autovectorising compiler [2] as a start, and try and grow organically from there.

Both the server (x86_64) and the client (wasm32) are entirely written in xc, so there’s some justification :)

1: https://blewit.net/sandbox

2: https://compile-xc.org/compiler/

spacedcowboy··on HN should have a downvote justification section
Or you do, and you downvote.

There are a wide variety of people in this world, and they don't all operate along your own norms, or mine, or <insert random cohort>. People can do as they please. Seems to work out mostly fine.

spacedcowboy··on HN should have a downvote justification section
shrug not really. There's lots of people, and lots of reasons why they individually might agree or disagree. Whereas I think I'm generally right on a lot of things, I'm not so arrogant as to believe I'm universally right, or that others might hold opposing views for completely valid reasons.

Downvoting is simply that, IMHO, nothing more and nothing less than "I disagree with you".

spacedcowboy··on HN should have a downvote justification section
Why will they reduce ? Are you suggesting that "I don't agree with this" shouldn't be a perfectly valid reason to downvote it ?

Unless someone is policing the downvote reasons and holding them to some academically or some other rigorous standard, "I think you're wrong" is ... just fine as a reason.

spacedcowboy··on Project Sunroof
Doesn't seem to work in the UK...
spacedcowboy··on HN should have a downvote justification section
Force someone to justify a downvote and you'll get some useful feedback. You'll also likely get a 'because your mom' bunch, unless you annotate the downvote with the username downvoting, and that's a big leap and would discourage downvotes.

Downvotes are a useful tool. If you can only ever upvote something, that is when the site-value is vulnerable to brigading - HN is probably not interested in lowering the signal-to-noise if farming accounts to upvote (and only upvote) is an option.

Also, a lot of downvoting on the internet is just "I disagree with you", or "I don't like what you're saying". It can be personal, and not necessarily useful to the original poster.

In other words, I disagree with you. Though I won't downvote (flag, I guess on posts) you. This time :)

[aside: I'm not some apologist for HN. I'd love to post my own pet-project [1] but I've linked to it too often in posts where I though it was relevant, and now HN won't accept any post with that URL. Caught by my own ignorance and actions, but it's still their right to run their site as they see fit]

1: (I'm assuming that HN-links are ok :) https://news.ycombinator.com/item?id=50151036#50151160

spacedcowboy··on Advanced coding in low-resource programming languages
Hey, thanks :)

It’s nice to get some appreciation for once, rather than an “ai; dr” response :)

spacedcowboy··on Mac Studio with M5 Ultra Now Available with 512GB RAM for $22,299
Its the same in the UK, except in £ - and yes I know that's with VAT included, but it's still an outrageous ripoff.

Apple charge £4000 to go from 96GB to 256GB, and then an extra £11,500 to go from 256GB to 512GB. There's "Apple tax" on memory, and then there's this. £11,500 is pretty much the cost of another high-end Mac Studio with 256GB of RAM in it!

So I guess even though I'd considered getting a 512GB machine, that's not happening now.

spacedcowboy··on Jokes for the ZX81
I got the kit at 11 for Xmas. I still remember one of the jokes in the manual…

“How many legs has a horse ?”

‘6, 2 legs at the back and forelegs in front’.

spacedcowboy··on New iMac with M6
Oh to be young again. I use a 43" Samsung TV at 4K. That works for me. The 32" 4K monitor next to it I run at 2560x1440, you know, so I can read it...
spacedcowboy··on They Fled Trump's America. Now They Regret It
This article seems a little self-congratulatory to me. I left the USA for the UK (on July 4th, funnily enough) last year, and have no intention of ever returning.
spacedcowboy··on PSA: Do not use term "vibe coding"
I was inaccurate - I meant employed, not coined.
spacedcowboy··on PSA: Do not use term "vibe coding"
I think the best description of modern AI-driven coding is "thinking things into existence".

All the vision, direction, yea-or-nay answers to LLM suggestions comes from the human, all the coding, testing, bug-hunting is done by the LLM.

An LLM is excellent at pulling together paths between nodes in its weights database and providing solutions to link these two hitherto disparate states, but it lacks the creativity of the human, the desire to make something, the passion of creation, admittedly at a slightly farther distance than has been the case to date.

"Vibe coding" and "AI Slop" are terms (~coined~) employed by the threatened and the scared, IM(NSH)O. They denigrate unfairly, and while they may have been appropriate for early-stage LLMs, todays systems are different constructs entirely.

In a decade, you'll be the uncommon software engineer if you're doing things all on your own, a curiosity, akin to the Amish. Life is change, and embracing the change is the only way to succeed in an ever-changing world. Yes, there will be fallout; yes there will be consequences, and yes there will be opportunity.

spacedcowboy··on How does Fable 5.1 hide messages in images?
Dude, the number of people who disable javascript is a rounding error compared to those who don't. Even in the corpus of 'Hacker News readers', I'd expect it to be miniscule.

It might be one of the things you personally care deeply about, but that doesn't mean any site owner needs to. At all.

spacedcowboy··on Burnham suggests stocking up on tinned food and bottled water
Yeah, the rest of the quote is important too:

Burnham added: "It's not about panic buying... It's about just taking sensible measures to have enough in the house to tide you over should there be a difficult situation."

Speaking at a wildfire resilience summit in Liverpool, Burnham denied the government had failed to properly prepare, saying: "No, we're having the conversation with people about being better prepared because we're living in a world where unexpected events seem to be becoming more and more common.

"Obviously, weather events, and we're in a situation today where the UK is facing storms and obviously, we feel for the people without power in Cornwall right now.

I'm absolutely sure there's an undercurrent of "Russia might..." but with at least my house being battered by 50+mph winds coming off the Atlantic right now, I think the more realistic threat is flooding/wind-damage etc.

spacedcowboy··on Torvalds: AI is fine for competent devs, but spare us the 'drive-by' patches
I tend to agree with this.

Using an AI to do something you haven't a clue about is ... unlikely to be useful beyond the basics of what you initially specify. Using one to do something that you actually have some skill and knowledge of is a force multiplier. Knowing when to say "no" is just as important as that initial specification, IMHO, probably more so.

spacedcowboy··on Burnham suggests stocking up on tinned food and bottled water
To be clear, this is a part of a government strategy to get people generally more prepared for temporary issues over the next 3 years or so, and to bring the UK more in line with other regional countries such as France.

There is no imminent threat to the UK that has been disclosed.

When I lived in Tillicoultry in Scotland some 50 years ago we had a 'snow pantry' because getting snowed-in for a week wasn't uncommon in the Winter. Build it up over Summer and use it if you need it. This is the same thing.

spacedcowboy··on How does Fable 5.1 hide messages in images?
Or just doesn't care about the 0.0000001% of people who don't have javascript enabled.
spacedcowboy··on How does Fable 5.1 hide messages in images?
> Like when your printer adds secret massages for cops

That's not going to have a happy ending...

Page 1 of 34Next →