Live data from Hacker News

John Carmack's arguments against building a custom XR OS at Meta

twitter.com

381–390 of 675 posts

Re: John Carmack's arguments against building a custom XR OS at Meta

#381
post #114

Earlier quoted context omitted.

Modern hardware is just so complicated it would take a long time to completely document, and even longer to write a driver for. That's what's claimed. That's what people say, yet it's just an excuse. I've heard the same sort of excuse people have, after they write a massive codebase, then say "Oops, sorry, didn't get around to documenting it". And no, hardware is not more difficult than software to document. If the s…

> "Oops, sorry, didn't get around to documenting it". That's obviously the wrong message. They should say "Go ask the engineering VP to get us off any other projects for another cycle while we're writing 'satisfying' documentation". Extensive documentation comes at a price few companies are willing to pay (and that's not just a matter of resources. Look at Apple's documentation)

With documentation one of the major hurdles is the maintainance. It is caring for a set of documents, created by people with different specializations, that describe the artefact from specific perspectives, but need to be kept in sync with the active creation and evolution of the artefact itself.

This is not impossible, but the effort and costs required are substantial and often lose out on a priority basis to just fixing or improving the product itself.

Re: John Carmack's arguments against building a custom XR OS at Meta

#382

Earlier quoted context omitted.

Intel still does it. As far as I can see they're the only player in town that provide open, detailed documentation for their high-speed NICs [0]. You can actually write a driver for their 100Gb cards from scratch using their datasheet. Most other vendors would either (1) ignore you, (2) make you sign an NDA or (3) refer you to their poorly documented Linux/BSD driver. Not sure what the situation is for other hardware…

Wow... that PDF is 2,750 pages! There must be an army of technical writers behind it. That is an incredible technical achievement. Real question: Why do you think Intel does this? Does it guarantee a very strong foothold into data center NICs? I am sure competitors would argue two different angles: (1) this PDF shares too much info; some should be hidden behind an NDA, (2) it's too hard to write (and maintain) this P…

Id wager high frequency trading applications.

Re: John Carmack's arguments against building a custom XR OS at Meta

#383

Earlier quoted context omitted.

I always felt that Fuchsia was a make-work program to keep talented kernel engineers away from other companies. Sort of a war by attrition.

That's a weird rumor that I'm not sure I understand. Things are not that complicated.

Microsoft used to legit do this in the 90s. Recruit bus factor 1 employees from competitors by offering them large salaries.

It was much easier to cripple your competition back when there were several orders of magnitude less software engineers in the world.

Re: John Carmack's arguments against building a custom XR OS at Meta

#384

I like that the top reply to Carmack's wall of text is a screenshot of TempleOS with a doodle of an elephant lmao. And ironically, that meme reply is on topic and it says a thousand words with just one photo. Another point I would add in support of that meme comment, is Google's recent rug-pull of Android not allowing sideloading apps from unsigned developers anymore starting this autumn, after over a decade of conqu…

Can you explain the TempleOS meme reply?

I don’t know enough about its history to get the joke.

Re: John Carmack's arguments against building a custom XR OS at Meta

#385
post #112

Earlier quoted context omitted.

The only reason Chinese companies can even get away with these big projects is because of state backing and state objectives. By itself, the market doesn't support a new general-purpose OS at this point.

You're downvoted but you're 100% correct. It makes absolutely zero financial sense to create a new general purpose operating system. That's billions of lines of code. With a B. And that's just the code - getting it to work with hardware? Do YOU want to talk to 10,000 hardware vendors and get them on board? No! Nobody does! That's just money burning! But, there are valid political reasons for creating a new general pu…

It is a lot less if you are aiming to support a small set of platforms, don't need general driver support for everything possible accessory and peripheral under the sun, and if your file system usage is limited.

If you are building for a single abstraction, code gets much simpler, instead of building a platform that multiple abstractions can then be built on top of.

Re: John Carmack's arguments against building a custom XR OS at Meta

#386

Earlier quoted context omitted.

> "Oops, sorry, didn't get around to documenting it". That's obviously the wrong message. They should say "Go ask the engineering VP to get us off any other projects for another cycle while we're writing 'satisfying' documentation". Extensive documentation comes at a price few companies are willing to pay (and that's not just a matter of resources. Look at Apple's documentation)

I write documentation as I'm writing the code. In my opinion, the code is only as good as its documentation -- they're two parts of the same thing. It's mostly comments at the top of files, and sometimes a markdown file in the same directory. This way, good documentation is priced into my estimate for the project. I don't have a work item "spend a few days documenting." Nope, if I'm doing a foo then that includes doc…

Documenting what is there usually is not the hard part (and AI is getting pretty good at that part btw).

Documenting how to use or interact with it in a specific context, which often includes perspectives on interactions with other components, or e.g. protocols not explicit in the code, deciding where to draw the lines of what can assumed trivial common knowledge and what should be specified or explicitly not specified without notices not to rely on these etc. , that is a different thing.

If it wasn't, then truly as they used to say, the source code would be it's own best documentation (I am a big fan of programming for readability, but even the best readable code, while it will be correct and up to date, will never be enough nor the best for all)

Re: John Carmack's arguments against building a custom XR OS at Meta

#388

Earlier quoted context omitted.

At least for certain types of OSes, it should be relatively easy to get most of Linux's hardware support by porting LKL ( https://github.com/lkl/linux ) and adding appropriate hooks to access hardware. Of course, your custom kernel will still have to have some of its own code to support core platform/chipset devices, but LKL should pretty much cover just about all I/O devices (and you also get stuff like disk filesys…

>but LKL should pretty much cover just about all I/O devices (and you also get stuff like disk filesystems and a network stack along with the device drivers). thus calling into question why you ever bothered writing a new kernel in the first place if you were just going to piggyback Linux's device drivers onto some userspace wrapper thingy. Im not necessarily indoctrinated to the point where I can't conceive of Linux…

Is this the old 'an OS is just a bag of buggy device drivers' argument?

Re: John Carmack's arguments against building a custom XR OS at Meta

#389

I was at Google when the Flutter team started building Fuchsia. They had amazing talent. Seriously, some of the most brilliant engineers I've worked with. They had a huge team. Hundreds of people. It was so ambitious. But it seemed like such a terrible idea from the start. Nobody was ever able to articulate who would ever use it. Technically, it was brilliant. But there was no business plan. If they wanted to build a…

Wasn’t Fuchsia supposed to be a platform where different OS could run in a virtual environment and software packages would be complete containers? Was not this a new way of tackling the ancient OS problem? These were my imaginations. I thought maybe an OS that could run on the web. Or an OS that could be virtualized to run on several machines. Or an OS that could be run along several other instances on the same machi…

Yeah, those were definitely your imaginations.

Re: John Carmack's arguments against building a custom XR OS at Meta

#390

Earlier quoted context omitted.

Intel still does it. As far as I can see they're the only player in town that provide open, detailed documentation for their high-speed NICs [0]. You can actually write a driver for their 100Gb cards from scratch using their datasheet. Most other vendors would either (1) ignore you, (2) make you sign an NDA or (3) refer you to their poorly documented Linux/BSD driver. Not sure what the situation is for other hardware…

Wow... that PDF is 2,750 pages! There must be an army of technical writers behind it. That is an incredible technical achievement. Real question: Why do you think Intel does this? Does it guarantee a very strong foothold into data center NICs? I am sure competitors would argue two different angles: (1) this PDF shares too much info; some should be hidden behind an NDA, (2) it's too hard to write (and maintain) this P…

This is a pretty standard document length. Modern microcontrollers have similar lengths (e.g. ATSAMD51 is ~2000 pages). Some of it is not software related, things like pin outs and electrical and mechanical descriptions.

It does take a huge amount of work to write and maintain. Typically the authors are not technical, so it also relies on the designers being available to answer questions as well. Then there’s a choice of how it’s written: narrative and potentially imprecise but readable, or terse and precise but hard to read. There’s both styles in the same document, terse for register descriptions.

Post reply on HN