HNHacker News
TopNewBestAskShowJobs

EdwardDiego

10,888 karma · joined September 25, 2013

submissionscomments
EdwardDiego··on JavaScript Just Leveled Up: ES2025 – You'll Fall in Love With
<arrow in target emoji> You nailed it!

People have got to start prompting their LLMs to stop with the goddamn emoji.

EdwardDiego··on JavaScript Just Leveled Up: ES2025 – You'll Fall in Love With
> You’ll Fall in Love With

I'm going to press Circle to Doubt.

Oh look, every section header starts with an emoji. Gee, wonder who wrote this.

That said, it is nice that they finally borrowed the pipe-forward operator from the ML languages. Record and tuple syntax is gross though.

EdwardDiego··on Game design is simple
Back in the day, I loved the cutscenes Privateer II (starring a very young Clive Owen from Children of Men (I believe) as aforementioned privateer, bless) included, not the ones with any people acting very badly in them, but the rendered cutscenes that played the first time you arrived at a new planet or spaceport, that showed you, hey, this place is a different place.

I played that in my teens, and 30 years later, I can still remember the name of the peaceful agricultural planet that had blimps as their main form of transportation - Bex.

Why? Because the cutscene played and I was like "Wow, look at this place, this is nothing like New Detroit".

And it didn't make you (IIRC) watch the cutscenes. Every. Damn. Time you landed thereafter.

EdwardDiego··on Game design is simple
> And let me also reject the implicit notion that stories are entertainment but not, academically speaking, fun.

Stories are obviously fun, otherwise no-one would read books, but a story that you interact with meaningfully, that you can change significantly, really hard to do well.

Like every game where you can do good thing or bad thing, and the game punishes you for doing bad thing. It's really hard to write a compelling story where a nasty piece of shit still somehow saves the Fantasy Kingdom from the Prophesised Doom and becomes the hero.

I honestly cant't think of any good examples where game mechanics and stories interacted in a way that gave you significant agency while still being fun. I'd love to be given contra-examples though.

I think of the Mass Effect games and their attempts at this, "Oh you were only 92% Paragon, so now we're at the end, _this_ crew-member has to die for some reason, if only you'd known that 30 hours of gameplay ago when you punched that grifter in the Citadel!"

Or one I still bear a massive, MASSIVE grudge against, Fable III, where if you didn't massively grind for resources before the bit you thought was the end-game - where you fought and defeated the evil oppressive king, you found yourself making ridiculously stupid binary decisions like "Should this multi-storey building be used as an orphanage? Or as a whore-house?" That's literally one of the decisions you had to make. Oh, and the game made sure to tell you "Btw, because you didn't grind enough, if you choose the way that earns less money, EVERY ONE DIES BECAUSE YOU WANTED TO HELP THE ORPHANS."

It was an interesting attempt, to be sure, a brave experiment but I resented the game so much for the heel turn it pulled - "Actually, the evil oppressive money grubbing king you overthrew was RIGHT! Now you have to do what he was doing! Mwahahaha! Irony!"

Worst of all, it never let me make nuanced choices - why can't it be orphans downstairs, sex workers upstairs, and during the daytime, I pay the sex-workers to look after the orphans? Nope, it was either "look after the innocent children" or "four floors of whores". Complete with animations of crying children if you chose sex-workers. Or crying sex-workers if you chose the children. Once again, not kidding.

Once you knew the heel-turn twist, you could game it massively beforehand, one of the best strategies was to buy properties, become an incredibly oppressive landlord by demanding extortionate rents, so when it came time for the "orphans/whores" decisions, you had so much money you could could choose the good path and everyone declared you a saint.

But I felt so disrespected by the game that I didn't even bother.

That's the problem - good stories need direction towards a satisfying end, and it's really hard to give a player agency in a good narrative, and so I felt railroaded into comically absurd black/white choices.

Honestly, I think the only games that have ever done the good/evil choices in a story well were the Knights of The Old Republic series, but once again, it stopped being so much fun when I had to keep on being evil because I'd chosen evil stuff prior.

Can't I just be evil today, and maybe a bit nice tomorrow? After all, the best villains are the mercurial ones.

EdwardDiego··on Erlang Meets Idris: Cure Programming Language
I'm talking about this kinda style...

* <Arrow hitting target emoji> 15 compiled libraries!

* <green tick> Works on my machine

* <red cross> No ARM support.

None of which are at the end of a statement. So, I'm not sure who you're replying to.

Incidentally, I recently reviewed a PR heavily written by Cursor that had statements like this.

    logger.info("<magnifying glass emoji> DEBUG: {actual message")
And then CursorBot reviewed it and flagged the emojis as indicative of "debugging statements not suitable for production".

Which made me laugh, loudly, and only somewhat sadly, Cursor added the emojis, Cursor then flagged them as not appropriate in prod code.

But CursorBot missed the obvious problem with

    logger.info("DEBUG: ...")
EdwardDiego··on Erlang Meets Idris: Cure Programming Language
Emojis make it look LLM af.
EdwardDiego··on Ask HN: How to deal with long vibe-coded PRs?
I wrote a lot of comments - for humans, but then I also specifically addressed some to the bot - "Cursor, remove all emojis in log messages, and do not use print for debugging, use a logger, where you are using a logger you are repeatedly importing the logging library in various conditional clauses, you should always import at the top level of the file" etc. etc. etc. - because you know that they're going to feed my review back to the bot.

The fact that someone submitted this PR in that state though...

EdwardDiego··on ANTML: Anthropic’s Markup Language
But will v1.0 parse the country code for Norway as a boolean? If not, get out of here, you amateur.
EdwardDiego··on ANTML: Anthropic’s Markup Language
That sounds familiar. Almost like... XML, with namespaces!

Glad it has a new acronym to prevent any confusion.

EdwardDiego··on A change of address led to our Wise accounts being shut down
What do you mean possibly?

I checked the DNS records, then the Companies Office register of all companies the blogger is a director and/or shareholder of.

And it's his personal blog considering it's on the domain name of <first-name>.<country-code>.

Not sure why you're so certain that it must be a dubious company.

EdwardDiego··on A change of address led to our Wise accounts being shut down
One of. Also runs card payment systems and business networking consulting. The blogger is focused on his small local market.
EdwardDiego··on A change of address led to our Wise accounts being shut down
Yep, small is correct, the blogger's companies are all focused on South Canterbury and headquartered in Timaru (for non-Kiwis, 55K people live in South Canterbury, and 29K of them live in Timaru. Massive shit-ton of cows though).
EdwardDiego··on A change of address led to our Wise accounts being shut down
Based on the DNS records, and the Companies Office website, the blogger owns several companies.

https://www.vetta.online/

https://aorangieftpos.nz/

https://www.reliance.net.nz/

Business networking, local ISP, card payment solutions, basically. Given the blog posts about cPanel and Outlook, it tracks.

I note that the blogger lives in a small town in the South Island, so likely is focused on the local market.

EdwardDiego··on A change of address led to our Wise accounts being shut down
Wise will need to have a corporate presence here to operate here, so depending on the amount (whether it be USD or EUR or NZD), this business can take them to the Disputes Tribunal or if >$30K (NZD), the district court.
EdwardDiego··on A change of address led to our Wise accounts being shut down
Some of the support emails read like ChatGPT tbh.
EdwardDiego··on Kafka is Fast – I'll use Postgres
Or you can just store your next offset in a DB and tell the consumer to read from that offset - the Kafka offset storage topic is a convenient implementation of the most common usage pattern, but it's not mandatory to use - and again, the broker doesn't do anything with that information when serving you data.

Acking in an MQ is very different.

EdwardDiego··on Kafka is Fast – I'll use Postgres
Even though I'm a few years on from Red Hat, I still really recommend Strimzi. I think the best way to describe it is "a sorta managed Kafka". It'll make things that are hard in self-managed Kafka (like rolling upgrades) easy as.
EdwardDiego··on Kafka is Fast – I'll use Postgres
Exactly. There's no concept in Kafka (yet...) of "acking" or DLQs, Kafka is very good at what it does by being deliberately stupid, it knows nothing about your messages or who has consumed them and who hasn't.

That was all deliberately pushed onto consumers to manage to achieve scale.

EdwardDiego··on Kafka is Fast – I'll use Postgres
Good on you for being fair in this discussion :)
EdwardDiego··on Kafka is Fast – I'll use Postgres
I'm wondering why there wasn't any push for the Kafka guy to share his knowledge within his team, or to other teams?
EdwardDiego··on Kafka is Fast – I'll use Postgres
Just use Strimzi if you're in a K8s world (disclosure used to work on Strimzi for RH, but I still think it's far better than Helm charts or fully self-managed, and far cheaper than fully managed).
EdwardDiego··on Kafka is Fast – I'll use Postgres
Exactly. Or worse, you treat one as a straightforward black box swap in replacement for another. If you're looking to scale, you _will_ need to code to the idiosyncraties of your chosen solution.
EdwardDiego··on Kafka is Fast – I'll use Postgres
I've always said, don't even think about Kafka until you're into MiB/s territory.

It's a complex piece of software that solves a complex problem, but there's many trade-offs, so only use it when you need to.

EdwardDiego··on Kafka is Fast – I'll use Postgres
Depends on how you configure the clients, ask me how I know that using a K8s pod id in a consumer group id is a really bad idea - or how setting batch size to 1 and linger to 0 is a really bad idea - the former blows up disk (all those unique consumer groups cause the backing topic to consume a lot of space, as the topic is by default only compacted) and the latter thrashes request handler CPU time.
EdwardDiego··on Kafka is Fast – I'll use Postgres
Which is crazy, because Kafka is like olllld compared to competing tech like Pulsar and RedPanda. I'm trying to remember what year I started using v0.8, it was probably mid-late 2010s?
EdwardDiego··on Kafka is Fast – I'll use Postgres
Semantic but important point, Kafka is not a queue, it's a distributed append only log. I deal with so many people who think it's a super-scalable replacement for an MQ, and it's such the wrong way to think about it.
EdwardDiego··on This World of Ours (2014) [pdf]
Because it's a funny rant.
EdwardDiego··on A bug that taught me more about PyTorch than years of using it
Kudos to Elana for a) such a thorough deep dive and b) a great write-up of it. I understand very little about ML libraries, but was able to follow this easily :)
EdwardDiego··on SARS-CoV-2 mRNA vaccines sensitize tumours to immune checkpoint blockade
This is really interesting, hope it leads to further novel treatments.
EdwardDiego··on Armed police swarm student after AI mistakes bag of Doritos for a weapon
And it feels like they missed the "human in the loop" bit. One day this company is likely to find itself on the end of a wrongful death lawsuit.
← PreviousPage 11 of 34Next →