HNHacker News
TopNewBestAskShowJobs

xlii

3,506 karma · joined August 23, 2017

https://xlii.space

e-mail me: alexander (at) kaminski.se

submissionscomments
xlii··on Codex ticket: first-class Jujutsu support
There are dozens of us. Dozens!
xlii··on Why don't people use Git properly?
Years ago I was quite able when it came to git. I could plumb, mess with reflog: never had to do "copy dir" - safety.

For last 4 years I'm using Jujutsu exclusively, and it is just here. I forgot what staging is and only recalled it when it was mentioning in the post.

So I agree with siblings: because better frontend exists than git cli.

xlii··on Fintech Engineering Handbook
In places where it matters the fines are so high, that everyone are stickler to the rules. It's like a hot oven - not merely a warning of risk. It's actual risk which was touched and which burned.

If an adapter would put your yearly salary at risk (not an exaggeration) would you quicken it?

xlii··on Honesty gets Emacs patch rejected
> checking contribution policies "before the fact"

GNU has no such contribution policy. As I wrote it's currently a discussions behind the closed doors. Those who inform about usage of LLMs are notified that their contributions won't be accepted, and I think I'm second or third in the whole emacs-devel mailing list history.

Thread about LLM contributions sparked after my piece, not before it.

From my research, the only prior discussion was in March 2026 with conclusion that "lawyers are looking into it" and no followup whatsoever.

Though, if I made a mistake during my research don't hesitate to correct me, because it will prevent me from making similar mistake in future.

xlii··on The primary purpose of code review is to find code that will be hard to maintain
I formed (and am advocating) a theory that code reviews are three dimensional space exercising trust, need for control and awareness propagation.

E.g. LGTM could be categorized as high trust, low control, high awareness.

I'm still in process of forming it on writing mostly because I get hooked up with pathological scenarios and these are infinite source of jokes to me. Some I written down already:

https://xlii.space/fiction/approved_unread_shipped/

xlii··on I ported Kubernetes to the browser
I've seen Sam working on this real time as I follow him on BlueSky. So maybe it's technically a slop but I've seen a proof of work.

Won't comment on the product because not my cup of tea.

I'm team cli ftw :)

xlii··on GLM 5.2 beats Claude in our benchmarks
I switch from Codex to GLM 5.2 when I'm out of tokens. The main difference for me is time to completion.

GPT gets there <5 minutes, GLM 5.2 without context takes ~1H.

Though the harness makes a significant difference. On Pi GLM5.2 dreams for minutes, with OpenCode it's more on the point and gets to editing quicker.

xlii··on Fintech Engineering Handbook
I never had to deal with that. At one place it was so complicated that specialized system took reconciliation over (it got baggage full of context data including exchange agreement details, with boundaries and time-regions plan).

In not-a-fintech we just went with doubles and rounded up (worst case - we get a cent more of a customer).

Though if I had to design today for that, I'd look for non-string serializable decimal, so not "10.123 == (10, 123)" but more like (10123, 3) and serialize in JSON as a value and precision separately.

Yet that's only cause I saw Decimal(10,123) sent in JSON as "10.123" which JSON reader red as 10.122 float and inserted to "1012" to database.

xlii··on Fintech Engineering Handbook
Quick browse over Stripe API (i.e. not a simplistic payment provider) will show exactly otherwise.

Metrics/durations/convexity/vega aren't monetary value, these are calculation values and I'm fine with them being whatever. If you're calculating averages to make decisions based on this I don't care if you're counting dolars or tomatoes.

Monetary value is $4.50 and it's representation of actual money passed through system. In practice this value is almost never undergoing any operations except for addition and subtraction. Any multiplication/divison etc. is left to specialized systems that return results wrapped in 800 pages of standarization documents, regulations and so on; systems where term "bit flip" is not a joke, but a risk.

As I wrote fintech != fintech, and I know many organizations aren't at that level of scrutiny, but a huge domain of people dealing with others' people money know that charging someone 1 cent too much is a tens of thousands of problems coming their way.

xlii··on Show HN: Adrafinil – keep a lid-closed Mac awake only while agents work
Um so it is

    sudo bash -c 'touch KEEP_RUNNING; pmset -b sleep 0; pmset -b disablesleep 1; while [ -e KEEP_RUNNING ]; do sleep 1; done; pmset -b sleep 5; pmset -b disablesleep 0'
and

    Agent, when you're done do `rm KEEP_RUNNING`, kthxbye.
?

(personally I have Ruby scripts that check activity on "tmux capture-output" for that)

xlii··on Honesty gets Emacs patch rejected
> But at the end of the day you're still ignoring her wishes.

Probably important for context - there was no official announcement, so no, it's not like I ignored wishes or direction, it was presented to me after the fact.

And (as I mentioned) I'm not mad at policy. I'm mad that:

- that was after fact

- that policy itself is stupid (even if temporary), because it invites under-the-skin slop (though I doubt anyone would go to contribute to core Emacs code slop)

- that actual talks are happening behind closed doors

- and I had lost my time

That's the conclusion. Direction is fine, yet given that I cannot use the tools in my toolset I'm moving on with my work elsewhere (at least until that's settled).

xlii··on Fintech Engineering Handbook
I glanced, and I found this handbook shallow and - in some areas - even bad advice.

E.g. If I ever see a monetary value stored in something else than integers I'm going to run away screaming (thank you Rust decimals represented as JSON floats). It's always integers unless you have a VERY good reason to do otherwise (though exported view can be in anything, even in weird bitcoded formats).

FX exchange. Resolution of FX isn't a point-in-time thing, things like buyer rate-in-time, seller rate-in-time, agreement, agreement tolerance, agreed upon resolution timestamp come in the effect.

Immutability - that's why you want to have event sourcing everywhere that touches money:

    # Resolved stream
    A -> B -> E

    # Actual stream
    A0 -> Edit(A0, A) -> B -> C -> D -> Rollback(B) -> E

Though in the end Fintech != Fintech. I worked at Fintech where money was treated like a baggage, and in other where money was a central point of everything.
xlii··on Fintech Engineering Handbook
Exactly, model is in integers and representation can be 1⃣3⃣ or whatever, that's why model-view separation exist.
xlii··on Honesty gets Emacs patch rejected
As an author, I'm sorry, but how's that similar?

You're comparing transparency of used tools versus a cheating in personal relationship. Good that I'm not being accused of grand theft auto here, since it's just as close.

LLM usage is accepted, both legally and morally. 10% of world's population is using it daily, how many "written with help of ChatGPT" disclosures you're seeing. There's absolutely no obligation to disclose and I could just as well omit that fact and that wouldn't be wrong doing.

I disclosed it to lower the trust and invite more scrutiny, what I got a blanket statement that turned 300+ hours of work into garbage.

That's more like: "my fiance after 5 years dumped me because I told her I like mayonesse with my french fries". I have no more self-reflection than that.

xlii··on Honesty gets Emacs patch rejected
Hey, just learned that actually this post surfaced.

> ...who does not clearly have the rights

This claim is baseless. As I wrote in the piece and on mailing lists - it's not the 1:1 copy & paste. It was modified and it all boils to question how much of the salt makes a soup a salty one.

e.g.

    - if I put 10.000 words into a prompt and got 500 words out of it, is the author LLM, or me?
    - if I got 50 lines, and modified each single one, is the author LLM, or me?
IANAL - especially in US, but I have my share of experience in navigating copyright law (as most software engineers should do IMO), and I'm confident I could prove my case against the court, which I stated clearly (by claiming authorship).

If someone is curious, here's when I don't claim authorship: https://github.com/mawww/kakoune/pull/5515

xlii··on Software Is Becoming Marketing
While entry barrier might be low, the learning curve become more steep.

E.g. recently I've been porting non-naive app to vibe-code app framework (from engineering managed to product managed).

While I was doing so I had to answer plenty of implication bearing questions but also ask for a very software engineering like pattern. E.g. I had to plan for MIME types unsupported by vendor or use stubbed adapter for the yet unavailable integration connector.

I pulled this straight from my head but boy oh boy I don't wish making this decision without any experience whatsoever.

I'd summarize current situation: building castles on the sand became easier than ever. Good luck with trying to become a tenant there.

xlii··on GLM 5.2 vs. Opus
I have Max access from a friend. It's not about token generation but time-to-first-edit. It tends to think 3-10 minutes before that.
xlii··on GLM 5.2 vs. Opus
I've been checking out GLM 5.2 on some projects and few thoughts on it:

- it takes it sweet time to get code rolling, not the fastest model by any means

- it strays a lot during discovery/planning but then corrects

- it's not steering friendly, as it hallucinates things that it doesn't follow later on

- its output is quite good

A sample use case: I was optimizing rendering on Swift+Zig codebase. It chocked on 5k data entries.

GLM 5.2 spent 20 minutes building the benchmarks and getting data out, which made me frustrated so I blocked non-editing tool access and went AFK, after approx. 30 minutes I found that it used already-made benchmarks and some "conclusions" to optimize 3 choke points. Output pointed that it couldn't validate suspicions and asked for more data.

Implementation worked well, it was idiomatic and non-intrusive. I would even say that it was more idiomatic than GPT 5.5 effects on same repo.

I would opt in in using it more BUT GPT usually completes same requests 5x faster.

GLM 5.2 was spark for preparing and running inside isolated containers with JJ workspaces (so that multiple can be ran in parallel).

xlii··on Bun has an open PR adding shared-memory threads to JavaScriptCore
I wonder if I'm the only one for whom the bun project vanished completely.

In software code is only part of the package. Stability and trust are big part of it, too. And for me 1800 files change PRs created by Anthropic overseen by one person is not necessarily adding to the package.

Even it that'd be the best code and design in the world, I won't use it. I don't trust it.

xlii··on Ask HN: Will programmers write more efficient code during the memory shortage?
No.

Even today it is possible to use languages and programming techniques to be ultra efficient when it comes to memory. It's not that difficult to use them but the world don't care.

Actual example: I have built same utility using Rust, Zig and Haskell (and Go, humorous writeup[0]). Rust binary is 450kb, Haskell binary 30mb. Zig was unfinished but I constrained memory to 512kb just for fun.

Thus it's not about memory per se but more about convenience. Many applications could be scaled by 1-3 degrees of magnitude in memory if they reused techniques but... no one cares.

4K resolution frame is ~40mb uncompressed. Another 10mb is 80k lines of text. Thus fitting in 50mb for 99.8% of applications should be perfectly doable with today's tech.

If the price increase would be per each next 1mb then maaaaaybeeee. But if it's like 100% over GB then I'm sure it won't have any impact.

[0]: https://xlii.space/eng/the-four-language-waltz-a-tale-of-all...

xlii··on GPT-5.5 hallucinates 3x more than MIT-licensed GLM-5.2
My anecdotal experience differs (though I hold ground that LLM evaluations are highly subjective and benchmarks are just as useful for LLMs as they are for dating websites users).

GLM 5.2 tends to stray way more than and 5.1. It also hallucinates you things subtly: morphs requirements, makes unfounded conclusions. This output is not something I experienced in any model I seen so far.

In coding it's especially annoying because it steers whole request. E.g. I give instruction: "make we a Rust-WASM-Canvas app" and GLM 5.2 goes like "Oh user surely doesn't mean that. I'll better build Dioxus app instead".

xlii··on Apple Intelligence may become mandatory in iOS and macOS 27
*not in EU

;)

xlii··on Running local models is good now
> I use a lot of local models and they're still pretty painful to run locally.

This really depends on how and what you're using. e.g. I can't suffer through slowness of inference on Macbook but I have gaming rig with quite powerful GPU and I squeeze ~130 t/s on Gemma or ~70t/s on Qwen.

Tuning is not optional as well. Qwen on temperatures > 0.5 is unusable for coding and I found sweet spot around 0.32 for coding. Speculative decoding on Gemma4 26B is a 30t/s difference between non-speculative.

The worst thing with local models is that I can't just give you a recipe, because what's the best params depends on your use case.

In the nutshell I'd compare local models to running game rig on Windows vs Linux. Linux works great if not better than Windows gaming, but you need to embrace some tweaking in order to get there. Is it there? It's not SOTA, that's for sure, but it's working reasonably well.

xlii··on What job interviews taught me about Kubernetes
"Only a Sith deals in absolutes" ;-)

I mostly agree it's an area that's risky to wander into mindlessly but it is much more easier to validate knowledge than to practice it.

E.g. I can't write Chinese but can validate if piece of Chinese is a valid one (by feeding to N translators, other LLMs or asking a friend who knows Chinese).

Under assumption of "LLM output is false until proven otherwise" it's not a bad approach and worked for me in various scenarios. (E.g. I asked for implementation of algorithm in Rust and then validated it against base definition).

xlii··on What job interviews taught me about Kubernetes
I'm sorry to read that.

Unfortunately it's an industry wide problem, and it touches many areas and levels of expertise. Some believed that AI can drop costs and compressed job spaces.

It starts to bounce off but it's not back to - what I could fall - normal baseline.

xlii··on What job interviews taught me about Kubernetes
One year ago I might agree that Kubernetes is an overkill but today?

Ask your favorite GPT to generate manifests, get primary app into cluster with telepresence or execute straight from container and switch contexts and clusters like it's 90s again.

One reason I dislike Docker Compose and Docker is lack of isolation. Yes sure if you put your arm deep enough you can get it, but on local k8s I can spin cluster per workspace and not worry about conflicting ports between PostgreSQL instances.

Before LLMs writing consistent YAMLs was PITA but today on low/development scale it's pretty much free lunch.

xlii··on What happened to nerds?
You listen to the Radio Channel you picked. I understand the complaint, though it's like a complain that nerds featured in Cosmopolitan aren't as nerdy as they were.

Musk for me was never a nerd. Many "founders" aren't nerds for me. In the end, I wouldn't classify anyone who is "money" first as a nerd - to me they are businessmen (and businesswomen) in their core.

Want to see "the lost nerds"? Here, on HN there are many very high-profile nerds. People who built the internet and the most popular tools exchanging insight and jokes over posts. Many founders who aren't loud, who aren't about PR.

So - nothing happened. Author looks for them in wrong places.

xlii··on Firewood Splitting Simulator
This is fun. I checked other screen toys by the author, but sadly they aren't as amusing as this one.

The animated gif on the bottom of the list though :D

xlii··on Firewood Splitting Simulator
TIL about existence of (non-game like) mauls and that they might be used for splitting firewood.
xlii··on Show HN: Kage – Shadow any website to a single binary for offline viewing
> No tracking, no network calls, no surprises.

Won't comment on a project (though idea seems interesting) but this in README is a tell for me ;)

← PreviousPage 3 of 22Next →