HN user

ladon86

2,273 karma
Posts14
Comments338
View on HN

It's not possible to smoothly move your eyes unless you are tracking a moving object. Your eyes always move in saccades (quick jerky movements), unless there is a smoothly moving object, in which case your eyes gain the ability to track it smoothly.

https://www.shadertoy.com/view/tXSBWt

Here is a version with a smoothly moving red circle; notice how you can now move your eyes smoothly around the screen as you track the circle.

They don’t always grant refunds for App Store purchases, I’ve heard from many customers whose refund requests were denied after we referred them to Apple. As a developer I would love to be able to refund them myself, but we can’t refund IAPs at all, it’s entirely up to Apple.

If the customer requests too many refunds (say 3-4 within a few months) their Apple ID is likely to be banned from making further purchases.

The Quest's Snapdragon GPU, like most mobile GPUs, uses a tiled rendering [1] architecture.

The basic technique for rendering gaussian splats is kryptonite for this architecture, essentially implementing every worse practice for rendering on a mobile GPU:

* Tons of overdraw (overlapping splats)

* Tons of alpha blending

* Millions of splats in the distance generate a lot of tiny triangles resolving to a single pixel

* Long thin splats in the foreground generate triangles that cover multiple tiles

These are all the ingredients you need to bring a mobile GPU to its knees! Any desktop GPU (including most laptops) will be far less sensitive to these issues, even if it's not very powerful. It's a fundamental issue of architecture rather than one of raw FLOPs.

[1] https://en.wikipedia.org/wiki/Tiled_rendering

Again, they don’t drive or steer remotely. What sometimes happens is a multiple choice question is presented to the operator in an ambiguous situation:

<photo of construction zone> Can I drive through here? [Yes] [No]

When this is happening, the car is stopped and lets the passenger know that it’s reaching out for remote help to figure out what to do. For me this has happened two times across my 125 Waymo rides (571 miles) so far, and was resolved in under 20 seconds. Though I must say, 20 seconds feels like ages when you’re in the car and blocking traffic!

It’s pretty surprising that they believed this. The heart is very obviously thumping in your chest, and it’s very easy to notice that the (visible) veins in your wrists, neck and thighs are pulsing at the same rate.

It just seems like a more obvious “center” for an ancient person; the mechanics are so easily detectable from the outside, while the liver sits silently.

Today, iOS users already have the ability to set a third-party web browser — other than Safari — as their default. Reflecting the DMA’s requirements, Apple is also introducing a new choice screen that will surface when users first open Safari in iOS 17.4 or later. That screen will prompt EU users to choose a default browser from a list of options.

Any idea if this means you can actually choose a different browser, or are you choosing a different WebKit wrapper (e.g. the current version of Chrome on iOS)?

I much prefer the handheld scanner method, in which you scan while you shop. This used to be more widespread in the UK before self checkout took over. I seem to remember it being launched in the late 2000s?

Advantages:

1) Your scanning labor is spread out across your entire visit

2) No need to unload and bag everything at the end

3) You can see a running price total

Is that last point the reason why supermarkets moved away from them? Because they don’t want you to budget in realtime?

Based on the article it sounds like Apple would default to their _own_ search engine, which they would bundle with their browser, which is the only browser option on their OS, which is the only OS option on their smartphone, the sales of which generate 85% of all profits in the global smartphone sector.

Unclear if Google would still be allowed to default to Google search on their reskinned version of Apple’s browser (branded as “Chrome”, even though it isn’t). But that’s mostly up to Apple, since they write the rules for the App Store, the only way to install software on Apple’s OS. Google might have to maintain their $45bn/year tribute for that privilege.

Using the likeness in perpetuity is insane.

I think this could be fair for background actors _if_ it was scoped to a single project.

Come in, get scanned, maybe do some mannerism mocap and then get the negotiated day rate. The rate for a single day should be higher than it is currently, but still less than the studio currently pays for multiple days of background work.

This would be closer to a win-win: the background actor gets paid more money for fewer hours of work, and the studio spends less money overall on background actors.

When writing a game in JS, it’s very important to minimize garbage collection - too much will cause periodic stuttering and freezes. To avoid GC you want to minimize runtime allocations and mostly allocate upfront and reuse that memory.

One way is to use object pooling, but doing so in JS can be brittle because you have to remember to manually call `Pool.release(obj)`, `obj.free()` or whatever method you’ve chosen to return an object to the pool.

If a developer forgets to do this, you could exhaust the object pool, or if it’s growable, cause a memory leak! In a game’s update loop that could happen very quickly.

With this new feature, you could grab a short-lived object from the pool and automatically return it to the pool at the end of the method or loop.

Example - imagine this is inside an update method called 60 times per second:

  for (const enemy of enemies) {
    using pos = Pool.getVec3();

    // do stuff with pos

    enemy.setPosition(pos);
  } // pos is returned to pool automatically  

You asked about try/catch/finally. The downsides for this use-case are:

* Big performance hit when you use it in a hot loop like this - the disposal could be happening ~10,000 times per second.

* Harder to remember to fill all your loops with try…finally, ugly to have double braces anytime you’re using a pooled object.

* It’s an abuse of syntax if you’re not actually catching any error.

It’s a continuation of the trend that led to them removing Extended Validation indicators: https://duo.com/decipher/chrome-and-firefox-removing-ev-cert...

Here’s how they used to appear: https://pbs.twimg.com/media/EBxdA7EWsAIQtc0.jpg

While I buy the reasoning that consumers simply ignore them, EV indicators would be really useful in a corporate setting to mitigate phishing attempts against employees. It’s much easier to train employees to “look for your company’s name in the green bar” before they sign into a site, than to understand how domains work and why login.yourcompany.com is OK but login-yourcompany.com isn’t.

Does anyone know if it’s possible to restore EV indicators in Chrome via MDM software or similar? Does anyone work at a company that does this?

Having every column as a boolean (0/1) means you can treat it as a bitmap. As an (entirely fictional) example, imagine if you wanted to get the features of a thread instead of a single tweet. You could do it as a union of all the tweets:

threadFeatures = tweet1 | tweet2 | tweet2

Google denies doing it

Read their statement carefully and it's actually not a denial of the allegation.

But Google is firmly and clearly denying the data was used: “Bard is not trained on any data from ShareGPT or ChatGPT,” spokesperson Chris Pappas tells The Verge

* Allegation: Google used ShareGPT to train Bard.

* Rebuttal: The current production version of Bard is not trained on ShareGPT data

Both things can be true:

* Google did use ShareGPT to train Bard

* Bard is not currently trained on any data from ShareGPT or ChatGPT.

It depends on what the meaning of is is ;)

(2) CONTROLLING HOLDING.—The term “controlling holding” means a holding with the power, whether direct or indirect and whether exercised or not exercised, to determine, direct, or decide important matters affecting an entity.

Exactly - by redefining the common meaning of 'controlling holding' to remove any notion of majority stake or voting rights, this definition would apply to any average shareholder who votes in an annual meeting.

From Wikipedia:

A controlling interest is an ownership interest in a corporation with enough voting stock shares to prevail in any stockholders' motion. A majority of voting shares (over 50%) is always a controlling interest. When a party holds less than the majority of the voting shares, other present circumstances can be considered to determine whether that party is still considered to hold a controlling ownership interest

I'm sure the SEC has an even tighter definition of 'controlling interest' than this, and the bill could have used that definition, but instead it defines a new one.

As above, there’s no mention of this being limited only to a controlling interest. So, going only by the text of the bill, it _would_ apply to reddit.

In practice it might not be enforced that way, but the bill _would_ allow enforcement against reddit. I wouldn’t expect that to mean “Reddit CEO sent to jail”, I would guess the idea is to reserve the ability to force Chinese divestment from basically any tech company in future.

I disagree with the Chrome comment, but how about decoupling Mobile Safari upgrades from OS upgrades?

It would be nice for all users to get access to these new APIs via a simple app update. This would allow developers to actually start using them within days/months rather than years.