Jonathan Blow Highlights
Jonathan Blow Highlights
  • 24
  • 192 341

Video

Jonathan Blow on Printing Out the Sound Player
zhlédnutí 3,6KPřed 2 hodinami
@jblow888 czcams.com/video/De0Am_QcZiQ/video.html
Jonathan Blow on Five 9's, Operating Systems and Software
zhlédnutí 8KPřed 4 hodinami
@jblow888 czcams.com/video/ZSRHeXYDLko/video.html&t
Jonathan Blow on how Technology is Going Backwards
zhlédnutí 4,4KPřed 7 hodinami
@jblow888 czcams.com/video/ZSRHeXYDLko/video.html
Jonathan Blow on Software and Waste from Unproductive Design
zhlédnutí 8KPřed 9 hodinami
@jblow888 Original Video czcams.com/video/ZSRHeXYDLko/video.html
Jonathan Blow on Temporary Storage and GC'd Language
zhlédnutí 6KPřed 16 hodinami
@jblow888 Original Video czcams.com/video/uZgbKrDEzAs/video.html&t
Jonathan Blow on why C++ is a bad language for games
zhlédnutí 27KPřed 19 hodinami
@jblow888 Original Video czcams.com/video/uZgbKrDEzAs/video.html&t
Jonathan Blow on how he's not just making a compiler but he's making a game.
zhlédnutí 7KPřed dnem
@jblow888 Original czcams.com/video/uZgbKrDEzAs/video.html
Jonathan Blow on Water Rendering With Casey Muratori
zhlédnutí 3,9KPřed dnem
@jblow888 @caseymuratori Video about a discussion of Jonathan Blow and Casey Muratori on Water Rendering in video games. original video czcams.com/video/vmUbL16JQcI/video.html
Jonathan Blow on how Negative Emotions can Spiral out of Control and Techniques to Help
zhlédnutí 918Před 14 dny
@jblow888 Clip from czcams.com/video/i7kh8pNRWOo/video.html
Jonathan Blow on Design
zhlédnutí 2,6KPřed 14 dny
@jblow888 featuring @caseymuratori original video czcams.com/video/4Qm0YQKg6Tg/video.html
Jonathan Blow on Crafting Interpreters
zhlédnutí 6KPřed 14 dny
@jblow888 @caseymuratori Original video: czcams.com/video/fIPO4G42wYE/video.html shout out to @AdamRezich
Jonathan Blow on Basic Blocking Compiler
zhlédnutí 5KPřed 14 dny
@jblow888 original video @caseymuratori featuring in video
Jonathan Blow on Draw Metrics
zhlédnutí 2,9KPřed 2 měsíci
Jonathan Blow on Draw Metrics
Jonathan Blow on Module Borders
zhlédnutí 7KPřed 2 měsíci
Jonathan Blow on Module Borders
Jonathan Blow says Stuff then Puts on a Jacket
zhlédnutí 5KPřed 2 měsíci
Jonathan Blow says Stuff then Puts on a Jacket
Jonathan Blow on Calling Functions
zhlédnutí 26KPřed 2 měsíci
Jonathan Blow on Calling Functions
Jonathan Blow on Stack Tracing and Errors
zhlédnutí 24KPřed 2 měsíci
Jonathan Blow on Stack Tracing and Errors
Jonathan Blow on Projected Rendering
zhlédnutí 4,9KPřed 3 měsíci
Jonathan Blow on Projected Rendering
Jonathan Blow on His Concerns in Coding
zhlédnutí 23KPřed 3 měsíci
Jonathan Blow on His Concerns in Coding
Jonathan Blow on Parenthesis and Parse Leaf
zhlédnutí 3,6KPřed 3 měsíci
Jonathan Blow on Parenthesis and Parse Leaf
Jonathan Blow on Designing His Own Programming Language and Game Engine.
zhlédnutí 11KPřed 3 měsíci
Jonathan Blow on Designing His Own Programming Language and Game Engine.

Komentáře

  • @32gigs96
    @32gigs96 Před 23 minutami

    Why are they conflating bnf with programming language semantics

  • @christophborowski725
    @christophborowski725 Před 40 minutami

    I have rarely heard so much bullshit in a presentation. Everything is generalized, seen in black and white and not questioned. Maybe he should implement a large application that processes huge amounts of data, is scalable, communicates with a large number of surrounding systems, takes security seriously, has to be constantly adapted to changing requirements, etc. Let's see how far he gets with his low-level approach from the past.

  • @filipg4
    @filipg4 Před 2 hodinami

    It's not network, it's not some imaginary latency, it's not magic hamsters. Stop making excuses people. Let's just admit that average software engineer does not understand what makes applications slow. Education on performance is very lacking and that's the one and only issue. No you don't have to hyper optimize your applications, just avoiding the dumbest possible ways to handle things will give you 10x speedups - and this does not take weeks of optimizations to achieve. You don't need to write C to care about performance of your application. Whatever your language, domain or project, you can make it faster and therefore more enjoyable to use.

  • @ViaConDias
    @ViaConDias Před 3 hodinami

    Everyone programmer I knew in the 80'ties and 90'ties did it because they loved it. It was almost purely passion driven. Most programmers I know today are in it for the low effort/high pay, cozy job. Nothing wrong with that but it does lead to a fundamentally different approach. The, often times, many layers of abstraction between the 'metal' and the code, of course, isn't helping either.

    • @rudypieplenbosch6752
      @rudypieplenbosch6752 Před 2 hodinami

      Exactly, there is a disconnect between implementation and understanding the hw it runs on, everything is abstracted to a high level, causing a lot of performance loss. Lots of programmers have no clue of assembly, you need to look at the generated assembly to understand how effective your code is using the underlying hardware. Todays programmers press compile and call it a day, with ever increasing hw performance you can get away with that only for so long. The abundance on new programming languages also has not helped, there is a loss of focus by all this choice, fundamentally these new languages have brought more abstraction and tolerate more clueless programmers.

    • @gruntaxeman3740
      @gruntaxeman3740 Před 2 hodinami

      Many abstraction layers in code are justified and they exists because lack of standardization.

    • @rudypieplenbosch6752
      @rudypieplenbosch6752 Před hodinou

      @@gruntaxeman3740 Abstraction is very usefull it is part of designing good architectures, within these architecture it does not have todo with standardisation, abstraction makes sense from a design perspective. Of course you need abstraction layers for all kind of things outside your design as well, to address HW, etc etc, and these layers do add to less efficient code, nonetheless i would not argue against these kind of abstractions. The kind of abstractions i am against are the ones used in "modern" programming languages, to assist clueless programmers, the ones that don't know how to handle pointers, cause memory leakage, don't know what memory allocation entails and freeing up memory, they write their programs in languages that treat them like little children preventing the children from making mistakes abstracting away basic concepts required when you write in C or C++. The kind if programms, programmed by these programmers with highly abstracted and protected languages, generate very inefficient code, of course i can write inefficient code in C too, but generally C and C++ programmers know their language and the relation with the HW it runs on, this is usualy not the case for high level languages.

    • @ViaConDias
      @ViaConDias Před hodinou

      @@gruntaxeman3740 Yes, it's not that some, or even many, of the abstraction layers aren't justified but it does remove the programmer from the underlying hardware to an extend where I see people today teaching low-level programming languages but not understanding the difference or ranges of a signed vs an unsigned integer, let alone memory allocation/boundaries/alignment/stack/cache/heap, intrinsics, etc. The OS is an abstraction layer in itself, which is why we don't use one when we need things to run predictably or fast. My point is not that they are inherently bad. My point is that even if you are working in an environment on top of a lot of layers (JS in the browser), you should still know how the hardware works and how your code get's from your environment to the hardware. If you do not know this, you end up not initializing your arrays with a size even in situations where you know the size at "compile time" or you write loops that iterate over date in a way that can not be optimized even by the best compiler. Thereby leaving many X performance on the table even though it would not have been any more difficult to write the code much more optimized.

  • @Salantor
    @Salantor Před 4 hodinami

    "Old man yells at cloud". Or, to put it differently, "I already accepted that everything sucks and he should too".

  • @mallninja9805
    @mallninja9805 Před 5 hodinami

    This was a strange op-ed decrying many things - abstraction layers, knowledge of implementation details, using black boxes, IDEs, programming paradigm tradeoffs, etc - but it has nothing to do with C++ being good or bad for _any task at all_ let alone for games...

  • @totem6064
    @totem6064 Před 5 hodinami

    Old man yells at cloud

    • @yessopie
      @yessopie Před 2 hodinami

      Except for the part where he is actually proposing and working on solutions... Not just complaining.

  • @gruntaxeman3740
    @gruntaxeman3740 Před 5 hodinami

    Jonathan Blow seems to ignore that CPU or GPU is not what is usually limiting. It is speed how fast data is transferred from volatile memory, non-volatile memory or in network, or latency. This has been reality for decades. However, amount of data is used in images or everywhere is increased because of higher fidelity so that makes things slower. Performance can be actually increased wasting CPU/GPU power to use more compression to minimize time wasted when moving data. Most obvious example is Jpeg images in web. They load much faster than uncompressed file formats. Instead of focusing CPU or GPU, it is better to focus how fast user perform tasks using software.

    • @mattymattffs
      @mattymattffs Před 5 hodinami

      Yeah, he's thinking about it as a game dev, someone that doesn't need to care about IO as much as other devs.

    • @filipg4
      @filipg4 Před 2 hodinami

      It's much simpler than that. Most software engineers do not have an intuition about what's slow and what's fast, you can make things fast in any domain, but people just do not have this knowledge. I've worked on everything from websites, web applications to low-level analysis software and even some embedded software, in most cases people do not care, and when they do their focus in the wrong place. Like trying to optimize some algorithm when in reality it's your memory that's messed up and causing a huge slowdown because CPU is busy doing nothing for most of the time. Education on performance is very lacking, where it stops for most people is at: switch to binary search if your element count exceeds XYZ.

    • @gruntaxeman3740
      @gruntaxeman3740 Před 2 hodinami

      @@filipg4 Focus should be code maintainability. When software runs slowly, then something stupid is usually done. Clean, maintainable code makes easier to spot if something stupid is done and makes modifications simple.

    • @DeeaA.-qu2bn
      @DeeaA.-qu2bn Před 34 minutami

      He is very aware of this and talks about it specifically in other lectures. This is just one clip

  • @cyanmargh
    @cyanmargh Před 6 hodinami

    It seems to me that the real reason that programs have become slow is not that people "simply forgot how to write high-performant programs", but that there is no longer a need for it. What is more profitable - to spend a month of development and cover 90% of customer's computers or to spend two or three months and cover 95%? Of course, the first one. I've been using jai for over a year now and I can say that it's a wonderful language and I'd use it instead of C (and especially C++) wherever possible. It really speeds up the development process (especially the refactoring part). However, sadly, if jai becomes successful, then instead of forcing people to write programs, people will have the choice of "spend a week to cover 90% of the market or spend two and cover 95%". Anyway, it's nice that this language (and especially its huge standard library) is better suited for "quick and dirty prototyping that then develops into a real solution" than python.

    • @nicolascage5774
      @nicolascage5774 Před 6 hodinami

      When will he finally release Jai to the public 😢

    • @Salantor
      @Salantor Před 4 hodinami

      I would argue that there was never a need for it, but after years of being exposed to slow stuff people just stopped to care. "Just buy w faster machine" is all that you need.

    • @SimGunther
      @SimGunther Před 2 hodinami

      I'm loving what Jai has done being one of the best curly brace programming languages. Just wondering the specific things about its design make it so engineers only spend a week doing the same reflectors in 2 months using other similar languages?

    • @DeeaA.-qu2bn
      @DeeaA.-qu2bn Před 29 minutami

      The problem is abstractions are getting higher (now we just tell AK ai what to program) but machines are not really getting faster. "But more cores" you say. All cores have to write to the same memory at the end of the day. If two cores write to the same memory address at the same time there goes your program

  • @friedrichmyers
    @friedrichmyers Před 8 hodinami

    I made my company's code simpler. And then more shit got thrown. So, I stopped doing it.

  • @youtubeenjoyer1743
    @youtubeenjoyer1743 Před 8 hodinami

    It doesn’t matter if a program is slow, when virtually all useful programs spend 99% of time waiting on network io. Games are mostly trivial programs writing into GPU memory. Real software looks very different to children’s games.

    • @aboliguu1168
      @aboliguu1168 Před 7 hodinami

      You have no idea what you are talking about. Games are one of THE most complex software systems out there. Sure, they don’t do that much io waiting (actually they do too but it’s not the main computation there), but neither does Pro Tools when i open it. What do you think a DAW is doing for 60 seconds when it’s opening? Surely nothing that couldn’t be avoided with a codebase that has a couple million lines less boilerplate

    • @drxyd
      @drxyd Před 7 hodinami

      What counts as "real software"?

    • @aboliguu1168
      @aboliguu1168 Před 7 hodinami

      @@drxyd probably enterprise java codebases and react

    • @jesse9999999
      @jesse9999999 Před 7 hodinami

      the vast majority of the kinds of programs he mentions in the talks (compilers, editors, photoshop etc) make few to no network calls

    • @theevilcottonball
      @theevilcottonball Před 7 hodinami

      When your program only waits on network io it is structured wrong. Maybe instead of sending and waiting for requests individually you should batch them up into larger requests or just a single giant one, maybe network io is not even necessary -- not everything has to be a web application -- or maybe you run all the code on the client side where it does only need to load once and then never talk with a server far away. What do you mean "virtually all seful programs", MS Word has a slow Math editor, Photoshop and GIMP take multiple seconds to start, and web applications and sites are now multiple megabytes making them slower (the average website is now larger than DOOM). I could say that my program spends most of the time in memcpy, then it is not the problem that memcpy is slow, the problem is that the program creates useless copies everywhere. When you spend time waiting on network io, you are probably making too many requests and you are not doing them in parallel.

  • @knuckles7410
    @knuckles7410 Před 11 hodinami

    Not sure I want to take advise from a guy who mainly made 2D puzzle games and who's last relevant work was 20 years ago but okay...

  • @rvdende
    @rvdende Před 12 hodinami

    its going backwards from his perspective because he uses windows.

  • @matthewrevell2706
    @matthewrevell2706 Před 14 hodinami

    The perspective from this minority of programmers that abstraction and high-level aspects of programming are "bad" is RADIOACTIVE.

    • @mallninja9805
      @mallninja9805 Před 5 hodinami

      I've seen a number of projects where they have to simply shrug their shoulders and start working around poorly understood behaviors that seem to be emergent properties of the specific mix of proprietary black boxes which nobody is willing to own or investigate. Whether that's "bad" or not is left as an exercise for the reader.

  • @Alsteraib985
    @Alsteraib985 Před 17 hodinami

    He will create a paradigm, Jonathan Oriented Programming.

  • @Alsteraib985
    @Alsteraib985 Před 17 hodinami

    This man will make a spoken language to talk about his compiler. Jonglish.

  • @kur0sh1
    @kur0sh1 Před 23 hodinami

    This is why i only code in assembly

  • @austecon6818
    @austecon6818 Před dnem

    When is this from?

    • @blarghblargh
      @blarghblargh Před 22 hodinami

      description says "Reboot Develop 2017"

  • @Kersich86
    @Kersich86 Před dnem

    yeyeye... this is all so cool pat on shoulder... why do i care if its not open source 😂

    • @9hoot789
      @9hoot789 Před dnem

      Because it's planned to be in the future (when it's actually fully featured and ready) alongside a full-feature product (Sokoban game) to prove its capability? Why are you even here?

    • @blarghblargh
      @blarghblargh Před 22 hodinami

      it's not closed source at this point yet, either. it's in very restricted beta still as far as I know.

    • @zanagi
      @zanagi Před 14 hodinami

      Not yet. Tbf its like a raw food in a newly opened restaurant. Not sure if it should be served yet, but we'll see.

    • @joseduarte9823
      @joseduarte9823 Před 11 hodinami

      @@9hoot789 true, though I can't wait to see Jon handle the toxic side of the open source community. I don't think he'll be able to handle it without doing a Torvalds

    • @maksymiliank5135
      @maksymiliank5135 Před 7 hodinami

      ​@@joseduarte9823Is he going to update the language after 1.0? Or is it like zig where they plan to never update after 1.0

  • @aniketbisht2823
    @aniketbisht2823 Před dnem

    C++ is not "afraid" of pointers. It enable you to automate resource management efficiently without loss of performance in most cases. And wherever you need manual control you can have it.

  • @tripplejaz
    @tripplejaz Před dnem

    As an artist, Jonathan Blow almost makes me want to be a programmer; the passion he has for his craft is infectious.

  • @eightsprites
    @eightsprites Před dnem

    Cool idea. I like it.

  • @techpriest4787
    @techpriest4787 Před dnem

    I wonder how this compares to Rust. I only know C# and C not C++.

    • @stysner4580
      @stysner4580 Před dnem

      You can't really do reflection in Rust, so you'd have to also metaprogram it in; like making macros that automatically allows getting some debug output from a struct. It's definitely possible but pretty complex (like it was to implement for Jai as well). The simplest solution would be just implementing the Debug trait which can be derived for a lot of types.

    • @RichardLofty
      @RichardLofty Před dnem

      Rust is trash for gamedev. Please stop following hype trains. In game dev you HAVE to be flexible and fast prototyping, fast changing the code. Rust is too strict which lessens errors, but slows change speed to 0.

    • @techpriest4787
      @techpriest4787 Před dnem

      @RichardLofty 1) I do need fewer iterations. I think more before and after. 2) I can get faster CPU. 3) CPUs are getting much faster these days in the first place. 4) Rust front end will receive a major update soonish to reduce compile times further. 5) I fail to see why I can not use slower compile time to slow down myself for a break too. You may not burn out but I do tress out over time. 6) I am not going to dissmis an entire language because "oh my gosh the compiler is too slow". C# compiles faster. And yet there are engines written entirely in C# which is far worse at run time. Like Space Engineers. Rust does not fail at compile time at least. Whether it be safety or speed.

    • @stysner4580
      @stysner4580 Před dnem

      @@RichardLofty You've never done gamedev in Rust, have you?

    • @youtubeviewerxx
      @youtubeviewerxx Před dnem

      @@techpriest4787 I don't think he was talking about compile times, but the time it takes the programmer to change the source code.

  • @mindasb
    @mindasb Před dnem

    Maybe a bit of a nitpick, but we are absolutelly using the 9's principle for datacenters and cloud providers. So saying that we do not use it anymore is not true. Obviously this does not mean that the main theses is not accurate.

  • @dphrygian
    @dphrygian Před dnem

    Skill issue.

  • @bobweiram6321
    @bobweiram6321 Před dnem

    These are Windows and Linux problems. Microsoft screwed up their entire ecosystem and Linux is balkanized by definition. MacOS is where the productivity is.

    • @FrankHarwald
      @FrankHarwald Před 2 hodinami

      & MacOS has vendor lock-ins, its updates regularly break things & users only have little control what & how MacOS updates.

  • @BigKevSexyMan
    @BigKevSexyMan Před dnem

    I understand his frustrations, but he really doesn't do a good job at explaining WHY we do these things (no it's not just about "efficiency"). One of the major reasons the OS limits stuff is for security. You can't copy or launch an unsigned program(though technically you can) is because we're trying to protect against malware. Containers are used because of how the internet is structured around cloud computing. Sure, you have to maintain your containers and scale your cloud infrastructure, but you pretty much always had to maintain your environment. Even when you were running it on an owned machine! Sure, over abstraction and complexity is bad, but let's at least have a proper discussion why we do these things. Sometimes(most times?) abstractions and division of labor are a really good thing!

  • @NotMarkKnopfler
    @NotMarkKnopfler Před dnem

    I used to get a lot more stuff done using Visual Basic. Honestly. I really did. For getting something working quickly it was unbeatable.

  • @anon_y_mousse
    @anon_y_mousse Před 2 dny

    I think part of what he's talking about here revolves around compiler optimizations which a language like C++ added compiler hints for to make it more explicit such as constexpr and consteval, but which in general shouldn't be needed with modern compiler techniques. However, it's sad to my mind that he's been working on his language for longer than I've been working on mine and he has had help yet he's maybe as far away from releasing Jai as I am my own language. Of course, I do keep adding ideas to mine and even though the x86 code generator works I want to wait until I get the ARM code generator working too. At some point, maybe after release, I'd love to come up with a language subset and make a 6502 and/or a z80 code generator. It'd be awesome to write a game that you could just hit compile and generate a binary for a Game Boy or NES.

  • @velo1337
    @velo1337 Před 2 dny

    now ppl do weekly updates so you are around 98% update if you are lucky

  • @eightsprites
    @eightsprites Před 2 dny

    There is a language out there that compiles fast…. its C

  • @aaronleonard1337
    @aaronleonard1337 Před 2 dny

    Nowadays we changed to nine 5s. 55.5555555% uptime

  • @yapdog
    @yapdog Před 2 dny

    He's not exactly on point here. Going up the abstraction ladder isn't intended to increase programmer productivity. It's intended to increase the number of programmers, effectively increasing the amount of work produced. On that front, it's a rousing success. But are we better off for it.............?

  • @enginerdy
    @enginerdy Před 2 dny

    I don’t buy this. Taking this into the real world, you could say “What happened to us, we used to build bridges with three people in an afternoon!” where the bridge was two logs and some rope. Now it takes us a year+ to build a bridge (we’re so unproductive!) but the bridge is doing something completely unimaginable to those people building log footbridges, carrying millions of passenger cars , trucks, and trains every year. Yes, it takes longer now, but the expectations are vastly different.

    • @9hoot789
      @9hoot789 Před 2 dny

      Not true and not even applicable either considering in that hypothetical, he has built a bridge (two bridges, in fact), and understands exactly how to build one (not just "two logs and some rope"), so he has every reason to be able to complain and point out the problems with the industry.

    • @enginerdy
      @enginerdy Před 2 dny

      @@9hoot789 huh? The joke Ken Thompson (I think that’s KT..) is making is just a joke. Writing a barebones OS on a rudimentary machine is something that is a tractable problem for a single, highly skilled developer. Years later, Linus did something similar, but had to leverage GNU to get complete functionality. He has a semblance of a point in this, but it’s taken to such an extreme that it’s a functionally useless point. You can’t fix something if you don’t address the complicating issues.

    • @MrLordFireDragon
      @MrLordFireDragon Před dnem

      ​@@enginerdy The person you're responding to is pointing out that Jonathan Blow has built complex programs and is currently building his own programming language - he has a solid foundation to base his claim that software is worsening on because he knows what sorts of things you can do when you don't use the kind of abstractions people claim save time. You're right that the tasks people are completing these days are more impressive, but by what magnitude? For ten times the engineers, are we making software that is ten times as good? Blow argues that not only are we not making better software, software reliability is actual becoming worse, so we may be radically increasing the number of engineers required to make software of roughly equivalent quality. Is that worth it? You can watch Blow's full talk for a much more thorough explanation of all of this, if you haven't already.

    • @enginerdy
      @enginerdy Před dnem

      @@MrLordFireDragon thanks for the further explanation. I do think his examples undermine his main points though, which I broadly agree with. The infrastructure to handle modern volume is large, and has many active components. We will eventually develop better tools to handle scale, but this comes in cycles: people expend vast effort to do a thing that’s very hard, people spend time studying the problem and making tools to make it easier, problem becomes more tractable. Even his laptop example is goofy, don’t know how old he is, but computers in the era he’s talking about crashed CONSTANTLY. “Five nines” was what you could expect from carrier telephone and internet data service, but that was about it outside of aerospace and medical (where it’s even higher).

    • @etfstrategy-vb2eo
      @etfstrategy-vb2eo Před dnem

      Not true. China builds massive bridges and apartment buildings in weeks. Some even in days.

  • @plaidchuck
    @plaidchuck Před 2 dny

    Wait why do we need to manage memory so hardcore in this day in age? Note I did not say we didn't need to learn how memory works.

  • @eightsprites
    @eightsprites Před 2 dny

    I fought against Five 9s around 2000-2010. Lost every single time. Five 9s = 5minute downtime / YEAR How realistic is that? Not at all ofcourse! Still companies wanted Five 9s and our sells department and project managers apparently didn’t have anything against it.

  • @starc0w
    @starc0w Před 2 dny

    Love this talk! 🍀

  • @effexon
    @effexon Před 2 dny

    this video is why CS degree is useless. huge amount of companies are built on these broken software where theoretical best practise is useless without grinding hundreds of hours and knowing all those trivia... and with new versions come new trivia constantly. lot of programmers never went to formal school, even in 2020s.

  • @buzinaocara
    @buzinaocara Před 2 dny

    "five 9's" might have lost usage, but now we have great motos like "move fast and break things". Surely that way of thinking must be very sustainable.

    • @Mr0rris0
      @Mr0rris0 Před 2 dny

      Some say 9 is so reliable it makes time but who knows how long ago that ended

  • @kabukitheater9046
    @kabukitheater9046 Před 2 dny

    what jonathan blow probably means was the silicon graphics workstation that was used to make jurassic park, which was used by rare to make killer instinct and donkey kong country. rare was using a huge mallet to drive a small nail coz the graphics was compressed to fit the snes anyway. it was just a waste of money

    • @NicholasStabile
      @NicholasStabile Před 2 dny

      It was also used by Blizzard for cinematics and games like WoW (most likely before that, especially around the Diablo 1 era), and Squaresoft for their PS1 era games, and beyond. It made for really cool advertising, especially off the heels of Toy Story a year before FF7 released, and likely contributed to the quality of the game being high, but it is a huge money sink and risk that paid off in pushing the medium forward to surpass movies and books...but at what cost? (FF7 was one of the most expensive games at the time, with a manpower of 100 people, some of whom are from the film and anime industry)

  • @bruterasta
    @bruterasta Před 2 dny

    Corporations or more important entities still use this notation when buying/selling services from each other. It's just not something you sell to regular people.

  • @deimiosxxx
    @deimiosxxx Před 2 dny

    Had a failing linux system, wanted to clone it to a new system to save it. My linux guru friend (from the ancient times), just created a new partition and copied the files with cp. No dd, no cloning, no nothing. Simple copy. Then he ran the grub-install and the system booted like nothing happened. That was the point I realized that we were overcomplicating things.

  • @ShawnMcCool
    @ShawnMcCool Před 2 dny

    We absolutely still use that measurement in business systems. It's true that any dependencies that we have directly impact our ability to maintain specific service level objectives. That said, I'm aligned with the message that the software industry is built of bad practices and failed mythologies.

  • @brianviktor8212
    @brianviktor8212 Před 2 dny

    This is a little like "old man yelling at clouds." While identifying the problem is nice, it cannot be fixed on its own. If you want to bring improvement to software, you'll have to do it yourself. I happen to currently do it too, as I work on a new game. It's a space combat/exploration game that has a single realm able to host 10000s of players (it just needs to have physical servers added to the server cluster). And it has the size of the observable universe with cm-accuracy, meaning moving to other galaxies is possible in the late-game. This alone is technologically ambitious, but it's almost done. And there were parts of 12/10 difficulty. I just need to make the game fun... I barely got to the part where I actually can work on gameplay itself. But I have a ton of notes in which I both memorize ideas and ToDos, and where I crystallize out the best/most fitting ones.

    • @Salantor
      @Salantor Před 2 dny

      John is working on a new programming language and compiler for it, both specifically for games.

  • @catcatcatcatcatcatcatcatcatca

    I don’t think the five nines ever applied to a client OS. Even if the OS was good enough, the hardware won’t be. From this perspective it seems a bit silly to note nothing on a laptop can’t reach five nines reliability. That’s a hardware issue, not software. Beyond the hardware, how many workstation OSs can be upgraded without a reboot? Not windows, that is for sure. So again, there go the nines. We need to exclude the hardware and allow some reboots, which means the discussion is about something very different than five nines. Do we expect the software to update seamlessly while running? No, well thats kind of the point of 99.999% uptime. Do we want the program to handle crashes on the background? That sounds like a stupid idea, now it needs reduntant processes with reduntant memory. I’d like it to crash instead. So while software might have become messier and less reliable, the five nines concept was never applicable nor should it ever be.

    • @barterjke
      @barterjke Před 2 dny

      The point he is trying to make is not that we need it, but the whole concept of it just disapeared, we don't really strive for things like that anymore. It's always product first, I don't really buy big games on releases anymore, I don't install new software versions right away, because you know for sure - day0 is always bugged.

    • @buzinaocara
      @buzinaocara Před 2 dny

      Windows updating without user concent a d crashing the entire OS is not a "hardware problem", its part of a rotten culture problem and your dismissal is also part of it

    • @mage3690
      @mage3690 Před 2 dny

      Linux can be upgraded without a reboot. I found that one out the hard way when I updated my system (as one does before installing new things), that update came with a kernel upgrade, then I tried starting my new thing (it was the docker daemon IIRC) and it failed. I did reboot it at that point, but I'm sure I could've reloaded the appropriate components of systemd at that point and gotten it to work, so my point stands. Sure, some hardware isn't up to the task of five 9s. But inevitably, that hardware was created in service to the same culture that produced modern software that is _also_ incapable of five 9s.

    • @greyshopleskin2315
      @greyshopleskin2315 Před 2 dny

      @@mage3690yes, you can upgrade anything on linux with no reboot, including the kernel. On personal computers, it’s better to not bother an just reboot, it’s easier. To have live kernel upgrades you must set it up so I opt for just rebooting

    • @blarghblargh
      @blarghblargh Před dnem

      "That’s a hardware issue, not software". sure, for five 9s that might be true. but the vast majority of problems I've had with machines I've worked with have been software problems, not hardware problems. most reliability struggles most of us experience are software problems. even striving for three 9s and achieving two would be a big improvement.

  • @mryodak
    @mryodak Před 2 dny

    99,999% uptime is referring to what? It means 1 in 100000 frames might break the system? With system runing 60 fps, that's every 30 hours. This sounds like the reliabilty of the adobe products.

    • @sabamacx
      @sabamacx Před 2 dny

      The first two minutes make it clear what context 9 9's is made in.

    • @georgedf1
      @georgedf1 Před 2 dny

      Presumably user uptime, given the talk of productivity. A bug on one frame could take arbitrary time for the user to work around, so pretty much all software falls far from five 9s with that definition.

    • @maccsguitar
      @maccsguitar Před 2 dny

      Refers to the percentage of running vs down, not the chance to break. You'll get more than one frame of downtime after the system breaks.

    • @maccsguitar
      @maccsguitar Před 2 dny

      In other words it would have to reboot and restore adobe in that one frame for that to keep 99,999% runtime

    • @mryodak
      @mryodak Před 2 dny

      @@sabamacx It's not. He talks about losing the progress on the programs. How does it correlate to the uptime? You might lose your progress in a one-frame bug, or if system restarts for a minute or two. The annoying part is that you lost your data.

  • @635574
    @635574 Před 2 dny

    I use websites withultiple secodns of lag, warframe market ducanaror tab rums slower the more searches I do before refreshing. That is terrible technology. The interface should never lag.

  • @devwckd
    @devwckd Před 2 dny

    This felt like a 13min rant from the deepest crevices of his old school programmer heart lol

    • @yonas6832
      @yonas6832 Před 6 hodinami

      but he is 100% right and i a new. I love using Rust because i can low and hight level stuff.

  • @sirhenrystalwart8303

    Anybody remember uninstalling and re-installing the tcp stack in windows 95 10 times until the internet finally started working again? I don't have that problem anymore.

  • @adammontgomery7980
    @adammontgomery7980 Před 2 dny

    Where does the complexity come from? Okay, so the syscalls aren't necessarily compatible, doesn't the standard library handle that?

    • @desertdude540
      @desertdude540 Před dnem

      Gratuitous incompatibility for user lock-in. If it's something new, make it complex enough that any attempt to clone the API will have at least a few bugs that prevent compatibility (e.g., every Microsoft, Apple, or Google interface). If it's something that a smaller competitor already did, add something similar to your own stuff (so it won't fall behind), but make it different enough that something written for your ecosystem won't be portable to their systems (e.g., when Plan 9 introduced the "rfork" system call, all the BSDs copied it compatibly, then Linux adopted it but tweaked it a little and changed the name to "clone"). Standard libraries help a little, but the obvious countermeasure is to add new features faster than the competitors can keep up.

    • @dvhh
      @dvhh Před dnem

      Also, the need for higher performances at the price of incompatibly. Everyone got an opinion on what is great performance depending on who you ask.