HN user

jdashg

889 karma
Posts2
Comments332
View on HN

As a VRChat regular, Meta's VR world efforts have been hilarious every step of the way. So long and thanks for all the headsets! :)

Maybe not everything has to be the next big thing for everyone. Maybe it's valuable for smaller companies or sovereign divisions to find niche markets, and simply build products and services for modest profits for strong customer bases that will never hit hypergrowth. (And are therefore resistant to the cancerous financialization that hypergrowth invites/incites)

I hope they figure out how to make a modest but steady profit making headsets still. The Quest Pro is still my favorite headset, ever since I ditched the awful controllers and went back to Index controllers.

Then again, the Steam Frame is likely to deliver us from this reliance, though it would be really nice to keep having budget headset options.

You are not allowed to discard the more reliable source, but you're excused from, and basically forbidden from, asking for more info or for info from third parties.

We all demand Windows but without ads, but that doesn't cause the market to spit one out. The OS market isn't a healthy market, and government is stepping in here in part because of that market failure to provide a satisfactory solution here.

2A just says that if the e.g. client request headers say the age bracket, the server (dev) can trust the reported age, but also shall not ignore it on purpose. No "just ignore the do-not-track flag" escape hatch here. "A bartender can't willfully refuse to check someone's ID if they are presented with it."

For incorrect OS answers, keep reading. 3B covers what happens if there's clear and convincing evidence that the age covered in 2A is inaccurate. (Reported profile birthday, for instance) This is "if someone shows a bartender a valid drinking-age ID but says they're celebrating their 17th birthday, this can't be ignored".

I read Hyperion and I found it... alright, just not my thing. Maybe it is indeed a masterpiece but "that every fan of sci-fi ought to have read" oversells it. I honestly can't conscion the time to read the rest of the Cantos versus other things on my reading list. Quality does not alone compel consumption! :)

We literally have to be willing to get taken advantage of sometimes, and we have to come down hard on the "don't hate the player, hate the game" f-you-got-mine assholes.

It is not weakness, but strength, to make yourself (reasonably!) vulnerable to being taken advantage of. It is not strength, but weakness, to let bad behavior happen around you. You don't have to do everything, but you have to do something, or nothing changes.

We gotta spend less time explaining away (and tacitly excusing) bad behavior as unfortunate game theory, and more time coming down hard on people who violate trust.

Ante trust gladly, but come down hard on defectors.

No Graphics API 7 months ago

And the GPU API cycle of life and death continues!

I was an only-half-joking champion of ditching vertex attrib bindings when we were drafting WebGPU and WGSL, because it's a really nice simplification, but it was felt that would be too much of a departure from existing APIs. (Spending too many of our "Innovation Tokens" on something that would cause dev friction in the beginning)

In WGSL we tried (for a while?) to build language features as "sugar" when we could. You don't have to guess what order or scope a `for` loop uses when we just spec how it desugars into a simpler, more explicit (but more verbose) core form/dialect of the language.

That said, this powerpoint-driven-development flex knocks this back a whole seriousness and earnestness tier and a half: > My prototype API fits in one screen: 150 lines of code. The blog post is titled “No Graphics API”. That’s obviously an impossible goal today, but we got close enough. WebGPU has a smaller feature set and features a ~2700 line API (Emscripten C header).

Try to zoom out on the API and fit those *160* lines on one screen! My browser gives up at 30%, and I am still only seeing 127. This is just dishonesty, and we do not need more of this kind of puffery in the world.

And yeah, it's shorter because it is a toy PoC, even if one I enjoyed seeing someone else's take on it. Among other things, the author pretty dishonestly elides the number of lines the enums would take up. (A texture/data format enum on one line? That's one whole additional Pinocchio right there!)

I took WebGPU.webidl and did a quick pass through removing some of the biggest misses of this API (queries, timers, device loss, errors in general, shader introspection, feature detection) and some of the irrelevant parts (anything touching canvas, external textures), and immediately got it down to 241 declarations.

This kind of dishonest puffery holds back an otherwise interesting article.

I did indeed play in the era LanceH is talking about, and I agree with them! We had many thriving communities with no serious cheating problems because of community moderation.

Yes, there were poorly moderated servers, but you could simply leave and try a different community until you found one that clicked for you. When you require equal moderation everywhere, you throw the baby out with the bath water.

Well unfortunately, the device pixel size of something does actually depend not just on the css size and dpr scaling, but also on position and iirc even potentially what else is on the page due to think like border and thin line dilation. Unfortunately that's just how css layout works in practice, due to pixel snapping and dealing with ambiguities in how to render thin or generally non-integer-sized elements.

There are two approaches these days though: https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/W...

A bunch of my friends in VRChat dropped $1500 or so on Bigscreen Beyond 2e orders earlier this year, and are ecstatic to finally be receiving their kits. I'm eagerly awaiting my own ship date email in the next few weeks.

The people who are hooked are hooked, but it's in too slow of a growth curve to keep the attention of the hypergrowth omninationals. Inshallah the megacorps remain minor players.

The metaverse is here, for those with headsets to see. But all Meta will be remembered for in VR is sad tech "demos" that turned out faked, and, for a time at least, solid budget wireless headsets.

Mass media is still waiting for faster horses, but the real transhumanists already have one foot out of the physical world. (And sometimes four!)

How it happened internally is irrelevant to whether Facebook is responsible. Deploying systems they do not properly control or understand does not shield against legal or normal responsibilities!

There is a trail of people who signed off on this implementation. It is the fault of one or more people, not machines.

I always thought hacking scenes in sci-fi were unrealistic, but if you're cooking up AI-fortified code lasagna at your endpoints, there are going to be a mishmash of vulnerabilities: Expert robust thought will be spread very thin by the velocity that systemic forces push developers to.

It's about clarity of intent at the call site. Passing by mutable ref looks like `foo`, same as passing by value, but passing mutability of a value by pointer is textually readably different: `&foo`. That's the purpose of the pass by pointer style.

You could choose to textually "tag" passing by mutable ref by passing `&foo` but this can rub people the wrong way, just like chaining pointer outvars with `&out_foo`.

the WebGPU committee had to work backwards to justify

Do you mean to allege "[the Apple delegates to] the WebGPU committee"? Because the committee as a whole has a ton of public minutes that show how strident the opposition to this was. (Probably filed under "This is not a place of honor" :)) I don't even want to re-read what I said at the time. No one involved, literally no one, is happy about that chapter, believe me. We are happy to be shipping something, though.

TOSs aren't nearly as binding as you would think, particularly if a reasonable person would click "agree" yet not at least roughly understand the terms. A general "You release the company from even negligent liability" is just sovereign-citizen-like wishful thinking. This is part of why they include this classic:

If any provision of these Terms is held to be invalid or unenforceable, such provision shall be struck and the remaining provisions shall be enforced to the fullest extent under law.

I'm too much of a transhumanist to understand why, when you can choose to look like anything you could imagine, you would choose to look like your default human self!

There are comfort solutions but if there's nothing compelling enough for you to do so, you probably won't seek them out. (fwiw Globular Cluster is the general solution for Quests!)

I just got a new different headset (Quest Pro, coming from an Index) and I had to figure out how to make it comfortable enough, because you're right that out of the box, they rarely are. (Except Index, which is still one of the best all-around headsets, even years on)

But I figured out a comfort fix because I'm hooked: I'm in VR 10-20 hours a week these days, because I use it to transcend my physical body and hang out with friends around the world. There are even sleep worlds in VRChat where people literally sleep in VR! Also, less intentionally, sometimes you're hanging out and someone passes out on the couch and starts lightly snoring. As above, so below. :)

In some ways, sci-fi is here! It's just, like bars, beaches, or boardgames, not for everyone.