This is the part... John discusses his functional programming adventures in Haskell at QuakeCon 2013.
"So what I set out to do was take the original Wolfenstein 3D, and re-implement it in Haskell."
"I've got a few conclusions coming from it. One of them is that, there's still the question about static vs dynamic. I know that there was a survey just coming out recently where the majority of programmers are still really not behind static typing. I know that there's the two orthogonal axes about whether types are strong or weak, and whether it's static or dynamic. I come down really pretty firmly, all my experience continues to push me towards this way, that strong, static typing has really significant benefits. Sometimes it's not comfortable, sometimes you have to build up a tight scaffolding to do something that should be really easy, but there are real, strong wins to it."
This is great when you're re-implementing Wolfenstein.
Not so much when you're doing exploratory computer science, or blue-sky prototyping. To build upon his analogy, scaffolding is most helpful when you have a reasonable knowledge of the shape of the building.
"It depends on the context" isn't exactly a shocking discovery however.
I love Carmack, love his presentation style, and when he talks from experience, I listen.
> Not so much when you're doing exploratory computer science
I'm not sure. The following experiment is outdated (I'd love to see it redone more rigorously and with modern languages) and has several methodology flaws, but "An Experiment In Software Prototyping Productivity" (1994, Paul Hudak et al) shows that Haskell and static types are actually great for rapid prototyping and exploratory programming, even in the face of vague or incomplete requirements. This runs contrary to common sense, which is why the experiment was fascinating.
I'm under the hypothesis that (good) game developers know how to talk to people (or at least how to present things to people) because part of game design is thinking about how to manipulate people's emotions into wanting to (or even being eager to!) face a challenge you've set out for them.
It's similar but not identical to the reasoning for actors and directors to be good entertainers and interviewers. Those folks constantly think about manipulating people's emotions in general, but game design is completely focussed on just manipulating people into excitement or flow states — and that just so happens to be the emotion you (usually) want people to have in reaction to a presentation: the feeling of "I'm going to go out— and buy their thing —and change the world."
I like that idea. It's also true that a field like game development, which is both collaborative and interdisciplinary, pretty much requires excellent communication skills. Being a game designer is less about having amazing "ideas" or "vision" (everyone has those) and more about your ability to align everyone's ideas and vision in the same direction.
Personally, I prefer to describe "thinking about manipulating people's emotions" as _empathy_, but that's just me.
> Personally, I prefer to describe "thinking about manipulating people's emotions" as _empathy_, but that's just me.
Empathy is the core skill, yes, but there's a sort of... I almost want to say an instinctual disgust? that people also have to overcome, when they want to turn empathy around to use it to change someone else's mind, rather than just using it to predict someone else's mind. You have to become at least a little bit of a sociopath, is maybe the problem.
See, other people have different foundational beliefs—different axioms they're working from. To use "empathy aikido" on them—to come up with arguments that will convince them of something, not slowly and laboriously from logical first principles, but by building up quickly from what they already assume to be true—you have to be willing to make arguments that are true under their axioms, but not under yours. That is, you have to be willing to use arguments that you think are false, just because the person you're trying to convince will believe them.
It feels weirdly like lying; like you're a politician swaying the populace with empty rhetoric. But you're not saying things that nobody would believe (if given long enough to think about them); you're instead just getting into the head of—empathizing with—the person who holds those axioms, and then saying things that you—as that person—really do believe.
This is why, I think, there's a big divide between people who like or hate the idea of "salesmanship": some people fundamentally see it as lying, while other people fundamentally see it as empathizing.
Personally, I think it can end up either way—some people "sell" an idea while holding back a bunch of facts that, under their axioms, are total deal-breakers. Others, though, "build a bridge" between their interlocutor's world-model and their own, using their arguments to help the other person build a world-model enough like their own that they can then present the facts that they believe to the listener, and the listener can understand them through the "consensus schema†" they built.
People who are said to have "reality distortion fields", I'm guessing, are just good at making those kind of points that build a consensus schema, that they can then state plain "facts" against which will seem—within the consensus schema—to be obvious, rather than having to convince you of each fact through argument. Despite the gnawing feeling that accepting that consensus schema into your brain is sort of an indoctrination into a cult, it's really the less ethically questionable of the two options, in my mind: the speaker doesn't have to say anything they don't actually believe (other than the arguments required to build the consensus schema.)
> That is, you have to be willing to use arguments that you think are false, just because the person you're trying to convince will believe them.
I think genuinely arguing over whether something is true or false, is rarer than it seems. More often, I think we find ourselves arguing over which things are important, or how we should feel about something. In which case, I think you can put yourself in someone else's shoes and still be perfectly sincere.
Thank you for this comment - that's a really striking way of looking at these things. Makes me wonder just how many human interactions involve being that little bit of a sociopath. E.g., "putting your best foot forward" for a job interview or first date can feel like a kind of dishonesty, although it's expected in those cases. I wonder how you could start drawing a definitive line between "good" empathic manipulation and "bad" sociopathic manipulation, when even just smiling at someone can be manipulation of a sort?
> "That is, you have to be willing to use arguments that you think are false, just because the person you're trying to convince will believe them.
It feels weirdly like lying; like you're a politician swaying the populace with empty rhetoric. But you're not saying things that nobody would believe (if given long enough to think about them); you're instead just getting into the head of—empathizing with—the person who holds those axioms, and then saying things that you—as that person—really do believe." -derefr
Response to derefr: If you are willing to use an argument that you think is false then, by definition, you are lying [even in situations where the lie can be mistaken for truth by others].
> "E.g., 'putting your best foot forward' for a job interview or first date can feel like a kind of dishonesty, although it's expected in those cases. I wonder how you could start drawing a definitive line between "good" empathic manipulation and "bad" sociopathic manipulation, when even just smiling at someone can be manipulation of a sort?" -zazen
Response to zazen: If it feels like dishonesty then it most definitely is. Consider cases where the interviewee simply lacks confidence but puts on a facade to appear otherwise. As for drawing a line between "good" and "bad" manipulation, reference derefr's note:
> "To use "empathy aikido" on them—to come up with arguments that will convince them of something, not slowly and laboriously from logical first principles, but by building up quickly from what they already assume to be true—you have to be willing to make arguments that are true under their axioms, but not under yours. That is, you have to be willing to use arguments that you think are false, just because the person you're trying to convince will believe them." - derefr
The addition of "but not under yours" constitutes manipulation on grounds which are aside from truth.
I think you're misunderstanding what I mean by "axioms" here—a lot of these fundamental beliefs that inform which arguments you have to use with people to convince them, are "orthogonal to truth"—that is, things that aren't part of a causal graph, like normative or theological beliefs.
It takes a different thought process to convince someone that e.g. climate change is happening, if they're a Young Earth Creationist, than it does if they're a paleontologist. It takes different arguments to convince someone to donate money to charity if they're a deontologist than if they're a consequentialist. None of these axiomatic positions affect what (empirically discoverable) facts are true, per se; they just affect what facts are relevant to changing one's mind about what one should do—that is, these axioms influence how the "is" statements† a person hears will affect their confidence in various "ought" statements.
So, this kind of "empathy aikido" is less about modelling a person who believes different facts are true, as it is about modelling a person who cares about the truth-value of different facts than you do. It's not that you might have to believe [X thing you believe is true] to be false; it's that you will have to pretend that [X thing you believe being true] is not a compelling argument, and might be so unimportant that you've never even thought about it and never will. Whereas the truth-value of [Y thing you don't care about] might be, to the person you're talking to, the most important thing in the world; the "trick" is figuring this out and then using a (true) argument about Y to convince them, despite thinking personally that only X, and not Y, holds any real sway over the truth-value of your conclusion C.
It can still feel bad, but I hope you can see how that intuition is less grounded here in any real injustice you're doing. Telling a virtue-ethicist that it is "noble" to e.g. donate to the Against Malaria Foundation, when you think that "nobility" is complete poppycock and the only thing that matters is that those donations mean people won't die, isn't an example of a lie. It is a manipulation, but not an illegitimate one—because, from the other person's perspective, it's just the honest truth.
Eh, judging from the Masters of Doom book, i wouldn't take his words seriously considering the tension that existed at the time between the two and how Carmack basically burned out himself during Quake's development. Romero wasn't the only one who left id at the time.
It has great game mechanics, but in all other manners of design it feels like a hodgepodge of unrelated assets thrown together. Quake 1 had a similar problem early in development, but they managed to tie it together. Quake 3 didn't even bother with a true singleplayer campaign, which seems like a winning move in hindsight, but at the time it was a departure from the norm and I can't help but feel like it was a move they did out of necessity.
While surely being a marvel of software engineering and level design, it had nothing in common with Quake I and II. It is not my intent to be critical here, but QA3 felt like a circus, especially compared with other multiplayer shooters such as the original Unreal Tournament, which had a wonderful mysterious atmosphere to it.
Linked video is still a great talk. Carmack comes off as someone who could talk about anything for a literal fortnight, so the 'mmm' may've been a tick where he was forcing himself to shutup & let the interview continue
From what I gather she is, my only point is that when you are in a dense field, generally your partner isn't too enthusiastic when you get into the minutia you've spent a 1000+ hours in that year, so when you get the chance to really talk about it, you gush.
Granted I've watched every QuakeCon keynote that was posted and enjoyed them all (along with reading every .plan). His enthusiasm is infectious. Yet even then he is breaking it down to the big things that happened that year, not the day-to-day stuff.
If it were over the dinner table every night, I'd probably lose my mind.
Carmack really should have quit Oculus when Facebook bought it and gone on to work for Musk at SpaceX. Both are workaholics, too, so they'd probably get along quite well. Plus, Carmack is a big fan of space rockets.
Perhaps Musk needs to go to him and tell him, Steve Jobs-style:
"Do you want to work for a company that invades people's privacy for the rest of your life, or do you want to come with me and change the world?"
>>I wish he would give Elon Musk some mentoring on how to communicate with a technical audience. Or just a regular audience, I guess.
Musk is an effective speaker in my opinion. To be effective, you need not be eloquent, engaging, and charming. Musk has his foibles and stumbles around a lot, but that is part of who he is. I appreciate it.
He didn’t strike me as very nervous, but if he was, he had good reasons: He announced that they would halt production of Falcon rockets after building a big enough batch of them and completely focus on building spaceships. He announced to endanger the only big revenue stream SpaceX has in favor of an unproven technology in the hope to solve all problems and start production before the last Falcon rockets seize to be reusable.
> Musk isn't a very good speaker and he seemed very nervous ...
Looking back, he sounded much more confident when he was younger  perhaps because he hadn't yet experienced life altering events like the loss of a child or coming close to bankruptcy at the end of 2008 after sinking his networth into SpaceX and Tesla.
I think his seeming lack of confidence when he speaks publicly today is a latent acknowledgement that the stakes are much higher relative to his PayPal days when the Internet was incipient, and that failure is still a possibility, regardless of the amount of resources he may have sunk into his investments.
I 've watched most of his talks - the ones I could find - and its really such a pleasure to listen to him; he just shows up and rants about all kinds of subjects, without breaking a beat, and rarely if ever following a script or notes he compiled earlier.
I am not sold on the premise of VR myself; nowadays it comes down to novelty byte-sized demos or "games", with the occasional random mainstream game offering "VR support" (whatever that means, which usually doesn't mean much).
There's also the practical issue of strapping yourself to gadgets and wires, and on top of that, this is still expensive. That said though, I trust Carmack, Abrash and other smart folks elsewhere will solve those problems, and wind up building better alternatives and "next gen" killer apps that do justice to the term(VR) will be developed and we 'll all eventually experience it.
Agree. Whenever I come across a keynote of his, I tell myself "ok, just watching this for 10 min, then get back to real work", and then usually what happens is that I find myself 2 h later after the presentation, totally amazed by all the cool stuff that's going on in Carmack's lab.
These quotes from the keynote really stand out to me:
"If you think you've got that new killer app by all means go ahead and work on it but otherwise you can always spend time improving the existing applications and those are good muscles to exercise so even if it turns out that it wasn't the magic app - going through the disciplined work of making it as good as it can possibly be is whats going to need to be applied when you eventually get the magical application"
"Embrace the grind. You've all shown that you're bold by starting to work on an emerging platform that is not mainstream yet but it takes more than just being bold - you have to actually work really hard and you've got to fill your products with give a damn, to really care about every aspect of them."
"Success isn't about that one brilliant idea. Its about doing the one thousand little things right and getting it all done."
First, you didn't count the 5,000,000 Gear VR headsets, which are co-produced with Oculus.
These numbers, if accurate, are prior to the massive price drops from this summer. There was a huge spike in sales, with Oculus struggling to keep up supply (it took a few weeks to actually get my own order).
Unless the numbers were an order of magnitude lower, I doubt Facebook would be pulling the plug any time soon.
I think this is a longterm space that Facebook is definitely not interested in missing out on, so they'll keep it going.
How much does it cost really, in the scheme of things? If anything, I don't know why Facebook simply doesn't ante up and steal some of the talent away from the competitors, they have the cash to do it and I'm sure people would be happy to work under Carmack.
It's clear that Oculus are spending a lot of money on research, and have recruited a lot of people. A key quote from the article is:
"I signed up to build a 30-50 person research team. Oops. Orders of magnitude matter."
So there's at least a few hundred people just in the research team, and probably a lot others in regular product engineering as well. I think it's clear Facebook are pouring a lot of money into Oculus.
> I don't know why Facebook simply doesn't ante up and steal some of the talent away
To what end though? Say they could spend $10 million and quadruple the resolution, halve the price, and reduce the barf factor of a Rift v2 in a year. What then?
They would probably be better off funding a bunch of people to try to find something compelling to do with the current generation of hardware. It's cool for some types of games, but a market that's a subset of a subset isn't going to set the world on fire. It's easy to come up with a cool demo and hard to come up with a good application.
I was thinking more about some compelling application. The current generation of headsets is pretty neat.
In the current form factor, I just can't see it moving beyond a gaming peripheral anytime soon and the market for that is limited. I was excited when Facebook got into this because appealing to everybody is what they do. But there's been nothing.
I'm starting to think VR is a dead end. There is a market for it, but maybe it's not very big.
They have a new 3D object content type for the feed, which can be rotated and such by tilting your phone; has some support for AR using the phone camera. The assets come from their modelling app and such.
Full WebVR content will follow. They're easing the masses into VR via changes to the feed.
These numbers are as of March 2017, this summer has seen rapid growth (fuzzy memory but I saw numbers that indicated roughly double this) due to the major price cuts of the oculus rift (and also HTC vive to a lesser extent). Adoption appears to be quickly ramping up
For facebook this isn't and never was about VR, it's always been about AR. Zuckerburg has talked about how the problems that have to be solved with VR (head tracking, frame rate etc) are the problems that have to be solved with AR before it can fully take off. Facebook was late on mobile, they aren't going to be late on AR so don't expect them to stop investing in Oculus anytime soon.
Sony did that much with PS VR? It's really unfair. I've been following VR from the beginning.
Oculus made it possible, and it's not working much -> that's unfair
HTC Vive has produced the best headset that made me, and many other, love VR. And they're not dominating the market, and they're not going to, and VR is not becoming this huge thing. It's the future really... I feel like that's unfair.
Just had an interesting experience with that. I moved the frame so that it showed the timer countdown and screens as well as John. After it hit 0, they put up "Please go to Q&A". After a minute or so they started flashing it from the white text on black background to a bright white screen to get his attention. After a couple rounds of that, John goes "Please stop flashing the go to Q&A, I'll get to it" and they stopped the flashing. Certainly something I wouldn't have seen otherwise.
Also interesting seeing now what is close to John's view of the queue for the Q&A.
Might be worth asking why you want it? Simulated monitor(s) in VR on the first generation of VR hardware run into blurriness problems from having low resolution displays relative to the monitors they're simulating.
I work remotely and travel all the time. It would be great to have a VR headset that doesn't require a desktop and provides expanded screen real estate. I know this is something that many people besides myself want.
The oculus go sounds like it solves the major blocking issue since it is stand alone and thus doesn't depend on the computer for the 3d rendering capacity. There is still the question of if using the VR device for work is feasible/productive, but at least it is now possible which I why I was curious as to if any such software exists.
Some of the resolution mismatch could be solved by simply expanding the virtual screen and/or setting the computer to display at a lower resolution so that the resolutions match closer. Some of this is probably helped by using a cylindrical surface in the VR environment.
The resolution you would have to use to do this without excessive head movement would probably be more appropriate for mobile UI than desktop UI. I don't think the current gen headsets can provide a satisfactory Excel experience for example. Also, the relatively small 'sweet spot' that current gen headsets provide make extended reading uncomfortable since it requires head movement for what would usually be accomplished by eye movement.
Having tried a couple VR headsets (including the Vive), I'm pretty sure resolution is good enough for now. Yes, it needs improvement, but it wouldn't be my top priority.
I currently have two pet peeves: wireless latencies, and hand tracking. I want to cut the cable, which is cumbersome, causes problems if I spin too much, and tether me to a small area. I also want to track free hands (perhaps with gloves), for fine grained hand gestures (the Vive controller is good, but still a bit intrusive).
I'm mainly into simulators such as DCS, Elite Dangerous and iRacing for VR. My understanding is that increased resolution would make those titles better; conversely, none require / would benefit greatly from hand tracking, so it's all about different needs. :-)
I was hoping to see a new Rift to address this, but as such I'm happily staying on my 95hz 34" 3440x1440 with TrackIR a bit longer.
This stuff is compelling, especially after having recently read Ready Player One. However, how do you type? There's all this talk of how this tech is great for programmers, with tons more screen space, etc... but unless I just missed it somehow, don't see where a normal keyboard fits into the picture.
I already use a Das Ultimate keyboard. No key caps. It's pretty straightforward to learn the keyboard if you don't fall back on looking. It's like full immersion in a foreign language. If you _have_ remember things, then you will.
So I can type while wearing an Oculus Rift. It's not a problem. And I'm sure you can do it too.
That's not exactly what I mean. It looks like most VR rigs these days are using some sort of control thing that you hold in your hand. Doesn't look like you could type (with more than one finger of each hand) and hold it at the same time.
On the other hand, maybe lightweight haptic gloves are a thing already and I just don't know about it.
Gloves aren't really a mainstream consumer product yet in a way that you'd expect in the future. When I'm typing in VR, I have to put my controllers down to the side of the keyboard. Easy to pick them back up though. It certainly would be nice to have the keyboard tracked so I don't have to slide my hands on the desk to look for it, but once I grab it, typing is fine.
There are some excerpts in other comments, but it's essentially a dense brain dump for almost 2 hours. I dont think you can get a meaningful "tl;dr"-style summary short enough that you wouldn't just ask tl;dr again.