HNHacker News
TopNewBestAskShowJobs

joosters

15,155 karma · joined February 4, 2013

submissionscomments
joosters··on DraftKings Is Using AI to Behaviorally Target Chronic Gamblers
Why would you even need AI to target losing customers? It's easy enough to identify them without anything clever: just look at their PnL or EV.
joosters··on On Rendering Diffs
I was hoping that this would talk more about the logic behind generating a diff, rather than the optimisations involved in rendering the text.

IMO (as someone who doesn't have to deal with the actual rendering) it would go a bit deeper into talking about deciding how to show what has changed. There's a lot of improvements that could be made there. e.g. "whitespace has changed here" so there's no real code changes involved.

Or "this big list of imports has changed, and code formatting has line-wrapped the list into different lines" - gitlab for example copes poorly with this. I'd love to just see a clean diff that highlights the additional import, and not just ten lines of changes caused by adding one line to a big list of imported symbols/functions.

joosters··on The operating cost of adult and gambling startups
I think the more relevant point is:

But almost all social networks and search engines won’t let you advertise without a license from the required jurisdiction.

Which is a good thing! This is an area full of scammers, if you can't set up your business legally, I'm very happy to hear it's more difficult for you to advertise it.

joosters··on Android now stops you sharing your location in photos
It's really annoying. I have a sudoku game on my phone, works great but give it internet access and it's suddenly full of sketchy adverts.

If I'm playing it on my commute, it's usable with mobile data disabled for the app. But when the train stops in a station long enough to auto-connect to wifi, immediate full screen adverts :(

joosters··on The Oxford Comma – Why and Why Not (2024)
Lionel Hutz

Works on contingency

No money down

Always the best example for missing punctuation!

joosters··on Parallel Perl – Autoparallelizing interpreter with JIT
Awesome to see a perl JIT. I love perl, and it's exciting to see something that tries to offer good-enough compatibility to run most perl code.
joosters··on How important was the Battle of Hastings?
https://archive.org/details/1066allthat00walt/page/n5/mode/2... for anyone who'd like to read it.

Embarassingly for me, while the book advertises that it contains '2 genuine dates', 1066 is the only one I can remember.

joosters··on Hacker News.love – 22 projects Hacker News didn't love
Re: OpenClaw in particular, I had never realised that simply getting lots of stars on Github meant that your project was actually a success...
joosters··on C Is Best (2025)
From the parent comment:

because of OS-level overcommit, which is nearly always a good thing

It doesn't matter about the language you are writing in, because your OS can tell you that the allocation succeeded, but when you come to use it, only then do you find out that the memory isn't there.

joosters··on Oxford loses top 3 university ranking in the UK
Oxbridge have never had to 'let in dumber people'. They are always heavily over-subscribed, and give offers to a small fraction of the people who come for an interview, let alone apply.

The whole point of the interview process is to assess not just the applicant's past achievements, but what they might be able to achieve if they got their place at the uni. Part of that is looking at the applicant's background, and knowing that even if they aren't currently at some elite high-fee school, they might still have the ability and capability to do well.

I am all in favor of this style of selection. The dark old days of "this kid's dad went to our college, we should do them a favour and let them in" are long gone, thankfully.

Can you point to any kind of evidence that Oxbridge are dumbing down their teaching, or lowering their standards of teaching? I doubt it.

Full disclosure: cambridge alumni, from a state school!

joosters··on Cloudflare to introduce pay-per-crawl for AI bots
You can tell the difference between the two by checking if the Evil bit is set in the corresponding IP packet - RFC 3514 already standardised this.
joosters··on Show HN: We made a photo search engine for homes for sale
Improvement suggestion: Keep the search text in the search field when you show the results. The 'what are you looking for' box gets cleared when you show the results, it would be nicer if the search text was kept so that you could tweak it.
joosters··on Show HN: We made a photo search engine for homes for sale
"Floor to ceiling libraries with a ladder"

Does that mean it excludes most of the results from "Floor to ceiling libraries without a ladder"?

You know, if I'm buying a house, I think I can supply my own ladder separately...

Less pedantically, what I'm trying to say is: are you really sure these are the kinds of searches that home buyers are really looking for? "Home in london, under £1m, with big beautiful windows" - I suspect that most London buyers are going to care an awful lot about where in London the house is, a city-wide search isn't going to be useful to most. Maybe your functionality (as presented) won't inspire actual buyers.

Speaking of which, that might be a way to improve it - combine with location & mapping data to figure out nearby transport, services, schools, etc...

joosters··on Solving the Mystery of ARM7TDMI Multiply Carry Flag
I think I misread your tone, sorry.

It's a good article though, the explanation of how multiplies work is nicely written.

joosters··on Solving the Mystery of ARM7TDMI Multiply Carry Flag
But it is (or was originally) used in lots of places, not just jump tables, generally to do relative addressing, for example when you want to refer to data nearby, e.g.

ADD r0, r15, #200

LDR r1, [r15, #-100]

etc

joosters··on Solving the Mystery of ARM7TDMI Multiply Carry Flag
Yeah, it was that way for all previous ARM processors too, for exactly that reason. Adding special cases would have increased the transistor count, for no great benefit.

The only downside was that it exposed internal details of the pipelining IIRC. In the ARM2, a read of the PC would give the current instruction's location + 8, rather than its actual location, because by the time the instruction 'took place' the PC had moved on. So if/when you change the pipelining for future processors, you either make older code break, or have to special case the current behaviour of returning +8.

Anyway, I don't like their reaction. What they mean is 'this decision makes writing an emulator more tricky' but the author decides that this makes the chip designers stupid. If the author's reaction to problems is 'the chip designers were stupid and wrong, I'll write a blog post insulting them' then the problem is with the author.

joosters··on Own Constant Folder in C/C++
Is this really C++ specific though? It seems like the optimisations are happening on a lower level, and so would 'infect' other languages too.

Whatever the language, at some point in performance tweaking you will end up having to look at the assembly produced by your compiler, and discovering all kinds of surprises.

joosters··on Ruby's Timeout is dangerous and Thread.raise is terrifying (2015)
Your comment boils down to 'all code should be perfect'. Which is a lovely request, but doesn't really help.

In particular, I'd challenge you to find one large program that handles OOM situations 100% correctly, especially since most code runs atop an OS configured to over-allocate memory. But even if it wasn't, I doubt there's any sizeable codebase that handles every memory allocation failure correctly and gracefully.

joosters··on Got an old Raspberry Pi spare? Try RISC OS. It is, something else
Can we at least upgrade the fonts, colors, and negative space to make it look more 2020s?

Of course YOU can, it's open source, feel free to hack away at it.

joosters··on ETag and HTTP Caching
I've not seen a very convincing use-case for ETags vs Last-Modified date caching.

In the example request, the server still has to do all of the work generating the page, in order to calculate the ETag and then determine whether or not the page has changed. In most situations, it's simpler to have timestamps to compare against, because that gives the server a faster way to spot unmodified data.

e.g. you get a HTTP request for some data that you know is sourced from a particular file, or a DB table. If the client sends a If-Modified-Since (or whatever the header name is), you have a good chance to be able to check the modified time of the data source before doing any complicated data processing, and are able to send back a not modified response sooner.

joosters··on Deficiencies in GCC's code generator and optimiser
Thousands of words written about how, specifically, gcc produces poor slow code ('the application users' time is more valuable than their time') and yet the article never tries to measure how slow or fast any of their examples are.

I mean, maybe it is true that gcc is bad, maybe it isn't, but complaining that a function takes 27 bytes and it could have been written in 25 is missing the point entirely when you are asking for speed. Does it run fast or not?

joosters··on Dracula's Biggest Mistake
But Dracula was defeated by being decapitated and stabbed in the heart. I do hope religion isn't claiming those as their own!

FWIW, I like the concept in the book 'I Am Legend' where the vampires are repelled by religious symbols that are meaningful to them, rather than any religion in particular.

joosters··on ExifTool CVE-2021-22204 – Arbitrary Code Execution (2021)
The meaning of ^ and $ in perl regexes can be altered by modifiers at the end of the regex. A 'multi-line' regex, with a /m at the end, makes them match the start and end of any line.
joosters··on The horse, the drone, and the fight for gambling success (2021)
One angle that isn't mentioned in the article is that there are companies that now stream live GNSS/GPS data from horse races, so the drone users are competing against 'official' feeds of in-running data, e.g. https://www.totalperformancedata.com/

This is a clever move from the racetracks: they can sell this data, there are customers for it, and it saves them from fruitlessly trying to stop the drones.

However, the data is expensive, and if you are buying it then you are going to be competing against the other buyers of it, who will be trying to place the same bets as you, so the edge isn't going to be too great. Kind of like HFT, where everyone races to keep up with the technology spending of their competitors.

joosters··on The horse, the drone, and the fight for gambling success (2021)
They can't stop you doing that, and I've been to races years ago where people were on their mobile bellowing out a horse number to their mate on the other end, who is sitting ready to place a bet on the supposed winner. But that's not a very fine-grained way to bet, it relies on the person on the track getting things exactly right and having the correct viewing position at the critical moment.

However, people courtsiding in tennis matches have been kicked out - and in some places, they've tried arresting them: https://www.bbc.co.uk/news/magazine-32402945

joosters··on The horse, the drone, and the fight for gambling success (2021)
1. You won't get as good and clear view from the stands, and the betting is going on throughout the race, not just at the end where you might have a clear-ish view. You could sit in the stands and point your phone at the big screen TVs showing the race to the crowd, but that stream is delayed somewhat anyway, losing you some advantage.

2. He might be selling the footage, but doesn't want to admit to doing so (since that would be more likely to get him into trouble)

joosters··on Hacking into an insurance company by exploiting their premium calculator
I would guess that they have looked at lots of apps, it’s kind of what a security researcher does.
joosters··on Web CGI programs aren't particularly slow these days
True enough, but that never stops people from reimplementing technologies badly, then working on speeding up their new solution...
joosters··on Web CGI programs aren't particularly slow these days
FastCGI was feature complete decades ago, there's little development needed for shiny new features.
joosters··on Hard disk LEDs and noisy machines
Ah, such rose-tinted glasses!

My first PC - much like the one pictured in the story, had a fan that was spinning 100% of the time, because most PCs then were too primitive to have a temperature sensor that controlled fan speed. And you couldn't hear the hard drive because the fan was so noisy. So much for these performance indicators!

The only thing audible above the loud PC was when the hard drive died, and spent all its time making nasty mechanical clicking sounds. But since the computer had locked up by that point, it wasn't much of a help!

Page 1 of 34Next →