Clean Code - Uncle Bob / Lesson 1

preview_player
Показать описание
↓↓ 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 first lesson, Uncle Bob demonstrates the need to write a clean code and establishes the bases to achieve it, being these bases of a social and scientific nature. Making it clear that the future of programming is based on an ethical and polite code.

↓↓ 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 primera lección, el tío Bob demuestra la necesidad de escribir un código limpio y establece las bases para lograrlo, siendo estas bases de naturaleza social y científica. Dejando en claro que el futuro de la programación se basa en un código ético y cortés.

0:00 Event Presentation
2:03 Presenter Introduces Uncle Bob
3:41 Uncle Bob Introduction / My Tribe
4:49 How Far is the Sun?
10:52 Introduction to Clean Code
12:21 The current Society works with Software
19:47 Volkswagen case / Introduction to the Ethics of Software Development
24:28 Why are Programmers so slow?
32:13 What is a Clean Code?
40:09 Analyzing some lines of code
43:43 Long code is not Good Code
49:25 Good Code / Refactored Function
52:40 Polite Code / Rules for writing a news paper article
55:25 Shrunk Code / The Rules of Functions
1:00:23 Shrunk Code / Drawing a Function
1:05:36 When and why was Java invented?
1:08:52 Prose Code / Arguments
1:16:13 Avoid Switch Statements / Problems and Evolution of some programming languages
1:26:15 The Uncle Bob's wife message (funny moment)
1:27:22 Output Arguments No Side Effects / Garbage Collection
1:32:21 No Side Effects / Using Lambda
1:34:26 No Side Effects / Command and Query Separation
1:35:30 No Side Effects / Prefer Exceptions to returning error codes
1:37:05 DRI Principle (Don't Repeat Yourself)
1:39:21 Structured Programming / Edsger Dijkstra Vision vs Actual Vision of the programming
1:45:32 Science and Correct Software

↓↓ OUR MODEL OF SOCIETY ↓↓

↓↓ NUESTRO MODELO DE SOCIEDAD ↓↓

↓↓ OUR CRIPTOCURRENCY FOR MONETARY FREEDOM - NUESTRA CRIPTOMONEDA PARA LA LIBERTAD MONETARIA ↓↓

↓↓ OUR PAYMENT FRANCHISE - NUESTRA FRANQUICIA DE PAGOS ↓↓

↓↓ OUR SOCIAL PACT - NUESTRO PACTO SOCIAL ↓↓

↓↓ OUR SOCIAL NETWORKS - NUESTRAS REDES SOCIALES↓↓
Рекомендации по теме
Комментарии
Автор

0:00 Event Presentation
2:03 Presenter Introduces Uncle Bob
3:41 Uncle Bob Introduction / My Tribe
4:49 How Far is the Sun?
10:52 Introduction to Clean Code
12:21 The current Society works with Software
19:47 Volkswagen case / Introduction to the Ethics of Software Development
24:28 Why are Programmers so slow?
32:13 What is a Clean Code?
40:09 Analyzing some lines of code
43:43 Long code is not Good Code
49:25 Good Code / Refactored Function
52:40 Polite Code / Rules for writing a news paper article
55:25 Shrunk Code / The Rules of Functions
1:00:23 Shrunk Code / Drawing a Function
1:05:36 When and why was Java invented?
1:08:52 Prose Code / Arguments
1:16:13 Avoid Switch Statements / Problems and Evolution of some programming languages
1:26:15 The Uncle Bob's wife message (funny moment)
1:27:22 Output Arguments No Side Effects / Garbage Collection
1:32:21 No Side Effects / Using Lambda
1:34:26 No Side Effects / Command and Query Separation
1:35:30 No Side Effects / Prefer Exceptions to returning error codes
1:37:05 DRI Principle (Don't Repeat Yourself)
1:39:21 Structured Programming / Edsger Dijkstra Vision vs Actual Vision of the programming

unitycoin_original
Автор

Major thanks to the director who knows exactly what we want to see. Not the slide that has the code, rather the speaker drinking a glass of water

somebodyoncetoldme
Автор

Having some beer and watching Uncle Bob videos this evening. Better than anything on Netflix.

Nick-dbzp
Автор

30:25 - After finally getting some piece of code to work, you're only done with half the job; you should spend roughly the same amount of time cleaning it. No one writes clean code first because it's just too hard to get code to work.

46:12 - Every line of a function should be on the same level of abstraction, and that level should be one below the name of the function.

52:22 - Polite code allows the reader to exit (=stop reading) early.

58:45 - A function does one thing if you cannot meaningfully extract another function from it.

1:32:22 - To make a method pair safe (remove side effect), use a lambda that does all the processing.

1:34:34 - A function that returns void must have a side effect, otherwise there would be no point in calling it. A function that returns a value should have no side effects.

1:36:00 - A function that has a try/catch block should have no other content beside that block. Within the try block, there should only be a single function call (the actual function that throws the exception).

shirumi
Автор

I see developers are complaining about the presentation length but as an engineer, I really loved the way he framed the talk from the solar system to a java function. of course, what better example than a man who calculated the sun's distance at 250 bc without any modern tools to understand our lack of creativity and patience for shitty code.

sky-xkbe
Автор

37:00 It is more important to make your code understandable by your peers rather than by the computer.

MAURICAFonenantsoa
Автор

After 40 years of programming, I experienced all the cases described. I just want to say how great you describe the feeling when reading code. At this level, clean code becomes poetry.

ofershor
Автор

I love how he always adds some completely unrelated, but super interesting things from other areas of expertise at the beginning of his presentations.

ViktorEngelmann
Автор

I have been a programmer in the 80s. In between I worked with databases a big chunk, took on the IoT, Gui, and now getting back to basics again. It was interesting how things changed over time when in the past, we knew there are better ways but there was just not enough 'time' and not enough powerful hardware. Thank you for making this lecture public. I utterly enjoyed it and the nearly 2 hours flew by. I also sent the link to my daughter who is studying computer engineering at the moment.
Thanks a million!

Sunnyside--Up
Автор

"You are not done when it works, you are done when it's right."
Uncle bob

alsharefee
Автор

Management is the final decision makers. Delivery is the focus in corporates. No sayer's are thrown out.

It's ok I was thrown out. But i am glad to learn the standards and follow the practices. I am learning and practicing the clean code very late at my age of 38, but i am glad I could see the big difference while coding. Thanks uncle bob.

yuvarajvelmuruganmudaliyar
Автор

This is genius. I laughed so hard because i can realte soooo much to this. Im new to my company and spend like 6 months here and experienced all of it already. Sucking out the energy of my team by being new and unexperienced, experiencing the mess of fixing exisiting code vs the speed of building a green field project etc.

adennis
Автор

loved 31:54 .. " You are not done when it works, you are done when it's right" . I must say he really makes you look at programming with a different lens . Thanks for sharing this

RemiOdufuye
Автор

So it's been a few years now since I returned to Uncle Bob, and wow... I must say. He inspired me way back when I was no longer a Junior and hoping to ascend into a more senior position. And now I'm finding myself equally nodding and shaking my head at several points he's mentioning. Predicting them or criticising them. He was not the only influence, but he was a pivotal person in putting me down the path of better code, to try things for myself and form my own opinions.

And above all else, I noted just how well he delivered his sessions. He speaks about code, and there's definitely competency there that he builds upon. But his ability to teach, and capture attention, to narrate and inspire or motivate is impeccable. That's the next big challenge - present what you know to juniors and seniors, and do it in a way that leaves them wanting more, not nursing a headache!

benvella
Автор

Someone used too much of the budget on intros

shpluk
Автор

The presentation is structured in the same way he described from abstract to detailed, lovely.

AlexandrosFotiadis
Автор

Code snapshots

41:15 page 1 wiki code
42:27 page 2 wiki code
44:04 page 3 wiki code

50:11 Refactored wiki code

shashanksharma
Автор

This was not only precious but very helpful to me. I though that breaking long functions would lead to more complicated code. However, having the mindset portrayed in this video, I managed to break my functions into its "do one thing" components, and even managed to eliminate redundant variables. And, not as I initially thought, my code is far more readable and maintainable. If there is a bug, you can quickly go to the function you think it is responsible for it, instead of zooming in into long functions and loose yourself.

Props to this man! He enlightened me, made me see my own mistakes, and substancially made my life easier as a programmer.

bloguetronica
Автор

This lecture is filled with pure knowledge of software engineering.

odewoleabdul-jemeel
Автор

Unexpectedly this presentation just went all over a bunch of wisdoms my very first tutor told me at university in 2014. Nice.

TheJP