"Uncle" Bob Martin - "The Future of Programming"

Ғылым және технология

How did our industry start, what paths did it take to get to where we are, and where is it going. What big problems did programmers encounter in the past? How were they solved? And how do those solutions impact our future? What mistakes have we made as a profession; and how are we going to correct them. In this talk, Uncle Bob describes the history of software, from it’s beginnings in 1948 up through the current day; and then beyond. By looking at our past trajectory, we try to plot out where our profession is headed, and what challenges we’ll face along the way.
Robert C. Martin (Uncle Bob) has been a programmer since 1970. He is the Master Craftsman at 8th Light inc, an acclaimed speaker at conferences worldwide, and the author of many books including: The Clean Coder, Clean Code, Agile Software Development: Principles, Patterns, and Practices, and UML for Java Programmers.

Пікірлер: 1 900

  • @flynn9500
    @flynn95006 жыл бұрын

    I was sick in bed and watching KZread. Fell asleep, and woke up half through this. This man is such an extraordinary storyteller, and made for some awesome dreams.

  • @flynn9500

    @flynn9500

    6 жыл бұрын

    I now feel like a more competent programmer due to listening to this while I slept.

  • @ajeetgautam3186
    @ajeetgautam31864 жыл бұрын

    This is eye opening lecture for programming ethics and moral standards. What an energy Uncle Bob... so inspiring...

  • @AlphaCFalcon
    @AlphaCFalcon4 жыл бұрын

    "We didn't get into this business to kill people." Weapon systems software devs: "Speak for yourself!"

  • @willowFFMPEG

    @willowFFMPEG

    4 жыл бұрын

    *looks away quickly in Fortran 95*

  • @stereorail

    @stereorail

    4 жыл бұрын

    Megadeth: Killing is my business, and business is good! kzread.info/dash/bejne/f2qZqtmeXbLIp5s.html

  • @RaviS-gj7zp

    @RaviS-gj7zp

    4 жыл бұрын

    ...yes, but he may be referring to the UNINTENDED CONSEQUENCES or INTUITIVE WARNINGS/ALERTS to the world .....

  • @jasonjayalap

    @jasonjayalap

    4 жыл бұрын

    Last i checked the toyota accelerator stuff is apocryphal. They paid but it likely wasnt software.

  • @whitedo1

    @whitedo1

    4 жыл бұрын

    @@RaviS-gj7zp Keep in mind this was recorded before the 737-MAX8 problem came to light.

  • @kehindeomotoso4597
    @kehindeomotoso45974 жыл бұрын

    This is a mindblowing talk. I love every part of it.

  • @555mdutra
    @555mdutra7 жыл бұрын

    I am an instant fan. Thank you uncle Bob Martin! My father became an IBM 1401 computer programmer in the 60's and I became a computer programmer in 82. After 30+ years of experience I felt alone thinking I was the only IT professional that saw the whole software industry as a chaotic clusterfuck of languages, code and frameworks from hell. Everyone else seems to adore the nonsense and inefficiency of software development - I call it "bug farms". Thank you for telling it so clearly in such detail and with fun.

  • @dongiovanni1993

    @dongiovanni1993

    4 жыл бұрын

    So am I. Agree. It's fear and tears to talk to some new-fashioned devs and to see their _masterpieces_. I can bet there are a couple of percent of them who knows what the stack is.

  • @tauhid8366

    @tauhid8366

    4 жыл бұрын

    Mauro Dutra I’m currently learning programming and was asking myself the same question. “Why do they have so many programming languages?” It’s honestly really dumb.

  • @grapy83

    @grapy83

    3 жыл бұрын

    I keep thinking on the same lines but I was always afraid that perhaps it's just my laziness or dumbness that's skewing my perception of the modern clusterfuck of programming. I feel so relieved that an experienced professional feels the same.

  • @carlose311

    @carlose311

    3 жыл бұрын

    @@foobarmaximus3506 although i'm in my early 20's i feel very irritated when seeing people are leaving the foundations and focusing on learning frameworks and neglecting the lower layers. The problem as i see it's that a large amount of new programmers jump right on frameworks and never touch the needed skills, propper design and software engineering until its too late. I find it hard to convince new comers to folow at least the bare minimum process needed to write software. There is almost always a guy that rant on me saying that's bullshit By the way assembly is my first language.

  • @allenyu4054

    @allenyu4054

    2 жыл бұрын

    Really true

  • @RaviS-gj7zp
    @RaviS-gj7zp4 жыл бұрын

    Coming from Bob's generation and relating to 90% of the times, people, technology he so beautifully--funnily-expertly narrated, I MUST admit this is 1 of the top 5 best I ever watched and was humbled by his sense of awe and reality, with an extraordinary ability to look into the future!!

  • @richardmcclendon9077
    @richardmcclendon90774 жыл бұрын

    Good video, tells story of the evolution of programming profession. I can vouch for his story as i retired at age 72 in 2015 after 52 years in and around programming.

  • @53strat55

    @53strat55

    3 жыл бұрын

    What did you like most about programming? Could you share some of your philosophy to a 27 year old man?

  • @rafeu2288

    @rafeu2288

    2 жыл бұрын

    A 73 year-old programmer advice would indeed be useful. :)

  • @rafeu2288

    @rafeu2288

    2 жыл бұрын

    Perspective is often one of the missing pieces for new software developpers.

  • @shailendra2424

    @shailendra2424

    2 жыл бұрын

    You missed the point.

  • @tristanrentz7687
    @tristanrentz76874 жыл бұрын

    Programmers everywhere need to watch this!! Priceless and important

  • @DanielRossellSolanes
    @DanielRossellSolanes4 жыл бұрын

    I'm a somewhat retired programmer. I retired for three main reasons. 1) health issues. I'm epileptic. so about once-twice a year I waste a few hours at a hospital after losing conscious. for some reason, I got always fired less than a week after that happening. 2) I didn't want to "finish" my code until I was sure it worked properly. for some reason, my bosses didn't care about that. they do care about telling the client "we did it before the deadline" 3) somehow the people that decide whom to hire got the idea that having worked for over three years in a language (and, goes without saying, four-five companies) it meant you were outdated because there's a newer version of said language. well, there's a fourth reason. I need a stable job to get a stable income and somehow put food on a plate in front of me. but that's beyond the point. now, you all may be thinking "why is this guy telling us about his life here?" well... the answer is simple. I wanted to introduce myself before I gave what I believe is the important stuff. I was hired by a company I'm not going to name as part of a group that had to do a simple task for an insurance company (that I'm not going to name). update the software from an old program that was made more than fifteen years ago to the new technologies. now, one of the first things I mentioned, at the interview when they explained what was the job, was that I had zero experience on the source programming language, only on the language that was used on the new version. their answer was "don't worry. you won't need it and, even if you need it, your companions will be able to help you" I though "what a great company. it's a lot better than the others I have worked before. maybe this will be my place" and I couldn't be more mistaken. what was the problem I found? there was two of them in fact. and I'm not sure which was worse: 1. every few days we found rounding errors over the original code. money quantities were rounded wrongly. and the client wanted us to keep them on. it got shocked me the first half dozen times. until I noticed all of them were in favor of the insurance company (and this is why I don't want to name it) so they didn't want to lose the extra income. it's unethical and made me puke but ok. I could understand it. 2. one day, during a meeting of the group, we got scolded because we were barely keeping the deadlines. we explained that we had to test the code to ensure it would work "properly" (note the quotes due to previous point) and their answer, a couple meters away from the insurance company main responsible for the project, was that it didn't matter if there was a few bugs on the code as long as the deadline was meeting. now... while I can understand that deadlines are one of the most important things on any serious project what pissed me off about this was this simple fact: is it really so important to finish a project in less than half a year when the source is a sofware that has been working, with intentional errors, for more than fifteen years? note: out of the eleven team members only one was female. and over half the team lacked any kind of relevant experience programming. sure, everybody knew the language we were using but, as pointed in this video, that and programming are two completely different things. thank you all for reading me until the end.

  • @NewbOoyNS

    @NewbOoyNS

    4 жыл бұрын

    It was a really interesting read. I am epileptic as well but I only have night time fits so I didn't have job issues, also having sick days helped a lot. This kind of practice is still alive, even in the UK. Accounting program that major firms use, have major calculation errors that was known for the last 5 years, yet "somehow" there is never time to fix it.😔

  • @DanielRossellSolanes

    @DanielRossellSolanes

    4 жыл бұрын

    @@NewbOoyNS mine are mostly night time fits with a handful exceptions (never at work until a while ago but not it's not an issue anymore. in fact they prefer that I'm epileptic) but at the hospital they always prefer to keep me a few hours because sometimes I do repeat after 2-3 hours and the second (or even third) is always a lot stronger. to the point that one time I got the second shortly after the ambulance arrived at my home and they called for another ambulance because they didn't feel prepared to deal with it (and, frankly speaking, they weren't and, without the second ambulance I would be dead) and it's true. there's never time to fix things. only time to make a larger mess by adding useless functionality. sometimes to the point that it's better to redo it from zero instead of trying to fix anything but, of course, those that pay will never see it that way (until the system says "fuck off. I refuse to work" and we see a blue screen with white letters)

  • @DanielRossellSolanes

    @DanielRossellSolanes

    4 жыл бұрын

    @@somercet1 the lousy formatting is, believe me or not, intentional.

  • @catoom10
    @catoom105 жыл бұрын

    The last 20 mins were the most valuable what I have ever heard. I thought I am alone with this opinion on the Earth

  • @deezy5632

    @deezy5632

    3 жыл бұрын

    Iiiiiiiiijiiiijiijiiiiiiiiiiiiijiiiiiiiiiiiiijiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijiiijiiiiiiiiiijjiiiiiiiiiiiiiiiiiijiijiiijiiiiiiijiiiiiiiiiiiiiiiijiiijjji

  • @dardanbekteshi3177

    @dardanbekteshi3177

    2 жыл бұрын

    Same here

  • @tharrrrrrr
    @tharrrrrrr5 жыл бұрын

    This talk heavily foreshadows the Boeing 737 Max.

  • @mrrolandlawrence

    @mrrolandlawrence

    4 жыл бұрын

    I was just thinking about that. I guess when you are paying Indian programmers $9 per hour, QA is not on the top priority list. I liked the slide from H2G2 showing the planet of middle managers.

  • @schweens

    @schweens

    4 жыл бұрын

    This comment is a confirmation bias at its best. and what a casual bigoted response by Roland Lawerence. If anything software engineering has become more robust and reliable thanks to the openness of the community we have now, compared to dark days of the speaker. And as a result the number of engineering disasters has drastically decreased.

  • @jotty2451

    @jotty2451

    4 жыл бұрын

    Ashwin Hamal brought to you by an indian programmer making $9/hour 😂 I had to okay?

  • @schweens

    @schweens

    4 жыл бұрын

    ​@@jotty2451 😂 got a big family to feed here on that 9$/hour

  • @James_Bowie

    @James_Bowie

    4 жыл бұрын

    Regardless of who wrote the code, it falls on Boeing to thoroughly TEST it.

  • @marcuschiu8615
    @marcuschiu86154 жыл бұрын

    1:12:28 he started to sound like joker from dark knight lol

  • @Tvde1

    @Tvde1

    4 жыл бұрын

    also in the first few minutes

  • @yomama847

    @yomama847

    4 жыл бұрын

    astute observation.

  • @ThePRDatta

    @ThePRDatta

    4 жыл бұрын

    ROFL

  • @swallowedinthesea11

    @swallowedinthesea11

    4 жыл бұрын

    Yes!

  • @samieb4712

    @samieb4712

    4 жыл бұрын

    That's when it got good

  • @iordanchis2437
    @iordanchis24377 жыл бұрын

    I wish you good health Uncle Bob! Thanks for the talk!

  • @DustinRodriguez1_0
    @DustinRodriguez1_06 жыл бұрын

    He mentioned the Toyota "unintended acceleration" situation and the court case, but I do not think he properly conveyed the stark danger of what happened there. First off, Toyota followed agregiously negligent practices. Among other things, the auto industry has 94 "required" coding practices and 30 "recommended" practices when it comes to development of firmware code. In Toyotas code, they nailed 4 of those practices. They only even CLAIMED to be doing 9. Their developers did not even have a bug tracker. He mentions that Toyota had to pay out a lot of money. That is either not true or at least we don't know if it is. What happened is that in a CIVIL lawuit, Toyota was made to pay $1.5 million to each of 2 families of people killed, so $3 million total. Then, after the jury had pronounced them responsible for the deaths, but before the jury could award a punitive damage amount, Toyota settled confidentially with the 2 families that brought the suit. We don't know how much that was for. The purpose of punitive damages is to provide an economic wound so large that the company would have to be suicidal to continue their behavior. It is the ONLY effective way to modify the behavior of a corporation. We know from actual cases that car companies in particular like to simply calculate how much they are likely to have to pay out in lawsuits and compare it to how much it would cost to change their behavior, and do with whichever is cheapest. It's usually the lawsuits unless there are large punitive damages changing that calculation. However the really scary part is the OTHER court case against Toyota over 'unintended acceleration.' The CRIMINAL case. They were charged with criminal negligence for their business practices which led to their own engineers being unable to produce safe code. And despite how over-the-top terrible their practices were... they were acquitted. Because there are no legally-binding standards when it comes to software. There are no 'licensed software engineers' like there are licensed structural engineers. If they built a bridge with the cheapest talent they could find, deprived them of the tools and time needed to make the bridge safe, and did not give those engineers the ability to make the decisions on when the bridge was ready (instead allowing MBAs to make that decision for business reasons), the executives and managers of the company would go to prison. Not 'the company gets fined', but individuals would get locked in a cage for doing things that are dangerous to people. But if software is involved? All bets are off. You can be as slapdash as you want and build things that kill people and just pay a few settlements to the few people who can afford to fight a lawsuit against you for years. Much cheaper than hiring expensive experienced experts and much more comfortable being able to treat them like generic replaceable cogs whose judgement any middle manager can override on a whim if it suits the business goals of the company.

  • @monad_tcp

    @monad_tcp

    6 жыл бұрын

    And that's why we need self-regulation.

  • @AA-th5vi

    @AA-th5vi

    5 жыл бұрын

    Very interesting summary. Thank you for sharing.

  • @ShirazEsat

    @ShirazEsat

    5 жыл бұрын

    Spot on! The IEEE has been trying to provide the sort of professional body status that Bob referred to for a very long time. Software "engineers" must be the only engineers that don't follow a defined mentoring scheme designed to instil best practices.

  • @mscottveach

    @mscottveach

    5 жыл бұрын

    The real problem with referencing these cases is that it almost certainly was ‘t a defect in the car’s software. There was a possible problem with the floor mat getting in the way and/or the deaths are almost certainly the result of human error. None of the court cases established the existence of a defect. Toyota has always denied the existence of a defect. And operator error is a real thing., 11 dead in Santa Monica when a 90 year old man doesn’t have his foot on the brake when he starts the car. It moves toward a crowd at a farmer’s market. He panics and slams the brakes only in his panic he actually slams the accelerator. Panic plus disorientation can lead to people holding down the accelerator while they think they’re holding down the brakes. If you’ve ever gotten your fingers misaligned on your keyboard and spent way too long trying to fix it but still writing gibberish then you know first hand how sure you can be that you’re hitting the right keys only to discover that you’re wrong.

  • @goyuninfo

    @goyuninfo

    4 жыл бұрын

    How about Boeing max 737 software bug?

  • @rafaelk21
    @rafaelk214 жыл бұрын

    This was one of the most sober talks i have seen in a while! I wish that I could show this video to several people, but probably they would not have the patience and the discipline to watch til the end and assimilate the message. Maybe we are faded to become regulated like doctors, engineers, architects and be there for our choices. It's true, no one understands us. Project managers, 9/10 do not understand us. It's our job to assume risks and commit to something greater. Its our job to say no (quite often sometimes). It's our job to stop thinking this profession is just a playground of self experiment and showcases. Too many show cases. Such a nice talk, thanks for the reflection!

  • @mrbam8
    @mrbam86 жыл бұрын

    This so much more relevant today! Uncle Bob always ahead of the curve!

  • @NathanHughFoster
    @NathanHughFoster4 жыл бұрын

    Compelling presentation from a legend.

  • @CodeTechandTutorials
    @CodeTechandTutorials5 жыл бұрын

    Absolute Legend. Every new programmer and CS undergrad should watch this talk closely IMO.

  • @starlight8260
    @starlight82606 жыл бұрын

    Fascinating trip down computer history's memory lane. What a gem. Big thumbs up!

  • @nerdiloo9863
    @nerdiloo98634 жыл бұрын

    Always good to hear these talks from someone who actually lived it. The Fortran - hole puncher - rubber band /basket - computer operator handoff - 24 hr. delay process really shows how far things have progressed.

  • @JamesTsividis
    @JamesTsividis7 жыл бұрын

    Woah that was really cool. I did not expect that ending of regulating ourselves but it does sound like it would make us more responsible and therefore more productive and purposeful in our programming.

  • @astroturfmatthew3644
    @astroturfmatthew36445 жыл бұрын

    One of the most informative\elucidating talks on programming and its cumulative history I have ever heard, thank you.

  • @johnames6430

    @johnames6430

    4 жыл бұрын

    you must not have heard too much about programming then, this talk was mediocre at best, anyone can get up and talk about history and then add in some fluff about what should happen in the future

  • @DataWaveTaGo

    @DataWaveTaGo

    4 жыл бұрын

    @@johnames6430 You don't understand succinctness and intelligent inference. He has illuminated the very heart of what programming is, how it proceeds and what the outcomes can be. What you want is a pedantic, 24 part series directed at incel nerds. Bugger off...

  • @fatar8257
    @fatar82573 жыл бұрын

    I watched every minute of it and didn't get bored at all. I must say it is a scary future that Bob Martin showed for us there, and i can't say that we won't get there.

  • @agrahazl
    @agrahazl4 жыл бұрын

    Great talk! Wisdom beyond years. Everything you cover I not only witnessed it, I've lived it. Very good stuff!

  • @falteringlemniscate
    @falteringlemniscate7 жыл бұрын

    Just adding a transcribed quote for something I'm writing - one of the highlights for me: Quote: from 57:45 - "If we have made any advances in software, since 1945, it is almost entirely in what not to do. Structured Programming was in what not to do - don't use unrestrained goto. Functional Programming - don't use assignment. Object Oriented Programming - don't use pointers to functions. What we have learned over the last 70-some years is more about what not to do, than what to do. There have been no radical advances in software technology. The craft of writing software remains roughly the same as it was in 1945 - a little more modern, but not essentially any different." - to 58.43

  • @Dom4z

    @Dom4z

    7 жыл бұрын

    This! As a novice programmer who has started a year ago. I went into my first year of college with such a huge motivation and respect to the field, until all of it eventually waned. I tried to learn programming as best as I could, until I begun seeing flaws everywhere I looked. Somehow it all went from being very logical in the beginning to very illogical later on. Every project we were told on what not to do, but nothing about what to do. Basically the professor, teachers and even the language itself were restricting us from our own thought process on how we would solve the particular problem. Since then I have been changing from language to language, and never really found the one I liked the most. Most of them had things that I liked and didn't like. I wish people that are veterans in this field would someday make a leap and improve the whole programming and technology overall. I remember the day when I learned to write "Hello world" in Java, and then later did the same in Python in my spare time. I was a little bit shocked of why I had to make so many unnecessary steps to write it out in Java in comparison to Python. I mean why can't we have something simple but complex and especially different from current software technology...

  • @petter9078

    @petter9078

    7 жыл бұрын

    My thoughts exactly. Had the same thing happen for me today, while writing in Python for the first time. Not even sure I will touch Java any longer.

  • @nathang2465

    @nathang2465

    7 жыл бұрын

    Yes! stay away from Java, more jobs for us. mwahahaha. No but seriously you should read up on the differences between languages.

  • @henhoci

    @henhoci

    7 жыл бұрын

    Jamie Stevenson I agree, when I was a kid I use to play my mother in checkers. She would always beat me. After a few years of losing. I asked "why can't I beat you?" She replied "I takes a great loser to be a great winner." My Point is that we are finding all the want don't to do's. Then we will get to that point when software evolves.then everything changes.

  • @jamesrockford2626

    @jamesrockford2626

    6 жыл бұрын

    don't use pointers to functions?? wtf ??? lol You can't do inheritance and polymorphism without them. You can use shit like delegates in C# without the concept. Event programming in general is all pointers to functions. Do you know what a virtual function table is?? apparently not

  • @IceThatJaw
    @IceThatJaw7 жыл бұрын

    This was such a great story telling of history. A must see for young programmers!

  • @mitchthepower

    @mitchthepower

    7 жыл бұрын

    Yes very informative. But the title is totally wrong. He talked 70 Minuten about the history of computer science and 5 minutes about the future. :-)

  • @stevanhartig5573

    @stevanhartig5573

    7 жыл бұрын

    Mitch, if you want to predict anithing about the future you have to master the history.

  • @valeria_souza

    @valeria_souza

    6 жыл бұрын

    Trying to foresee the future without studying the past is like trying to calculate future trajectory of an moving object without asking where it came from or how it moved before

  • @swiftfox3461

    @swiftfox3461

    6 жыл бұрын

    True. I wasn't expecting a history lesson, but in the words of a great Senator, it was "a surprise, to be sure, but a welcome one."

  • @FritzFeuerbacher

    @FritzFeuerbacher

    6 жыл бұрын

    At the end he laid out the big picture of programming, and that is of a professional body. More than that he brought into realization of software being an industry that could, and probably will, be regulated by the government. That will truly make the software a very inefficient, and draconian industry that will make software cost much more than it does now. However, he made the point of software being ubiquitous and it's inevitable potential for disaster. If you want a similar bleak scenario of computing in the future, check out: digitalfuturelife.blogspot.com/2010/11/future-shock.html

  • @rahulspoudel
    @rahulspoudel2 жыл бұрын

    I can listen to Uncle Bob forever. Great one.

  • @catyboy69
    @catyboy694 жыл бұрын

    I don't have patience more than 3 minutes for a talk. I am an agitated guy I may say! But here, i listened ( for real ) every single word. I don't even read my code like that. I do it like : bla.... if( ...aha), than, yep, execute ....that, aha, I read it. A couple of seconds, this is my standard line in patience. And here....an hour, 18 minutes and a bunch of seconds... Wow. This talk really got me into it! Great ! I loved every second of it!

  • @giovannicandidodasilva
    @giovannicandidodasilva7 жыл бұрын

    Great talk, I recommend for every programmer.

  • @midclock
    @midclock5 жыл бұрын

    Defenitely the best...movie that I've seen this year. Yes it's such a great story, and listening how he's explaining that, and the succession of toughts, I can recognize that he's a programmer, and I'm proud of being one too. Thanks for the inspiration!

  • @kabakiAntony
    @kabakiAntony4 жыл бұрын

    I have always ignored this video for a very long time so today I decided to watch it and uncle sure does have some very valid points very valid.

  • @pratik_shrestha
    @pratik_shrestha5 жыл бұрын

    6:23 We will code objective c for food.😂😂😂

  • @Veeo29
    @Veeo294 жыл бұрын

    Absolutely excellent, thank you for the video.

  • @myriaddsystems
    @myriaddsystems5 жыл бұрын

    A masterly and authoratative lecture. Very engaging and a pleasure to listen to.

  • @Filaxsan
    @Filaxsan6 жыл бұрын

    Master, thank you so much for sharing this with us! Invaluable wise words, piece of history...and future!

  • @Ttlwar
    @Ttlwar6 жыл бұрын

    WOW! Excellent bob! Your clean Code videos are the best to!! Thanks for making me a better programmer

  • @SHONNER
    @SHONNER7 жыл бұрын

    31:15: That was me, back in the day. The computer operator. Still have the lab coat I wore.

  • @MelvinKoopmans

    @MelvinKoopmans

    7 жыл бұрын

    You're not welcome here, sir.

  • @pgoeds7420

    @pgoeds7420

    5 жыл бұрын

    www.imdb.com/title/tt0535587/ ~1970 TV version "Routledge" acted by Peter Sallis

  • @Rusllanx
    @Rusllanx4 жыл бұрын

    This is simply the best programming talk that I have ever seen in my life. The way that this great man delivers ideas he have is amazing.

  • @loam
    @loam4 жыл бұрын

    Turned the video on and couldn't turn it off until the end. Captivating!)

  • @chrishbeatboxing2291
    @chrishbeatboxing22912 жыл бұрын

    Every programmer should watch this video. Very inspiring

  • @curiosull
    @curiosull6 жыл бұрын

    When a new market emerges, is profitable, then investors come, profit decreases, competition is higher. When a new craftsmanship appears, and there are more students than masters the product quality lowers I guess. Me and most of my fellow programmers were thrown into production from day 1,the only mentors we had were search engines and now stack overflow, there is no wonder that waterfall and OOP were successful, enforces some rules and bring some order in chaos. And another thing that lowers the standards is that when it wasn't an elitist profession any longer it became a job, just a job to pay for bills, don't want to improve the code, just want to get the task done. This and hardware evolution, programmers lead by product managers and more factors ofc.

  • @RoninX33

    @RoninX33

    5 жыл бұрын

    Could not agree more!

  • @mrsudarshan6249

    @mrsudarshan6249

    5 жыл бұрын

    production from day 1, since what - Education?

  • @calebfuller4713

    @calebfuller4713

    3 жыл бұрын

    You're lucky you had all that. Once upon a time all you had was a reference manual for the language... maybe a book of tutorials or examples.

  • @leonigro3731
    @leonigro37314 жыл бұрын

    As a software developers with 25 years of commercial experience I find complexity has also risen exponentially for no sunstantial gain. For instance, one recent fad is javascript on the server, via nodejs....Heck, we were doing Javascript in (Classic) ASP back in 92. To paraphrase "Due to the exponential growth of developers every year, at least half of existing developers will have less than 5 years experience, and due to a lack of experience are continually destined to clumsily re-invent programming languages, libraries and platforms." This at least partially explains the endless fad language/platform churn of things like Rust, Go, Dart, Angular etc. Another reason for an endless array of languages/platforms/libraries is because the "inmates are running the asylum". The programmers get to pick the tech in most cases, and the latest craze is always perceived as being better, sometimes by programmers but usually by management, regardless of its practical utility. The more complex the language or tech the more kudos programmers believe they are owed. Many developers seek to become a high priest of a particular tech. When programmers meet, the more geeky ones especially, will try to ascertain your knowledge of a particular tech to work out your status relative to theirs. It also comes down to greed. Probably the largest reason for the rising complexity is IT PUTS BUMS ON SEATS that consulting companies can charge out. They charge more for the latest tech craze/fad and it is more lucrative for a developer to be on that wave. As its more lucrative for the developer to be on that latest tech craze/fad they make choices that move the industry to embrace it. And that's before you add a bunch of Industry Certs to stretch out the process of documenting requirements and testing and its a license to make money. Things don't become simpler because there is no money in making it simpler, and there is no money in making a complete do-everything solution either. Microsoft, Oracle etc have realised that their tech has greater buy-in when they create an incomplete solution on which external vendors must add functionality. This creates a mountain of vested interests in the product/solution. If it were simpler to create apps/programs/solutions then things would get done faster and there would be less money in it. Add increasing complexity to the development process and you can extrend the time it takes to make app/programs/solutions and therefore rake more money in.

  • @panaalexandru7620

    @panaalexandru7620

    4 жыл бұрын

    > This at least partially explains the endless fad language/platform churn of things like Rust, Go, Dart, Angular etc. I'm not touching web frontend technologies, but Go and Rust each have a pretty good raison d'etre. Go is designed and implemented by people with decades of experience like Rob Pyke and Ken Thompson who worked on Unix. It's designed to replace C for systems programming keeping the simplicity, but adding better and more modern primitives (channels and goroutines for example). Rust's compile time checks promise to eliminate memory leaks and concurrency problems in a unique and efficient way. These are powerful tools that address current world concerns (like our poor history with memory management). The hardware we run software on top of has drastically changed and we need to change the way we implement abstractions on top of it (multi-core processors, memory hierarchy, networking). Not all new things are fads. The world is changing. The internet is changing how and what we build as software developers. The hardware is changing. Our architectures are changing. It's only natural that we search for efficient solutions for the problems we have today.

  • @autohmae

    @autohmae

    4 жыл бұрын

    You do know this is what Dykstra already figured out decades before. :-)

  • @MrGeekGamer

    @MrGeekGamer

    4 жыл бұрын

    All this. Reinvent the wheel, release it as open source and write terrible documentation. Then offer "consulting" services for a fee.

  • @lachlangro
    @lachlangro6 жыл бұрын

    Best history of programming I have ever seen. And Bob you are so right about the future.

  • @trisetyarso
    @trisetyarso4 жыл бұрын

    This is what I am looking for centuries!

  • @yevhendyachenko1384
    @yevhendyachenko13844 жыл бұрын

    Perfect talk!

  • @icterinetech899
    @icterinetech8995 жыл бұрын

    Quitting my job to dedicate my life to lisp

  • @slawomirkulinski

    @slawomirkulinski

    5 жыл бұрын

    😂

  • @MSKassiste

    @MSKassiste

    3 жыл бұрын

    lol

  • @witchaponkitthaworn5998
    @witchaponkitthaworn59985 жыл бұрын

    This is 2019 and I am no Programmer of any kind but still enjoying your speech, very fun and knowledgable talk!

  • @sol0matrix
    @sol0matrix5 жыл бұрын

    @unclebob you were right with the recent Boeing accident only a few years after this talk. As programmer's we have to take responsibility for what we design and implement. To all who's affected by this horrible accident we apologize and hope not to let anyone down ever again.

  • @ktorn1
    @ktorn14 жыл бұрын

    15:10 just learnt why relays are called relays.

  • @alexbecker4149

    @alexbecker4149

    4 жыл бұрын

    *that's not the root though. The word was used before telegraphs, when letters were transported by horses. A relay was the station where the mailman exchanged the horses to get fresh ones, because they were tired after a certain distance.*

  • @leonardogoes683

    @leonardogoes683

    4 жыл бұрын

    You and I both

  • @trefwoordpunk2225

    @trefwoordpunk2225

    3 жыл бұрын

    @@alexbecker4149 What does that have to do with the mechanical device called relays?

  • @InayetHadi
    @InayetHadi4 жыл бұрын

    Wow, a powerful talk especially at the end

  • @RonHochsprung
    @RonHochsprung4 жыл бұрын

    Ron Hochsprung I enjoyed this very much. Especially when you mentioned using the Illinois Institute of Technology computers. I implemented the IITROS system that you probably used, and was one of the designers of tITRAN programming language. Your description of programming in the old days with punched cards, batched processing, 1-day turnarounds, etc. brought back so many memories. Thanks.

  • @RayWalker-pythonic
    @RayWalker-pythonic2 жыл бұрын

    Absolutely fascinating.

  • @cegao3111
    @cegao31115 жыл бұрын

    I can't believe I watched the whole talk, and got my tears

  • @obinnaubah9045
    @obinnaubah90455 жыл бұрын

    Wow. He predicted the Boeing 737 Max MCAS crash.

  • @Julio860JVL

    @Julio860JVL

    3 жыл бұрын

    oxied the prediction was not literally. The prediction is that we the programmers are making code without principles and it is leading to people dying. He mentions about a plane crashing into a football field somewhere around 60 minutes into the video. But did not specifically said which plane.

  • @jajasaria
    @jajasaria5 жыл бұрын

    thanks for the history and future of programming. worth waching!

  • @MuradBeybalaev
    @MuradBeybalaev4 жыл бұрын

    Amazing speaker. Thoroughly enjoyed the lecture.

  • @ValAi178
    @ValAi1787 жыл бұрын

    Uncle Bob is fascinating from beginning to the end :)

  • @sandeshsmagdum
    @sandeshsmagdum6 жыл бұрын

    Absolutely mind blowing and eye opening video. I don't even realize I watched this whole video all at once. Great energy and experience Uncle Bob :)

  • @Ludguallon
    @Ludguallon4 жыл бұрын

    Christ, I put this on to fall asleep... didnt expect to be so captivated. Great talk!

  • @rodjohnston7210
    @rodjohnston72104 жыл бұрын

    Prophetic, insightful and inspirational.

  • @booelanartist4283
    @booelanartist42837 жыл бұрын

    Awesome talk, he drives the point of responsibility of programmers. Glad I watched this talk

  • @emstudios14
    @emstudios144 жыл бұрын

    Allan Turring , a Great Software Engineer. Saw ahead of His Time.

  • @sagechris4742

    @sagechris4742

    4 жыл бұрын

    ur mom

  • @christerjohanzzon
    @christerjohanzzon5 жыл бұрын

    One of the best presentations I've seen on this topic. Now I'm gonna refer to "Uncle Bob" whenever a colleague is arguing for bureaucratic rules and governance over projects. DEVELOPERS! DEVELOPERS! DEVELOPERS! (S. Ballmer) :D

  • @sylviogiraldes
    @sylviogiraldes Жыл бұрын

    Brilliant and inspiring lecture. Thank you Bob

  • @SudhirTumati
    @SudhirTumati5 жыл бұрын

    A very interesting talk. Must watch for every programmer

  • @tomneto8791
    @tomneto87913 жыл бұрын

    Excellent speech. Uncle Bob closed it with a golden key... Regulate, create a professional body just like for engineers and physicians.

  • @coneizhthecyberman316
    @coneizhthecyberman3164 жыл бұрын

    proud to be part of this great man

  • @mecharenastuff
    @mecharenastuff2 жыл бұрын

    Superb talk! Loved his style and storytelling.

  • @willjennings7191
    @willjennings71914 жыл бұрын

    I would make this talk required watching for CS and EE students at the college level.

  • @klfrost7

    @klfrost7

    4 жыл бұрын

    I agree, and that is what I'm doing. That's why teachers say it's always good to do some of your own research. I feel that is where this stuff falls into.

  • @girohead

    @girohead

    3 жыл бұрын

    William, but they can't take the time away from protesting over social justice...

  • @holdenvrdriver
    @holdenvrdriver4 жыл бұрын

    This should be called the history of programming. Great talk.

  • @AMnahSymonds

    @AMnahSymonds

    4 жыл бұрын

    totally. Its just History!

  • @damaddinm88
    @damaddinm886 жыл бұрын

    Thanks so much for this endless source of inspiration

  • @jksharma7
    @jksharma75 жыл бұрын

    Thank you Sir.....It is so wonderful and informative.....Very well done.

  • @holdengreen3925
    @holdengreen39254 жыл бұрын

    1:14:00 'we rule the world'; love this!

  • @RaihanTaher
    @RaihanTaher6 жыл бұрын

    What an amazing talk. I love Uncle Bob Martin. I wish we all could be so much professional and take responsibility of the code we write. I hope in the future, we the software developers will focus more on quality than quantity.

  • @xpopcornx1747

    @xpopcornx1747

    4 жыл бұрын

    It's not the developers fault if management want stuff finished within a given time frame, there's not enough time for quality.

  • @criptovida
    @criptovida2 жыл бұрын

    After some years this real talk still current. Every developers should watch this at some point.

  • @CarlosOrtiz-ht6rn
    @CarlosOrtiz-ht6rn4 жыл бұрын

    Great talk. Thank you Sir.

  • @warkentien2
    @warkentien24 жыл бұрын

    8:04 the moment I got sold on sticking for the entire video

  • @FreeER
    @FreeER5 жыл бұрын

    Summary: 80s-C/ObjC/C++ story about how Steve Jobs kept ObjC alive says no one is ever happy with their language Male skew/history Female skew goes back to 36 + Alan Turing...+ Annotated Turing book relays, mercury tubes, CRTs, ... 1945- Alan wrote floating point and made a couple statements "We shall need a great number of mathematicians of ability" because "there will probably be a good deal of work of this kind to be done" "One of our difficulties will be the maintenance of an appropriate discipline, so that we do not lose track of what we are doing" magnetic cores, you could actually shut off power and restore it and it'd continue running as if nothing had happened 53- Fortran, penciled coding forms -> punch cards 58- Lisp, functional programming 60- O(1E2) computers in the world, O(1E3) programmers that are 30yo mathematicians,scientists, and the like. No OS, libraries, etc. transistors 65- 10'000 1401 / O(1E4) computers (rent $2500/mo $20k/day), 4000 bytes memory. O(1E5) programmers, still learned adult trusted and disciplined people if not mathematicians, not 22 yo people out of school :) 68 - Dijkstra says goto bad, enter structured programming C - K&R, mathematicians 70- 1E5 computers / 1E6 programmers, 25 years from 1 to 1'000'00 programmers. Now CS courses, new are mostly male students in early 20s Programmers are doubling every 5 years, so less than half of all programmers have 5 years of experience. Hardware has changed tremendously, the iphone would have been the entire world's economic output: 50 trillion dollars and 170 Vehicle Assembly Buildings (the large building at NASA's Kennedy Space Center, At 3,664,883 cubic meters 129,428,000 cubic feet it is one of the largest buildings in the world by volume), would require 500 of the largest nuclear power plants. And once it was built you'd have no one to call with it xD Software hasn't. You'd recognize the earliest code, you wouldn't like it but you'd understand it. You could time travel someone either direction and it'd take "24 hours" to recover from the shock/disappointment but they'd be able to understand and write the code. It's essentially assignments, if statements, and while loops. Any changes are what _not_ to do, structured = don't be crazy, functional = don't assign, OO = don't use function pointers (??, I don't feel like that's quite what was learned but whatever) What must change. Discipline. 2001- Agile manifesto, fixed time, estimate in relative units, customer communication, continuous integration, collboration, ... programmers can't agree on disclipline and technical practices Agile split- Business Practices \ Technical Practices What must change: "we (agile) must grow up", define profesion, choose practices and disciplines, reunify, someone has to lead. 1:11 everything in modern world uses software systems. Software can control breaking, steering wheels, and that _is_ killing people already. Programmers wrote code to "cheat" EPA "if in test mode ...". One day one of us is going to do something stupid that kills many of people and politicians will ask _us_ (programmers) "How did you let this happen?" and if we can't answer well they will regulate us setting what languages and morals/ethics and taking an oath to follow and some body that can discipline and prevent you from being a programmer.

  • @ThaJay

    @ThaJay

    5 жыл бұрын

    *braking / brakes

  • @manuelsanchezdeinigo3959

    @manuelsanchezdeinigo3959

    5 жыл бұрын

    Thanks only lasted 4 Mins haha

  • @mrsudarshan6249

    @mrsudarshan6249

    5 жыл бұрын

    Wonderful summary!

  • @MichelCarroll

    @MichelCarroll

    5 жыл бұрын

    Thanks. I definitely just wanted the coles notes on this one...

  • @hexagone5808

    @hexagone5808

    5 жыл бұрын

    Awesome👌 Thnx

  • @JohnsonKongor
    @JohnsonKongor5 жыл бұрын

    At least i can download this history so that i can let myself inform in the past about computer science. You are a strong relaxed computer historian.

  • @ziwkovic6141
    @ziwkovic61416 жыл бұрын

    Mr Bob tried to make a point and according to the comments a lot of people have missed that point. The future of programming is in better self regulation in the technical aspect of our profession. We have mass production of programmers and software while Agile slid into the business waters leaving nobody to actually care about the quality and potential disastrous consequences.

  • @frankn5216
    @frankn52164 жыл бұрын

    I loved this, He has my juices flowing again to program. I'm paralyzed from neck down and learn some programing in the early 90' I would like to get back in to programming as much as I can but it's been so long I didn't remember much and have tried only to get overwhelmed. I type slow with a sip/puff before I used a mouth stick and could type 15-20 words a minute, not so with my sip/puff. I do have dragon software. Can someone point me to the right platform, language I should start learning. Thanks,

  • @LawleyMark

    @LawleyMark

    4 жыл бұрын

    There are many places you can start, among them edx’s CS50 course by David Malan. It’s a free course, and I highly recommend the college version of it.

  • @alsharefee

    @alsharefee

    4 жыл бұрын

    Some new IDEs auto complete the lines for you, so you just write the first letter and it anticipate what you want to type and it also gives options

  • @snowsnow4231

    @snowsnow4231

    4 жыл бұрын

    what do you want to do? React is cool for web

  • @frankn5216

    @frankn5216

    4 жыл бұрын

    @@LawleyMark I'll start there.

  • @frankn5216

    @frankn5216

    4 жыл бұрын

    Thanks for all the good advice! I want to make some small programs from reminder, and then a capable Environmental control unit. I know there are a lot out there but I want to build a free/ low cost version that work on with other OS like, win, linux

  • @jesseokeya
    @jesseokeya8 жыл бұрын

    wonderful seminar really inspiring. we need set of rules to guide us programmers

  • @samyakjain6855
    @samyakjain68553 жыл бұрын

    With all kinds of crazy things happening right now, this was really so relevant to watch. All ideas discussed here I believe are actually the way entire industry has to move towards eventually, irrespective of all the resistance we face. I would wait for that day where programmers openly express their opinions and commitments to the management and not just do things for the sake of keeping the timeline.

  • @rowolta
    @rowolta5 жыл бұрын

    Super interesting, inspiring and awesome talk.

  • @1421anoop
    @1421anoop6 жыл бұрын

    Such a great talk. This is going to be in my top list alongside Ryan Dahl's NodeJs Js Conf 2009 talk. Very elegant story telling !! Enjoyed it !!

  • @wkrossman
    @wkrossman4 жыл бұрын

    the discussion of core memory put me in mind of our old DEC-20 computers where I went to school. One of them had a set of PDP-11-based front end processors, which had real core memory (despite most of the rest of the memory in the system being solid state.) The PDP-11 FEPs would crash a lot, and a co-worker's comment was something along the lines of "It's a good thing that FEP has core memory, so it can remember how much it screwed up".

  • @GerardoOscarJT
    @GerardoOscarJT4 жыл бұрын

    Superb!

  • @thedoctor7151
    @thedoctor71514 жыл бұрын

    As a designer that worked in a Dev group I can attest to everything he said, except how quickly I will change the way we all program.

  • @lagigliaivan
    @lagigliaivan6 жыл бұрын

    I agree on the idea about project managers invasion. Before this video, I could not understand why that project managers were needed, I even could not deduce what their responsibilities were. I refuse to accept the idea of having a project manager which does not like programing! and believe it or not, these kind of managers are part of most of the software companies nowadays.

  • @rumble1925

    @rumble1925

    5 жыл бұрын

    A good project manager is a god send. I've worked with project managers that knew a lot about the business they're in and could explain the needs, manage expectations and properly allocate time for things - and those people are great even if they know nothing about programming. Unfortunately 90% of them are b.a dorks that have no understanding of neither the business or the production floor - all they do is frustrate the devs and the clients/management.

  • @JuanSagasti

    @JuanSagasti

    5 жыл бұрын

    You are getting it wrong, regardless of how you company put them in the food chain, PMs are hired by programmers to isolate them from people

  • @djosearth3618

    @djosearth3618

    4 жыл бұрын

    I hear that. I like project management but I love programming. (Perhaps therefore) I feel I'm an adequate project manager..

  • @Julio860JVL

    @Julio860JVL

    3 жыл бұрын

    I personally think project managers are hired because programmers are expensive and because delivering a program takes time, then companies feel they are paying thousands of dollars to win a race but they are betting on a turtle. So the project manager is there to rush us and make sure we are actually delivering and not just fooling around. Because in reality, there are many programmers who don’t deliver because they just simply can’t code. The project manager is there to help the company to spot these “programmers” and get rid of them.

  • @sonofabippi
    @sonofabippi4 жыл бұрын

    Watches this video on discipline and standards, then proceeds to 'npm install'

  • @khayn
    @khayn4 жыл бұрын

    Incredibly inspiring, thank you Uncle Bob! Maybe only last 20 minutes or so actually are about the future, but I found entire talk fascinating. I guess it's time for a Lisp tutorial.. ;D On a more serious note , until now I 've only known Uncle for his books. As it is said, if you want to read only one book about programming, pick one of his. I found his talk no less interesting and, how to put it, understandable and entertaining without need for several Ph.D.'s or other degrees :P This man is a legend.

  • @fer86bd
    @fer86bd5 жыл бұрын

    really love the way you teaches, its remarkable

  • @henhoci
    @henhoci8 жыл бұрын

    Very profound... I learned a lot.

  • @pxiao1
    @pxiao17 жыл бұрын

    TLDW: In the past, programmers were matured and self-disciplined as they were older(30s-40s). Since 1970s to 1980s, there has been a surge in young programmers(graduates), and this trend has been going on until now. If we do not start having some sort of discipline, such as oath of doctors or lawyers etc, something bad may happen in the future and we (the programmers) will have to bear the consequences. Consequences such as government implementing unnecessary regulations etc..

  • @cnewtonc
    @cnewtonc4 жыл бұрын

    Excellent Talk !

  • @AnyBao
    @AnyBao4 жыл бұрын

    this is a great talk. thanks .

  • @tusharniras
    @tusharniras7 жыл бұрын

    1:16:10 to 1:16:35 I felt like an Avengers.... ;) Such important and informative video watched after a long time. Good insights of history and the glimpse of the future. Thank you +X/UP for sharing this.... Subscribed

  • @ExpertTalksMobile

    @ExpertTalksMobile

    7 жыл бұрын

    Your welcome! Thanks for checking it out. Look out for more uncle bob videos on youtube if you haven't seen his work around before.

  • @tusharniras

    @tusharniras

    7 жыл бұрын

    sure! thanks

  • @rever4217
    @rever42174 жыл бұрын

    I feel like this is the programming history video I've been looking for.

  • @francescoserci1241
    @francescoserci12414 жыл бұрын

    I love this man!

  • @MKeehlify
    @MKeehlify4 жыл бұрын

    Many of my colleagues does not comprehend what Bob Martin talks about hence they are bored by this talk. They enjoy and share the shot and entertaining talks from Richard Feldman. I wish KZread would recommend this talk over that of Richard Feldman.

Келесі