Switch Statement

050: MOD - Ch 5. Id Stands for...

December 22, 2023 Jon Bedard Season 4 Episode 5
Switch Statement
050: MOD - Ch 5. Id Stands for...
Transcript
Matt:

Hello everyone And welcome to the switch statement podcast It's a podcast for investigations into miscellaneous tech topics Hey John, how's it going?

jon_raw:

Hey Matt, I'm doing quite well. How are you doing?

Matt:

Doing all right. Um, I, I like put some like wood finish in this room and I think the fumes are like getting to my brain.

jon_raw:

Wood finish? I don't, what do you mean? Like you put some trim up or something?

Matt:

So I have this shelf here that I'm making,

jon_raw:

Oh wow. It's so

Matt:

test piece.

jon_raw:

So, so for the people listening, Matt is holding up a capsule shaped shelving unit. It looks pretty

Matt:

Yeah, so it looks kind of like a pill. Yeah. Um, and the idea is you use, you kind of like cut notches in a piece of wood and then you can bend it.

jon_raw:

Oh. Dude, that sounds like an advanced, like you're becoming a carpenter, basically. Sounds like an advanced technique.

Matt:

I found I could do it by buying only one power tool. Um, so I tried to like Go in that, take a, dip a toe in that direction.

jon_raw:

Dude, that's pretty awesome.

Matt:

Today is not about woodworking, though. Um, it is about D& D,

jon_raw:

D& D, yeah.

Matt:

you ever, played D& D?

jon_raw:

I have played D& D, uh, it's, it's a lot of fun. It's, it's one of those games that's really dependent on the group you're playing with. Like if you're playing with dedicated individuals who are willing to get immersed into the story, it's great.

Matt:

Yeah.

jon_raw:

I feel like any, you know, any kind of gap in the immersion can kind of ruin the whole thing, at least for me. So,

Matt:

it just breaks it. Yeah. Although I feel like there's also a risk you go in the other direction. And people are like, way too into it.

jon_raw:

That's true also. Yeah, everyone sort of needs to be simpatico. Like, it's very, group vibe focused.

Matt:

yeah. Um, well apparently the folks at id were, they had a really good group vibe, kind of with the DM, uh, being Carmack,

jon_raw:

Yeah, there's, I feel like they're starting to establish roles. You know, in going with this being a superhero origin story, each team member has to have their specific role and they're, they're slowly carving out their, you know, sort of pecking order slash roles. Carmack is definitely like the genius orchestrator. Romero is like the cheerleader, basically. Uh, which, you know, he's, he's the guy that sort of is like running with the ball almost. Um, And, uh, yeah, the other guys, I guess, Adrian, Adrian Carmack is like the artist

Matt:

he's this brooding, dark artist, yeah,

jon_raw:

yeah, he's kind of in the background somewhere. Um, and I can't even remember who the other guys are, but they're slowly

Matt:

Tom is kind of like the, the jester,

jon_raw:

Yeah. And they talk about, they, I feel like this is the first time that they really talk about the name and like solidify that they're going to be called ID and it's short for in demand. Yeah. Yeah. Yeah.

Matt:

Ugh, just terrible. Like, I just stick with ideas from the deep. It's at least evocative.

jon_raw:

Yeah, Ideas from the Deep is great. In Demand is the lamest thing ever. They also

Matt:

So, like, corpo speak. Yeah. what were we gonna say?

jon_raw:

Maybe at the time it sounded cooler, and it just, today it just sounds so trite and lame. Mm

Matt:

so when we last, at the end of Chapter 4, they had broken away, they had splintered off from Softdisk, so they're still in this lake house. Um, working, you know, advanced or playing a bunch of D and D apparently working on continuing to build out their business with kind of, I feel like Romero is, I was almost going to say Camaro, uh, Romero is the guy who is really push, like pushing it, um, you know, like, like what you're talking about with roles, like, Carmack, at least from the business perspective, is really coming off as someone who's like the, you know, the isolated genius who's just advancing the technology in the corner where everyone else is kind of pushing, actually pushing the business forward.

jon_raw:

Every Carmack really needs a Romero in their life. Like, I think if you're a Carmack and you're, and you don't have a Romero, you're actually not going to get very far, sadly.

Matt:

No, I mean, I mean, for better or for worse, I feel like that's kind of why we have never done something We've never launched anything ourselves. Uh, I mean, if you, if you don't count this podcast, uh,

jon_raw:

yeah, we're, we're sort of like Carmacks, except not nearly as talented as Carmack is.

Matt:

no, yeah, absolutely. So yeah, I mean, a lot of this chapter is really just kind of going through like, I guess the evolution of their tone. Like now Adrian is. able to fulfill his dark, twisted fantasies.

jon_raw:

Yeah, yeah, which this part was interesting because they, they have a little discussion about like violence in video games, which it is obviously a pioneer in that space for better or for worse. Uh, they talk about an interesting game called Death Race that I guess had this brief moment of popularity. Game sounds insane. Like apparently you're racing in a car and the goal is to run people over. I don't know. And when you run them over, they become crucifixes, which I just found hilarious.

Matt:

it's funny because that's an example of a way that you can make something real, like, cause it's not gratuitous, like it's not like gruesome, but it is like. It's still managing to be very violent in a way that's like, um, economic, economical from like a computing perspective, like, uh, they don't have to draw these complex shapes, but you can still, like, have this, like, visceral, like, Oh, God, like, that's horrible.

jon_raw:

Yeah, no, I mean, it just sounds like powerful imagery, you know, it's like, like you're saying, maybe it doesn't have blood spurting or things like that, but, um, it just sounds like it would still be kind of a disturbing experience. Yeah.

Matt:

What would eventually become the. You know, the gruesome, like Adrian, this brooding artist, he's, he's able to draw these, these gruesome death animations. And it sounded like they didn't actually make it into the game that they were making. I think the person that they were working with requested that they remove it. Uh, but then, um. You know, that would kind of go on to be, be used in their, their forthcoming games. I think that that's kind of the direction that they're, they're heading in.

jon_raw:

Absolutely. Yeah, they're, they're planting some interesting seeds. You know, they're talking about this origin of like, or not origin, but they're just talking about how the violence in their games is progressing. Uh, they're also talking about the progression of 3d graphics, which I find

Matt:

Yep. Yeah.

jon_raw:

like, I don't know if I played, you know, the original wing commander that they're talking about, but I played a bunch of the Wing Commander games and they were awesome. And they definitely were one of the first, uh, like there was one game called Descent, which I remember as being like a real pioneer in, in 3D space, you were like a spaceship and you could move in on the three axes. Um, but Wing Commander was another game that just made really amazing use of that paradigm. Um, had a bunch of really cool characters like Paladin and Ice something, Maverick, like all these kind of, uh, you know, sort of, uh, what do you call it? Like names kind of like Top Gun, you know, just these like stereotypical,

Matt:

call signs.

jon_raw:

yeah, yeah, exactly. Uh, and it was kind of fun.

Matt:

it does raise this really interesting question. Like, I think you don't think about it because a bunch of game designers needed to spend a bunch of time seeing what works. So, like, when you play a 3D platformer, like, you're like, oh, that's, you know, that's how it works. You know, you have the one joystick control the camera and the one joystick controls the character. But I don't think that's immediately obvious. Like, I think descent was, is a good example of like one where it's now this whole new control scheme, like, and you have another dimension of freedom. And it's like, how do you do that in a way that the computer, that the user isn't like completely confused about where they're, they're pointed and what have you. And I think you can, like, my understanding is in descent, like there's so much freedom of motion that it can actually become disorienting.

jon_raw:

Absolutely. That's actually the main thing I remember from that game is like, you know, you'd be facing some awkward direction and just struggle to get out of it. And it was actually kind of a pain.

Matt:

Yeah, yeah, yeah. So they're still, they're still kind of, uh, working out the kinks of, of like, you know, control schemes in, in three dimensions.

jon_raw:

Yeah, it's so, I mean, I'm glad you bring that up because it's such an interesting part of sort of the evolution of the software industry that a lot of people don't think about is, you know, you have these new paradigms like virtual reality right now. And I was sort of, you know, very loosely involved in this when I worked on virtual reality at Google, where people are literally trying to define like, okay, how does someone actually interact with a virtual reality environment and people are just trying all these crazy things and just sort of seeing what sticks. And I feel like, yeah, when you're moving into those new paradigms, like it was moving into 3d. That's one of the, you know, very, very tricky problems that you need to solve is like, how are people actually interacting with this new environment?

Matt:

Is this one thing that I think is exciting about Apple moving into the space? Because like, If there's one company that is going to waltz in and define just this, what everyone else uses as the conventions, like it's going to be Apple.

jon_raw:

totally. Yeah. They're masters at that. And they're just, you know, the thing that Apple does that a lot of other companies just can't seem to figure out, they've just figured out the user experience, like they really, you know, everyone always says the user comes first, but I feel like Apple is one of the. A few companies that like truly just gets that right.

Matt:

well, they're just also uncompromising. They're just going to do like stuff that's like super annoying for like the engineering team or what have you, or just like me, even, even for users sometimes, because like, if there's this conflicting thing, They'll change something so that it, you know, so that overall or in the longer term, it makes for a better user experience. So, um, I have to give them, you know, props for that.

jon_raw:

totally. Um, yeah, also as far as the technology progression, there's a section that talks about ray casting, which I thought was interesting. I don't know if you understood this cause I definitely did not, but they talk about how ray casting is faster. Uh, then whatever technology they were using, which to me just sounded backwards. Like I've always thought of ray casting or ray tracing as much slower.

Matt:

Yeah, I mean, this did lead me to like, well, it feels like clearly I don't understand because I, I thought ray casting and ray tracing were the same and like, If, if even today games mostly are not using ray tracing, like, I mean, I feel like in the last, I don't know, five or 10 years, like you're, you've been getting like ray traced reflections, um, or like, uh, cars, for example, was the first, uh, Pixar, uh, movie that used ray traced reflections because it was just

jon_raw:

didn't know that.

Matt:

computationally intensive and up until that point.

jon_raw:

Yeah. Yeah, exactly.

Matt:

So, so there must be, yeah, talking about some other, uh, slightly different technique if that, if they were pulling this off on, you know, 1990s PCs.

jon_raw:

yeah. Um, I just thought that was interesting. Yeah. I wondered if it was because of the like simplicity of the scenes. Or maybe even that there was just fewer pixels on a monitor. Cause I guess, you know, the ray tracing algorithm is kind of proportional to how many rays you're actually tracing.

Matt:

well, right. Exactly. Like my understanding is it scales like in the square of the number of lights in the scene or something. So like, is that maybe, maybe I'm just like making this up, but,

jon_raw:

I actually did not think that it, although, yeah, there's probably, there's probably points where you have to like iterate over all the lights. Um, but I, I don't know, I can't remember how ray tracing works. I just remember that you're sort of shooting rays out from the screen. And, you know, they're bouncing off walls and you often have to calculate multiple reflections and sort of see which, because you're, you're basically tracing your way to the lights. And if you, if you find a light, you then add a little bit of like, you know, whatever the surface material is, you add a little bit of, um, you know, color to the surface.

Matt:

Right. Um, but it's interesting though, because like, how do you, like one pixel could be a function of multiple different lights. Right.

jon_raw:

Yeah, yeah, exactly. So I guess you probably do have to iterate over. You know, when you're hitting a surface, you have to find out all of the lights that are also hitting that surface. So there's gotta be some points where you fan out.

Matt:

yeah, I, I, it may, it might just be the number of samples per pixel. Right. Because isn't that, isn't that a, like, so basically like there's very, there's probably super slight variations. You can do send like a couple of different, like randomized. Samples through one pixel and then some are going to bounce off one light and another one might hit another light. And then like, that's how you get this like multiple. Um, but I think that's why, I don't know if anyone's ever like rendered a 3d scene using ray tracing, like you can wind up with noise and like, I think, or my understanding is like, that's because there's, you know, you haven't cast enough samples for those pixels to get a, to hit a light.

jon_raw:

exactly. Yeah, yeah, yeah. But yeah, just interesting. It was, it kind of flipped my understanding of these algorithms on its head. Cause I thought ray casting was super slow, but apparently it was fast back then.

Matt:

Yeah, that's kind of a naming, naming nightmare in terms of trying to understand what the, because there's also something called Ray marching too. So it's like, um, which is another technique. So I don't know. It's all it's just a minefield. Um,

jon_raw:

They also talk a little bit about Scott Miller, who was the guy that they had a shareware deal with shareware was like the really popular way of releasing games back then, where you just put out a little bit of content of your game for free, and then you sort of hope that word of mouth will spread and you'll get a lot more buyers and it seemed like it was working out for them. They were making a ton of sales on the Commander Keen series was with shareware.

Matt:

Yeah. And so they wanted to crack into the commercial market. Uh, they found this, uh, this other fellow, uh, Mark, I think, uh, Like set them up with this company called, uh, let's see what this company is called. Um,

jon_raw:

It wasn't Apogee, was it?

Matt:

well, Apogee was, I think, uh, that was Scott Miller's

jon_raw:

Okay, yeah, Apogee was the shareware part of things. Yeah, what was the other It's like Deepform or something, or No, I'm thinking of ideas from the deep. I

Matt:

on. We'll cut this out. Um.

jon_raw:

feel like there was a form in there somewhere.

Matt:

yeah, FormGen, I think it was called. Yeah, let me just see. Dude, I feel like I, oh yeah, yeah, okay. I'm very like, I remember like where on a page something happened and it relayed out, so like I couldn't find it, but. Um, so yeah, um, this guy Mark, I forget where, how we met Mark, but uh, but anyway, he was working with id. They, he got them a contract with this company FormGen and, uh, and this would allow them to break into the retail market so they could sell their games in stores

jon_raw:

right. Which Scott, uh

Matt:

yeah, go for it.

jon_raw:

Well, I just remember, uh, I think it was Scott who was kind of upset about this, right? Cause they were

Matt:

exactly.

jon_raw:

yeah, they were kind of releasing all of their game shareware up until that point. And then they sort of pulled this switcheroo on their consumer and they're like, okay, this next one's going to be retail. And,

Matt:

Well, a little bit on Scott too, because I think they kind of had this handshake agreement. They're working with Apogee. They're putting out these games and then. Uh, I think Scott was a little bit, like, off put. Uh, he's like, oh, like, you're, you know, you're interfering. And I don't know, they don't really give a good sense for whether, like, if Scott was just, like, sour grapes about the fact that they were working with another company. Or if he He really just fundamentally, uh, thought they were doing the wrong, like, business decision. Because he said, like, oh, you're, like, breaking the magic formula of the trilogy with shareware. So, um, it's not too clear. Maybe it's a little bit of column A and column B there.

jon_raw:

Yeah. Uh, but it's interesting cause it's yet another chapter in the, the theme of this book, which is. These guys kind of are willing to screw over business partners. I mean, they really, like with Al in the previous chapter, like that was kind of a tragic story. Uh, they basically just left this guy in the lurch and, you know, who knows what happened to his company. And now with Scott, they're sort of doing a similar thing where they're just going behind his back and making a separate deal with some other entity. And it's just interesting because, you know, as heroic as these guys are, they do also have this And you could just call it good business acumen because they're just sort of responding to changes in their own business and trying to make better deals. But, you could also say they're sort of screwing over their partners.

Matt:

Yeah. Um, and, and the funny thing is, like, I don't know how you have a long term relationship with someone who you see Like screw someone else over like even if it's for like for the benefit of your You know your business

jon_raw:

Yeah.

Matt:

it's like Like how long until you're on the other side of that? You know that interaction and this person screws you over when it's not in their best interest to Help you anymore, you

jon_raw:

Right. Yeah, exactly. And this is why Uh, you know, like I was just reading about Warren Buffett recently, cause Charlie Munger sadly passed away, who was Warren Buffett's business partner, and this is why they say that weren't, or at least one of the reasons Warren Buffett was so effective is just that he has always been absurdly honest and upfront about all of his business dealings with literally everyone. Like, and he's never, you know, he's never done anything shady basically. And so he, people just have such confidence in him that he's built up over time that he can just make these great deals with people because they have essentially 100 percent confidence in him.

Matt:

Yeah, I think that's I think that's the way to do it. I think it's Beneficial in the long term. Although, I don't know. Sometimes Sometimes there might be times when, like, the reward is just too great. And you're like, well, even if I do screw over this one person, like, the benefits are so high that, you know, it's worth it. Or, like, I'm estimating it to be worth it, but

jon_raw:

Yeah, um, and that's, I don't know, when those questions come up, I guess you just have to ask yourself, you know, do I want to be that person first of all? But also Even if it, even if this does end up being worth it, you know, will I still be okay if I take the other path? Um, anyway, I don't mean to get off on the rails about like business ethics, but it's just, it's an interesting thread in this book that they've sort of brought up a few times. And it comes up, you know, in the next few chapters as well that these guys just sort of had. They sort of had like a libertarian take on business where it's like, I'm just going to do whatever makes sense at the time. Um, and yeah,

Matt:

like conventional, conventional, like morals be damned, I guess. So, um,

jon_raw:

at least with, at least with their business dealings, it seems like that's their approach.

Matt:

Yeah, for sure. All right. Well, I don't think, um, well, I guess we, I think we, um, we said this in the last episode. This is when they're actually getting out of actually for it. Um, and then, you know, at the end of this, uh, this chapter, we are informed that they're Bundling everything up and they're heading, heading out to Wisconsin, Madison, Wisconsin.

jon_raw:

Yeah. Madison, Wisconsin, the cold tundra of Madison, Wisconsin.

Matt:

Um, Carmack had a very funny quote, which is like, he basically said he didn't care where he was as long as he could code. And like, that is You know, whenever anyone has asked me, like, if I've liked where I'm living, I'd be like, well, you know, I was able to find a house and I had an internet connection. So like, that was pretty much, that's all I need.

jon_raw:

That's all I need too. I just need a desk and my computer. I'm golden.

Matt:

All right. Well, I will, um, I'll see you next time for chapter six.

jon_raw:

Alright, see you later Matt.

Matt:

Peace.