Live data from Hacker News

TypeScript types can run DOOM [video]

youtube.com

141–150 of 391 posts

Re: TypeScript types can run DOOM [video]

#142

Hats off to the creator big way. Really amazing stuff, and impressive dedication. To the author: if you would like to work on challenges of similar caliber, ping me (I'm Syrus, from Wasmer)

WOW that's quite kind of you to say!

As luck would have it I happen to be the happiest at my current job than I've ever been ever (and by a lot) buttttttt if it's interesting to you one of the express goals of SquiggleConf is to get WebAssembly to be a "oh I know how to use it" tool in the everyday dev's mind. So I'll definitely ping you some time soon to see what you think (and I hope you can tell I'm not sponsor shopping! even if you have people building wasm tools web devs should know about and you can point them towards our CFP that would be huge! we really want great wasm coverage to widen the playing field for everyone).

Also -> actually Wasmer does have a small part in this whole story with Doom, too, which is sorta neat (will come up in the next few videos!).

Re: TypeScript types can run DOOM [video]

#144
post #105
post #79

From YT comment section: >> @TimMattison >> If this guy goes for a big tech interview they're still going to ask him how to invert a binary tree > @MichiganTypeScript > So actually in the "why" video, you're going to hear about exactly that! I was looking for a job during working on this and absolutely got some disappointing rejections, and one was because of my lack of skillset on things like this in a big tech comp…

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.

Re: TypeScript types can run DOOM [video]

#145
post #106
post #98

Earlier quoted context omitted.

Has anybody ever figured out what "invert a binary tree" means? That came from Max Howell, and nobody else seems to have ever received that question. The best anyone can figure out is that it's reversing the left and right branches, which seems like it's ten lines of code, at most?

leetcode seems to agree with your definition [0]. the meme isn't to say that inverting a binary tree is particularly difficult - anyone familiar with coding challenges and trees could trivially produce a solution. the meme is more pointing out how ludicrous it is that senior/staff/principal interviews can hinge on these types of problems, despite the engineer proving their proficiency by doing something like running…

I think those challenges (especially leetcode) are heavily misused.

When my team conducts technical interviews, we are asking for a couple simple programming solutions - but we're asking because we want to hear the candidate talk through it and see what their problem solving process is like.

If you aren't evaluating based on conditions like those, I don't really see the value of coding questions.

Re: TypeScript types can run DOOM [video]

#146

I hope he learned something useful while doing it and it seems like he did, because, although regarding all the comments here I'll likely be alone in my assessment, I just see a massive waste of time & effort? He described it as "a brutal year-long journey of 18 hour days" and he didn't bootstrap a company, he wrote Doom in Typescript types...?! The "epic" doom music underlying his story just makes it seem even more…

It's just you. It's extremely impressive. He likely set himself up for life with this + learned an unbelievable amount. And this is, in and of itself, a business. He has merch, a conference, a social media presence, etc.

Re: TypeScript types can run DOOM [video]

#147
post #118

Can someone help direct me toward an understanding of what it means for something to be "run in/by TypeScript types"? A short explanation or link to a resource would really be helpful. :)

Normally you would write a program that is a game of Doom when you run it (you create a program, then compile it and run). Dmitri created a program that does nothing and he don't even run it. But while it's compiling, it does a lot of tricky things to make typescript compiler to run Doom as a side effect.

It's extremely hacky because Typescript is not even a runtime, it's not meant to run any code at all. Typescript is a thing that takes .ts file and produces .js file (which you then run using different program - a javascript runtime).

Re: TypeScript types can run DOOM [video]

#148
post #118

Can someone help direct me toward an understanding of what it means for something to be "run in/by TypeScript types"? A short explanation or link to a resource would really be helpful. :)

TypeScript types are a kind of Prolog [1] (sort of, kind of, not entirely). Like any language they have primitives (`boolean`, `string`, `true`, 'Manchester'), functions (`type WaitWhat = { yesReally: T }`), variables (`type X = number;`), and conditionals (`type Huh = T extends Foo ? Bar : Baz`). You run the types program by asking `tsc` to check the types of some program - e. g. `type Foo = { x: T }; type Bar = Foo;`. Getting output out of the type system other than via "hover over the type in VSCode" is probably a bit more involved, but it's definitely doable (I suspect some abuse of the Language Server Protocol here).

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

Re: TypeScript types can run DOOM [video]

#149
post #76

Earlier quoted context omitted.

Only if the church-turing-carmack thesis holds, which I personally doubt

Alternatively if The Romero Hypothesis is proven to map the distribution of Mancubus numbers ... >_<

If it holds does that confirm that I’m his bitch?
Post reply on HN