Programmers Oath 1. I will not produce harmful code - I will not release a defect - I will not make code for others harder to understand or change (soft-ware, easy to change) 2. The code that I produce will always be my best work - I will not willingly release code that is defective either in behavior or structure 3. I will provide with each release a quick, sure and repeatable proof that every element of the code works as it is supposed to - Write tests 4. I will make frequent and small releases 5. I will fearlessly and relentlessly improve at any opportunity, will not make the code worse 6. I will keep productivity my own and my team high, I will do nothing that decreases that productivity - I will not damage the code, I will not make things worse 7. I will continuously ensure, that others can cover for me and that I can cover for them 8. I will produce estimates that are hones both in magnitude and precision, I will not make promises without certainty 9. I will never stop learning and improving my craft
The only things i find wrong about this oath, is it kinda depends on the corporate culture. If this somehow become ethical codes for all programmer. Company must have some responsibility to ensure us, that their culture allowed and informed programmers to kept those ethics codes. Otherwise we will repeat the story CEO blaming programmers. but midway they will blame it on us and point finger to this oath. When in fact, company themselves makes the oath impossible to kept.
Yo, the way he talked about the scribes in the beginning, and then about programmers in the past 70 years, and then finally saying we rule the world because the rules are handed to us just like the rules handed down to the scribes. That was awesome, mind blown
Most interesting part: # of programmers double roughly every 5 years so: 1. Half of our industry is always less than 5 years of experience 2. Seems like older programmers retired early when in reality it's just that their numbers are subsumed by growth in young programmers numbers
rofl, after way over 30 years developing software I actually ended up with almost the same rules all by myself. But I sure do hope that uncle Bob can manage to get that coders guild up and running in the near future.
>>>uncle Bob can manage to get that coders guild How could he name it? Possibly - Rational Unified Process guild? :)
7 ปีที่แล้ว +1
The link does not work anymore, here is archived version: web.archive.org/web/20161218000312/8thlight.com/blog/uncle-bob/2014/04/30/When-tdd-does-not-work.html
So I have found a new job and a huge part of it is to teach the other developers the ways to write clean testable code. Right now I do a bit of production code using SOLID and TDD principles as an example for the rest of the team. That's so much fun. :-)
Bob is also quite incorrect about employers not being responsible for intellectual upkeep as well. My wife is a vet tech, and she goes to conferences to learn new things all the time, but *never* on her dime. It's always on company time. My dad is in HVAC, my uncle in electronics repair -- in both cases, the employER, not the employEE, spends the resources to send them to conventions where they can learn the newest things, etc. This makes perfect sense -- it's a business imperative to keep your employees ahead of the curve, because what they bring back to the company can potentially be a competitive advantage. Software development should be, and I argue MUST be, no different in this regard. The field moves WAY too fast for any individual to keep up with everything.
I completely disagree with this one. If your employer wants you to keep up with this constant fast-changing industry they should expect to make that possible without robbing employees of all their free time. This goes double if the employer has you stuck working in legacy systems. You're making a big sacrifice for them in this case and should expect to be given opportunities to keep your skills up to date.
For freelancers, that's quite normal for them to train themselves at home, not on the client's time. Otherwise, I agree that employer should invest in more formation for their employee to have an insight of new technology or just be more productive at their work. But you know ... it's way easiers for them (employer) to just fire the old folks who doesn't learn anymore and hire young ones that have fresh new technologies and method in mind. At the end, you have no choice but learn by yourself at home : it is LEARN or DIE ... as long as you love what you do, it should not be a hassle to learn :)
2LegHumanist Yes. It’s in your employer’s interest to keep you updated and knowledgeable, and since it’s improving their resource, it is also in their best interest to help you improve. I think there’s still an essence of truth in what Robert says though. Your employer definitely should want to facilitate learning and improving, but you yourself having the interest to also want to learn on your own time is also valuable.
Why I watch Uncle Bob's videos this kind of late in my career path, after 10 years. This is fantastic, amazing and one of the must watch videos for every programmer. I Love you Uncle Bob
I mean... Jurassic Park is from 1990, Automan is from 1983. Admittedly, Automan was cancelled after half a season, but Walter Nebicher was a programmer, and he was, to en extent, the hero of the series. So... Maybe Uncle Bob is off by half a decade or so. Though you could argue that Automan was the star, and he was, for all intents and purposes, the computer. (Edit: all EXtents? where did that come from?)
As already noted, War Games was not late 70s. It came out in 1983. Furthermore, I think Richard Pryor would have been insulted to hear that Jurassic Park was the first movie to have a coding villain. Superman III had that covered in... wait for it... also 1983. Nit-picks aside, this was an interesting video and a good reminder to me to bone up on unit testing.
No metallurgist or doctor or commercial pilot will learn on Saturday. They'll have professional training and it will often be certified and any organization that doesn't take that into account in those kinds of fields will quickly be recognize as irresponsible. Let us not be irresponsible and let us not ask of our colleagues what is a good solution for a burn out. Let us teach and train programmers on the work's time.
Great talk, Neon wasn't an allegory for Jesus though, he just became one with everything, which was teased since the very first movie with all those Buddhist references.
Totally love uncle Bob, he's like my alltime favorite hero of all times. So much wisdom. So many things i can relate to. Thank you Bob for making this videos for my bosses so i don't have to do it myself ;)
Man, I am so glad I found Uncle Bob. I've been thinking of programming as the historical equivalent of the ancient scribe for some time now. This talk in particular was pretty great.
Learning and improving is great, but having zero capacity for it in a job where it's required feels like we're being cheated out of our lives, I don't like it or agree with it. That being said, it is true that's how the industry currently works. I think that's short sighted and leads to stagnation in developers and ultimately bad programmers inundating the industry and companies. It would benefit companies to encourage learning by incentivizing it. I have to spend the vast majority of my time outside of work counteracting the bad practices and engrained at work, I think that is pretty insane.
How many of you have heard the phrase "If you won't/can't do it, then we will find somebody else." I know I heard this more than once when working as a professional developer and telling my manager that something was impossible or uncertain. How do you deal with that?
You make _something_ happen that makes your manager happy. It doesn't have to be "the impossible". It just has to be something that he can take to his boss. Look, what your manager is really telling you is not that you are a crappy developer (even though it is possible that you are, but that doesn't even matter to him, he has to manage what he got, unlike you he does not live in an ideal world). What he is telling you is that you don't even know the basic rules of adult life. You have to give something to get something.
Many of the entries in his books indicate to me that he has never delivered a project to production; from recommending coding Katas, revisiting estimates on a daily basis, and taking the blame for missed deliveries. He's one of those "I coded in LISP guys, so you should listen to me." Sayonara.
This doubling in 5 years also means the number of inexperienced people doubles every 5 years. If those are much more likely to cause dangerous bugs, then dangerous bugs should almost double every 5 years.
This oath should be embraced by all developers without a doubt, and there is not one thing in it that is undoable on a day-day basis. As Bob suggested, we better enforce it ourselves before this gets imposed on us...
Great talk. But within the social norms of business, one is expected to not advance their craft but advance their *position* over time. An older programmer who did not choose to climb the ranks of management is generally regarded as an underachiever. And that's the crux of the problem: social expectations that place value on position over ability. The exception to this is when one advances their ability to such a degree to become a name in their own right, such as Uncle Bob has. But that, again, is an exception to which most will not rise.
An older programmer who is still wasting his life on programming isn't very intelligent. That's the real problem. I would even go as far as to say that a young programmer isn't very intelligent in his job choice, to begin with. There are so many better things that one can do with one's life.
@@RayWalker-pythonic It's not, if you are doing it for a purpose (in my case it is always a small part of a much larger hardware design that is entirely my own invention at this point in my life). If you are doing it for somebody else's purpose, though, and you never do anything else with it, then it goes from a purposeful activity to a dull job very quickly. Can you rent out your brain? Sure you can. Is that enough for you? It would not be for me. Just my two cents.
@@RayWalker-pythonic Ah, see, now you are searching for purpose in it, too. That was my point. I could have made the same comments about any other profession, just as well, of course. The point is that one can not and shall not stand still in life. Look around the internet... how many young folks do you see who think programming is an escape hatch for whatever dull life they are living now? That's a bad idea. It merely goes from one flavor of dull to another. Don't do it, young people. Not to mention that you will merely depress wages for everybody in the industry.
CEO Oath 1. I will support political candidates that wish to enable more H 1B workers to reduce the price of wages. 2. I will support the out reach programs not out of the goodness of my heart but for future cost savings in the industry. 3. I will support social media censorship of speech that goes against future profits, especially the profits from foreign markets. 4. I will support the nepotism of foreign cultures in my work place to help keep my work force divided and and unable to collectively bargain. 5. I will pick foreign programmers because of their desperation to live in the U.S and their reduced options of employment ensuring their obedience . 6. I will create a narrative of domestic workers being lazy and self entitled in comparison to foreign workers who are willing to work for nothing and tell domestic workers to strive to be as desperate as foreign workers. 7. I will continuously ensure, that I fire people who speak out against my policy. 8. I will use my companies consumer facing aspects to promote hatred towards Christians and other groups that I feel are against my group interest. 9. I will never stop learning and improving my craft
"Most of people are completely OK with this" Most CEOs are okay with this, as I stated in my post. Average workers are not okay with it at all as it reduces the number of jobs in the country. I fear you are looking at my post with assumptions and will have a hard time understanding my message. I understand that you are trying to improve your quality of life and the quality of life of your group. I feel that you have every right seek out better treatment and superior monetary compensation. I hope that you understand that I too wish to improve the quality of my life and the quality of life of my group and you respect that I too will strive to improve my monetary compensation. "On other hand, when I immigrate to USA and get paid programmers' "prevailing wage", you have a problem with that" No, you are wrong, I would prefer foreign workers to be paid a minimum of 10 times the average wage of a domestic worker. You, an experienced worker, being paid an entry level wage depresses the wages of other experienced programmers. "Once the process of Globalization has been started, it cannot be stopped" I can understand why you would feel this way if you or your group benefited from this process.
"No, no, "the people", such as ones who buy car insurance, or those who order shit on Amazon, all of them are verrrry OK with having competitive marketplace where companies try to cut costs wherever possible." When people are acting in a self destructive manner the government must step in and tell them to stop. Its the same concept that copyright system works on. "Each of the cities that I named has very high demand for very skilled labor which CANNOT be fulfilled by domestic workforce. It's a fact, check it." I understand these highly skilled positions are created through Microsoft creating convoluted technologies that are not part of any self respecting CS class. Domestic companies don't want to spend months training employees so they use H1B labor that live and breath Microsoft/Oracle technology. "it's just and right to have software developers around the world to work for MS." Microsoft sold its operating system around the world because they where good at business and knew how to market their product. The companies who used their software benefited from using Microsoft software. What does Microsoft owe these countries? Why have these countries not started their own technology culture? Why is the value still mostly in the U.S? what makes the U.S so special? is it the soil? "You WILL BE assimilated. Resistance is futile." As I stated before, accepting the current system does not improve my standard of living so I am against it.
From the past few posts you have made this very clear to me. You have created a mental image in your mind of me and my political opinions, not through my posts but through your imagined understanding of me. For example: "I understand that you pursue any policy which benefits your living standard, whether it's proxy wars with Russia and Iran, forcing Free Trade down people's throats, etc. but you are making some very contradictory statements." This one statement shows me that you are unwilling to listen to my point. I have been arguing against free trade from the beginning but you simply insert it as if by autopilot. I understand memorizing rhetoric is a powerful tool in debate but this one line is a complete 180 from what I was arguing this whole time. If I am wrong please quote where I argued that free trade benefits me in any way. If you will honestly listen to my opinions and consider them, we can continue. The U.S is not rich because they are rich. The U.S is rich because American culture has a tradition of treating people with respect and dignity and expecting respect and dignity from others. Other nations do not have this tradition which creates issues such as corruption and nepotism. The cast system is one of the reasons India is poor and needs western investors to modernize. Countries such as Japan have naturally adopted western science and industry because they saw value in it. Value is not the number of dollars a person has, it is an abstract concept that is hard to determine but the results are very clear when you look at the standard of living.
US tech companies like Amazon decimate local businesses in other countries and relocate billions of dollars from other economies into the USA... and you want to cry and complain when people from those countries want to come and work in the US? It's either a fucking globalised system where the US can pull profits from the entire world and people from around the world can go and work for those US companies, or it's a nationalist system where US companies can only make money from the US and only US workers can work in US companies. Make your fucking choice and stop whinging like an spoilt, entitled child.
Robert, that was a really excellent talk. I think you have provided a nice structural context in which our day to day activities exist and gain meaning.
17:48 The current estimate is about 18-22 million "programmers" AROUND THE WORLD. Depends on your definition. Depending on who is counting, for example, SysAdmins that write bash scripts can get lumped into the numbers, and even people writing basic VB scripts for excel, etc. 80-120 million is too much of an estimate. Basic economics doesn't support that estimate. The number also can't continue to double indefintely: we still need doctors, and nurses, and farmers, and engineers, and chefs, etc.
He touches on the perception of programmers as 'non-professionals' and the need for standards akin to those used by civil engineers in "The Clean Coder." Side Note: I can use the toilet without software... oh wait. Auto-flush.
Most programmers lack discipline and will tend to blame schedules, life, bosses, and etc. Uncle Bob's argument here is that if you can show your code is tested, clean, and maintainable, you can justify yourself when things don't go as planned.
It's an interesting take but also somewhat ridiculous. And I'm only 35 min in, but... The ego attached to being a programmer (not a software engineer) is interesting. Nevertheless, all bad code represents potential waste and overhead, if not trouble, so taking quality seriously is a fair focus on the system level.
DemonLordChaos Yes, I've always thought that you have to consider the responsibilities of everyone else and what they might not have done well, if you want to produce a solid end product.
this only has 40,000 views and there are 100,000,000 programmers? I think Uncle Bob needs some help spreading the word... Go forth, children! Tell all the programmers of the world to get good!
what???? "His greatest achievement was the world's first programmable computer; the functional program-controlled Turing-complete Z3 became operational in May 1941"
No, you got it wrong. Z3 was the first Turing-complete computer in the world. Turing machine, that was described in 1936 was not a real computer. It was a model.
I like listening to Robert C Martin and I think he's smart and everything, but he starts these these long points that I don't know that I ever hear him finish.
Interesting thing :))) the waterfall processes was designed to "control the programmers". They was designed in military organizations to "control the programmers".:)))) Are they succeeded? I think NO!
>>>I bet you are the kind of developer that says You are way off :) About fifteen years i am revive hopeless projects to supportable state. And i am works only in two companies that time :) >>>Without rules we are animals IMHO - with rules that's not working you are still animal :)
Nothing much you can change. Basically business in the world allowed to anything about they like with no any restrictions. In our culture businessman are God. That's why we don't go to church. Because boss is our God. Nothing much you can change Bob.
Businessmen are not god. They are the ones who are paying your salary. Nothing stops you from paying your own salary. Do you happen to know how to do that? If not, then you can't get around the businessmen.
@@lepidoptera9337 in most of cases the boss get paid wage by someone else and he not source of the money. The source of the money are numerous shareholders, investors, benches, not the bosses. Is not that correct?
@@kdenisinfo Point is that unless you are the source of your own money, you have your legs under somebody else's table. That is the problem with blaming the business people. Having said that, I get the sentiment. Money begets money and poverty begets poverty and it is awfully hard to break that cycle.
Another thing the source of the wealth of most richest people is doing nothing. Ho one of them worked hard . Because it's capitalism. You grandma gave a few houses costing one billion dollars. What exactly he was doing to get billions dollars after grandma died!? Or he's wealth came because he invest all his money in stocks 80 years ago when everything was chip like noodles. Property cost few thousands dollars. Most of wealth came to Rich people for doing nothing . That is another huge unfairness of capitalism. Unfortunately you are not correct again 🤣
He talks about codes/laws to help coders to code ... but "coding for coding" is totally useless ! You have to figure out the needs first, and then get the job done accordingly to the client's whishes. It would be a bad idea to go the opposite way. By the way, it is possible to use Agile method to "finish" project early ... and then come back (with another payment) to build the next step code lol. Evil is within commercial programmers haha
He didn't say we "need" more regulation. He said we will eventuallly be regulated then we should antecipate regulation so we can have some control over it.
Useful comment, thanks. I've seen someone timeslice one of Uncle Bob's vids and appreciate the work. Some of us "kids" watch these vids multiple times.
"There hasn't really been a new language in the last 30 years. They are just re-hashes of all the same old stuff" I'm sorry, but that's simply not true. Every language is different from each other in some way or form. That's just fact. You can't compile a program written for C using java compiler, nor can you run it using a python interpreter. And if languages are different, whether it is at the most fundamental level (most different), or just in the most trivial and syntactic aspects (least different), they still have differences. And as long as two things are different, then one will be objectively better than other in all scenarios, or they would have pros and cons depending on the scenario.
Such a childish outlook. The religious comparisons worked extremely well to convey Uncle Bob's message. The comparison to the Hebrew scribes was very interesting. If your only take away from this speech is "grrr stupid religious references" then you need to grow up and quit being an edgy 14 year old atheist.
Programmers Oath
1. I will not produce harmful code
- I will not release a defect
- I will not make code for others harder to understand or change (soft-ware, easy to change)
2. The code that I produce will always be my best work
- I will not willingly release code that is defective either in behavior or structure
3. I will provide with each release a quick, sure and repeatable proof that every element of the code works as it is supposed to
- Write tests
4. I will make frequent and small releases
5. I will fearlessly and relentlessly improve at any opportunity, will not make the code worse
6. I will keep productivity my own and my team high, I will do nothing that decreases that productivity
- I will not damage the code, I will not make things worse
7. I will continuously ensure, that others can cover for me and that I can cover for them
8. I will produce estimates that are hones both in magnitude and precision, I will not make promises without certainty
9. I will never stop learning and improving my craft
10. I will buy all of Uncle Bob's videos that teach us how to support his Oath. haha
His Clean Code videos are fucking amazing! They're for purchase but worth every penny.
The only things i find wrong about this oath, is it kinda depends on the corporate culture. If this somehow become ethical codes for all programmer. Company must have some responsibility to ensure us, that their culture allowed and informed programmers to kept those ethics codes.
Otherwise we will repeat the story CEO blaming programmers. but midway they will blame it on us and point finger to this oath. When in fact, company themselves makes the oath impossible to kept.
World needs dreamers :)
Thanks Mr. Eco.
Yo, the way he talked about the scribes in the beginning,
and then about programmers in the past 70 years,
and then finally saying we rule the world because the rules are handed to us just like the rules handed down to the scribes.
That was awesome,
mind blown
Most interesting part: # of programmers double roughly every 5 years so:
1. Half of our industry is always less than 5 years of experience
2. Seems like older programmers retired early when in reality it's just that their numbers are subsumed by growth in young programmers numbers
Well, I just got fired because of me sticking to those principles. And I would do it again, or perhaps I'd go on my own earlier next time.
you just memed yourself
rofl, after way over 30 years developing software I actually ended up with almost the same rules all by myself. But I sure do hope that uncle Bob can manage to get that coders guild up and running in the near future.
>>>uncle Bob can manage to get that coders guild
How could he name it? Possibly - Rational Unified Process guild? :)
The link does not work anymore, here is archived version: web.archive.org/web/20161218000312/8thlight.com/blog/uncle-bob/2014/04/30/When-tdd-does-not-work.html
So I have found a new job and a huge part of it is to teach the other developers the ways to write clean testable code. Right now I do a bit of production code using SOLID and TDD principles as an example for the rest of the team. That's so much fun. :-)
Great talk. I keep coming to rewatch every now and then
Whoops. Just got to the last part about not using the company time to learn - after having watched this video at work...
Bob is also quite incorrect about employers not being responsible for intellectual upkeep as well. My wife is a vet tech, and she goes to conferences to learn new things all the time, but *never* on her dime. It's always on company time. My dad is in HVAC, my uncle in electronics repair -- in both cases, the employER, not the employEE, spends the resources to send them to conventions where they can learn the newest things, etc.
This makes perfect sense -- it's a business imperative to keep your employees ahead of the curve, because what they bring back to the company can potentially be a competitive advantage. Software development should be, and I argue MUST be, no different in this regard. The field moves WAY too fast for any individual to keep up with everything.
I completely disagree with this one. If your employer wants you to keep up with this constant fast-changing industry they should expect to make that possible without robbing employees of all their free time.
This goes double if the employer has you stuck working in legacy systems. You're making a big sacrifice for them in this case and should expect to be given opportunities to keep your skills up to date.
For freelancers, that's quite normal for them to train themselves at home, not on the client's time.
Otherwise, I agree that employer should invest in more formation for their employee to have an insight of new technology or just be more productive at their work.
But you know ... it's way easiers for them (employer) to just fire the old folks who doesn't learn anymore and hire young ones that have fresh new technologies and method in mind. At the end, you have no choice but learn by yourself at home : it is LEARN or DIE ... as long as you love what you do, it should not be a hassle to learn :)
2LegHumanist Yes. It’s in your employer’s interest to keep you updated and knowledgeable, and since it’s improving their resource, it is also in their best interest to help you improve. I think there’s still an essence of truth in what Robert says though. Your employer definitely should want to facilitate learning and improving, but you yourself having the interest to also want to learn on your own time is also valuable.
47:08 What I learnt from this one is: If you have a suite of tests, then Bob's your uncle
I think the main rule of modern programmer should be - i'm solving the problems only if I am sure of their existence...
Why I watch Uncle Bob's videos this kind of late in my career path, after 10 years. This is fantastic, amazing and one of the must watch videos for every programmer.
I Love you Uncle Bob
Almost five years have passed since this talk, does this mean there are 200 million programmers out there now?
I mean... Jurassic Park is from 1990, Automan is from 1983. Admittedly, Automan was cancelled after half a season, but Walter Nebicher was a programmer, and he was, to en extent, the hero of the series. So... Maybe Uncle Bob is off by half a decade or so.
Though you could argue that Automan was the star, and he was, for all intents and purposes, the computer.
(Edit: all EXtents? where did that come from?)
As already noted, War Games was not late 70s. It came out in 1983. Furthermore, I think Richard Pryor would have been insulted to hear that Jurassic Park was the first movie to have a coding villain. Superman III had that covered in... wait for it... also 1983. Nit-picks aside, this was an interesting video and a good reminder to me to bone up on unit testing.
Thank you so much for this
Wargames is 1983 and the actor is Matthew Broderick. That was one of my favorite movies in high school.
Thank you so much, Uncle Bob!
No metallurgist or doctor or commercial pilot will learn on Saturday. They'll have professional training and it will often be certified and any organization that doesn't take that into account in those kinds of fields will quickly be recognize as irresponsible.
Let us not be irresponsible and let us not ask of our colleagues what is a good solution for a burn out.
Let us teach and train programmers on the work's time.
3:14 - 3:21 is my everything. This is a talk about being serious about your craft.
Great talk, Neon wasn't an allegory for Jesus though, he just became one with everything, which was teased since the very first movie with all those Buddhist references.
At the beginning: Hahahahah I love this guy.
At the end: wow, my whole life has been a lie.
What an awesome talk! Thank you for upload!
Totally love uncle Bob, he's like my alltime favorite hero of all times. So much wisdom. So many things i can relate to. Thank you Bob for making this videos for my bosses so i don't have to do it myself ;)
Man, I am so glad I found Uncle Bob. I've been thinking of programming as the historical equivalent of the ancient scribe for some time now. This talk in particular was pretty great.
Learning and improving is great, but having zero capacity for it in a job where it's required feels like we're being cheated out of our lives, I don't like it or agree with it. That being said, it is true that's how the industry currently works. I think that's short sighted and leads to stagnation in developers and ultimately bad programmers inundating the industry and companies. It would benefit companies to encourage learning by incentivizing it.
I have to spend the vast majority of my time outside of work counteracting the bad practices and engrained at work, I think that is pretty insane.
Genius. Thank you so much.
How many of you have heard the phrase "If you won't/can't do it, then we will find somebody else." I know I heard this more than once when working as a professional developer and telling my manager that something was impossible or uncertain. How do you deal with that?
You make _something_ happen that makes your manager happy. It doesn't have to be "the impossible". It just has to be something that he can take to his boss. Look, what your manager is really telling you is not that you are a crappy developer (even though it is possible that you are, but that doesn't even matter to him, he has to manage what he got, unlike you he does not live in an ideal world). What he is telling you is that you don't even know the basic rules of adult life. You have to give something to get something.
I would really like to go to one of these conferences. I've listened to a few of Uncle Bob's talks and each one has been very thought provoking.
3:14 - 3:21 is my everything. This is a talk about being serious about your craft.
This is a gold !!
I'm back here years later just to say CrowdStrike.
Many of the entries in his books indicate to me that he has never delivered a project to production; from recommending coding Katas, revisiting estimates on a daily basis, and taking the blame for missed deliveries. He's one of those "I coded in LISP guys, so you should listen to me." Sayonara.
This doubling in 5 years also means the number of inexperienced people doubles every 5 years. If those are much more likely to cause dangerous bugs, then dangerous bugs should almost double every 5 years.
the numbers DONT NEED TO REPRESENT NUMBERS!
There is a paper from Wilfried de Beauclair in German called Mathematics without digits - analog computing devices
I agree with this talk. Doug Crockford, and Martin Fowler have a similar take.
thank you uncle bob
This oath should be embraced by all developers without a doubt, and there is not one thing in it that is undoable on a day-day basis. As Bob suggested, we better enforce it ourselves before this gets imposed on us...
Great talk. But within the social norms of business, one is expected to not advance their craft but advance their *position* over time. An older programmer who did not choose to climb the ranks of management is generally regarded as an underachiever. And that's the crux of the problem: social expectations that place value on position over ability. The exception to this is when one advances their ability to such a degree to become a name in their own right, such as Uncle Bob has. But that, again, is an exception to which most will not rise.
An older programmer who is still wasting his life on programming isn't very intelligent. That's the real problem. I would even go as far as to say that a young programmer isn't very intelligent in his job choice, to begin with. There are so many better things that one can do with one's life.
@@lepidoptera9337 Why is programming a waste of time?
@@lepidoptera9337 I found programming a highly rewarding endeavor. I still do, though I do it for free now.
@@RayWalker-pythonic It's not, if you are doing it for a purpose (in my case it is always a small part of a much larger hardware design that is entirely my own invention at this point in my life). If you are doing it for somebody else's purpose, though, and you never do anything else with it, then it goes from a purposeful activity to a dull job very quickly. Can you rent out your brain? Sure you can. Is that enough for you? It would not be for me. Just my two cents.
@@RayWalker-pythonic Ah, see, now you are searching for purpose in it, too. That was my point. I could have made the same comments about any other profession, just as well, of course. The point is that one can not and shall not stand still in life. Look around the internet... how many young folks do you see who think programming is an escape hatch for whatever dull life they are living now? That's a bad idea. It merely goes from one flavor of dull to another. Don't do it, young people. Not to mention that you will merely depress wages for everybody in the industry.
CEO Oath
1. I will support political candidates that wish to enable more H 1B workers to reduce the price of wages.
2. I will support the out reach programs not out of the goodness of my heart but for future cost savings in the industry.
3. I will support social media censorship of speech that goes against future profits, especially the profits from foreign markets.
4. I will support the nepotism of foreign cultures in my work place to help keep my work force divided and and unable to collectively bargain.
5. I will pick foreign programmers because of their desperation to live in the U.S and their reduced options of employment ensuring their obedience .
6. I will create a narrative of domestic workers being lazy and self entitled in comparison to foreign workers who are willing to work for nothing and tell domestic workers to strive to be as desperate as foreign workers.
7. I will continuously ensure, that I fire people who speak out against my policy.
8. I will use my companies consumer facing aspects to promote hatred towards Christians and other groups that I feel are against my group interest.
9. I will never stop learning and improving my craft
"Most of people are completely OK with this"
Most CEOs are okay with this, as I stated in my post. Average workers are not okay with it at all as it reduces the number of jobs in the country. I fear you are looking at my post with assumptions and will have a hard time understanding my message.
I understand that you are trying to improve your quality of life and the quality of life of your group. I feel that you have every right seek out better treatment and superior monetary compensation.
I hope that you understand that I too wish to improve the quality of my life and the quality of life of my group and you respect that I too will strive to improve my monetary compensation.
"On other hand, when I immigrate to USA and get paid programmers' "prevailing wage", you have a problem with that"
No, you are wrong, I would prefer foreign workers to be paid a minimum of 10 times the average wage of a domestic worker. You, an experienced worker, being paid an entry level wage depresses the wages of other experienced programmers.
"Once the process of Globalization has been started, it cannot be stopped"
I can understand why you would feel this way if you or your group benefited from this process.
"No, no, "the people", such as ones who buy car insurance, or those who
order shit on Amazon, all of them are verrrry OK with having competitive
marketplace where companies try to cut costs wherever possible."
When people are acting in a self destructive manner the government must step in and tell them to stop. Its the same concept that copyright system works on.
"Each of the cities that I named has very high demand for very skilled
labor which CANNOT be fulfilled by domestic workforce. It's a fact,
check it."
I understand these highly skilled positions are created through Microsoft creating convoluted technologies that are not part of any self respecting CS class. Domestic companies don't want to spend months training employees so they use H1B labor that live and breath Microsoft/Oracle technology.
"it's just and right to have software developers around the world to work for MS."
Microsoft sold its operating system around the world because they where good at business and knew how to market their product. The companies who used their software benefited from using Microsoft software. What does Microsoft owe these countries? Why have these countries not started their own technology culture? Why is the value still mostly in the U.S? what makes the U.S so special? is it the soil?
"You WILL BE assimilated. Resistance is futile."
As I stated before, accepting the current system does not improve my standard of living so I am against it.
From the past few posts you have made this very clear to me.
You have created a mental image in your mind of me and my political opinions, not through my posts but through your imagined understanding of me.
For example: "I understand that you pursue any policy which benefits your living standard, whether it's proxy wars with Russia and Iran, forcing Free Trade down people's throats, etc. but you are making some very contradictory statements."
This one statement shows me that you are unwilling to listen to my point. I have been arguing against free trade from the beginning but you simply insert it as if by autopilot. I understand memorizing rhetoric is a powerful tool in debate but this one line is a complete 180 from what I was arguing this whole time. If I am wrong please quote where I argued that free trade benefits me in any way.
If you will honestly listen to my opinions and consider them, we can continue.
The U.S is not rich because they are rich. The U.S is rich because American culture has a tradition of treating people with respect and dignity and expecting respect and dignity from others. Other nations do not have this tradition which creates issues such as corruption and nepotism. The cast system is one of the reasons India is poor and needs western investors to modernize. Countries such as Japan have naturally adopted western science and industry because they saw value in it.
Value is not the number of dollars a person has, it is an abstract concept that is hard to determine but the results are very clear when you look at the standard of living.
US tech companies like Amazon decimate local businesses in other countries and relocate billions of dollars from other economies into the USA... and you want to cry and complain when people from those countries want to come and work in the US?
It's either a fucking globalised system where the US can pull profits from the entire world and people from around the world can go and work for those US companies, or it's a nationalist system where US companies can only make money from the US and only US workers can work in US companies.
Make your fucking choice and stop whinging like an spoilt, entitled child.
Robert, that was a really excellent talk. I think you have provided a nice structural context in which our day to day activities exist and gain meaning.
Ok .. we are the scribes now.
17:48 The current estimate is about 18-22 million "programmers" AROUND THE WORLD. Depends on your definition. Depending on who is counting, for example, SysAdmins that write bash scripts can get lumped into the numbers, and even people writing basic VB scripts for excel, etc. 80-120 million is too much of an estimate. Basic economics doesn't support that estimate. The number also can't continue to double indefintely: we still need doctors, and nurses, and farmers, and engineers, and chefs, etc.
don't forget to watch The S.O.L.I.D. Principles of OO and Agile Design - by Uncle Bob Martin th-cam.com/video/t86v3N4OshQ/w-d-xo.html
He touches on the perception of programmers as 'non-professionals' and the need for standards akin to those used by civil engineers in "The Clean Coder."
Side Note: I can use the toilet without software... oh wait. Auto-flush.
Isn't there a water pump filling the toilet back up? Bunch of software controlling the water pressure.
Google "ballcock"
I think he meant at the source. That the water coming into our house is regulated by code
Did any one found it that find the
Job with bigger experience is harder once average exp 5 years .. I'm longer than 25 years of experience
funny how this will never go viral even though we have millions of programmers who are at the base of our new society
Most programmers lack discipline and will tend to blame schedules, life, bosses, and etc. Uncle Bob's argument here is that if you can show your code is tested, clean, and maintainable, you can justify yourself when things don't go as planned.
It's an interesting take but also somewhat ridiculous. And I'm only 35 min in, but... The ego attached to being a programmer (not a software engineer) is interesting.
Nevertheless, all bad code represents potential waste and overhead, if not trouble, so taking quality seriously is a fair focus on the system level.
Well put, sir… well put!
DemonLordChaos Yes, I've always thought that you have to consider the responsibilities of everyone else and what they might not have done well, if you want to produce a solid end product.
most programmers who call themselves engineers don't engineer anything....
I have spent enough time in church to know a sermon when I hear one. I love you Bob but I feel I should be paying for your private jet.
this only has 40,000 views and there are 100,000,000 programmers? I think Uncle Bob needs some help spreading the word...
Go forth, children! Tell all the programmers of the world to get good!
the lost ink still being used in Morroco
15:12 Konrad Zuse was first programmer. Not Turing.
what????
"His greatest achievement was the world's first programmable computer; the functional program-controlled Turing-complete Z3 became operational in May 1941"
No, you got it wrong. Z3 was the first Turing-complete computer in the world. Turing machine, that was described in 1936 was not a real computer. It was a model.
He predicted and it happened in Boeing 737 Max
Except that what happened there is, for the most part, not a software problem. It's a management problem.
Colossus: The Forbin Project
Great movie.
That's a great movie
I like listening to Robert C Martin and I think he's smart and everything, but he starts these these long points that I don't know that I ever hear him finish.
Türkçe altyazı lütfen
Oh give me a break
Jab or Notch?
Interesting thing :))) the waterfall processes was designed to "control the programmers". They was designed in military organizations to "control the programmers".:)))) Are they succeeded? I think NO!
Really? IT in serious crisis. After TDD it comes to oath-oriented programming )))))))))))))))))))))))
:) Man, did you ever visit that site? Coders post there another peoples code.
>>>I bet you are the kind of developer that says
You are way off :) About fifteen years i am revive hopeless projects to supportable state. And i am works only in two companies that time :)
>>>Without rules we are animals
IMHO - with rules that's not working you are still animal :)
Nothing much you can change. Basically business in the world allowed to anything about they like with no any restrictions. In our culture businessman are God. That's why we don't go to church. Because boss is our God. Nothing much you can change Bob.
Businessmen are not god. They are the ones who are paying your salary. Nothing stops you from paying your own salary. Do you happen to know how to do that? If not, then you can't get around the businessmen.
@@lepidoptera9337 in most of cases the boss get paid wage by someone else and he not source of the money. The source of the money are numerous shareholders, investors, benches, not the bosses. Is not that correct?
@@kdenisinfo Point is that unless you are the source of your own money, you have your legs under somebody else's table. That is the problem with blaming the business people. Having said that, I get the sentiment. Money begets money and poverty begets poverty and it is awfully hard to break that cycle.
Another thing the source of the wealth of most richest people is doing nothing. Ho one of them worked hard . Because it's capitalism. You grandma gave a few houses costing one billion dollars. What exactly he was doing to get billions dollars after grandma died!? Or he's wealth came because he invest all his money in stocks 80 years ago when everything was chip like noodles. Property cost few thousands dollars. Most of wealth came to Rich people for doing nothing . That is another huge unfairness of capitalism.
Unfortunately you are not correct again 🤣
@@kdenisinfo How is raging against the rich going to help the poor, exactly?
He talks about codes/laws to help coders to code ... but "coding for coding" is totally useless !
You have to figure out the needs first, and then get the job done accordingly to the client's whishes. It would be a bad idea to go the opposite way.
By the way, it is possible to use Agile method to "finish" project early ... and then come back (with another payment) to build the next step code lol. Evil is within commercial programmers haha
he helped to form what originally was coopted into the "Agile" method. Also, not all code is for projects or clients.
To skip Uncle Bob's opening time waster: 3:09
Pump your breaks, kid. Bob's intros are a national treasure.
+Gabriel Kwiecinski Antunes I haven't been called "kid" in a long time. Thanks.
He didn't say we "need" more regulation. He said we will eventuallly be regulated then we should antecipate regulation so we can have some control over it.
Useful comment, thanks. I've seen someone timeslice one of Uncle Bob's vids and appreciate the work. Some of us "kids" watch these vids multiple times.
Holy shit bob get to the point
lol
He does get to the point but you have to watch more than the first 40 seconds of the video.
So unfortunate, isn't it? ADHD infested brats.
A lot of things wrong with his ideas, the worst of all is that politicians should come after programmers in "righteous indignation" and regulate them.
not should, will.
Neo was already "Christ" in Matrix 1. But yes, Matrix 2 and 3 were not as good as 1.
This guy is Agent Smith father, for sure!
TL;DR anyone?
Watch the video you impatient millennial. Don't be in such a rush.
Old man yells at cloud.
"There hasn't really been a new language in the last 30 years. They are just re-hashes of all the same old stuff"
I'm sorry, but that's simply not true.
Every language is different from each other in some way or form. That's just fact. You can't compile a program written for C using java compiler, nor can you run it using a python interpreter.
And if languages are different, whether it is at the most fundamental level (most different), or just in the most trivial and syntactic aspects (least different), they still have differences.
And as long as two things are different, then one will be objectively better than other in all scenarios, or they would have pros and cons depending on the scenario.
ugh bible refs :/
Such a childish outlook. The religious comparisons worked extremely well to convey Uncle Bob's message. The comparison to the Hebrew scribes was very interesting. If your only take away from this speech is "grrr stupid religious references" then you need to grow up and quit being an edgy 14 year old atheist.
What an awesome talk! Thank you for upload!