HNHacker News
TopNewBestAskShowJobs

planede

2,063 karma · joined April 21, 2022

submissionscomments
planede··on OpenAI didn’t copy Scarlett Johansson’s voice for ChatGPT, records show
A lot of legal constructs are defined by intent, and intent is always something that is potentially hard to prove.

At most the obviousness should the burden of discovery on them, and if they have no records or witnesses that would demonstrate the intent, then they should be in the clear.

> I would start to collect a LOT of paperwork documenting that the casting selection was done without a hint of bias towards a celebrity's impression.

IMO having records that explicitly mention SJ or Her in any way would be suspicious.

IANAL

planede··on OpenAI didn’t copy Scarlett Johansson’s voice for ChatGPT, records show
I think that reaches too far. Intent should be a defining part of impersonation. IANAL and I don't know what the law says.
planede··on Why not just do simple C++ RAII in C?
> which in this case would simply be appending the namespace name to the identifier

surely not. How do you differentiate these two functions?

  void fooN(void);
  
  namespace N { void foo(void); }
planede··on Why not just do simple C++ RAII in C?
How do you define a buffer overflow?
planede··on Apple supplier Foxconn among firms asked to cut power use in Vietnam
I don't doubt that general heat tolerance isn't real for the healthy part of the population. However the hottest days could hit elderly and unhealthy people especially hard (or even the healthy, if it's especially hot).

> Many people live without AC, and even those with it often won’t use it except for the hottest few days of the year.

That can still make a lot of difference.

planede··on Apple supplier Foxconn among firms asked to cut power use in Vietnam
I speculate, but there might also be a part where simply more people suffered from heat strokes in the past when extreme temperatures occurred. So part of the answer of "how did people live before ACs were invented?" is that some didn't.
planede··on Statement from Scarlett Johansson on the OpenAI "Sky" voice
It's only really about the intent of the voice to sound like the original. Reaching out to the originals first implies intent, so it makes the case easier.

It would be harder to find a case if they simply just hired someone that sounds similar, but if they did that with the intention to sound like the original that's still impersonation, only it's harder to prove.

If they just happened to hire someone that sounded like the original, then that's fair game IMO.

IANAL

planede··on Statement from Scarlett Johansson on the OpenAI "Sky" voice
Impersonating is defined by intent. "Just find someone who sounds like her" implies intent.
planede··on Statement from Scarlett Johansson on the OpenAI "Sky" voice
Nitpick: it's not copyright, it's personality rights and likeness. It's a violation of it nonetheless.
planede··on Modernizing the AntennaPod Code Structure
Love the data driven approach through graph clustering, instead of jumping into opinionated refactoring.
planede··on CVE-2024-4367 – Arbitrary JavaScript execution in PDF.js
Right. But you also get a recent one if you just use the Mozilla PPA, without snap. Debian sid also ships 126, and I assume the fix should be backported to Firefox LTS, which is used by stable.

I don't see the relevance of snap here.

planede··on C Style: My favorite C programming practices (2014)
Yes, that's the philosophy around the declaration syntax.

The declaration of the pointer ip,

  int *ip;
is intended as a mnemonic; it says that the expression *ip is an int. The syntax of the declaration for a variable mimics the syntax of expressions in which the variable might appear. This reasoning applies to function declarations as well.

K&R C

planede··on Computer scientists invent an efficient new way to count

  return '⊥'
what's this?
planede··on ADSL works over wet string (2017)
Well of course, I assume that's what my ISP is using.
planede··on The Nascar Camera Tech Behind a Historic 0.001s Photo Finish
Well, camera placement matters in the obvious way: it has to be on the finish "line". Where "line" is really a plane extending vertically from the line drawn on the surface.

I vaguely remember an article about a bike race photo finish that showed that this is not a given and reverse engineered where the camera was pointing (based on background) and who the likely winner was.

edit: found it https://www.tglyn.ch/blog/amstel_gold/

planede··on LineageOS is the perfect minimal smartphone for non-tech savvy folk
I recently learned that too. Does that survive OTA updates?
planede··on LineageOS is the perfect minimal smartphone for non-tech savvy folk
MicroG has a LineageOS distribution, they build for all the supported devices by upstream Lineage: https://lineage.microg.org/

That should cover at least the notification side. If I can't bank on a mostly open-source mobile OS than I would rather just not bank on mobile at all. Banking on stock ROM is not an option for me.

planede··on LineageOS is the perfect minimal smartphone for non-tech savvy folk
Google Play is not installed by default, you need to additionally flash it before first booting it.
planede··on Protecting your email address via SVG instead of JavaScript
I think the idea is that email scraper bots typically don't bother downloading images referenced by <img> tags.
planede··on Trip C++Now 2024 – think-cell
> BTW. Use the AddressSanitizer. Please! The toolchain improved the usage and safety of the language so much.

In general I agree with the sentiment, use AddressSanitizer in testing/debugging. However it's not meant to be a hardening option, AFAIK, so I advise against using it in production (along with other sanitizers), even if you can live with the performance hit.

planede··on Apple apologizes for iPad 'Crush' ad that 'missed the mark'
It's obviously a lossy compression then.
planede··on Libyear
Is there a JSON parser library that is not under active development?
planede··on UTC, Tai, and Unix Time (2001)
The problem isn't really about handling local time. UTC is an offset from TAI and time zones are offsets from UTC, it's overall really just an offset from TAI. Coordinating the TAI-UTC offset is not any worse than coordinating time zone offsets.

The complications are around clocks, UNIX timestamp and NTP, where a steadily and monotonously increasing number would make the most sense, and that's not UTC.

planede··on Libyear
Maybe anything so simple that it can be considered "done" shouldn't really be an external dependency in the first place.
planede··on UTC, Tai, and Unix Time (2001)
That's what TAI is for. Too bad nobody got the memo and everybody stores and communicates UTC, including computer clocks, UNIX time and NTP.

There will be no more leap seconds after 2035, AFAIK.

planede··on UTC, Tai, and Unix Time (2001)
At least leap seconds will be eliminated by 2035, so there is that. Computers were never good at dealing with it. Keeping computer clocks in UTC instead of TAI and rewinding it for leap seconds was always insane. The same goes for UNIX time and NTP.
planede··on Libyear
I don't think that lines of code is a good metric here. A few lines of code can fix a major security issue in parts of a dependency that you actually use, while thousands of lines of code can just add new features that you are not using anyway, otherwise you would have upgraded already.
planede··on Libyear
Agreed. If the dependency is under active development then it should be only counted as being behind if there is a newer version released for that dependency. The libyear should be calculated as "latest version's release date" - "currently used version's release date".

What complicates this is deciding whether the dependency is under active development or not. If its EOL'd then you still want libyear to accumulate, even if you use the latest released version. I guess comparing to an end-of-life date then would make sense, but it's probably harder keep track of.

planede··on The C++ Iceberg
yeah, thanks! I added an edit.
planede··on The C++ Iceberg
Technically the array subscript example is UB even before the dereference. a[1][7] is equivalent to `*(a[1] + 7)` and a[1] + 7 itself is UB.

(6.5.7) Additive operators

> If the pointer operand and the result do not point to elements of the same array object or one past the last element of the array object, the behavior is undefined.

Interestingly a[1][5] is also UB, but for the dereferencing a past-the-end pointer, not for the arithmetic.

Page 1 of 24Next →