Clean Code - Uncle Bob / Lesson 6

Поделиться
HTML-код
  • Опубликовано: 26 июл 2024
  • ↓↓ ENGLISH DESCRIPTION ↓↓
    "Coding Better World Together" is a set of master lessons from the famous Uncle Bob (Robert Cecil Martin), where he gives us a broad vision of the importance and future of Software in today's society.
    In this sixth lesson, Uncle Bob portrays us through different situations, the problem of adjusting software production time to delivery times. A divergence between the needs of the client and the commercial commitments, and the needs of the programmer to produce quality software.
    To solve the problem of the temporary gap between production and the deadline, Uncle Bob teaches us the basics of Agile development techniques for the optimal management of software projects.
    ↓↓ DESCRIPCION EN ESPAÑOL ↓↓
    "Coding Better World Together" es un conjunto de lecciones magistrales del famoso tío Bob (Robert Cecil Martin), donde nos brinda una visión amplia de la importancia y el futuro del software en la sociedad actual.
    En esta sexta lección, el tío Bob nos retrata a través de distintas situaciones, el problema de ajustar el tiempo de producción de software a los plazos de entrega. Una divergencia entre las necesidades del cliente y de los compromisos comerciales, y las necesidades del programador para producir software de calidad.
    Para resolver el problema de la brecha temporal entre la producción y el plazo de entrega, el tío Bob nos enseña los fundamentos de las técnicas de desarrollo Agil para la gestión optima de proyectos de software.
    0:00 Start
    0:18 Leds / Introduction.
    6:54 How do you manage a software project?
    12:54 Finding the optimum solution / Data.
    21:04 What is the firts thing know about project / The Management Paradox.
    23:33 The Waterfall Model.
    34:13 Iterative Development / Calculate Day.
    39:09 The Control Knobs of project mgt.
    48:51 Short Cycles / Agile Software Development Practices / Extreme Programming.
    1:14:16 Questions and Answers.
    ↓↓ OUR MODEL OF SOCIETY ↓↓
    - mutualwelfare.org
    ↓↓ NUESTRO MODELO DE SOCIEDAD ↓↓
    - bienestarmutuo.org
    ↓↓ OUR CRIPTOCURRENCY FOR MONETARY FREEDOM - NUESTRA CRIPTOMONEDA PARA LA LIBERTAD MONETARIA ↓↓
    - unitycoin.net
    - PRESENTATION: unitycoin.net/presentation/
    ↓↓ OUR PAYMENT FRANCHISE - NUESTRA FRANQUICIA DE PAGOS ↓↓
    - sbmlibre.com
    ↓↓ OUR SOCIAL PACT - NUESTRO PACTO SOCIAL ↓↓
    - e-nation.org
    - PRESENTATION: e-nation.org/presentation/
    ↓↓ OUR SOCIAL NETWORKS - NUESTRAS REDES SOCIALES↓↓
    - Facebook: / unitycoin
    - Twitter: / unity_coin

Комментарии • 125

  • @amitk.512
    @amitk.512 3 года назад +79

    I think everybody who completed this series of videos wished that they were taught all these things at the beginning of their career.

    • @Jaredharmon92
      @Jaredharmon92 2 года назад +2

      I'm glad I just watched this after finishing an introduction to python class 😂

    • @oubaydabouifadene
      @oubaydabouifadene Год назад +1

      Thank god I am graduating this year

    • @danieljunior4281
      @danieljunior4281 Год назад +6

      agreed, but I don't think we would be able to enjoy some of these advices early on. We need to suffer before seeing value in some of these cases. Just like the Effective Java book. Some cases are too far away from our daily lives to make some sense, right!?

    • @janbeumer8304
      @janbeumer8304 Год назад +3

      I recommend watching it again after some month or years. You will have forgotten some Things and you will have a different Viewpoint on different aspects and hear different nouances. I Loved coming Back after 2 years now

    • @ME0WMERE
      @ME0WMERE Год назад

      i'm watching this at 16 years of age, and I think I'll thank myself in about 8 years

  • @thyagodasilva4249
    @thyagodasilva4249 3 года назад +189

    To me it's very clear that Uncle Bob is on a real mission here of knowledge transfer. It's very refreshing to hear someone that obviously has actual coding experience because everything resonates deeply within us. I laughed so hard I cried several times watching these. At the same time, the depth of the content is astounding while manageable and clear. Sir, I can't thank you enough. Your legacy will live on forever through better code written by us, your disciples.

    • @mayurdugar03
      @mayurdugar03 3 года назад +2

      So true!
      His efforts and enthusiasm are really commendable. Delivered like a pro.

  • @logusgraphics
    @logusgraphics 4 года назад +129

    I can’t believe this doesn’t get more views and likes. It’s ridiculous how valuable is every word coming out of uncle Bob’s mouth. Not only professionally but as a philosophy. If you want to go fast, you go well.

    • @Piplodocus
      @Piplodocus 3 года назад +4

      I'm too busy listening and going straight from one to the next to be liking! :)

    • @michaeldeng1981
      @michaeldeng1981 3 года назад +2

      We are living in an upside down world.

    • @kbrnsr
      @kbrnsr 3 года назад +1

      Don't want too much competition . It might be cynical, but the way he's been going about the growth rate of programmers and you might decide to keep some wisdom to yourself

    • @michaelmaerchant5947
      @michaelmaerchant5947 3 года назад +2

      @@kbrnsr It's experience that matters, and for that you need time. You can (actually: you must!) have talent, but it still takes time for your brain to deeply understand and apply those principles.
      So, no, I am not really worried about competition. Good software engineers are rare and always will be.

    • @Jaredharmon92
      @Jaredharmon92 2 года назад

      His philosophy applies to everything in life. Not just coding

  • @user-ch4et9gw4k
    @user-ch4et9gw4k 2 года назад +17

    I have watched this 6th lesson of Uncle Bob's clean code lectures. Cured my lifelong depression and moved into a house, my body physique improved dramatically. Found a girlfriend, tought her how to write a clean code (she was a therapist), started running a clothing brand. Was able to explain to my grandma how to record video messages in WhatsApp. Thanks, Uncle Bob!

    • @robrick9361
      @robrick9361 Год назад +3

      Clean Code cured my diabetes and fixed by dog's blind eye.

  • @tjeanneret
    @tjeanneret 3 года назад +39

    All this series is of greatest value. Everybody involved in software development and project management should attend to it, spending a few hours to sip all the experience given here. But the hell, how come that in 2020 someone is still unable to synchronize sound and image on a video ???

  • @manfrombritain6816
    @manfrombritain6816 3 года назад +12

    i was born in 1990 and it blows my mind how far computing has come. i cannot imagine what it's like to be Bob's age and have watched the whole thing progress from "wow, a red LED!" to where we're at now...

  • @WesFanMan
    @WesFanMan Год назад +2

    I first met bob in the early 2000s. I had read his c++ book and was attending a conference at which he was speaking. His talk was totally captivating and energizing. I followed his articles in c++ report magazine where the seeds for SOLID were laid. Next was the Agile Manifesto and his seminal book on agile. Bob is a voice of sanity in an industry that was guided by guesswork and lies. Bob sought the truth, found some, and was kind enough to tell us about it. I enjoy his discussions with Jim coplien on testing, no matter how misguided Jim is ;) . Bob has always been approachable and easy to talk to - a down to earth man in an industry where big egos are the rule. Please listen to this man, your career will be better for it.

  • @mayurdugar03
    @mayurdugar03 3 года назад +9

    Can't even express how useful these sessions were!
    This is what should be taught in every engineering school and this is also how it should be done!
    Hats off to uncle bob. Brilliance :)

  • @Jaredharmon92
    @Jaredharmon92 2 года назад +4

    I'm a few months into learning to code and I just watched all 6 videos in this series. I cannot wait to work in a team implementing Uncle Bob's lessons.

  • @superscatboy
    @superscatboy 3 года назад +9

    These videos were amazing. My brain is overflowing with Uncle Bob's wisdom, and I think I'm going to have to re-watch all of it several times before it really sinks in. Thanks for uploading this incredible resource.

  • @gangulic
    @gangulic Год назад +1

    "Professional" programmer for 12y now. Lost motivation on bad managed/bad quality projects. Thanks for all this 6 videos I've watched. I've got motivation, I've remembered why I love programming and what I need to change and to look for in the future.

  • @MayankDidwania
    @MayankDidwania 3 года назад +2

    Who all are here to watch Uncle Bob and his magical words and rich experience. Lesson 6 about to complete, but haven't got bore and can re-watch the whole series.
    What a great start story/hypothesis at the beginning of every lecture, detail analyzed, explanation in magical words, and kept the conversation always interesting. Became a die-hard fan of "UNCLE BOB".
    You rock Uncle Bob. Thanks for being here and delivering very useful content to the future generation. (Y)

  • @sahilhemnani7417
    @sahilhemnani7417 3 года назад +2

    just finished the 6 video series and understood that Thanks is just not enough- appreciation is just not enough- He's a living legend.

  • @revmolter
    @revmolter 4 года назад +25

    Not a programmer but a computer enthusiast. Powerful Stuff. Lots of life lessons that can be applied to lots of different things.

  • @jasperschellingerhout
    @jasperschellingerhout 4 года назад +33

    All developers should watch this series and then work through Clean Code. Don't just read the book, work through it. It may take a few months to property absorb.

    • @myaccount09011975
      @myaccount09011975 4 года назад

      Thanks Jasper.

    • @DanielCardin_ATX
      @DanielCardin_ATX 3 года назад

      What is "Clean Code"? Do you refer to the book by that name written by someone named "Robert Martin" (who I realize may be this guy)?

    • @jasperschellingerhout
      @jasperschellingerhout 3 года назад +4

      ​@@DanielCardin_ATX Book title is "Clean Code" author is the speaker Robert C. Martin (Uncle Bob)

    • @DanielCardin_ATX
      @DanielCardin_ATX 3 года назад

      @@jasperschellingerhout thank you for the reply in that. I’ll get that book. This dude knows what’s happening.

  • @IAmSamuelCharpentier
    @IAmSamuelCharpentier 3 года назад +4

    Sprints and agile is a little like the way school projects are managed at college/universities. The teacher expect progress to be done by next class (generally 1 week) and then assess the results. It uses its analysis of the situation to guide the student into a pathway where the feasability of his newly adjusted project will be matching the deadline for that project. This apply to much more than just programming. Very insightfull stuff that managers should all know!

  • @ithelightr3020
    @ithelightr3020 3 года назад +6

    @UnityCoin thanks again for this series. The 30000 feet view is sooo underrated but it's the only way to fill in the details that come beneath it.

  • @RSFeed
    @RSFeed 3 года назад +1

    This was a great series. I'm not even a developer and watched it all from start to end! All 6 Lessons! Great work Uncle Bob! Thank you for sharing UnityCoin!

  • @alihsanelmas
    @alihsanelmas 2 года назад +1

    I watched the all 6 episodes from this event and probably the most instructive and clear explanations I've ever listened to about software engineering

    • @banatibor83
      @banatibor83 Год назад

      The first six videos is only day one. You can find day 2 on youtube as well.

  • @GauravSehrawat8888
    @GauravSehrawat8888 2 года назад +1

    👏👏👏👏
    Thanks to Uncle Bob and the event organizers to put it on web.

  • @--Eric--
    @--Eric-- 3 года назад +2

    Thanks for sharing this two-day presentation with the chapters division.

  • @kunedo_
    @kunedo_ 3 года назад

    Amazing talk, thank you so much, Uncle Bob.

  • @unitycoin_original
    @unitycoin_original  5 лет назад +17

    0:00 Start
    0:18 Leds / Introduction.
    6:54 How do you manage a software project?
    12:54 Finding the optimum solution / Data.
    21:04 What is the firts thing know about project / The Management Paradox.
    23:33 The Waterfall Model.
    34:13 Iterative Development / Calculate Day.
    39:09 The Control Knobs of project mgt.
    48:51 Short Cycles / Agile Software Development Practices / Extreme Programming.
    1:14:16 Questions and Answers.

    • @gospher6342
      @gospher6342 4 года назад

      ​@ChiKler Tristemente eso parece, esta masterclass es una de las mejores que he visto, una obra maestra.

    • @unitycoin_original
      @unitycoin_original  4 года назад

      @ChiKler Sí, este es el último video de esa sesión.
      Recomendamos:
      1- el blog del tío bob: blog.cleancoder.com/
      2- este artículo es su blog: blog.cleancoder.com/uncle-bob/2019/06/16/ObjectsAndDataStructures.html
      3- esta serie de videos, relacionados con el problema del software, que nosotros como profesionales en desarrollo de software debemos resolver:
      ruclips.net/video/pW-SOdj4Kkk/видео.html
      con esta introducción general:
      ruclips.net/video/M4LRHJlijVU/видео.html
      y por último: nuestros artículos sobre software: bienestarmutuo.org/articulos/

  • @avanthasiriwardana
    @avanthasiriwardana 2 года назад

    Thank you these invaluable series Uncle Bob.

  • @jdotseven
    @jdotseven Год назад

    As a nuclear submarine electrician, I concur: his advice is spot on. It's how we've been able to operate and maintain mobile nuclear power plants for decades with no major issues.

  • @dawnrazor
    @dawnrazor 2 года назад +1

    This was a great series of videos to watch, but I think there was 1 particular topic missing (or more accurately under addressed). I have learnt from bitter experience that the if statement is a very VERY thing to use without care. Letting the if statement define the structure of your code can lead to code inflexible to change. I never realised this in the heat of the moment, but lookig back I now know the error of my ways. Prefer polymorphism/functional programming to excessive if checking. Bob lightly touches on this when he mentions making your code uniform and not having jagged edges, but I feel this subject didnt receive the attention that it actually deserves. This was a revelation to me and actually, I realised I was on the right path when I integrated the functional approach into my tool belt.

  • @HoSm10
    @HoSm10 2 года назад

    These lessons of this living legend should be taught in the onboarding process

  • @gamemusicmeltingpot2192
    @gamemusicmeltingpot2192 3 года назад +10

    All the LED's get scared when uncle bob walks in the room

  • @marioepsilon
    @marioepsilon 3 года назад +17

    When it comes to waterfall vs agile, like anything else, it is all about people, rather than the methods. I have developed very successful complex softwares using waterfall and doing it right, and also been through never ending cycles of failing agile. In fact, it is easier to fail with agile, as there are more people messing around with planning and requirements all the time. A good team can succeed whatever method you use, and a bad team can fail no matter how much you religiously follow methods. Non-technical managers are usually the main cause of failure, because they have authority, but no insight.

    • @WesFanMan
      @WesFanMan Год назад

      A good team is better with agile. The original waterfall methodology was iterative, hence agile-like, but was corrupted. Finally, fools will create foolish things; no matter what their station in life.

  • @temprd
    @temprd 3 года назад

    Must archive for future generations.

  • @mahdimotamedi6812
    @mahdimotamedi6812 3 года назад +2

    He is a Legend

  • @RobyMarcellino
    @RobyMarcellino 3 года назад

    I love this man.

  • @genesisguerrero7151
    @genesisguerrero7151 2 года назад

    This was an amazing series

  • @jparrax1
    @jparrax1 3 года назад

    YOU ARE A GENIUS! Your legacy will live a long time.

  • @badjr0
    @badjr0 2 года назад

    27:43: "I don't need an exact number... just a date to put in the schedule."
    How is this man reciting exact conversations my teams have had?! 😂🤣😂

  • @yogeshkurane123
    @yogeshkurane123 3 года назад

    Thank you!

  • @Ip_man22
    @Ip_man22 3 года назад

    Awesome!

  • @Adiounys
    @Adiounys 3 года назад +5

    When I first seen that guy, I actually hated him but he came back to me and after watching a few videos I actually stared to respect him and now I think I'm starting to like him a bit, even though there are still some things he says I completely disagree with... I which I could ask him some questions.

  • @jamesfoo8999
    @jamesfoo8999 11 месяцев назад

    Great information. Only one thing I disagree with is the spike. The investigation time is the thing we are unable to estimate. Whether it's a bug or "making the DB work". If you don;t know what's involved (like unknown bug cause) you cannot estimate the spike.
    A spike should just be defining some time to investigate, but not necessarily will produce the cause. It may need another spike, etc.

  • @blasttrash
    @blasttrash 4 года назад +9

    This was an amazing talk.

    • @Cenot4ph
      @Cenot4ph 4 года назад

      except for this last bit, project management is not his thing

  • @AZ-bu7ss
    @AZ-bu7ss 3 года назад

    Thanks

  • @pavelperejoguine4577
    @pavelperejoguine4577 3 года назад +1

    To be able to manage project properly and deliver quality code you really need just to fundamental qualities: courage to say NO and be honest both with your team and your stakeholders.

  • @serialkiller504
    @serialkiller504 3 года назад +4

    can we please show this video to all projects that pretend to do agile? or do not any agile?

  • @bobwmcgrath
    @bobwmcgrath 4 года назад +1

    Adding features should become easier.

  • @michaeldeng1981
    @michaeldeng1981 3 года назад +4

    To project managers: just leave the developers alone.

    • @WesFanMan
      @WesFanMan Год назад

      No…you missed bob’s point entirely. Sigh…

  • @garypopov9158
    @garypopov9158 Год назад

    What company is he talking about in the mentorship section? The one where they don't allow you to touch code for 3-6 months.

  • @ChrisAthanas
    @ChrisAthanas Год назад

    I didn’t read in the Agile Manifesto anything about charts on walls lol 20:14

  • @TranscendentBen
    @TranscendentBen 4 года назад

    I saw all six of these in recent days (!). In which one (and where timewise if you know) does he mention self-driving cars (says they won't happen in something like 50 years), Kurzweil and the Singularity? I suppose it would be too much to ask for transcripts of these things. Maybe some speech-to-text program would work decently.

    • @logicprojects
      @logicprojects 4 года назад +1

      RUclips has a built-in transcript and it looks like it has done well on these videos. It's in the ... menu by save under the video on the webpage.

    • @BienestarMutuo
      @BienestarMutuo 4 года назад

      yes he say that, and is also true. self driving cars is like Artificial Intelligence, just fancy words to sell something. we can have some pattern recognition and some self driven, but full driving, creativity or intelligence, not in the next decade.

    • @DrewCocker
      @DrewCocker 4 года назад

      Each video has timestamps in the description. Self-driving cars is in one of them.

    • @fiaztv3206
      @fiaztv3206 4 года назад

      you tube has transcript that can be viewed you need to use a desktop browser.. click 3 dots.. open transcript.. and you can search and jump to there.

  • @blasttrash
    @blasttrash 4 года назад +5

    is this the last video?

    • @BienestarMutuo
      @BienestarMutuo 4 года назад +5

      Yes, this is the last video of that session.
      We recomend:
      1- the blog of uncle bob: blog.cleancoder.com/
      2- this article is his blog: blog.cleancoder.com/uncle-bob/2019/06/16/ObjectsAndDataStructures.html
      3- this series of videos, related to the problem in software, that we as professional in software development need to solve:
      ruclips.net/video/pW-SOdj4Kkk/видео.html
      with this general introduction:
      ruclips.net/video/M4LRHJlijVU/видео.html
      and at last: our articles about software: mutualwelfare.org/articles/

    • @MaxPicAxe
      @MaxPicAxe 3 года назад

      @@BienestarMutuo That article is great

  • @scotchwhisky6094
    @scotchwhisky6094 3 года назад

    Well, I need to know how to code first before I think about this, lol

  • @Name-lt2tz
    @Name-lt2tz 2 года назад

    weird that someone in USA said turn of the ligths :) I thought this is only in thing for soviet countries and third world.

  • @willemvdk4886
    @willemvdk4886 2 года назад

    This man will someday get his own statue.

  • @alithejumbo
    @alithejumbo 3 года назад

    53:22 Did we? 🤔

  • @beefnuts2941
    @beefnuts2941 3 года назад +1

    He reminds me of a less angry Lewis Black

  • @donboobleone4463
    @donboobleone4463 3 месяца назад +1

    How could something this good, be uploaded with such poor video to voice timing...

  • @Cenot4ph
    @Cenot4ph 4 года назад +2

    Why Scrum of all things that is f'ed about Agile, it's Scrum. Kanban is the way to go these days, the board structure is superior simply because it adapts to the process to which its applied. Then there there's the signalling with the use of the pull mechanism. Not to mention, we can do away with most of the Scrum ceremonies which are a waste of time anyway such as the poker planning sessions. Saves you a lot of hours every sprint cycle (which you also dont need)

    • @DanielLachmannNishibane
      @DanielLachmannNishibane 4 года назад +3

      Kanban is a powerful Vizualization Method for Flow Optimization, it is based on Theory of Constraints and TPS. Kanban is NOT a replacement for SCRUM, it augments SCRUM like the other agile engineering practices. Scrum has built in mechanism to have meanigful communicatons about the results of the work done and wether the functional output actually produces the business outcomes that they were done for. Kanban by itself has value to structure and deliver work and embedded in SCRUM it can be used to develop complex products where business and engineering have to work hand in hand. I guess your negative Scrum experience is based on flaccid Scrum - > Google Martin Fowler Flaccid Scrum. If you apply, like many teams do, Scrum the way Uncle Bob recommends here, there's no better process and I've been using it non-stop for 5 years not having any doubts about the benefits when applied professionally - as Coding should be Clean Coding - Scrum should be Clean Scrum.

  • @prauthu
    @prauthu 3 года назад

    1:12:32 😂😂😂

  • @calvinlucian387
    @calvinlucian387 2 года назад

    6:18 everybody smart until the wife shows up

  • @lecomar7220
    @lecomar7220 Год назад

    I recommend to watch at 1.5 speed

  • @kewakl8891
    @kewakl8891 3 года назад

    My takeaway: Software developers develop as if they have never coded before -- and have no existing [tested] codebase to use.

  • @casperes0912
    @casperes0912 3 года назад +1

    Uncle Bob's big mistake is that he promises 30 initially. Underpromise and overdeliver. Say you can do 8. Then when it looks like you can do 16 ring them up and say you're ahead of schedule.

    • @radiozradioz2419
      @radiozradioz2419 2 года назад +1

      I think what he was getting at is that 30 was a completely random number. The hypothetical team was asked to give a number but they had no data to base it on and picked 30 arbitrarily. He could have said 8, but the team's velocity could just as easily have been 7 that sprint. The first number is meaningless because it's not based on data. They can't under-promise because they have no data to estimate what they could actually do.

  • @appledelomap
    @appledelomap 3 года назад

    let's do it Im stated programs for 1 week yes I can

  • @puppetsock
    @puppetsock 3 года назад +1

    Am I the only person that notices the sound and video are not synched?

  • @marcmcintosh6715
    @marcmcintosh6715 2 года назад

    only 140,457 views 😬

  • @zoltanboros8963
    @zoltanboros8963 3 года назад

    Alexa, turn off the lights

  • @ViktorEngelmann
    @ViktorEngelmann 3 года назад +2

    41:00 a project manager is someone who thinks that a team of 9 women is able to have a baby in 1 month.

  • @andreii6938
    @andreii6938 3 года назад

    that feeling when you watch this video in 2020 and cringe at how close everyone is sitting

  • @redhotbits
    @redhotbits 3 года назад

    talk begins with fucking diode and eleftons, what the actual fuck ⁉️

    • @WesFanMan
      @WesFanMan Год назад

      Come on. It’s bob. Wake up.

    • @redhotbits
      @redhotbits Год назад

      @@WesFanMan yes he is toxic to the industry

    • @redhotbits
      @redhotbits Год назад

      @@WesFanMan most toxic guy in the industry

  • @Warwicky07
    @Warwicky07 4 года назад +2

    Uncle rocks but video editing sucks

  • @lordlee6473
    @lordlee6473 3 года назад

    Atlassian disliked