Meanwhile on r/gamedev, some guy wants to learn about how engines work and everyone told him that he is wasting time and should not even bother do it.
@Metadaxe3 жыл бұрын
Man I feel this. Every time I used to express interest in learning C or ASM, I'd get responses that ranged from "why?" to "don't," and of course, "learn python instead."
@sdwone3 жыл бұрын
I really miss those days when America was BOLD enough to take on CRAZY challenges like the Moon landings! Sure, America was going through a VERY turbulent social crisis at the time, but they did it! Now? Now everything is lazy and outsourced to more capable countries. And, even though I can't stand Trump, he does have a point on how America has stopped innovating, and would rather indulge in mindless consumption... Well... Things ARE changing now! Post COVID... Elon, and others, are taking bold strides forward again, against a backdrop of a society that is going quietly mad... So much so, that even gender itself is becoming 'indeterminant' and the youth, drugged up on TikTok! It would appear History is repeating itself once again... But this time... The stakes are MUCH higher!
@sisyphus_strives54632 жыл бұрын
@@Metadaxe Just find textbooks on the subject, don't be so reliant on video tutorials-textbooks are often very good
@ibmicroapple91422 жыл бұрын
Because they don't know it themselves. And instead of admitting they don't know anything, they'll tell you to go down the same route as they did, validating themselves and the choices they made in life.
@jaysistar27112 жыл бұрын
Somebody has to know, but's not them; it's the guys asking, but they're asking the wrong people.
@KenOtwell4 жыл бұрын
As a retired software engineer - Software complexity grows during development until you hit a critical point where nearly everything works, then if you are allowed by management to keep going, it will get simpler and simpler as you refactor based on what you've learned during development until everything actually does work. Unfortunately, management rarely allows you to keep going much past that complexity peak because it's close enough to ship.
@Bozemoto4 жыл бұрын
Trick is to go slow enough that you give yourself the time to design a good interface for whatever module you're working on. And to design for change.
@Bozemoto3 жыл бұрын
@1 2 Have you ever worked within software development? Your take doesn't line up with my experience at all. A decent interface is used to minimize the amount of usage code you need to refactor. If your requirements changes to the point where you have to throw everything out you're not refactoring, you're writing something completely different. Like replacing a sprite animations with puppet pin animations isn't refactoring. It's removing one system and adding another. They do different things.
@Bozemoto3 жыл бұрын
@1 2 The games I worked on were delayed sometimes but there was still a high level of pressure. The trick I found is to only slightly rush. From what I saw I had way fewer bugs and solved them way faster than the other people I worked with, but at a slight development time cost sometimes. The savings overall were great. I'd often see people hack stuff in or write systems without any forethought. You know almost 100% sure that systems will grow. So you try and make sure that you factor that into your design. Just as you can over generalize you can also over-specialize your code. If climbing only works for one character that might be fine to start but if design later comes in and says they want other NPCs using that mechanic suddenly all your magic numbers will need to be changed. Having some foresight there is good. And learning to never trust in promises is also a good lesson to learn. I've designed stuff one way on a promise a certain requirement wouldn't come into play, which it did and I had to make something that wasn't working perfectly.
@Bozemoto3 жыл бұрын
@1 2 Over generalizing removes context and over specializing makes it fragile to changes. I actually worked on porting climbing code from one game to another. Making it work with characters that are a different size. Had to do all sorts to make that happen. It also needed to work by animation locomotion instead of the code driving it. Had to remove all sorts of magic numbers and mage it more generic. The biggest problem I had with that code was how messy and not to the point it was. People tend to over engineer, and almost not be able to see the problem that they're working on. It's like they're working on a tiny slice of it at a time and can't really see it in aggregate. Maybe my experience isn't the norm, but think the problems you talk about are people overcomplicating things...
@reed65143 жыл бұрын
@@Bozemoto simplification is hard. The first version of a system i build is sloppy, messy, hard to follow code. I refactor, move some code into methods and classes or traits. A lot of the logic remains, just the flow of it gets cleaned up a ton. It goes this way because i don't know how i need the system to work until it works. Then to fix the flaws & add features, i HAVE to refactor or I'll get lost. I'm not a game dev. I make developer tools & web backend stuff.
@drno872 жыл бұрын
I read an article a few months ago where Computer Science professors lamented that incoming students often didn't know how to navigate files and directories. Nowadays, people come into computers through smartphones and tablets. While convenient, they offer far less opportunity for tinkering with the hardware or exploring the system. Probably makes it more likely for some kind of capability loss to occur.
@soulysouly72532 жыл бұрын
The doors to CS are wide open and the degrees requirements (e.g. physics and advanced mathematics) are watered down or even removed from the curriculums. People who should be technicians have the titles of engineers.
@TheSulross2 жыл бұрын
sounds like current crop of in-coming university students are coming in with no more knoledge about computing than in-coming students of the 1970s. Although with the current kids, they might think that they know something about computers (because they've been smoothered in them their entire lives)
@caltissue141 Жыл бұрын
@@TheSulross it's actually weirder than that. because the incoming students these days have also never had to use actual file drawers or folder systems (since they've never had to store many things on paper in the first place), they don't even understand the key metaphors involved in computer operating systems. you can't explain what a directory tree is because they have no experience with the concept of files and folders at all.
@jannikheidemann3805 Жыл бұрын
@@caltissue141 I'm out of school for only a few years now and not even my parents know how to systematically organize thier documents. I found that out when I asked them to teach it to me, because I recognized I couldn't keep finding what I needed if I just batched my documents together in random vaguely themed folders without any overarching structure. They we're annoyed and slighted me for wanting to make storing paper so complicated, despite regularly struggling, running about the house trying to find that document the insurance requested, themselves, because thier way of organizing paper doesn't scale. Now who can tech me the abstract art of organizing interdependent sets of entities efficiently? School didn't. I even was at an kind of more elite school form (german Gymnasium), but that had already been dumbed down so every well off average minded kid would make it. Abstract things like generalized organizing weren't taught there anymore. (I assume they were in the past, otherwise I doubt society could have gotten to where we are)
@MindBlowerWTF11 ай бұрын
@@caltissue141 bro, isn't that the case since 1990s unless you had some specific job? Also You are acting as directory tree can't be explained easily.
@humanperson84182 жыл бұрын
As a student, its scary how much of this applies to me.
@allesarfint2 жыл бұрын
I'm learning about how to work in an Agile environment, and now I can say it's part of the problem. The whole idea of sprints, constant change and never being finished is really toxic to writing good software. It's about adding new features as fast as possible without considering the quality of the code, and when things get ugly people just jump ship, and it is up to someone else with no idea about the code to fix it while continue adding more bloat.
@TheSulross2 жыл бұрын
yeah, very much frowned on when an item needs to continue being worked on in the next sprint because quality-wise it's not really where it needs to be. My company is going to shorter sprints, as if this is going to improve anything. Certainly it will make it harder to do complex features that have to ultimately span multiple sprints - but the agile stats point an accusing finger at teams that aren't getting items fully completed in a single sprint. So the culture of agile is indeed a toxic one for software developers that want to be doing quality work.
@allesarfint2 жыл бұрын
I just watched a talk about Agile by one of the original signers of the "Manifest for Agile Software Development", Dave Thomas. In short, the whole concept of Agile as we know it shouldn't exist, because it was never thought as a methodology but as guidelines to add flexibility to software development. It was corporate who came in and made it into a thing on itself and gave it the name "Agile", making it into a rigid way to develop software, defeating the whole purpose of the manifest.
@dienand_2 жыл бұрын
Software is never finished. A software dies when it is no longer maintained.
@allesarfint2 жыл бұрын
@@dienand_ A piece of software dies when no one uses it, not when it is done. And yes, you can finish software, you don't need to continue adding features for the sake of doing it in the hopes of covering every use case, that just make it more bloated, increases the possibility of bugs and just makes things worse in general, and is a terrible way to develop software.
@dienand_2 жыл бұрын
@@allesarfint software decays over time. Bugs, vulnerabilities etc Also changing requirements. Software doesn’t exist in a vacuum.
@zetaconvex19872 жыл бұрын
"Supply chain issues". Wow, that one turned out to be more prescient than even he could have predicted. Great talk.
@NukeCloudstalker2 жыл бұрын
Yea. The fact that these were inflicted on us by the hostile, racially alien, power-holders of the day, certainly outs the bronze age collapse in perspective too. One wonders what really happened then.
@TheSulross2 жыл бұрын
yeah, within three years the globalism order of trade that complex supply chains depend on is collapsing on one hand, the demise of China was in the cards this decade due their demographic catastrophe. But now their never-ending Covid lock downs and the cancelation of Russian exports from the global market are acting like pouring gasoline on a smoldering fire, rapidly accelerating the collapse.
@SepehrKiller Жыл бұрын
Its funny because it says there are "2 replies" to your comment right here, but i can't open the replies and see the replies to your comment so now somehow even the replies in youtube are bugged and dont work i refreshed the page, still the same issue, hoping that now im commenting on it the problem somehow gets fixed and i can read the replies, jesus christ
@SepehrKiller Жыл бұрын
Nope, it didnt fix anything, now i can only see my own comment (reply) to your comment, I still can't see the other replies
@diegoalpizar6857 Жыл бұрын
@@SepehrKiller I can't see the other 2 replies either. It's probably yt sh4d0w b4nn¡ng people.
@jackrobinson24404 жыл бұрын
There is one point that I've never been able to swallow and that is putting up with awful software, and by that I mean things that are broken. Chronically. It is clear that the platform here is Windows, and back in the day when I was programming at the Win32 level, I thought the whole stack I was working on was pretty awful, but there wasn't anything that was really affordable and didn't take a lot of work to get to the productive stage. The era was Windows 2000 and I was dual booting Linux. I had hardware issues and Microsoft does what anybody does who doesn't do error handling. Oooh. Something bad happened. Print all our registers to the output and halt the CPU immediately. - I got the friendly blue screen with meaningless numbers and no clue how I got there. On booting Linux, I had screens full of What Went Wrong, and from the useful information gleaned just before Linux stopped, I knew I had a hardware problem and I sent the motherboard in for repair. During this time I was forced onto Linux back in the painful years. A month later, I was fully on Linux and never went back to Windows. I thought I had died and gone to heaven, I mean, come on, no more rebooting every time you sneeze (and often when you don't). Up-time in years, not hours....Until the same thing started happening in the Linux realm. I swear all those Microsoft employees went to Red Hat and Ubuntu (GTK3 anyone?). Thankfully, I was able to avoid Red Hat until I was forced to by a major corporation that used CentOS all over the place. I had to dig in and learn all about how awful Red Hat had become (I started with the original 5.2 CD release back in the 90s). Systemd, Pulse Audio, Anaconda, Spacewalk, The 8,000 lines of code to glibc to handle an overlapped memcopy so they could fix a problem with Adobe flash (no kidding Linus's comments were priceless). This latter, um, work of art, by yet another Red Hat employee cost us a week of my time and 25x slow down in some of the hardware we were talking to. On another job, I have no control over the software that gets loaded, and periodically Gnome terminal (all of them, not just the one I'm working in) die. Kaput. Gone. Up-to-date CentOS 7. This is happening everywhere, and I have to hunt hard to find a Linux distro these days that isn't badly broken in some way. The list goes on and on. I can't imagine what it will be like in 10 years. And he is right - the hardware is making up for terrible, bloated stuff that would grind those old 486s to a screeching halt. Linux used to run just fine with translucent windows on 12M of RAM and a 100M HDD. It was lighting fast compared to dos 6.x on the same machine. Ugh, I wrote a book again.
@Narblo3 жыл бұрын
I saw that ubuntu server, bare install no gui runs awful slow on a pentium III and I think is because of multithreading but now after reading your comment I think is bloated, bad quality software symptom
@ThomasMinitsios2 жыл бұрын
" I have to hunt hard to find a Linux distro these days that isn't badly broken in some way": don't leave us hanging... What's that magical, unicorn-type of distro that you're speaking of?
@AbdullahEzzat2 жыл бұрын
@@ThomasMinitsios I wanna know as well
@ExCyberino2 жыл бұрын
Read everything. What OS would you recommend using this time, what distro e half decent and beginner friendly ?
@dave72442 жыл бұрын
Paragraphs are a thing mate.
@lentilsun3644 жыл бұрын
This talk is significant for me building my worldview, thanks
@reed65143 жыл бұрын
He made a lot of sweeping generalizations. I liked the talk & agree with a lot of his points about modern software, complexity, and hardware's role. I don't like how he makes those points. I've seen several different game engines on youtube, I've tried godot, & I've watched a devlog of someone building their own rendering engine. The Php language is written in C & its actively developed, so there's low level devs. How does he know that programmers are unhappy? We're not a homogenous group. I LOVE the code work i do, though its not games. Linux is actively developed. There are many distributions. Pinephone has a community of developers that help with hardware and drivers & stuff. There's many different kernels for Android phones. I see what he's saying. I just think he's doing a disservice to the people who actually do the hard work he's claiming has gone by the wayside. I think there's a ton of devs now doing work in higher level languages & building apps & using cool frameworks & depending on other software. But the prevalence of those devs doesn't mean the lack of the others. He does talk about real problems, but he also ignores the security benefits & things like CICD and a focus on testing that DOES make software robust. He claims software isn't robust but i think it is. 99.999% uptime is an outdated idea. We're on the internet & we have many more features because of the complexity of software. Its these complex systems he's degrading that have empowered so many new people to become developers and make a living wage.
@reed65143 жыл бұрын
He imparted on me that passing knowledge from the seasoned experts to the new generation is extremely important.
@reed65143 жыл бұрын
@@motbus3 I think about this talk often & about my original reply & i don't remember the specifics of the talk, but i agree with him more as time goes on. There are many wonderful things about modern software ... But... But I'm not impressed by the changes in software. The web is an awful place with many sites not even loading without excess client-side javascript. Smartphone hadware has advanced significantly, but I'm not sure my galaxy s 9 gives any more utility than my original galaxy s. I learn a little of computing hardware here & there (lectures about cpu architecture, how memory addresses work) & find it fascinating. It fills this spot in me that is severely discontent with the many layers of "magic" that go into the code i write. I'm a php dev with many (often complex) foss libraries & a large part of me wishes i could go back and have learned C the first time around. Maybe later in life. It feels like there's this promise that the next software update, the next hardware is going to make everything better but ... more and more it just feels like forced obsolescense. Forced refreshes of things that worked well enough & had some problems in favor of new things that ... Work well enough & have some problems.
@reed65143 жыл бұрын
@@motbus3 i also have concerns about the climate cost of all this "upgrading". I really like your point about spending our time making thech harder to understand. I do try to write much simpler code these days than i did a year or two ago. Part of that is just from practice though. Part of why i wrote so much complex code, too, though is because of all the hype around software design patterns and "clean code" and whatnot. Ultimately my goal is having efficient, maintainable software that works. Not perfect code to satisfy human ideals about "good" code. I'm glad my thinking has shifted this way. Though i acknowledge the social/collaborative aspect of some of these design principles & complexities that come with them.
@youtubesuresuckscock Жыл бұрын
@@reed6514 He's a charlatan, and you got tricked. He presents himself as if he's seasoned himself when the truth is that he hasn't done jack.
@riomh5 жыл бұрын
This is a damn good talk. What's interesting about his suggestion of simplifying everything is that it somewhat coincides with the desire I have for technology to become less invasive, healthier and more utility-oriented. Mass manipulation, spying and conditioning of the masses through shitty mobile games, social media, etc. etc. are in many ways products of this explosion of bad, overly complex technology. Health is clearly an issue, too, if you pay any attention to your body and lifestyle (eyesight, skeletal structure, posture, spending hours playing video games, scrolling through social media, etc.) and those of others. So for that I respect Jonathan even more!
@axeldaguerre88382 жыл бұрын
you seem to describe Calm Technology in a way
@TaigiTWeseDiplomat--Formosan2 жыл бұрын
0.0
@ExCyberino2 жыл бұрын
@@axeldaguerre8838 Never heard the term, is it a decent size movement?
@dinobotpwnz2 жыл бұрын
Excellent point. The programmer's world becoming mediocre is only the tip of the iceberg.
@SteamboatWilley3 жыл бұрын
Another parallel is in the shipbuilding industry. In 2000 Swan Hunter cot a contract to build two Bay class landing ships for the Royal Fleet Auxiliary. The yard hadn't built a ship in years, so a lot of the knowledge of how to build these ships had been lost. Costs went through the roof, the yard went bust and the second vessel was transferred to BAe systems at Govan for completion.
@LuccDev2 жыл бұрын
Same goes for the nuclear industry in France
@Anteksanteri Жыл бұрын
@@LuccDev the Olkiluoto III nuclear reactor facility in Finland is like the 8th most expensive building in the world. It was supposed to get finished in 2008 IIRC, but it got done just before 2023. There were many reasons but the only one I thought was valid was the disappeared industry skill and knowledge.
@thesenamesaretaken6 ай бұрын
@@LuccDevspare a thought for the UK nuclear industry, which was not just allowed to die but was actively killed. Imagine going from being a pioneer of a technology to needing to pay the Chinese government to do it for you.
@ra2enjoyer7086 ай бұрын
@@thesenamesaretaken Paying someone else to do the thing you can do is the most english way of running business though.
@hal_wayland4 жыл бұрын
45:10 Alen Ladavac of Croteam, and I think the talk is the one called "Myths and Misconceptions of Frame Pacing"
@randomprojectsxyz3 жыл бұрын
Thank you!
@adamschlinker9723 жыл бұрын
Software has DEFINITELY been free riding on hardware. Because memory allocation and garbage collection and resource management are tedious and people don't want to do it, we just use languages that don't require you to think about that stuff. Our databases don't necessarily need to be well designed because we can compute millions of lines in a matter of moments. We've been spoiled with crazy computing power.
@dinobotpwnz2 жыл бұрын
Yup. Simulating physics provides a nice reality check.
@bool2max4 жыл бұрын
Another great example of this would be the resurrection of AMD's GPU division. Their new GPUs (from 2015 onward) are amazing on the hardware spectrum, they're more efficient, fast, etc.. But the new "Radeon ReLive" software driver thing is so slow, buggy, unusable and unstable that I just don't get it. Really magnifies the whole "software is piggybacking off of hardware" thing he talked about in the beginning.
@adamhenriksson60073 жыл бұрын
"Supply chain restrictions?" Boy did this age well. Like fine wine.
@Martinit02 жыл бұрын
Hmm. "Maybe there was some environmental stressor to kick it off, maybe some huge drought, possibly also some floods". "People attacking people" Feels some the impacts are getting closer
@adamhenriksson60072 жыл бұрын
@@Martinit0 I think that we are pretty resilient to those types of stuff today luckily. IMO the scariest thing so far is the EU energy crisis. That really will have MASSIVE effects on literally all sectors and might cause some important sectors to become entirely unprofitable until it's fixed. Scary.
@ximonoАй бұрын
@@adamhenriksson6007 We're definitely not resilient to supply chain issues. Food and medicines alone. If people knew how fragile and vulnerable it is to collapse they wouldn't sleep well at night.
@aullvrch2 жыл бұрын
During the FAQ there were questions asked about Jonathan Blow's programming language and how he is attempting to write a language that simplifies things as much as possible. I think that the key to solving the problem that his talk addresses is exactly that! Get as many people as possible who are willing to think outside the box like Jon to write programming languages which attempt to simplify the complexities of software. I encourage anybody who cares about this problem to look into the simplicity of parser combinators. They can be found in most languages and are a great way to start with language design. Haskell is one of the best languages for parser combinators because the maths (category theory) in which it is based on uses Algebras to parse. Think of algebra from grade school, but now the operators are operating on not just the rational numbers, but types.. Programming languages are a fun thing to nerd about. It's a deep dive into the foundations of mathematics and CS, yet still a practical pursuit for solving the problems of our day.
@computronium85 жыл бұрын
He’s one of the most brilliant people in the game industry, at least in the Top 5
@misterbeach88265 жыл бұрын
well, hold a minute. he made one tiny game, then a below average successful puzzle game... and he talks about history at a basic level. there are youtube channels with far more historical knowledge.
@mariuszdziem82035 жыл бұрын
@@misterbeach8826 You think that he created one tiny game. Thats not true. Have you heard about his compiler, which does compile whole game in 1.5 seconds? No. you are simply ignorant. You have no fucking idea how hard is to write new language, and amazing fast compiler from scratch.
@SETHthegodofchaos4 жыл бұрын
@@misterbeach8826 "below average successful puzzle game" The Witness was highly successful and a great experience! Jon even said that he priced the game higher than average because he expected that most people wouldnt be interested in such a game, so only those who would be truly interested would be willing to pay for its pricetag. But he was wrong. Many people were interested and bought the game, and in an interview he even said that if he would have know that he could have easily chosen a less expensive pricetag which would have also lead to an even larger audience who might be interested in it (because it wouldnt put as many off). I think that is why the game is much cheaper on other platforms nowadays. I hope that he will provide some steam coupons for his next game for those who bought the Witness before to compensate for that.
@Kenbomp4 жыл бұрын
He certainly has interesting things to say, better than cat videos, ok not better than cat videos. But it's all good. Except fb and youtube algorithm
@tetramaximum4 жыл бұрын
Who would be the other four? (I can name Carmack, maybe Sid Meiers, who else?)
@가짜들-c7c4 жыл бұрын
I don't know much about the software thing, but this was really amazing. I think we can relate this sort of "slow-fall" problem to other things too. We're slowly losing active thinkers... By the way, I think The Witness was the perfect game to describe science and education. Thank you so much for giving us that game!
@skepticmoderate57904 жыл бұрын
We're not losing active thinkers. It's just that all of those active thinkers are being wasted on trying to understand their 30 millionth Javascript library rather than actually trying to solve real problems.
@nlight876910 ай бұрын
You're right about active thinkers decline (in the broad sense, not just computer space). The worse being it's not a bug, it's a "feature". Globalists certainly don't need much active thinkers, besides the very top dogs which are a handful, that's why for decades we can witness dumb decision after dumb decision which many common people had predicted the outcome. Tech has played its part into this partition, which is an inevitable side effect if not actively fought : humans being lazy, automation indeed makes lot of people losing/not learning useful basic skills (which often can have an impact on other skills too). AI... While I have a hard time believing it will get sentient, I can easily picture people relying on it instead of using their own skills, which will make the AI (relatively speaking) look to many as "intelligent", "magic", which is a vicious circle... one more toward an obvious downfall. I think for anyone that counter intuitively, it's the best time for a student to build his lower level tech skills, whether it be for high tech or not, the chain of knowledge that got us there need to be maintained, and exercised. Those who will learn low level high tech or low tech won't have any problem finding work in few years, once the AI bubble will have popped, IMO. Even before that by proposing vastly more efficient solutions resource wise.
@ra2enjoyer7086 ай бұрын
@@skepticmoderate5790 Java and PHP contributed a lot more shit code than Javascript ever did.
@gabrielmachado73152 жыл бұрын
This is weird, because when I was a child I remember software crashing way more than it does now. And everything was harder to configure and use. But I'm a software engineer now, and I also kind of feel like everything is more complex than it needed to be.
@DFPercush2 жыл бұрын
I think there are a lot less hard crashes than there used to be, but more logic bugs and weird unexpected behavior from all the layers upon layers of dependencies that everything has.
@vex65592 жыл бұрын
We're going to need teams of people to write hello world if we keep up with this complexity orgy. 😔 There's so many moving parts now...I find it incredible anything gets done. 😏
@youtubesuresuckscock Жыл бұрын
You're right. Computers have never been faster, more stable, or capable. Blow's a clown. You couldn't even play a game while burning a CD in the 90s, or your computer would hang.
@thesenamesaretaken6 ай бұрын
In reply to that second sentence: using a computer required more knowledge, certainly, but that's not contrary to the message of the talk.
@dinobotpwnz2 жыл бұрын
I love the dig at "modern" C++. It is totally embarrassing that expanding replies in this KZbin thread only works 50% of the time when pre-x86 computers could go to the moon. When devs say that efficient code is not preferred by the market, they are right. We need to start demanding it.
@kurku37252 ай бұрын
yeah non-reliable youtube comment section is one of the reasons I stopped replying to comments sometimes you write decent comment with many points and suddenly it just don't work you can't send your comment or you can't find your comment some error happened try again later... I can't even save my work to maybe reply later some weird bugs with formatting this is all weird
@johongo2 жыл бұрын
I worked in a company that used five nines. It was just that the definition of downtime was very fluid.
@AfterAFashionASMR2 жыл бұрын
I want a video of all the lost technologies - not just the usual prehistory megalithic lost technologies, but lost technology from known and better understood civilizations since recorded history. Like the Greek and Byzantine things we have lost. That was amazing and fascinating, could have watched like two hours of just that lol.
@Maccelerate2 жыл бұрын
Check out the World's Fairs of the past 200 years. Photographs have some crazy stuff that might make you wonder what we've lost in just a few centuries.
@unaliveeveryonenow Жыл бұрын
Japan lost guns, Polynesia ceramics, Tasmania fire, a bunch of islands - boats.
@konstantinrebrov6757 ай бұрын
Lost Roman Empire concrete, and lost Russian Empire red brick. The bricks that were produced during the Russian Empire were as hard as stone, and the bricks that were produced during the Soviet Union were so brittle by comparison. My father was born in the Soviet Union, 1954. He and his dad once went to an old ruined factory that was built during the Russian Empire, to chop some bricks off and reuse them to build a house. They were amazed how they could not chip even a single piece off. No matter how they tried, it was like trying to cut granite. Whereas when they tried to dismantle Soviet era constructions they easily gave way. Also is worth mentioning Russian Empire steel that doesn't rust or corrode at all. To this day the battleships of the Russian Empire fleet, now museum exhibits, are unrusting in the water at all. Allegedly the Russian Empire had free electricity devices, which worked by converting ethetic energy into electric energy, and using that to power streetcars without any external source of fuel or power lines for that matter. A lot of Soviet Union technology was lost too, especially aeronautics for example the Caspian Sea Monster, the Antonov Mriya, Korolev's rockets, and the Buran space shuttle, which was a copy but an improvement upon the American space shuttle. And Soviet Union computers, which are also very interesting. And let us not forget about the projects and patents of Soviet engineers that were never built, such as Bogomolov's accelerator, a much safer replacement for modern nuclear power plants, because it enables us to turn the nuclear reaction on and off instantly, just like a light switch on the wall. Fascinating technologies of Russian inventors, and be God damned politicians who directly or indirectly caused a loss of these technologies that the people worked very hard upon, countless thoughtfull days and sleepless nights.
@DivineDarknesss2 жыл бұрын
38:20 is so interesting & I'd never even considered it. It really makes me want to go try out templeos where everything is in ring0 so I can see what it's like in crazy land
@opl5004 жыл бұрын
My guess is at some point you'll see new cars without infotainment systems, you'll see dumbphones come back. Some entrepreneur will get the "revolutionary" idea of making simple reliable stuff (that actually works) at lower prices and if the market is allowed to, it'll reward that. If the market is allowed to.
@Martinit02 жыл бұрын
My guess is it's not going to happen. All car manufacturers are now keen on selling software because it grants much higher operating leverage. So infotainment systems and software will stay and I think it's more likely that cars will get cheaper but approach more the regular computer experience, i.e. you will be served ads. Mark my words, you will see ads in car infotainment before 2030, maybe not while driving but certainly when in park or maybe even at the red light.
@saniel27482 жыл бұрын
@@Martinit0 I think in EU (or at least in Britain) it is illegal to even put banners near highways, I don't think putting auto-enabling ads in cars will ever be legal there In US tho we don't have corruption because we call it lobbying, or something like that they say, so yeah
@Reichstaubenminister Жыл бұрын
@@saniel2748 We have the same corruption in Europe, just not as insane. At least you still have your First Amendment, I could go to prison just for voicing certain opinions.
@henrykkaufman14884 жыл бұрын
Economizing any process makes this proccess slowly diverge towards economic goals at the cost of original ones.
@b.b42294 жыл бұрын
The entire Engineering field exists to economise scientists ideas...so not so bad in my books
@henrykkaufman14884 жыл бұрын
Your comment doesn't address anything I have pointed out. I'm glad that you like what you like tough.
@b.b42294 жыл бұрын
@@henrykkaufman1488 Ok thank you good sir. I take it we agree to disagree?
@henrykkaufman14883 жыл бұрын
I dont think there is anything to agree or disagree because again, Im talking about how economy influences economized disciplines, you talk about disciplines which (certainly, sure) develop thanks to economization. Few helper questions I can ask here are "WHICH ideas benefit thanks to economizing scientists ideas through economization? Are those really the BEST ideas? Does the market take into account everything it should? What are the consequences of getting / NOT getting these things right nowdays?
@Ryutsashi5 жыл бұрын
I'd love to count the errors and bugs and see if I'm surprised, but I'm forced to use eclipse for my job and I hit the unsigned integer limit :(
@dinobotpwnz2 жыл бұрын
Deepest condolences.
@storagestorage1545 жыл бұрын
this is a really visionary lecture imo, not many people realize this but i'll compare this to Feynman's lecture on the possibilities in nanoscience.
@10OzGlove4 жыл бұрын
How is declinism visionary? Everybody knows civilizations collapse. I can't remember a day in my life where I haven't heard people saying "Yeah, it was better before, this world/society/company/etc is going down the tube". Everybody is a prophet of doomsday. and that too is a sign of a collapse. When people are happy to announce defeat just so they can take credit for saying it first is part of the problem not part of the solution. When he shows bugs in counter-strike as a sign that software is becoming worse, completely ignoring the business aspect of game development and the low-expectation of gamers because most suffer from addiction and will play anything just to play. Self-loathing is a well identified character trait in people who belong to the IT community, it's their way of saying "Everything is sh1t but at least I'm better than the rest because I know it".
@storagestorage1544 жыл бұрын
@@10OzGlove well said
@SETHthegodofchaos4 жыл бұрын
@@10OzGlove While I agee with all of that, I still want to point out that in order to fix a problem, it first has to be found and regonized as such, which I consider the most difficult, then find a solution for the problem. But at first we have to make people aware that there might be a problem, then figure out together if that is true and how severe the problem actually is and what possible solutions would be applicable. Each step is a vital part to actually have positive change happen in the world. I think an addition factor with the IT community is, that since they mostly are problem solvers, it is easy for them to spot problems everywhere. They might even like spotting them because thats what they are best at. But I think at some level Jon is even aware of that, I mean why else would he bash on stuff like web package managers where everyone thinks to have great solutions but the problems themselves are unnecessary in the first place.
@luis_musik3 жыл бұрын
@@10OzGlove the talk is important because people generally aren't aware of how awful software is today. shit isn't gonna get better anytime soon if everyone thinks it's fine
@Reichstaubenminister Жыл бұрын
@@10OzGlove >Everybody knows civilizations collapse No they don't, people don't even know what a man or a woman is anymore. Don't come crying when you realize that this won't end well. You probably think GPT isn't a problem either.
@torgo_8 ай бұрын
Interesting watching this now (57:20) he clearly and accurately predicted our current state. Not only are programmers using AI all the time to write and understand code, and software experts saying that we won't need to write code any more. But also the AI systems themselves (that are already deeply involved in our day-to-day lives) are neural network black boxes that no one understands, not even the people who created them.
@konstantinrebrov6757 ай бұрын
And even Elon Musk, the guy whom Jonathan Blow idolized in this lecture, new wants to connect the human brain to AI? I mean, what is he even thinking? It's the worst idea ever, from an ethics perspective, and also from a technical perspective. So called argument, that AI is superior to humans, and that we ought to assimilate ourselves, it's just so bogus, to try to integrate what is inherently a buggy and error prone code into the human mind, a product of millions of years of evolution.
@openroomxyz4 жыл бұрын
That's really good lecture an eye opener! Thanks!
@DevGAMMchannel4 жыл бұрын
Glad you enjoyed it!
@robertwallace5498 Жыл бұрын
This talk resonated with me so deeply. My brother always asks me why macs cant play games or why so-and-so program cant be made, and as I try to explain it, it always does seem unnecessarily complicated. Additionally I think about all of the software that I have in my possession that I cant really use anymore (whether it is games or phones or storage disks, none of them are compatible with anything else so they dont work), and I think about how much knowledge we are constantly losing
@rayecast11 ай бұрын
Yeah. I think the easy answer is, "Because developers aren't making games for macs, and if they just made games for macs, then macs could play games." But it goes back to the added complexity that Blow talks about in this video at the OS level, where the machine itself is totally compatible with the code, but as a developer you have to work around all that complexity of making your game support both Windows and macOS, and working between various graphics APIs like Microsoft's proprietary directx, or Apple's proprietary metal, or maybe you just want to use something standard and portable like OpenGL, but wait you can't do that either because OpenGL is "deprecated" on macOS now, or is it? So at that point you decide, "Well, maybe I'll just make my game for Windows and not even bother porting to macOS because it would be too complicated."
@kurku37252 ай бұрын
@@rayecast I wonder can we make hypervisors like Xen a solution back in the day games were much like operating systems of their own so you would boot directly from them instead of launching them from Windows or MacOS or Linux that was generally faster than doing so from the operating system and in some sense easier to develop the problem was: it is not very convenient to users to reboot back and forth their machine to play a game and then do some work so one solution is to put games and many intense programs right on a baremetal hypervisor avoiding the operating system at all instead you statically link with a very light operating system basically an idea of unikernel and if you want so, you can just boot directly into the game
@McCrackenJoel10 ай бұрын
issues I notice just viewing this video: - audio doesn't sync with mouth (no idea if its a recording issue or playback issue, neither would surprise me) - typing this comment and the input coudln't keep up with the lackadaisical speed of my typing, on an apple M1 pro 16 gb ram machine.
@coliv22 жыл бұрын
The sad reality is that this is happening to the benefit of big corporations. So, they have no incentive to do things different. In the "old times" a programmer could learn the machine and write useful software depending on very few components. A single programmer could create his own business writing software. Nowadays big companies changed the game, so to write anything meaningful you have to learn hundreds of OS libraries. Open source adds another layer of complexity, so you're not taken seriously unless you use dozens of open sources libraries in each project you create. This add dependencies, so every single day there is a new dependency that you need to update in order to be taken seriously. The result is that you spend 80% of your time learning/googling and adapting your code to constantly changing dependencies. You cannot spend more than 20% of your time doing useful things, especially if you want this to become a comercial product. This is a great advantage to big companies, since they have all the money to hire engineers to spend the whole day dealing with these issues, while the independent programer has no way to do it anymore.
@JiggyJones06 ай бұрын
You think it benefits big corporations that they have to hire 1000 devs and pay them six figure salaries to do something in a year that a team of 10 competent devs could complete in a third of the time. I hate big corps as much as the next guy but this makes no sense.
@coliv26 ай бұрын
@@JiggyJones0 As much as 1000 devs seem to be expensive, they're much cheaper than it could be because they're interchangeable. The technologies used by big corps are chosen so they can fire anyone and hire a new developer on the market for less money.
@edwinschaap5532Ай бұрын
36:45 This whole productivity thing has everything to do with scale. Programmer productivity goes down quite rapidly as the teams get bigger. Philippe Kahn said "The productivity of a software developer in a team of N people is diminished by dividing it by the cube root of N." Bigger teams mean more communication, more people moving between team and projects, etc. Then things as unit testing is introduced as a fix for teams which members don't actually know how the program works. It al takes up more time. A small team of A level programmers can still be very productive.
@SteamboatWilley3 жыл бұрын
There was a comment on a reddit thread about "things they should teach in school" about kids who are "good with tech", but they are only good at using smartphone apps, but don't actually know much about the back-end stuff like where and how files are saved etc.
@nlight876910 ай бұрын
hmmmm.... don't under estimate the new generation, there are still highly competent individuals blowing minds, for example look at the guy creating a 32 bit computer inside terraria, he's made a video on YT. Or the dude that made its own open-source smart-phone at 16 (paxos). And this is despite the general effort to dumb down kids and corrupt them.
@nlight876910 ай бұрын
Jesus ! 2 years ago... 😅
@mohammedalhaddar2182 Жыл бұрын
I felt this talk from the heart because i swear to god i still remember the days when computers used to just work when i was a kid. Nowadays I'm constantly fighting with my computer/laptop in almost every layer deep to the kernel. Hell, i can't even put my laptop to sleep mode because guess what? S3 sleep is just not an option anymore. Every single click that i'm doing is interacting with tons of added layers and complexity that no one understands except the people who've initially written, and everything on top of these layers are just workarounds. This eventually leads to software entropy: the increase of disorder in a system the more complex it gets. The attempts to manage this complexity often inadvertently add to it, creating a self-reinforcing loop of increasing disorder. It's like as if software converges to a natural state of chaos. I often felt overwhelmed observing the increasing complexity and errors in software. I initially dismissed my concerns, thinking that as a software developer and power user, I might be more exposed to these issues. But it made me wonder: If I struggle with this, how does the average user manage? Even if i don't have concrete evidence to back this up, but i do believe that we are truly at the beginning of that slippery slope, and this video just confirmed it even more. Thank you for this talk jonathan.
@martinisdn5414 жыл бұрын
this is THE TALK. if i have to choose only one talk out of all, be that: history, astronomy, literature, philosophy, math, programming... etc, this talk represents how i feel. even though i like Lua
@sbypasser8193 жыл бұрын
This is very eye opening, companies should think about this!
@cryptout2 жыл бұрын
What a great talk! It’s always nice to get Jonathan’s insight’s.
@ProjectOsix2 жыл бұрын
These words are literally whats in my head the entire workday. And when i finally do get myself over to implement the next "oh so important" feature or fix or what not, i just want to be done so i can forget it all and never hear from it again.
@Jacob-pu4zj Жыл бұрын
Has anyone else noticed the search feature on both Windows and the Apple OS becoming less and less "competent," for lack of a better word? I can manually find a thing, and sometimes when I put it in the search bar it doesn't show up...
@jasonhurdlow660710 ай бұрын
I would love to hear this talk again, with the latest developments (and resulting concerns) in ML/AI incorporated.
@QW3RTYUU4 жыл бұрын
Terrence Andrew Davis was right when he first started Temple OS. We need to bring back simplicity. Even though at a deep level he was mentally sick, his true intelligence was still around, and he actually DID do what Jonathan Blow was merely talking and tinkering about in his talk. Very nice talk nonetheless, and may have a better impact long term than what Terrence Andrew Davis did.
@ExCyberino2 жыл бұрын
True, i see alotta similarities betweens these people's minds, you know ? Like Linus, Jhonathan Blow, Casey, Mike Action, those people talking about data oriented design, a good portion of them really care about their craft and sees the big picture, I mean there smth there.
@shahabmos51302 жыл бұрын
He was right about many many things .
@kurku37252 ай бұрын
Terry was very lucid when it was about computers. And actually if you give the man a benefit of a doubt. If you accept the world he was seeing and hearing and living in. You will understand that he was quite normal in his messed reality. Like when your voices in the head constantly call you a `nigger`. You just stop seeing this term as something you can't use against the voices themselves.
@BdR763 жыл бұрын
I watched this talk on my smart tv and the youtube app just randomly froze, which in a way seems fitting.
@CCV3342 жыл бұрын
I feel very heavily for the question at 59:53 I feel like soo many people are on board with this concept of "Let's learn how to do things the 'right way', let's write better code!" but it's extremely difficult to make that shift. It'll be years before you make anything potentially worthwhile, even rendering pixels on a screen. I get where Jonathan Blow is coming from but it sucks that there's no real solution even attempted here.
@Solarexistence2 жыл бұрын
Yep, there is no way you are going to convince the collective to do this. Cool for a few individuals as a hobby but thats it
@jannikheidemann3805 Жыл бұрын
56:05 Issue: Refference videos are missing from video description.
@patricknelson Жыл бұрын
*Yes* - simplification is key. The approach will vary, the things you find and can simplify might differ, but… that’s a goal that, over time, you start to realize becomes _so incredibly_ important. Great takeaway.
@Papa-Murphy Жыл бұрын
Loved watching this on the KZbin mobile app that just gets worse and worse every year
@zhulikkulik Жыл бұрын
Me, having to reload it to read your comment because my phone switched to dark mode and now there's white font on white bg...
@antpal6853 жыл бұрын
52:02 2 years later short supply chain problem due to Covid created chip shortage and affected video games consoles, video cards, cars etc.
@rabbitcreative2 жыл бұрын
>Covid created HUMAN-created.
@storagestorage1545 жыл бұрын
schooled about the space race from jon blow, never saw that one coming
@1over1372 жыл бұрын
On the "comes canned with it's own OS" point. There are obvious downsides. Basically it's developing the application, then developing AN OS to run it. This is fine, for YOUR applications. It drops dead instantly when you want to run two different applications on one system. However... to contradict myself, we do sort of do this today with containerization. Each image has it's own mini-OS, containing just enough for the application to run. The downside is, of course the complexity in setting up and orchestrating those containers AND the complexity of multi-plexing all those "provided", "shared" OS functions like network and disk access. It's like a lot of technologies. They don't actually fix the problem, they just move it around. Like public toilet toilet roll. Modern Java OOP code is an example of a toilet roll methodology. It's aim is to remove complexity in code, they target lines of code per method and just smear that lovely smelling complexity over 2 dozen files of class/interface/pattern definitions instead. If only they included all the object/class initialisation, instantiation and dynamic reference tyre resolution in their complexity metrics they might see the toilet roll effect.
@deltaray32 жыл бұрын
Like many things, there is a Star Trek episode about this concept. STTNG: When the Bough Breaks. Dr. Crusher says "Your people have forgotten how everything works"
@MrAbrazildo9 ай бұрын
36:10, that was absolutely amazing!
@Martinit02 жыл бұрын
51:30 "Almost nobody knows what is happening on a CPU" - I posit there is another area where it's even more critical: There are only two companies worldwide that know how to manufacture 5nm node silicon chips (TSMC and Samsung) and there is one ONE company (ASML) that can manufacture the EUV-lithography machines that is needed for this manufacturing process - AND - ASML has each only a sole-source supplier for the optical assembly and the driving laser, both critical components of said machine. The amount of knowledge that goes into making that EUV machine and into making the 5nm manufacturing process work is insane. Insane! And it's heavily guarded knowledge. Who know whether there even exists a person that knows it all.
@styrofoamsoldier Жыл бұрын
I know I'm late to this, but it almost sounds like *gasp* knowledge not being shared is to the detriment of LITERALLY EVERYONE. These companies may make their money right now by doing this, but sooner or later they won't be around and one HAS to hope that the knowledge that is necessary to build these instruments is still available to those who may need it. The whole idea of intellectual property is absolutely baffling to me but the corporate machines cogs just keep turning, business as usual. (I'll add that IP definitely makes sense in the current system of economy, it just doesn't in a humane one) I hate to sound like a anarchocommiewhatever, but huge companies carving out their niche in such important parts of our industry is so dangerous, not only to the industry itself but to society as a whole. The same problems WILL emerge in the software/hardware industry as they do in every other industry where the profit incentive gets in the way of the greater good like we've seen with housing and finance which don't even have the slightest veneer of passion, just cynicism. Not angry at you, just a man shouting at clouds here. You make a very valid point.
@grawss Жыл бұрын
@@styrofoamsoldier You sound like you could go either way, anarchocommie or anarchocapitalist. The only thing that leans toward "commie" is the word "shared." Personally I don't think knowledge should be freely shared, but it definitely shouldn't be locked down by feds with guns! If some kid makes something in his garage and wants to sell it, let society figure out whether they want to support that kid or the mega corporation that would otherwise sue his ass into the stone age and ruin his life for his mistake of not knowing someone else made something similar.
@j1412ve2 жыл бұрын
Putting my few cents here about learning, people generations and knowledge flow. When I started learning to code there were things in older programmers that they know something because technology or some idea was known and iterated over years while they were learning/working in industry. But when I was just starting to learn to code I was seeing technologies in their most recent shape. I had lack of this years of background and iterations over technologies and all this "why's?" behind changes in all IT field. And personally I disagree with people saying that "IT (at least coding) is easier and easier to jump into" I think that it's reverse because of lack of knowledge flow I mentioned before but maybe I'm just not seeing this bright side they mention?
@immanuelkouldnt76012 жыл бұрын
This is such an amazing talk!
@HanifCarroll4 жыл бұрын
Very inspiring talk. The point that "programmers aren't as productive as they used to be" is interesting to me. I'm self-taught of 3 years, with 2 years of professional experience, with almost all of my experience in front end development. The thing is, I want to be one of those engineers that "gets it", that understands the foundational ideas and tools of our craft. But I have no idea what to do to get this type of knowledge that he's talking about. Is a computer science curriculum a good start? Then what? What resources would any of you recommend for someone who is interested in learning how to do things the right way? What sorts of things can I do?
@chordogg4 жыл бұрын
I would suggest checking out the Handmade community. They're devoted to reviving the "old ways" of programming. The roll your sleeves up and get your hands dirty kinda stuff. I've learned a lot from Casey Muratori. He's making a game from scratch in C. In what amounts to a day of work, he had a code hot swapping system working where he could recompile the game logic and see the results on screen without restarting the game. It's deceptively less complicated than you'd think to do things more or less from scratch and it's an incredible learning experience.
@Edge104 жыл бұрын
@@chordogg That code hot-swap thing is incredible. And it's like 3 hours total of video time with him explaining every line of code. I'm sure someone could implement that system in an hour now.
@jackrobinson24404 жыл бұрын
Find people who believe in this concept. Find people who aren't just smart, but are geniuses. Study their code. Decide if their reasons are valid. I know people will throw rotten fruit at me for saying this, but the Linux Kernel is a great place to learn some things. There are other even simpler (not that Linux is simple) OSes to look at like ucos, and the bsd guys are pretty serious about KISS as well. Have a look at this list, pick one and port it to one of the many SOCs. en.wikipedia.org/wiki/List_of_operating_systems#Other_embedded. The arduino hardware is great because it is cheap. Whatever you do, do not use the Arduino software, it is a perfect example of What Not To Do, then giving you an API that has almost no relationship to the hardware. C is key. I am sure there is a kernel not written in C somewhere, but I've never seen it. C is good on hardware because you generally know exactly what is happening. I've written applications with a 512 Byte (less than 1K) stack using C. It was a BLDC motor controller that used SPI commands to set acceleration, ramp up/down, distance, kept track of the optical encoder and ran all 3 phases with their hall effects. It also had a serial debug terminal. It all fit in a 4K flash on some 28 pin AVR part. You can't use printf - you have to write your own. You can't even use a C library because it's too big. You want to learn something, do something like that and you will learn a lot about simplicity, hardware, and the cost of bloat.
@____uncompetative3 жыл бұрын
You could get a Raspberry Pi
@Retfie7193 жыл бұрын
Well, do anything but front-end...
@WuzzupWhitey2 жыл бұрын
Didn't get what problem does he has with *LSP* 42:29 ? It's quite good and simplifies things enormously by standardizing the IDE features protocol for a variety of languages & editors. To me it looks like he has misunderstood or downplayed the problem that people are solving with LSP.
@dside_ru2 жыл бұрын
Yeah, I was also weirded out by this point. My guess is that his concern is with LSP being a *server,* a software component complete with its own state and lifecycle that have to be managed, rather than an embeddable library that lives largely in the editor process, because that would strip a good chunk of complexity. In that sense LSP didn't really have to be a networking protocol, it could get by with being just an API. And it is, in a way.
@youtubesuresuckscock Жыл бұрын
That's always been his MO. Take strong ignorant stances on things he doesn't understand or create convoluted, obtuse, and arbitrary requirements that nothing can realistically meet just so he has something to complain about. It's really sad that people are fooled by this charlatan. It's snake oil all the way down.
@Kinos1412 жыл бұрын
I agree about hardware. Ray-tracing theory has been around for decades, but it took hardware to make it a thing in 2019-2020.
@Elrog32 жыл бұрын
Even with the capability to do ray tracing, doing it is going to be slower than not doing it. Its not something that needs to be universally applied everywhere.
@ifstatementifstatement27042 жыл бұрын
I work in software development and given how stingy programmers are with helping others or passing on experience, the loss of generational knowledge does not surprise me.
@fourscoreand98844 жыл бұрын
Fascinating, Jon, as always.
@stripedgazelle2 жыл бұрын
Thank you for this! For a decade or more as a software developer I talked often about this, calling it "superfluous complexitiy" and felt like the only person who cared, so I am really happy to hear a kindred spirit! My own druthers led me to code an assembler in Scheme, then a Scheme compiler, than a bare bones x86 operating system using that Scheme compiler, and finally a minimal (color)Forth compiler likewise as an x86 operating system. Mostly I was employed as a C programmer since I can't bear the Java, C#, or even the C++ crowd anymore, and certainly not the ridiculous monstrosities that people use for IDEs and Web Frameworks. Basically in the end I just ended up abandoning the field fully expecting the eventual collapse...
@TheSulross2 жыл бұрын
Go is a minimalistic alternative to Java and C#. Zig is a refreshing alternative to C. Rust is supposed to be an alternative to C++ but not everyone has been satisfied with Rust. Google has started Carbon as an alternative to C++, but it's barely up and going. Odin is another impresive new language and strives to be concise but capable while addressing a lot of foot guns of C and C++.
@valmirius Жыл бұрын
@@TheSulross gotta say I'm sick of refreshing alternatives coming out that don't actually solve a problem really - and just have syntactic sugar to make life a little bit easier. At least Rust does something new - even if it's a bit heavy handed about it.
@TheSulross Жыл бұрын
@@valmirius Am using gcc/g++ with the Intel DPDK library to do high performance back-end network programming. I have to use a systems programming capable programming language and the compiler needs to be very mature and offer various special attributes for managing data structure alignment/packing. C and C++ (up to C17 and C++17) standards are working out just fine for this. Would definitely not use Rust for any of this as the interfacing with C ABIs and data structure control would be either an infinite pain (constantly writing unsafe blocks) or not there sufficiently (adequately controlling the detail of data structures). Maybe Zig...but really with DPDK one needs to compile the entire library to the specific CPU target, dialing in various instruction compiler options and lots of other things that DPDK dials in and code generates a header for. Would fear using Zig would be an uphill battle as well (but probably less so that Rust). The more I deal with writing code that is 100% non-blocking, pins CPU cores for exclusive use, is NUMA aware, very carefully crafts all data structures to work well with cache lines, makes use of huge pages, inter-process shared memory, and non-blocking data structures for hashing and queues - i.e., system's style code - the more I become skeptical of these newer languages shoving aside C and C++ any time soon. In time they will get similar level of maturity. Am more hopeful about Zig getting there faster than Rust, though - in the specific role of systems programming. Something like DPDK, that has been refined for well over a decade, would just need to be rewritten from the ground up where a language like Rust is assumed throughout. Nobody is going to do that as to rebuild the equivalent of DPDK in Rust would be a long and expensive undertaking.
@MrFram11 ай бұрын
@@valmirius zig solves the real problem of c being a shit language (but then so does pascal)
@valmirius11 ай бұрын
@@MrFram fair game I suppose. A low bar indeed though
@aut0turret2 жыл бұрын
I know engineers who insist on taking what they know to their grave for different reasons... Off of the top of my head, they are: 1) they don't feel it's their problem/job to teach, 2) they don't want more competition in their field, and 3) they're being forced to train their lower-paid replacements who are often foreign. For reasons #1 & #2, I disagree. For reason #3, I 3/4 agree... let's see if that's allowed.
@lordlucan5292 жыл бұрын
4 - the younger programming generation just don't care and don't want to hear it
@aut0turret2 жыл бұрын
Not true.
@rayecast11 ай бұрын
@@lordlucan529 I think this plays a larger role than most people want to admit. The general consensus (not just with younger programmers!) seems to be, "Well, why should we bother learning all that stuff? That's just a waste of time, we can just use such and such program, or we can use this game engine, or we can eventually rely on AI to do all this stuff." Very short-sighted and naive thinking, in my opinion.
@SHONNER3 жыл бұрын
37:11 Look at Python. It's become way more complicated and abstract in the last 12 years.
@radthadd5 ай бұрын
It's a chunk o shit
@SHONNER5 ай бұрын
@@radthadd I heard they just canceled one of its devs.
@neutechnica10 ай бұрын
As much as I disagree with the speaker, I love how much of this is the result of experience and deep thought on a subject. That said, I'd love to see him create a company that puts in the work to replace all of these mediocre systems and offers this 'something better' that everyone will want to adopt. Where's his will to make such a difference? He's not going to do and this is reflected in his response at 1:01:08 "Yeah...I don't know man." He's missed the biggest part of all of this. It's never been about software. It's about humans being able to accomplish human things. He recommends the equivalent of requiring that every person who wants to write a book that passes on valuable knowledge needing to know how make paper. We would be left with a civilization of paper makers and no one sharing knowledge that empowers more and more people to go out and do amazing things. He speaks like an artist of so many ages that was proud to be part of a small enclave of success. Surrounded by people who looked like him, had access to education and mentoring like him, and only open the doors for people like him. Thankfully, that's just not how software works any more.
@lastburning10 ай бұрын
He is trying to make better systems like his programming language jai. He would also like to make an OS but he can't do everything. He wants to create games as well. Time is limited for all. Blow's point is that without the successful transfer of knowledge to new generations, technology (and civilization) will degrade. He specifically said that it's cool that people can make games with C# and Unity, but it's a problem if we lose the ability to make game engines. Where does Unity get their employees if nobody understands how game engines work or are made anymore? He's also very much in favor of open sharing of knowledge (and has done it himself) so your later comments were baseless. You kind of ignored the whole topic of failed transfer of skill and knowledge across generations.
@Maxine-f8i4 ай бұрын
@@lastburning to add to the metaphor (which doesn't work really well on top of that). Learning how to make paper doesn't stop you from writing. I think we should be encorage to learn more about how the tools we use everyday are made and work, doesn't mean everyone has to be an expert on the subject.
@opl5004 жыл бұрын
I would say it has been "riding on hardware" for decades. However, hardware has started to plateau. And it's not just with computers that you "can't just" - it's pretty much everything has gotten gratuitously complex.
@haraldtopfer57322 жыл бұрын
Not so fast. Recent advances in the quantum computing might inject new fuel into the system.
@youtubesuresuckscock Жыл бұрын
Hasn't even begun to plateau. Video cards just keep getting faster.
@___Hermitage2 жыл бұрын
Such an important talk
@TheBigLou13 Жыл бұрын
53:05 King Terry Andrew Davis worked his whole life for this cause. To solve these problems by creating an OS that is simple enough to be understood.
@JavierSevilla2 жыл бұрын
It's funny how my KZbin app keeps stopping unable to continue this video ... My connection is fine and I can watch other videos
@zeko77tz11 ай бұрын
Excellent points. It is time for industry-wide spring cleaning.
@ic64062 жыл бұрын
No one asked following questions: 1. If we would have ability to copy a program as a single file to another program so that would work fine, then how we should manage our dynamically linking libraries? I mean that one program may depend on plenty of shared code (libraries) that other programs may possibly depend on too. You need to invent a new concept of dynamic libraries or some kind of enitity (i.e. runtime chosen components we can't predict). DLLs are using a simple concept but it forces us to make some kind of layer in the OS that will "install" those for us to work. If we get rid of the concept of "installation/deployment/whatever" we have to keep in mind that we want a flexibility (like dynamically linked plugins in runtime) and keep space on disk (i.e. not take all those libraries in each binary). I don't know how to expain well what i mean, maybe someone understands me 2. If we get rid of complexities in the OSes then how we can pretend those OSes would be secure? I mean that if the OS is capable of writing "raw" pixels on screen then how we can ensure that some software would not abuse that feature to disrupt our user experience (for example a software that fills entire screen with a color and disturb us from killing that process using the system capabilities). You can't protect your systems from those kinds of abusing with other layers of the OS. I also think that security features are adding complexities in the applications we write and this is inevitable Good talk by the way, I have some kinds of inconveniences that exist nowadays in software like inablity to send a file from iOs to Android over the air without internet and cloud storages or messengers, however, both of them have bluetooth that meant to be working the same across all devices
@Kinos1412 жыл бұрын
I hear what this guy is saying and it is true. However, there are still young people who are still learning the how to create game engines, and are new game engines coming out every week, it seems. I think software development efficiency will go down to a certain level for a time, but will bounce back up once the public realizes that it's necessary.
@Dowlphin2 жыл бұрын
You need root access to fix society's kernel bugs. If you do that, you don't have to build an empire of workarounds. Everything flows from the source. Societal change starts within each individual. I.e. spiritual wisdom teachings and cultivation practices are crucially important.
@pskl5 жыл бұрын
Outstanding talk
@SamuelKarani2 жыл бұрын
Basically Nassim Taleb's idea of how modernity fragilizes all its systems by optimizing for a few variables - in this case software shipping time
@radscorpion85 ай бұрын
but it also doesn't make sense either. Because no one wants a fragile operating system or piece of software. That's also bad for business. Therefore there is usually a balance, and because companies *really need a stable system* when running their billion dollar applications, stability is actually really highly valued and prized and therefore has been achieved. How long do servers run? Basically non-stop, under heavy loads. That's really impressive - both software and hardware parts. His laundry list of problems with software is just one long anecdote. It is not a serious statistical analysis...so yup. Hard to take this really seriously
@CCV3342 жыл бұрын
Unnecessary interruptions occur due to using tools tile Unity and Unreal but I think the time it would take to write everything from scratch is such huge overhead. If it takes solo devs up to a year to make a game I feel like it would take 5 years to get your engine up and running with rendering, input, lighting, sound, etc...
@Toleich2 жыл бұрын
I would imagine that if more people were working with the lower level APIs then there would be more pressure to simplify and standardize them. Like the shader language problem Jon mentioned. So it would be easier if there wasn't such a reliance on the 'big engines' to deal with these problems for you.
@eduardoubilla43072 жыл бұрын
True, but an engine made by a studio won't have the scope Unity or Unreal has because isn't a product that you wanna sell to most people, is a tool you will use for a specific purpose. Remember that "back in the day" videogames used to be developed in months, not years, i think doom or quake was developed in like 8 months or something like that. I'm pretty sure that was because they knew the ins and outs of the engine they were using and most important the engine was made to develop games, not to create movies and many other things.
@thfsilvab Жыл бұрын
Kinda late here, but incredible talk! I agree that there are many layers of complexity to modern software development, some of these layers unnecessarily added, some make total sense. The thing that bothers me the most is how people give excuses to write buggy and inefficient software, as well as the whole culture that was baked in companies to keep delivering as fast as possible, and completely forget about quality, performance, or user experience. I truly believe when you say that software was just carried in a bag by hardware innovation and improvement.
@yessopie2 жыл бұрын
Just spent the last week fighting with Docker... Things that worked an hour ago are not working at all anymore, with no indication why... Containers just stop for no reason, sometimes they don't connect to the network properly... Sometimes it works but it's so slow that requests time out. I spend most of my time these days fighting with these new stupid tools that we never had to use 10 years ago. All this to save new developers from having to learn how to set up their own dev server, which I think they should learn to do anyway.
@xealit Жыл бұрын
If you have a large influx of newcomers into an area with few experts, naturally the knowledge gets diluted.
@craigdanielmaceacher3 жыл бұрын
Well it did happen, editors got LSP and now they are getting Treesitter (neovim, emacs, atom, others) which further externalizes features into a server-client. It is the UNIX architecture, editor should edit text, see Kakoune. But where and when are the boundaries?
@johiahdoesstuff16143 жыл бұрын
Everything just needs to be coded like factorio
@carlsmith8593 Жыл бұрын
Tried GitHub Codespaces, but it was really buggy, so I switched to TextMate, which was worse, so I tried NeoVim, but it had graphical glitches everywhere, so tried VSCode, which runs like dogshit. It's incredible.
@orange-vlcybpd29 ай бұрын
28:26 If your monitoring systems do not operate at at least five nines, how can you count the uptime of your system reliably :D
@nerderror4 жыл бұрын
Hey, DevGAMM, please enable ability to make subtitles for this video! It will be really good
@DevGAMMchannel4 жыл бұрын
Hey! Enabled :)
@nerderror4 жыл бұрын
@@DevGAMMchannel Thanks!
@rogerdinhelm46712 жыл бұрын
>What happens nobody can get to stackoverflow and copy paste thier code Well, we will be buying monthly snapshots of whole stackoverflow on a flashdrive from a local dealer
@otherwillu22 жыл бұрын
This is pure William Gibson …
@ScotBecker4 жыл бұрын
I didn't hear the audience gasp when he called Tereshkova Gagarin. Whoops!
@fisterB3 жыл бұрын
Maybe we believe what we are told. I just silently appreciated the delicate features of the fine young Gagarin.
@Jacob-pu4zj Жыл бұрын
I thought that face was a little off...
@TND4LIFE Жыл бұрын
jonathan blow is a norwood gem
@rayecast11 ай бұрын
NAS coal
@unsaturated84824 ай бұрын
so screenshot always works, good to know
@ProfessorWaltherKotz5 ай бұрын
39:37 That's why SPIR-V exists in Vulkan API. Vulkan can also use HLSL now :) Vulkan for the win!
@nicodela685411 ай бұрын
I was trying the new Pince of Persia demo on the Epic launcher while listening to this video and every time I tried to run it, it just restarted my computer, couldn't get it to start, it's a bit sad.
@arian3867 ай бұрын
For unknown reasons I watch this when I am bored
@Stumashedpotatoes2 жыл бұрын
I agree with a lot of it, but not the part about Language Server Protocol. old editors WERE NOT able to do what new editors can do (variable renames, variable usage lookups, other structural refactors), and for the longest time, only SOME editors could do SOME language-related analysis for the programmer. the point of LSP is that ALL editors can do ALL the analysis. the only part of his criticism that is reasonable is that LSP should be a library, not a server. it's a fair point, but there are obvious reasons why a server was chosen instead of a library (the server needs / is better off holding some internal state).
@georgerogers1166 Жыл бұрын
Also a library implies tighter integration in the memory model.
@Marque7347 ай бұрын
Ariane 5, Blue Screens in Windows ME, Weirdest Glitches in Games like Pokemon Blue/Red.
@allyc0des9724 жыл бұрын
simplicity is key. complexity breeds janky complexity
@shawnmuench2 жыл бұрын
Based on the intro-- sounds like Graber in Utopia of Rules! Good book.
@wavedash-3 жыл бұрын
The hypothetical "what if China just stops selling us their CPUs?" is scarily prescient
@jonmcguire2283 жыл бұрын
Except that, generally speaking, they come from Taiwan.
@fennecbesixdouze17943 жыл бұрын
@@jonmcguire228 When China invades Taiwan in the next 2-3 years, do you really think the US will do anything to stop them?
@josh12345678922 жыл бұрын
@@jonmcguire228 guess what country basically owns Taiwan, lol en.wikipedia.org/wiki/Taiwan
@user-vn9ld2ce1s2 жыл бұрын
@@josh1234567892 Not really... Not yet :|
@Elrog32 жыл бұрын
@@josh1234567892 Taiwan is an independent country. The US isn't going to go to the lengths it did to minimize its interaction with Taiwan like it did for Ukraine. Taiwan is too strategically important because of its place in the CPU market.
@llamallama15092 жыл бұрын
Thank you for the interesting talk, though in my experience old software from the 80s and 90s was a lot less reliable than he seems to remember.
@Martinit02 жыл бұрын
Yes, stuff was crashing all the time necessitating hard reboots and / or running out of memory. Maybe the stuff banks were running was more reliable but consumer software was buggy even then.
@alexanderbenkendorf6885 жыл бұрын
Why is it not on Ted conference? It should have a lot more views..
@nagi6032 жыл бұрын
40:00 yeah, that dream of "worked everywhere" just was never true at all. You even had to have separate settings and drivers for every sound card even. (and the list changed for every game!) Also in the past consoles were not x86. So growing up with DOS & Atari/NES for consoles... I'm not sure where this came from. And Boy, did we have a lot of hard crashes and things like IRQ and out-of-memory problems. Though otherwise there are valid points there.
@youtubesuresuckscock Жыл бұрын
It was a completely asinine argument. You can trivially "just draw pixels to the screen." Obtuse toads like him pretend that things like SDL2 don't exist because they don't meet his ignorant and arbitrary concept of what software should be. I feel sorry for rubes that are tricked by transparent charlatans like blow. "You can't just run an unsigned program." Yeah no kidding. Just like in the 80s, you couldn't just code an 8bit NES game, burn it to some ROMs, and plug it into a cartridge pcb you had lying around because it was all proprietary junk you couldn't even acquire. Software has never been faster, more reliable, more accessible, or more stable in human history. This video is complete garbage. Literally everything in it is wrong.
@radthadd5 ай бұрын
This applies to the universal hate for Delphi. Unlike most other advance and capable languages, Delphi doesn't need a million APIs to work. It just works.
@TheNethertyp6 ай бұрын
Anyone ever tried video editing? Unknown coded, can't read file format, duplicate frames, audio desynced, video length incorrect, video file corrupt, video freezes for 2 seconds at the beginning... And most of these bugs happen for no apparent reason.
@TheRainHarvester Жыл бұрын
As a driver developer i can tell you, devs still use pointers, and assembly when needed for speed.