Live data from Hacker News

TypeScript types can run DOOM [video]

youtube.com

151–160 of 391 posts

Re: TypeScript types can run DOOM [video]

#151
post #64

Amazing work. I'm interested in the choice of WASM - presumably any target that can run DOOM could've been used? Of which there are innumerable choices I assume. Was it for symbolic reasons or genuinely the most useful target?

WASM is the easiest target because you don't have to emulate an entire computer.

But in this case he kind of did anyway (at least the video makes reference to "L1 Instructions Cache").

Re: TypeScript types can run DOOM [video]

#153

Nothing will ever top this for typescript types. This is the pinnacle. An entire virtual machine and system memory with garbage collector in types. Turing Completeness is one level, but being able to run Doom is the real test of whether a programming environment is complete and robust. Absolutely stunning to see TypeScript's type system get there.

Well we haven't implemented a web browser capable of running javascript in the typescript type system yet. Quick, someone tell this author it's not possible.

It looks like they built a WASM runtime in the TS type system. Implement some more OS calls and you should be able to get a browser running. And then WASM on WASM on TS types. Lol

Re: TypeScript types can run DOOM [video]

#154
post #136

One of the top comments in the video: > If this guy goes for a big tech interview they're still going to ask him how to invert a binary tree The industry's hiring process is so messed up that this is completely believable. "We've decided to prioritize other candidates, as you are strong in the fundamentals but lack the kind of experience in Vue that we're looking for."

Why do you think person capable of making doom run in such an environment is incapable of basic tree operations?

I suspect the technical interview devolves into an act of shunting the blame of potential bad hires away at some places. Elite credentials and leetcode shibboleths serve the same purpose: this person has checked the boxes we've agreed upon as important in the hiring process, regardless of the job duties. If they turn out to be a bad hire, who could've known, esp. with that Ivy League bachelor's degree?

It's less the tree operations themselves and more that this candidate just didn't know the shibboleth, so they shouldn't be allowed in. Cue the vague feeling of disgust on the interviewer's part that the interviewee didn't know something "so simple" in a tense environment with lopsided power dynamics.

Re: TypeScript types can run DOOM [video]

#156
post #105

Earlier quoted context omitted.

He's also one of the principal organizers of SquiggleConf, a conference focused on devtools that takes place in Boston: https://2024.squiggleconf.com/about What I'm saying is, if he still happens to be looking for a job, any employer reading this should be falling over themselves to recruit this man.

There is more to hiring than technical competence. I'm not seeing any red flags in his videos, but just saying, ability to work in a team is not obvious from such posts.

strong agree! so much of it boils down to "do you treat people good and stuff". then there's "do you treat yourself good and stuff", and then a tiny little fraction that's "can you work hard to get to an answer" and finally, least of all, "what do you know"

Re: TypeScript types can run DOOM [video]

#157
post #109

Earlier quoted context omitted.

By now there is more than one story how some open source developer wasn't hired because their skills with the project they created was not sufficient for the job.

I do think shipping a product that has real users (and everything it entails, like writing the docs) is 100x more important than having leetcode and common interview tactics fresh on your mind. Without context, I suppose I can see the Homebrew guy's case possibly signaling a sort of hubris since it was just a fizzbuzzy-level question. In his defense, I would find it ridiculous if we just had a technical convo about h…

Never mind that a lot of the jobs that ask you to do this will mostly involve the conversion of database data to JSON or HTML with a few steps of business logic in between.

And the harder computational challenges you’d likely learn as you need it. In which case, simply knowing what a binary tree is means you’ll know it’s available to you, even if you can’t invert one from the top of your head.

And even then, start going for staff or principal and your leadership, communication and architecture skills should be more of a focus than algorithmic puzzle solving.

Re: TypeScript types can run DOOM [video]

#158
post #16

This shouldn’t be possible.. Typescript devs have lost their collective minds and I’m totally here for it. Edit : TS not front end

I didn't ask them outright, but I sorta think the TypeScript team might agree with you on this point! haha. At least we can all agree it's not an intended use-case, to play Doom.

Re: TypeScript types can run DOOM [video]

#159

One of the top comments in the video: > If this guy goes for a big tech interview they're still going to ask him how to invert a binary tree The industry's hiring process is so messed up that this is completely believable. "We've decided to prioritize other candidates, as you are strong in the fundamentals but lack the kind of experience in Vue that we're looking for."

The justification is that it's almost impossible to get "good employee" signal any other way. If you tell people upfront that you're testing them on leetcode you at least get some signal that 1) they're willing to put in time and follow through on studying for something 2) they have some base level of programming skill and intelligence

Companies optimize hiring for avoiding false positives (bad hire) over false negatives (bad rejection), especially in this job market.

Re: TypeScript types can run DOOM [video]

#160

Earlier quoted context omitted.

Doom is Turing complete ( https://calabi-yau.space/blog/doom.html ), so it's just a matter of building the appropriate map.

That's not really relevant. Turing complete languages are used to build Doom and Pong, but one is more impressive than the other.

Pong was (originally) built using transistor-transistor logic on a circuit board. AFAIK it did not involve any software at all.
Post reply on HN