Jonathan Blow on Deep Work: The Shape of a Problem Doesn't Start Anywhere

Поділитися
Вставка
  • Опубліковано 1 кві 2018
  • Support the project ► / on_doubt or ► www.paypal.me/ondoubt
    (Chapter markers below) Jonathan Blow talks about his life-long interest in programming, and how it is influenced by focus on craft, improvisation and intuition. He talks about the deep work required to manage complexities and create meaningful work - both as game designer (Braid, The Witness) and as designer of a new programming language (Jai).
    CHAPTERS:
    * About Programming: Craft, Improvisation & Intuition (4:01)
    * Establishing a Programming Language: JAI (12:27)
    * Finding a Balance: Beyond Beauty and Simplicity (15:21)
    #ondoubt publishes videography portraits with creative minds of all fields. Support it by subscribing to this channel, or at / on_doubt
    Special thanks to Siolo Thompson and Andrew Ko. Recorded in Seattle, October 2017. Thanks to all project patrons: Patrick Tejada, Adam Nogueira Hadar, Matthias Glöckner, leafthief, MidiRiots, Andreas Varga, Ted Lemon, Black Heart Press, Lukas Kalmar, Philippa Shepley Annamaria Kowalsky, Matej 'Retro' Jan (Retronator), Dean Jürges, Phil Dougherty - and my parents: Leo & Angelika Bazant-Hegemark.
    (c) Christian Bazant-Hegemark

КОМЕНТАРІ • 163

  • @calrsom
    @calrsom 5 років тому +174

    I highly respect Jonathan Blow. He is honest, practical, and expresses his thoughts eloquently.

    • @pythonxz
      @pythonxz 5 місяців тому +6

      Most of the time. He tends to be a bit arrogant.

  • @silverquick32
    @silverquick32 6 років тому +121

    When he says "this one is hard to explain..." you know the best part is coming. Valuable insights

  • @thoughts0utloud
    @thoughts0utloud 2 роки тому +20

    I always come back to this video. I don’t know anything about programming. This just applies and helps me with my own creative process.

    • @OnDoubt
      @OnDoubt  2 роки тому +1

      Thank you! 🖤🖤🖤

  • @jakesmith579
    @jakesmith579 Рік тому +14

    I love hearing Jon speak because when he talks about programming or development he never names off any projects, languages, software, operating systems... only the point he wants to make and the words you need to hear!

  • @drcx3
    @drcx3 4 роки тому +28

    This guy is pure genius. You might like or not what he says, but you can't avoid admiring him. We definitely need more people like him.

  • @Spookyhoobster
    @Spookyhoobster 4 роки тому +193

    This is a problem I have whenever I have to do programming for other people, and I think it's that has sunk it's roots into how the modern economics works. The problem being the "reasons why you shouldn't make a programming language" kind of mindset. Everything today revolves around reaching some arbitrary short term turn around time for the sake of growth. Forget about trying to actually make some sort of innovation or rooting out some inefficiency, just keep things afloat and don't rock the boat.
    Which is so weird. I always saw the birth of "modern tech" as a bunch of nerdy-ass cowboys taking risks, but nowadays it either feels so far from that, or a sort of "fake" version of it.

    • @NihongoWakannai
      @NihongoWakannai 3 роки тому +15

      Companies like making money and avoiding risk, who'da thunk it

    • @Nersius
      @Nersius 3 роки тому +19

      @@NihongoWakannai Except they can be so short-term and self destructive in their thinking and mindlessly follow degenerative standards.

    • @NihongoWakannai
      @NihongoWakannai 3 роки тому +31

      @@Nersius long term thinking doesn't benefit you when the long term never comes. It's easy to sit back from your armchair and think "wow, this company never thought about their plan past 5 years" but that may be because that entire time they were figuring out how to even last 5 years in the first place.

    • @Nersius
      @Nersius 3 роки тому +12

      @@NihongoWakannai I don't just mean it in terms of years, but mere months. Companies will make dumb decisions just so that their quarterly results will look better.

    • @rabbitcreative
      @rabbitcreative Рік тому +4

      > Forget about trying to actually make some sort of innovation or rooting out some inefficiency, just keep things afloat and don't rock the boat.
      I feel this. I rocked the boat. Unemployed.

  • @TheVnom
    @TheVnom 6 років тому +79

    I know the feeling. Doing math, sometimes you look and just start computing. After 30 mins of writing towards the goal, youve computed or proved what you needed, but you need to reread yourself to understand what you did. Its like the unconscious takes over.

    • @OnDoubt
      @OnDoubt  6 років тому +19

      This happens in a lot of disciplines apparently - independently of the field their in, interviewees for this channel have mentioned it.

    • @Petru228
      @Petru228 5 років тому +26

      I believe it's what they call flow.

    • @abigguy8364
      @abigguy8364 5 років тому +27

      Kurt Vonnegut said in an interview (when he was like 80yo) that he'd sometimes look back at his 1970s work and just think "How the hell did I do that?"

    • @Maccelerate
      @Maccelerate 4 роки тому +3

      Plato called it the world of Forms. Heraclitus called it Logos. Gnostics call it the Akashic Records. Christians call it the divine mind of God.

  • @oldsoul3539
    @oldsoul3539 4 роки тому +53

    This should have been called "Jo Blow on Flow"

    • @bilinguliar
      @bilinguliar 2 роки тому

      Jo Blow on Flow as described by Old Soul.

  • @wessmall7957
    @wessmall7957 6 років тому +103

    Jon motivates me to never give up on game development. He is a revolutionary. The future is bright.

    • @dacealksne
      @dacealksne 5 років тому +6

      yes. he made 2 games, which nobody would have bought if not for the artists. artists didn't made millions though, they got shitty wage. this is truly revolutionary bright future.

    • @OnDoubt
      @OnDoubt  5 років тому +56

      Why the hate? Someone has an idea, hires an artist, pays the artist. It seems like a very basic, straightforward way of making business.

    • @bogdang8759
      @bogdang8759 5 років тому +12

      @@dacealksne do you know for a fact that the artists got way less money than Blow himself? Or are you speculating?

    • @shavais33
      @shavais33 4 роки тому +4

      ​@@dacealksne I don't think I quite share your hate but I absolutely agree with your general point. I'd like to see a practice arise of putting together teams of workers that share very substantially in the after expenses revenue from commercial efforts in general. While I recognize that experience does show that 1 person in 1,000 really puts in the necessary energy and effort to make a substantial success of a given money making effort, and the results of the efforts of those relatively few people end up feeding just about everyone else, I still don't like the hierarchical way in which our society organizes private ventures. I'd like to see a rise of more leaderless round tables, more consensus based decision making, and more revenue sharing models that puts the most money in the hands of people who are voted by the entire involved group as being perceived to have contributed the most value to the effort.

    • @Lestibournes
      @Lestibournes 3 роки тому +32

      @@dacealksne an artist could hire programmers too. It's a question of who has something he wants to get done and willing to pay for it, and who's willing to take up the offer. Everybody wins. Envy is destruction.

  • @romaingauthier2653
    @romaingauthier2653 5 років тому +115

    So far most of the criticism I've come across towards Jai is criticism towards Blow himself and is along the lines of "As a programmer with 30+ years of experience, I don't like Jonathan Blow and his games, so this language will fail". Complete ad hominem. I think he's designing Jai from a place of necessity but also humility.

    • @OnDoubt
      @OnDoubt  5 років тому +11

      Thanks for your comment, Romain. I think you nailed it perfectly!

    • @Muskar2
      @Muskar2 11 місяців тому +3

      Late reply, and I don't work in the game industry, but I think there's valid criticisms of Jai. I've heard several people say Jai's downfall may be release timing - and that competitors like Zig will beat it for that reason. Jonathan Blow is definitely smart, and I'm glad both that he exists and that he likes sharing his coding adventure so publicly - but I also think he sometimes makes design assumptions (and broad industry claims) based on selective notions of software history and limitations. And I think, like many entrepreneurs, he needs to get better at delegating work at scale, if he wants to make something that has a bigger impact. Much of his work seems a bit niche - which is fine, if that's his goal - but I don't think it is.

    • @7th_CAV_Trooper
      @7th_CAV_Trooper 4 місяці тому +3

      As a programmer of 30 plus years I identify with Jonathan and love that he sometimes challenges my beliefs. Jai might succeed and 8f it does it's because Jonathon is awesome.

    • @____uncompetative
      @____uncompetative 4 місяці тому

      @@7th_CAV_TrooperJonathan is fundamentally making the wrong thing (a language where the programmer's fine grained control of memory management is of primary concern). If he was having fun doing this (and not hurting anyone else), then that would be fine, but although him making Jai isn't hurting anyone else it has cost him $20,000,000 which he will not recoup from his pathetically dull block-pushing puzzle game _SOKOBAN._ I watch some clips of his Twitch programming streams and he is often infuriated. He doesn't seem to be having fun. I hope he doesn't get dragged into superfluous feature creep by listening to the impractical wish list of his beta users. AoS DoD with non-boustrophedonic declarations and type inference and dynamic memory in static arenas which free as you exit the activation record of referentially transparent functions that can return multiple values and a success/failure state would be of some utility, but quasi weak Rust memory ownership with fail-if-no-code-coverage compiler checks isn't safe or robust, but hacky. Hopefully, the remake of _Braid_ sells well, and he gets onto making a decent game. I wouldn't even release _SOKOBAN._ It is trash.

  • @baptistelasbats3952
    @baptistelasbats3952 4 роки тому +8

    a guy with vision, he knows what he's trying to make, and puts all his effort in accomplishing the core goal that matters in his work. This is what's lacking in many games currently

  • @TheR971
    @TheR971 5 років тому +14

    6:30 That's one of the best explanations of what programming and, to an extent, math feels like.

  • @PaulFurber
    @PaulFurber 2 роки тому +5

    Ah, getting into The Zone. Well understood in many contexts but the depth and intensity of it when coding is on another level.

  • @judgedbytime
    @judgedbytime 5 років тому +63

    J.Blow critics often never made it far enough to understand why he does things the way he does.

    • @OnDoubt
      @OnDoubt  5 років тому +22

      I think so too. Yet it's mostly about an inability to listen, because he's quite transparent about intentions, motivations etc.

    • @SaHaRaSquad
      @SaHaRaSquad 3 роки тому +2

      @@soulripper31 Well, don't watch his videos then. He has strong opinions but he also has a lot of experience to back them up and a great way to communicate concepts.
      "He's also misogynist and racist."
      Any source on that or is it again just your judgemental side shining through? All I could find is that at one point he was criticised by right-wingers for pointing out potential misogyny and a couple years later some people got butthurt for him opposing cancel culture. If you mean that then oh boy, I'd like to have that as the biggest problem to complain about lol.

  • @BubblegumCrash332
    @BubblegumCrash332 3 роки тому +2

    First thing looked up but couldn't find was a video of Jonathan Blow dancing

  • @gayan1742
    @gayan1742 3 роки тому +2

    Semantics before aesthetics is a good reminder. I too found less aesthetics help focus better when designing as it minimizes distraction. It helps focus on what really matters.

  • @adamschlinker972
    @adamschlinker972 3 роки тому +69

    "People are spending 8 hours a day of their life working with something ugly. Doesn't that matter?"
    Wow....this is a really great thought. Sometimes we make things needlessly complicated. I think it's an old school like of thought, like the whole "you've gotta work in shitty conditions and pay your dues!" But like ...why?

    • @jeffwells641
      @jeffwells641 11 місяців тому +1

      Something I just learned recently is a lot of very good developers will design some solution in their favorite programming language, and then once they've got a good solution they'll translate that into the language they're required to develop in for whatever reason (company requirements, patients requirements, features that make it the best fit, whatever).
      I realize this is just the somewhat old concept of rapid prototyping, but I didn't think anybody actually did that. What I've seen is people just sit down and drudge through the whole program in the final language.
      Obviously to do this efficiently you need to be very good at both languages, or else your translation work will take just as much time as the original problem solving, but it seems like this is the answer people have come up with to the "uncomfortable chair" problem.
      I'm not a developer but I have a small understanding of coding, and this just kind of blew my mind when I discovered it.

  • @calumlindsay
    @calumlindsay Рік тому +3

    "If you put your attention deeply into everything all the time, you would never get anything done" This is the story of my life! 😂

  • @mavhunter8753
    @mavhunter8753 5 років тому +7

    Jon Blow is such a smart man. I admire his thinking.

  • @PartScavenger
    @PartScavenger 5 років тому +9

    I love that his approach to developing is like painting or other art. This is what people ahead of their time look like. Blow is the Van Gogh of developing.

  • @DavidDolynny
    @DavidDolynny 6 років тому +26

    johnathan blow is perhaps the smartest person I have ever heard

    • @khaoscero
      @khaoscero 5 років тому +9

      Listen to some of Carmack's talks on programming. Blow himself says Carmack might be the smartest programmer out there.

    • @SETHthegodofchaos
      @SETHthegodofchaos 5 років тому +7

      I love how open he is about his personal experiences. Sometimes people like to call that weird or pretentious, but I think in this day and age, this is the best trait someone can have. Trying to understand how the psyche works and how to reflect on yourself and others is far more valuable than any material bullsh*t is thrown at you. He is clearly living an interesting life.

    • @OnDoubt
      @OnDoubt  5 років тому +9

      Plus! Recently someone told me: "after your video of Blow, I realized it WAS him, in this open impro class, a year ago!" 😁

    • @SETHthegodofchaos
      @SETHthegodofchaos 5 років тому +1

      @@OnDoubt :'D

    • @srijanpaul
      @srijanpaul 4 роки тому

      Bob Nystorm , Perv Vognsen are the programmers I really look up to

  • @okal7706
    @okal7706 2 роки тому +1

    Exceptionally said.

  • @bibliusz777
    @bibliusz777 4 роки тому +1

    wow. so much inspiration

  • @MikaelIsaksson
    @MikaelIsaksson Рік тому +2

    Really interesting hearing someone put words on that experience. I have been programming for 39 years and really can relate to this.

  • @RussellMark17
    @RussellMark17 4 роки тому +2

    I am writing a programming language myself. this artistic flow state has happened to me once or twice before. I was similarly shook when it did. This is really validating to hear!

  • @pizzasatellite5016
    @pizzasatellite5016 3 роки тому

    Completely agree with, on a small team basis, testing hard on the highest possible points of failure and having others dwell on minor issues during prototyping...so frustrating

  • @codesymphony
    @codesymphony 10 місяців тому

    love both his games but never actually heard any of his talks. this is eye opening

  • @waterguyroks
    @waterguyroks Рік тому +1

    7:22 I've had that exact experience with other creative endeavors, namely with making music. It's something I desperately want to understand and learn to channel effectively. It feels like I get into that maybe once every couple of months and it's this beautiful, dreamy state I wish I could live in. If I try to force it it just doesn't come.

  • @Asthenar
    @Asthenar 6 років тому +6

    Thank you! :D

  • @7thfleetOne
    @7thfleetOne 6 років тому +16

    This video is fantastic, thank you so much for this.

    • @OnDoubt
      @OnDoubt  6 років тому +2

      Thanks! I'm glad so many people enjoy it.

  • @boomerrawlings
    @boomerrawlings 3 роки тому +3

    What a beautiful video and a beautiful mind. He’s just as lost in his mind as we are in his work and it’s seriously so interesting.

    • @OnDoubt
      @OnDoubt  3 роки тому +1

      Thanks! It was really nice getting to know him.

  • @tinkeringengr
    @tinkeringengr 5 років тому +1

    what a dope channel, happy to find it!

    • @OnDoubt
      @OnDoubt  5 років тому

      Welcome to the dope channel! 🤘

  • @xvidcap
    @xvidcap 6 років тому +1

    Thanks for the upload. Much appreciated. :-)

    • @OnDoubt
      @OnDoubt  6 років тому

      You're welcome! The channel features portraits from creatives from all sorts of backgrounds - maybe there's more you enjoy 🎉

  • @evadecaptcha
    @evadecaptcha 8 місяців тому

    As a programmer (not on the level of Blow), I agree, this is very well put by Jonathan Blow. He's actually verbalized things about myself that I didn't know how to describe before.

  • @someotherpotatoe5371
    @someotherpotatoe5371 6 років тому +6

    You deserve so many more subscribers. Thanks for the quality content!

    • @OnDoubt
      @OnDoubt  6 років тому +1

      +Someotherpotatoe aww. Thanks so much for this!
      The channel only exists since October, so there's that.
      Plus it mixes so many fields - curating, painting, surgery, gamedev, puppetry, auctioneering etc - every new video also makes people unsubscribe.
      ​​¯\_(ツ)_/¯
      It's ok though. You know, I used to curate fine arts exhibitions - events that are always geographically bound. 200 "viewers" (guests) we're all you'd ever get. So every new video upload here is awesome, especially when it's thousands of views. 😋 📈
      Plus this is my own baby now. #freedom

    • @someotherpotatoe5371
      @someotherpotatoe5371 6 років тому +1

      I see, that's cool. Well keep it up man, your channel is great and I'm excited to see what you do in the future! Good luck!

    • @OnDoubt
      @OnDoubt  6 років тому

      Thanks!

  • @UngodlyDev
    @UngodlyDev 6 років тому

    the last 2 min are where all the value in this talk was, for me

  • @skaruts
    @skaruts 3 роки тому

    10:03 I think that would be what's known as Stream Of Consciousness. Some artists, and also writers, like to do that. I love doing that in writing; I find it fun to just go with the flow. Though I often end up at a point where I blank out and stop.

  • @EricMahler
    @EricMahler 6 років тому +15

    just discovered your channel, this is good stuff!

    • @OnDoubt
      @OnDoubt  6 років тому +1

      +Eric Mahler welcome to my tiny world! 🌍

  • @Void-uj7jd
    @Void-uj7jd 5 років тому +2

    interesting stuff on the psychology of programming, great video

    • @OnDoubt
      @OnDoubt  5 років тому

      Thanks! Glad you enjoyed it.

  • @Dexterdevloper
    @Dexterdevloper Місяць тому

    My mentor.

  • @jonasferencz8569
    @jonasferencz8569 6 років тому +41

    Improvisational dancing? Such an interesting human being.

    • @nanthilrodriguez
      @nanthilrodriguez 4 роки тому +2

      Lot's of engineers dance Argentine Tango, which is an improvisational dance. I was kind of surprised when I recognized that in particular, most of the leaders are engineers. That idea of spontaneously deciding the shape, dissecting the structure of the available positions, and ad hoc combining them into a new shape every time, it is a lot like the sensation of programming.

  • @RedPlayerOne
    @RedPlayerOne 6 років тому +7

    WOO thank you! :)

    • @OnDoubt
      @OnDoubt  6 років тому

      +RedPlayerOne sorry it took so long. Had to wrap my head around video editing first :)

    • @RedPlayerOne
      @RedPlayerOne 6 років тому +1

      No problem, good work! So is this, plus the other vids, the entirety of his interview?

    • @OnDoubt
      @OnDoubt  6 років тому

      +RedPlayerOne not by far - we talked for about 90mins altogether. The actual conversation had a slightly different flow, probably also because we never met before.
      At the moment, this is it though - the other parts (company management, doubts, experiences) cumulatively didn't touch ground as strongly and concisely​ as his many-layered thoughts about deep work, put together in this way now.
      I hope this makes sense!

  • @user-cn4qb7nr2m
    @user-cn4qb7nr2m 6 років тому +6

    Haha Improvisational dancing!) Me too!(littl diffrnt prob tho lol) Love this guy

    • @OnDoubt
      @OnDoubt  6 років тому +1

      It's! 👯 • All!💃 • Connected! 🕺

  • @deaththink
    @deaththink 2 роки тому

    great

  • @elemstuff
    @elemstuff 11 місяців тому

    5:34 This !

  • @c0xb0x
    @c0xb0x 5 років тому +1

    Jonathan Blow has fantastic skin.

  • @87gn199
    @87gn199 4 місяці тому

    As someone that's fairly visual, I always thought I didn't think like the "typical" programmer. I always had to visualize the program. He seems to touch upon it here. Not sure if others just never described it as visualization or if it's not as common is programming.

    • @sp123
      @sp123 2 місяці тому

      I think the lack of visual training material keeps people out of stem

  • @swifton
    @swifton 6 років тому +2

    Thanks a lot! Could you also upload the full unedited version? Or share it in some other way?

    • @OnDoubt
      @OnDoubt  6 років тому +21

      Sorry, can't do that. I only publish edited versions approved by the interviewees.
      The project is set up to let everyone mumble away, in an atmosphere of trust - knowing that none of this goes online before they could review it.
      I come with pages of questions, and very diverse topics - it's not a standard interview. Interviewees sometimes take half a minute before answering, and sometimes return to a question twenty minutes later. I need their trust, especially sincethey often don't know me. It's my only currency.
      It might change in the future, but the roughly thirty interviews conducted so far, had this as their shining beacon. Can't change that retroactively.

  • @dekutree64
    @dekutree64 9 місяців тому

    13:18 We are using the same languages for math and music as 100 years ago. And I don't like either of them, so it puzzles me how there haven't been more attempts to create new ones. I think C will always be around as "one step above assembly", but higher level programming languages seem to be much harder for people to agree on.

  • @locomotivere4497
    @locomotivere4497 4 роки тому

    things change

  • @wacky.racoon
    @wacky.racoon Рік тому

    He reads China Mieville ! cool :)

  • @rauchu5861
    @rauchu5861 10 місяців тому +1

    this thing
    17:15
    is so complicated people are spending
    17:18
    you know eight hours a day for their
    17:21
    life dealing with something ugly like
    17:25
    doesn't that matter I think it does I
    17:29
    think it mattered for me for sure

  • @wilhelmsarasalo3546
    @wilhelmsarasalo3546 Рік тому

    I used to get too tired to be productive and then think about it lightly while falling asleep. Then sometimes I would dream about it, remembering the dream, usually not. Then, when I got back to work (remembering dreams or not), it would just flow out of my fingertips to the keyboard, previous day's problems solved, how I did it, I have no idea, but it works. I can also dig into it and say aha, that is how I did it. Lately my dreams have usually been about attempted gaslighting, mostly by lawyers. This kills the productivity that they are after.

  • @Decimation001
    @Decimation001 3 роки тому +1

    God this is so fucking accurate and based

  • @____uncompetative
    @____uncompetative Рік тому

    10:00 I've had that experience many times when I have been painting. The problem is that I don't feel the result is my own work. I didn't rationally decide to make it that way as my brain was not engaged in a conscious way at any point during the experience of 'Flow' (see Mihaly Csikszentmihalyi for more on this). My video game designs are similarly organic products of a "flow state" of consciousness, and were I to analyse why I was choosing one feature over another in the design I think that I would become painfully introspective and self-conscious and unproductive as I would not be able to simultaneously feel my way forward into the unexplored dynamical space of possibilities (much as I feel my way forward into the unexplored aesthetic space of possibilities when I am painting), and critique my process without interfering with it being the free unfettered process it is. Self criticism actually helps me in my writing, with the interrogation of my arguments or the exploration of my characters being a very necessary constraint, "out of which grit the oyster can form some pearls". Programming is more like writing, and it can dictate the correct direction that a project should take, with 'bugs' (i.e. things that deviate from the desired game design specification) sometimes being more fun to play with than you would have envisaged, were it not for the fact you have a dynamical system that now reifies it, and you are free to play that version of the game rules. This can lead you to abandon your desired game design idea and pick this 'mistake' instead, as it wasn't that the program didn't run, but that it didn't conform to the specification, and when the program is its own _de facto_ specification of an alternative game design, and that design may be better than what you were thinking of doing, then it is trivially easy to keep that new design around as well as complete the original (without the bug), just to see if the original was better. You do not get to copy an oil painting half way through the process, to explore some side idea, and still have the original painting at the point at which you got distracted. This is probably for the best as an aesthetic space is one of progressively restrictive constraints of marks already made, or marks made that assert themselves over the marks they occlude and erase (yet which inspired them), and not something with a temporal component, like writing which can like programming conjure a dynamical theatrical space of possibilities involving multiple interacting characters in an environment which can operate according to (self-consistent) fantastical rules. I have never "tuned out" when programming, as Jonathan described here, but then I had my code crash and then needed to figure out why as I was being super self critical whilst writing the code and imagining all the ways it could potentially go catastrophically awry, so the only things I experience are "bugs" which don't crash the computer and just yield a different dynamical space of possibilities than I had sought (and which may be ultimately more desirable), so they are only "mismatches against my intentions" and it is possible that my intentions can change if I stumble upon a more interesting dynamical system with richer gameplay.

  • @nexovec
    @nexovec 3 роки тому

    Making a tool as simple and universal as possible is good, but sometimes the user expects a more complex interface than you come up with for the exact reason that they want the tools they use to be as simple and universal as possible, but not in the way of mathematical modeling, but maybe in terms of workflow and creative potential or some other thing. But the common theme is there.

  • @stunthumb
    @stunthumb 5 років тому +5

    Sometimes when learning, you have to throw the whole thing out and start over. Sometimes when you go to add in something you prepared earlier, you are better off just scrapping it and starting over. I start over a lot, but really its how you build the coder 'muscle-memory' - its how you develop your own problem solving style and workflow. I mean, you might take a while to learn something, say a robust player collision system. First time you code that it will probably be a mess, you'll have to add bits here and there and it'll end up like so much spaghetti. But then the next time, start over - and it's more compact, more complex but more capable and manageable. But then the next time, start over - and you'll be coding the system from start to finish with no compiles inbetween, just like JB here - coding muscle memory is a thing. And it's not just for a function or a snippet of code either - it depends on your own experience but hell, I've written entire particle systems - hundreds of lines of code. The more you code, the better you get - the more you start over, the better your code gets... but don't stop for 1 second, because your brain made writing that code more efficient and less time consuming so that you could spend the time learning more or improving other areas. Necessity is the catalyst to learning and a brain is a muscle - this is especially important for programmers to remember... I mean we can be arrogant, and often we can only ever teach ourselves something and that is quite difficult to understand. I think its funny when you hear... 'Coding your own games is easy' - like does anyone actually think that programming is easy? - that anyone can learn it? - that it's accessible to all people? - or is that just something people say to make programmers feel a bit more normal.... I mean maybe that's unnecessary - maybe it would be better to just be real and tell people that if they aren't already learning to program, they just won't. Know what I mean? - the phrase ''I want to learn...'' isn't in a programmers vocabulary - they're already learning and not bothering to tell you about it :D - anyone who says they want to learn something tends to be someone who already can learn something and choses other activities instead.

    • @daleowens7695
      @daleowens7695 4 роки тому +2

      Every piece of "good" code I've written was at least the 3rd revision of something. 1st attempt probably didn't work or even have a chance of working. 2nd attempt worked because of the organizational insight I gained from the first failure but eventually devolved into a spaghettified mess with bits and pieces stapled and duct taped in no meaningful organization. 3rd attempt is like the synthesis of all previous lessons learned.

    • @daleowens7695
      @daleowens7695 4 роки тому +3

      I find in my professional work, I never make it past the 2nd attempt. Pressure from management to produce keeps me from producing my better code. My personal projects are by far higher quality but usually take longer

    • @stunthumb
      @stunthumb 4 роки тому

      @@daleowens7695 Likewise Dale, I think its like tidying your own mess compared to tidying someone elses.

  • @RedPlayerOne
    @RedPlayerOne 6 років тому +1

    Edmund McMillen would be a good interviewee!

    • @OnDoubt
      @OnDoubt  6 років тому +1

      That would be amazing. I'll wait for the right opportunity =)
      It takes some luck for there to be mutual interest in interviews like the ones published here - it's such a tiny channel really. But I'll try and stick around.
      Catch my luck, as Tarn would say.

  • @evenstevens280
    @evenstevens280 5 років тому +1

    One thing a lot of programmers seem to do is say "right" when explaining something. I wonder why that is...

  • @SuboptimalEng
    @SuboptimalEng 4 роки тому +6

    Nothing to see here, just JB talking about attaining ultra instinct for 20 minutes

  • @wasdwasd5234
    @wasdwasd5234 6 років тому +1

    is this blow's house?

    • @OnDoubt
      @OnDoubt  6 років тому +1

      Nope. We recorded at a friend's place.

  • @thebluriam
    @thebluriam 5 років тому +62

    Joe Rogan needs to have him on his podcast damnit!

    • @HaampiiH
      @HaampiiH 5 років тому

      idd

    • @StephNuggs
      @StephNuggs 5 років тому +8

      "Pull that clip up when I play Mario Kart, Jamie"

  • @aaronjumpa9666
    @aaronjumpa9666 3 роки тому

    I want you and Brando Sanderson to work together and experience ever

    • @____uncompetative
      @____uncompetative Рік тому

      Brandon should design a videogame.
      Jon should write a novel.

  • @Kenbomp
    @Kenbomp 3 роки тому

    Some programming happens and you don't know why. It's discovery. Some days your brilliant some days you suck. Programming allows ideas to be tried.

  • @MrAbrazildo
    @MrAbrazildo 11 місяців тому

    What are you in doubt, mr. On Doubt?

  • @jamen1993
    @jamen1993 6 років тому

    The everlasting mysterious "thing" 😁

    • @OnDoubt
      @OnDoubt  6 років тому +1

      Oh yes. Don't we love that for being around :))

  • @sohamjoshi9527
    @sohamjoshi9527 Рік тому

    but if you are not able to explain what that internalized thing is, what good is it ? Eg: great minds were able to explain why heat flows from hot to cool by not just saying it just happens that way naturally, but rather put it in concrete terms of entropy etc. Its absolutely useless when you just say you go into a trance and come up with a program in 20 min.

  • @mgetommy
    @mgetommy 5 років тому +3

    wanna see some of that dancing

  • @antonsimkin
    @antonsimkin 2 роки тому

    man i cant even memorise any oop pattern

  • @bepd
    @bepd 6 років тому +3

    Won't someone please save the spines on those poor books.

    • @OnDoubt
      @OnDoubt  6 років тому +2

      Recording happened in someone else's home. Books live very appreciated and happy there. :)

  • @denisblack9897
    @denisblack9897 Рік тому +3

    my personal brand of andrew tate

  • @przemyslawmalon4345
    @przemyslawmalon4345 6 років тому +1

    "Sausage Making" book lol

  • @dandymcgee
    @dandymcgee 6 років тому +6

    The visuals were nice at first.. but by 5-6 minutes in I had to stop watching and just listen because I couldn't pay attention to what Jon was saying with all the random imagery and distracting facts flashing on screen. Food for thought.
    Edit: The imagery at the end regarding Braid and The Witness were fine because they were in context and weren't distracting. The random time lapses of his streams were totally out of place and unnecessary IMO.

    • @OnDoubt
      @OnDoubt  6 років тому +5

      In the best of cases, the visuals expand the semantics. In the worst, they are distracting. Sometimes they are both.
      Structurally​, the overlays also exist because of the heavy editing of the actual interview footage.
      I experimented with podcasts, where visuals aren't required - the interviews work best in podcast format, because there's no distraction.
      But then you lose out on all gestures and energy of the interviewee. As it stands, I need overlays to get beyond the heavy editing of the interview.
      Let's see how it develops over time.

    • @DavidDolynny
      @DavidDolynny 6 років тому +1

      Loved the images near end of video of braid and witness dev, ty

    • @dandymcgee
      @dandymcgee 4 роки тому +1

      @@OnDoubt Appreciate the thoughtful response.

    • @OnDoubt
      @OnDoubt  4 роки тому

      You're welcome! 🙌

  • @hasen1957
    @hasen1957 6 років тому +1

    7:08 His description of the programming activity is super weird. I don't program in this way. When I program I have a sort of mental image (kind of like a diagram?) and I have to translate it into code. Sometimes the image is so high level that I have to jot things down on paper (so I can see the bigger picture) and then translate from paper to code.
    But I'm INTP.
    I guess he is an INTJ?

    • @OnDoubt
      @OnDoubt  6 років тому +5

      +hasen195 I programmed games for six years, for Rockstar - and my impression definitely was that everyone had their own way to go about it. It depended so much on the scope of the problem, the deadlines etc.
      Today, as a painter, I think it's the same: everyone mostly uses the same tools (brushes, pigments), but the high level approaches differ tremendously.
      I think that's totally normal. Personally, I really liked his explanation. :)

    • @Nozdrum
      @Nozdrum 6 років тому +8

      Myers-Briggs is a really bad (low reliability, dodgy definitions and very littel utility) personality indicator.

    • @OnDoubt
      @OnDoubt  6 років тому

      Well, thank all Dwarven Gods that Saint Thomas was eventually consulted instead 😋

    • @lvl5popcap
      @lvl5popcap 6 років тому +1

      In another interview, he mentions that he does not have a visual imagination (aphantasia?) so that might influence the process he describes.

    • @Trunks7j
      @Trunks7j 5 років тому +2

      Kind of what i love about programming though, it reveals how wildly differently people conceive of it, which is made possible because of how abstract it is.

  • @ThorIsHereGames
    @ThorIsHereGames 5 років тому +5

    Blow is articulate and has a deep wealth of knowledge. That said, I'd like to talk about his verbal tic where he often says "right?"
    This is a very common habit among smart tech guys when they are explaining things (at least in my experience as a software developer at several companies). I can understand why they do it. When you are usually the smartest guy in the room and have to explain complex thoughts to someone, it's reassuring to constantly make sure that your listener is still listening, keeping up, still on the same page. If you lose them at any point, then the rest of your explanation is worthless.
    However, personally, I find this habit extremely irritating. It makes it difficult for me to listen to people who talk this way. Most of the time that they say "right?" they say it after something that the listener would have literally no way of knowing whether it is right or not because it is a personal detail. Other times, the listener can't answer the "question" in any meaningful way because he is the one listening and is only learning about the ideas just now. It is telling that when people talk like this, they don't typically wait for the listener to actually answer the question, which implies that the question is not there to be answered. Instead, it's a way to fill space, to provide the speaker with a moment to pause and think about what to say next while maintaining the floor to speak. It's like a valley girl saying "like" after every other word. (Blow occasionally uses the "like" filler as well!)
    Some examples:
    "I'm going to the party tonight, and you are coming too, right?" - Appropriate, verifying information owned by the listener.
    "I'm going to the party tonight, right?" - How would I know, you're the one to decide that.
    "I reached my current programming skill in 2013, right?" - That's your own personal detail, I would have no way to know.
    "Therefore that's why C++ was developed, right?" - You're the one giving me new information, how can I possibly answer?
    "C++ is a clunky language, right?" - This is an opinion, it's awkward to weirdly force me to either immediately object or implicitly agree.
    "You're building a chair for people to sit in every day of their life, right?" - You're the one setting up an analogy, how can I possibly know what you are getting at yet?
    My impression is that people fall into this tic when they are a little unsure of how to explain something. I would strongly recommend that people identify this tic in their language and work to remove it as it serves no real purpose, it only serves to belittle and annoy.

    • @OnDoubt
      @OnDoubt  5 років тому +2

      Hey! Thanks for your thoughts. I wanted to clarify that the video obviously is heavily edited, so your ideas would better be "tested" on raw interview footage.
      For example, after I posed specific questions, Jonathan would think for a while - sometimes up to 30 seconds. These pauses are not in the final edit at all - but were a big part of the verbal experience for me: someone thinking, actually thinking, in front of a stranger with their camera.
      So: I'd have to dig out the original material, to see how often the tic you mentioned, actually appears -- we recorded around 90mins of video, so the statistics if based on the edit, could say more about my editing (in)capabilities than about the portrayed person.

    • @OnDoubt
      @OnDoubt  5 років тому +3

      But I do want to say that the encounter had nothing belittling at all; if anything, I felt empowered by it. I wanted to discuss his upcoming programming language, because back then there wasn't anything out about it other than his live streams. At the time of recording this channel didn't exist yet, so apart from my artist/PhD credentials (I'm self-employed as artist), there was nothing that would have implied that he'd ever answer my mails. I'm not a journalist either ;)
      For him to drive up to my friend's house to meet a stranger, to openly discuss ideas for such a stretch of time -- many would feel vulnerable by a 90min camera recording. He couldn't know what I'd do with the footage.
      So simple based on these facts, and the general tone of the interview, I have to say that Blow is an unusual, super smart, eloquent, inquisitive and curious, busy guy. I'd love to know more people like him.
      Sorry if my video didn't get this across.

    • @ThorIsHereGames
      @ThorIsHereGames 5 років тому +2

      @@OnDoubt Cool to get a response from the creator! My complaint is a little trivial and silly, call it a pet peeve. Blow is obviously an incredible developer and has many brilliant ideas. I don't mean or think that Blow intended to be belittling at all, he seems nothing but respectful and eager to share, clearly this is just his personal style of talking. I just find this particular "right?" tic irritating. And of course, for you as someone making the video, there is nothing to be done, you captured how he speaks accurately, which is all that anybody could ask. Thanks for the great video!

    • @alexkfridges
      @alexkfridges 4 роки тому +6

      I think you need to learn how to be less irritated by the minor habits of other human beings. We all have them. This is really not such a big deal, just chill. It's just a verbal tic, you don't have to literally respond to them as though they are a fully fledged question

  • @Dex_1M
    @Dex_1M 4 місяці тому

    I'll make a script/programing language designed specefically for me. to write code fast, efficent, and in simple language. the I'll fine tune a large language model that would use that script/Programing language. and me talking to it would look like aliens talking to each other but it would be something like "]function_build_shout_fire" change value inside it to 5 before pasting it. link ]... + ].. . an there is like this big script that the llm does. and it goes to everyone and changes it or manipulate it.
    this will make me write thousands and thousands of code in a short amount of time.
    the issue is opimizing the code. at the end of the day it's about optimizing it. and make it it effecent and last long.

  • @socraticmathtutor1869
    @socraticmathtutor1869 Рік тому

    "It's going to be an uncomfortable chair most of the time." Doesn't this all come back to code reuse? If a language is good at offering code reuse facilities, the chair will be fine. Most languages suck at offering code reuse, though, which is one of the main reasons why minimalistic design falls down.

  • @victorsantos1725
    @victorsantos1725 9 місяців тому

    This guy is hallucinating

    • @theascendunt9960
      @theascendunt9960 5 місяців тому +3

      Get on his level first. Then you can criticize.

  • @greed7513
    @greed7513 9 місяців тому

    do we NEED. ANOTHER. programming language.

  • @ChoiceOfIllusion
    @ChoiceOfIllusion 9 місяців тому +2

    "The Shape of a Problem Doesn't Start Anywhere": Please don't just quote the brain fart of a person who has made a few decent games as if it is the excretion of some ancient wise oracle. Apart from being awkward, vague and obtuse, if you read it in the context of what he was saying at 6:33 it is simply wrong. The entire point of breaking down a problem into smaller parts and then solving those individually is to provide us with an a clear starting point to solve each of those sub-problems. He actually seems to have mixed up his concept of the overall global problem we are trying to solve (ie create the game) and the multitude of local/specific problems required to accomplish the global. Jonathan does seem to have some useful things to say for fellow developers, but this worshipping of his so called genius by many people is just cringeworthy.

    • @jintz2
      @jintz2 4 місяці тому +1

      You are cringeworthy. But you knew this already.

  • @nahfamimgood
    @nahfamimgood Рік тому

    darn shame he thinks that women by biology are not as interested in tech as men lol.