Is it just me, or does it seem like there are an awful lot of relatively experienced programmers, like myself, on a video titled Programming 101?
@nightmaster5524 жыл бұрын
its because we strive to improve and see if we "looked over" something.
@Tokinjester4 жыл бұрын
for the same reason that even top sportsmen, like Tiger Woods, still need coaches
@dietergrawe11874 жыл бұрын
it´s because I like to listen to Uncle Bob regardless to my 35 years professional software developer experirence
@sillyultroid4 жыл бұрын
learning is fun to us
@klc3rd4 жыл бұрын
Casper S� lol I thought the same thing after I over eagerly said “Oh! I know what to do”
@haimgrn3 жыл бұрын
I've never believed that such simple and obvious talks are really needed, until I had the opportunity to work for a company where this was the way they wrote code, with an extreme avoidance of almost any abstraction... So it really is good that we have such videos explaining the very basics of good programming practices.
@rabbet69724 жыл бұрын
i love how the first several minutes is just uncle bob flexing his house and cars haha
@dewdop4 жыл бұрын
I think it's annoying...
@Filaxsan4 жыл бұрын
@@dewdop I think it's just uncle Bob being himself (and awesome) as usual.
@RogerBarraud4 жыл бұрын
@@dewdop Tough ;-)
@dewdop4 жыл бұрын
@@RogerBarraud Sure is. I've lost a lot of sleep over it, actually.
@quentindaniels74604 жыл бұрын
Lol, I was thinking same thing. The man worked damn hard for it
@danieladetayo3711 Жыл бұрын
Thank you so much uncle Bob. This is what I've been missing all my life. As someone who didn't study computer science, this has been really helpful. I'm going to spend the next few weeks consuming all related content.
@acrabtree114 жыл бұрын
Had to stop here 30 minutes in and say 'Thank You !!' . Great stuff , as someone going back to school at 38 years old and having had little hands on experience with programming before , this is just the pace I needed to really help me solidify my understanding of basics. 8 years ago, I completed a college course as a personal elective in Computer Logic and Programming and while I was offered much there none of it really stuck as I didn't continue my studies and only took that and a basic Microsoft Office course and wasn't super interested. .... I greatly appreciate the playfulness in your style of teaching here in this video , just very personal feel and entertaining pace ... I've watched another hour long talk you gave to a group of programmers on clean code - over my head , but I really enjoyed it too. Anyway big thanks !! This video = ( BIG VALUE , LEGACY, JUST GOOD FUN )
@casperes09124 жыл бұрын
I never quite realised how insane good auld Bob actually is. He'd make a great super-villain. And he edits video like someone who just found out iMovie exists... And I love him
@MariaBethaniaCabrera4 жыл бұрын
What an awesome teacher! I'm still waiting for the second video of "Programming 101 with "Uncle Bob" ". I wanna see more and learn more from you. Please Uncle Bob, continue with this 101 videos. Thanks.
@sobreinquisidor4 жыл бұрын
I'm a profesional programmer I have been coding for years now but uncle Bob always teaches something even on basic videos. Thanks I'm a big fan of you :)
@anonymous.youtuber4 жыл бұрын
Beautiful how he gets the message across that in the first place the program should implement what the user really needs, not what you think he needs nor what the user thinks he needs.
@Seofthwa8 ай бұрын
This is a brilliant presentation, I learned more here than I did while attending college. Look at a problem closely, understand it. Since your first solution is probably clunky, go back simplify the solution. The example is excellent, simple and illustrated the information perfectly. Thank you, Bob.
@spikeevans14884 жыл бұрын
I agree with your statements about loving programming. I have been retired for 7 years and still program my computer nearly every day. Curiously, I remember, when I first started programming back in the late '60s, wondering if it was a good thing to get into as I thought it wouldn't be long before all the programs that were needed would be completed.
@jaydjeffries4 жыл бұрын
wish I had this guy as my professor way back when better late than never
@shiweiqin78464 жыл бұрын
“If the didn’t pay us to write the code, we pay to write the code” LOL, true
@justinmean73704 жыл бұрын
How is this guy not on the the Nobel Prize list? Thank you Uncle Bob!
@wonderfuldaypress20 күн бұрын
A minute and a half in, and I already love this guy!
@BorysMadrawski4 жыл бұрын
For absolute beginners (something for my daughter), but still I love to watch him. By the way, I have just checked: "finger" in Latin is "digitus" exactly.
@oliverhughes1694 жыл бұрын
For beginners, but there's gold here for more experienced programmers that might never have stopped to think about the simple things, or just take them for granted. I had never thought about the && table being the inverse of ||, or vice versa, for example.
@TotoLakay4 жыл бұрын
Holy Shit!!!! This video is better than all the books and classes I have ever taken. Great video... Awesome tutorial...
@prezadent14 жыл бұрын
I've been programming Kotlin for over 20 years and wasn't aware of the 'if' keyword. This changes everything.
@mrsciencedaemon4 жыл бұрын
Must also be amazing to code in a language for 20 years that has only existed for 10 years max.
@First_Principals4 жыл бұрын
@@mrsciencedaemon That's why they call him an expert :-)
@supertenchoo42712 жыл бұрын
Brilliant I've learn a lot from this video thank you so much
@danielknight38524 жыл бұрын
Excellent. Where’s episode 2?
@chuckwieser76224 жыл бұрын
I don't know either. I looked on his website 'Clean Coder' and did not find it. I hope he continues this series!
@qualia7654 жыл бұрын
You have to buy it :(
@jonsplex4 жыл бұрын
I absolutely adore the cheesy comedy/FX in this video, lol
@RamLaska4 жыл бұрын
Not a coder, but I've dabbled for 30 years. Gotta respect a guy who starts you out with a LIGHT SWITCH.
@The_Wandering_Nerd3 жыл бұрын
This definitely makes me appreciate electricians a lot more. They have to lay out these complex logic circuit with just wires and switches. Talk about your bare-metal programming :)
@omarelkhatib1504 жыл бұрын
5:51 well said Uncle Bob , well said.
@mehmetoguzyardimci85984 жыл бұрын
Best CS course ever :)
@MarkLeonTanner4 жыл бұрын
Your passion helps make you a great teacher... I'm a hobbiest and I want to learn more...
@tsunamio77504 жыл бұрын
It's very basic, but it's well made. You got rid of the terminology at first to let kids concentrate on the interesting stuff. That's great!
@willemvdk48862 жыл бұрын
This video is very entertaining and educational at the same time. It's so funny yet all so true.
@SomeDumbRandomUser4 жыл бұрын
Thats really good! Why ever youtube recommended this to me, since i have that knowledge already... But great video - has captured my attention !
@elkhoukhi4 жыл бұрын
Greaat introduction! we want more
@stephenfoster90094 жыл бұрын
Is it just me, or was his programming if his first chart opposite of the chart? If the A, B switches were the same, the light should be off. His first code for A, B stated if A and B were the same state the light would be on.
@nathanwittland81124 жыл бұрын
You are correct, he would just have to swap the words On and Off in the code to match the chart.
@mustafaaljasim72264 жыл бұрын
@@nathanwittland8112 I just started to scratch my head when he did that opposite to the chart, but overall good concepts to learn from!
@TotoLakay4 жыл бұрын
@@nathanwittland8112 Or just use a ! not to correct the script.
@mikemcculley4 жыл бұрын
Pay attention learners. This is how bugs are introduced.
@mrsciencedaemon4 жыл бұрын
He incorrectly code a XNOR function instead of an XOR.
3 жыл бұрын
16:35 - XOR light switches 20:04 - XNOR code 36:16 - okay, order is restored, he's coding xor
@powlsn3 жыл бұрын
that sound @10:16 is the main theme for german tv commercial break 🤓
@makinggreatbread4 жыл бұрын
Excellent refresher! Thank you Master.
@elkeospert91884 жыл бұрын
Having about 35 years of programming experience I haveto say: Well done - Uncle Bob. I really like that he is showing that even such a simple thing like light switches may take a lot of thinking to be solved "perfect". And he is also right in my opinion - if somebody has no fun in programming it will be hard till impossible for him to get a real programmer. But I think he is wrong in his assumption that the number of needed programmers will increase exponentialy in the next decades. One reason why I think that will not happen is that code is getting more and more platform and operation system independend - while in the past the same application has to be implemented for several plattforms this is now often no longer necessary or at least much easier as in the past The other reason is that in our days nearly every algorithm for specific problems is already written and easy to find in the Internet - so often programming is now more and more searching for already existing "parts" which when "only" have to be connected to each other. And even when the improvements in Software development are ridicoulos slow compared to the improvements in the hardware modern development tools are getting better and also programming languages have definetly improved other the years (just compare the first version of Java with the actual one)
@is45544 жыл бұрын
SuperB video. Thank you so much Bob 👍🏻👏🏻🙏🏻
@TranscendentBen4 жыл бұрын
I saw Pascal in the opening screen and ... well, it was a really good language for its time - I remember when the UCSD Pascal came out on the Apple ][. I did a lot with it. Back to watching ...
@marekkucak65814 жыл бұрын
In the high school we learned to code in Pascal. Best of all was TurboPascal env.
@corradocampisano37616 ай бұрын
@39:00 what about counting the Ts? even yields F, odd yields T (parity bit, 1-bit checksum), right? @45:00 beside doing the XOR with an array of switch values, this XOR implementation is fascinating and lot more efficient (works with only one bit) and cannot get into number overflow exception, compared to counting and doing mod2... quite like SAX compared to DOM, for processing XML: the latter could run out of memory, right? @45:17 the truth tables: yeah but... you mentioned it's 16 of them, I'd say it's 16 "basic-functions", but did you show them all? Can't recall... I've been hoping to hear from you about the "implies" function, or the role of the "nand" function, especially in electronics. And by the way, if those "2-inputs-basic-functions" are 16, what about the 4 "1-input-basic-functions"? You showed only the "not" one... @1:00:50 good, but... it's not the best representation, which should be an array of bits... using integer that way, or strings, to "create a human-visible array of bits" it's a waste of money... also: we're past mid of the 101, but when are loop to be shown? to me, now is the right time to show what an array of bits (booleans) actually is, now that the watchers have "seen one", and how to work on arrays with loops @1:18:36 yep, Parmenide's "being and being-not" indeed... and number theory in maths starts with 0 and 1 too, but with + and *, not with the 4-unary and 16-binary functions (not to mention the "doubt function", which starts it all: otherwise is nihilism or faith). You'd definitively enjoy the "Shannon machines", i.e. "how many bits you have and what you do with that"... it's TDD, it's bottom-up, it's fun stuff.
@colinmary5883 Жыл бұрын
Does anyone know where the next episode (which Bob regularly refers to) of 'Programming 101 with "Uncle Bob" ' can be found? I'm hooked!
@davidmurphy5634 жыл бұрын
Such a great video, I was rapt from beginning to end. I think Java was a bad choice though. In python there isn't the distraction of obtuse symbols not is not, and is and, or is or. You wouldn't even need a method. Anyway, great stuff. You give a good name to bonkers. :)
@KulaGGin3 жыл бұрын
You wrote the table at 16:00 and then you went and programmed directly opposite logic in the program. In the real life and in your table on the paper when both switches are up or down, the light is off, but in your program when both switches are up or down, the light is on!
@mikeRumex4 жыл бұрын
That unmatched “}”.
@shawnpetros28314 жыл бұрын
it's because he's using arduino IDE and is in the loop method, he has the opening brace off screen so as not to confuse/overcomplicate for the more intro crowd
@orlovskyconsulting3 жыл бұрын
Man i wish my company would be a partner of Clean Coders.
@williambarrett71084 жыл бұрын
I am looking for the rest of this series , but I cannot find anything. I would be willing to buy them if I could find them. I don't have a lot of experience programming but I am interested in learning more about it, and I like the way you approach the subject.
@Cleancoders4 жыл бұрын
Additional videos are found at www.cleancoders.com
@galtbarber26402 жыл бұрын
In his data table he wrote that up&&up or Down&&down was light off. But what he put in the code was the opposite, with the light on. The dual lightswitch still works, but it was not coded as planned.
@JokerDenFMR Жыл бұрын
Yes, it's making me crazy too.
@dazelmann65894 жыл бұрын
Damn, I genuinely lit up when he smirks with his evil thoughts of disintegrating our beliefs
@mohamedkhalilzouitni38033 жыл бұрын
0:26 are you sure that's JavaScript's logo ?
@SlidellRobotics4 жыл бұрын
The house I owned and lived in 1996-2000, the 3-way light switches had separate top and bottom push buttons, and did not display their state (Cinturon by Leviton). The house had four pairs of such switches. Every encounter with one of these switches was a crap shoot. The "You never have to hunt for the state of the switch" was totally screwed/scrapped.
@kaanatakan2 жыл бұрын
I doubt it had anything to do with the brand, they were probably connected incorrectly
@daniel716264 жыл бұрын
Great video!
@davidconnelly4 жыл бұрын
I'm not sure if the incident at 11:28 warranted a laugh of such enormous magnitude.
@RatFace_MonkeyEar_FishEye4 жыл бұрын
It scared me lol I was like damn
@davidconnelly4 жыл бұрын
@@RatFace_MonkeyEar_FishEye Yeah man, me too. If he did that in a same-room scenario then I'd be jumping out of the window and running for the hills.
@sabuein4 жыл бұрын
Thank you, Uncle Bob.
@CarCinCal4 жыл бұрын
That DEC PiDP-8 12-bit Octal Computer Hobby Emulator / Simulator casually blinking yellow LED lights in the background is the ultimate CS Flex though....
@j0nn.n0vtt4 жыл бұрын
I m a big fan of Uncle Bob. When do you come to Brazil?
@juanc.villegas91112 жыл бұрын
This is a GOLD MINE!
@EliCamacho4 жыл бұрын
Bob just created the most sophisticated smart switch ever. #SmartHomes
@kieransloan3 жыл бұрын
The only thing I would add at the end of this is to get the audience to think about if you had more switches you wouldn't want to change the code each time a new switch comes along.
@mazin_0_03 жыл бұрын
the best teacher ever
@FloatingSunfish4 жыл бұрын
Next episode when?
@mazin_0_03 жыл бұрын
the best teacher I ever
@swallowedinthesea114 жыл бұрын
Some people will follow Leonidas to Hades. Some people, like me, will follow Uncle Bob to Hades!
@ethanjensen79674 жыл бұрын
8:47 that's processing!!
@jonl3164 жыл бұрын
Such a great video. Thank you!!
@peristiloperis77892 жыл бұрын
OMG! I never imagined I could get smarter by just watching an old man turning lights on and off lol
@allanmuller34863 жыл бұрын
My theory as to why ! is called "bang" is that on the old teletype consoles (like those used to control early computers), the ! symbol was the shifted value of the "B" key.
@liviuzachin6434 жыл бұрын
Wel done uncle Bob. Thanks
@kupfeli3 жыл бұрын
So I like these simple explanations, but I am personally missing one point for the switches, which for me is important to understand. If the switches do not have effect on each other, then the light always goes ON when switch A is switched to the UP position and the light always goes OFF, when switch A is switched to the DOWN position. For switch B, the opposite is true. So in that example it is crucial to understand that the actual switching (in real life: physically switching the switch) determines a change in state of the light. The reason I am saying this is because this behavior is what someone might expect only seeing the switches without the wiring. For instance in that scenario: if switch A is switched UP, the light would go ON. Now if switch B is in the UP position and we switch it to the DOWN position, the light turns ON, as we disregard the effect of switch A. As the light was already ON though, we don’t notice the change. So, maybe that explanation would be interesting to add too and afterwards show the part with the wiring, where the logic of the switches interact. To show the program for the independent behavior, you would then say: if the state of a switch changes (goes from UP to DOWN or vice-versa) we either turn the light ON or OFF, depending on how the switch works. This way the logic of both switches completely ignore the logic of the other switch, but they both control the light. So, we have two completely separate inputs that control the same output. Me saying this might sound very silly and straightforward if your brain works very well, but I wanted to say it nonetheless.
@codenut96384 жыл бұрын
LEGEND! Thank you sir
@rebeccabretzinger44014 жыл бұрын
On the note card it was captured that both up or both down should make the light OFF, not ON. Then he programmed it the other way.
@MathALCS4 жыл бұрын
I thought I was the only one noticing that... hahaha
@michaelclift68494 жыл бұрын
That's at least 3 of us.
@dasuneranda7 күн бұрын
Best teacher
@hehaheadshot973 жыл бұрын
5:10 I thought Internet Comment Etiquette was playing in another tab
@WDN358134 жыл бұрын
If my CS101 professor teach like uncle Bob, I wouldn't have quit CS.
@Warpgatez4 жыл бұрын
Man, if I had the money I'd pay Uncle Bob to be like a Bill Nye the Science guy but for programming. Young kids could benefit so much from him if he had his own show on Netflix or Hulu or something.
@mistalan3 жыл бұрын
Absolutely. There is so much left to code for zillions of young people in the future
@zizlog_sound4 жыл бұрын
The light code (UP/UP or DOWN/DOWN = ON) is opposite to the real light demo (UP/UP or DOWN/DOWN = OFF) at the beginning of the 101.
@demohub4 жыл бұрын
Great video. Thanks for sharing.
@ironman50344 жыл бұрын
What's that software he uses to write code to simulate lights
@this-abledtheextravertedhe52994 жыл бұрын
Thank you 😊
@travismoore78494 жыл бұрын
What about dividing a problem into modular blocks where you have them move in a loop like a chain. Then the process runs with different sets of data with different inputs to verify that one block of data has moved and changed relative to block data b to make a complete transaction say a change of currency? Where A and B are changed by moving x amount from A to B and verify that said trans action has taken place by a compatitor that makes sure that each has changed by the same amount where A loosed x and B gains X amount and that the change of X is the same but inverse relative to each other.
@nunosantos25894 жыл бұрын
Hello, very nice video, would love to keep seeing them. Just a note, i couldn't find the source code in the site, is it only available if you buy the video? Thanks in advance
@sacredgeometry3 жыл бұрын
Can anyone point me to any living code or even dead code that he has written? I checked his wiki entry and it has no mention of anything other than writing about how others should code and proselytising his own ideas. What has he actually worked on? What has he done? Where is his code? Does he have a repo I can go and poke through?
@FloatingSunfish4 жыл бұрын
I've been programming for several years and have never used xor and xnor. What am I even doing? Lol. 😅
@richardpaulhall3 жыл бұрын
I think I used xor once. (I left a comment for my teammates.) I used a Karnough map once to simplify a 17 clause IF statement.
@superscatboy3 жыл бұрын
I bet your compiled code has more xors in it than you realise - specifically every time you initialise a value to zero.
@Stephen-wh7vl4 жыл бұрын
This is awesome
@rbjassoc64 жыл бұрын
where do we find the "FourSwitchScenario()" class or type ?? I am getting an error
@danmenz95724 жыл бұрын
class FourSwitchScenario implements SwitchScenario { Error message: The nested type FourSwitchScenario cannot hide an enclosing type Using Processing 3.5.4. I'm lost trying to get things working in the code not shown.
@lordofelectrons45134 жыл бұрын
Good intro for the Nube But I am sticking with old fashion mechanical locks and my analog chickens.
@pedroveas47514 жыл бұрын
Fantastic!
@ifrpilota4 жыл бұрын
@ 16:00 Uncle Bob writes his truth table (which is correct), but shortly after he writes a code exactly the oposit. Anyone? Noticed what?
@michaelclift68494 жыл бұрын
The users intent will be relative to the last 'stable' state of the light. (stable meaning the last state which persisted for >500mS). An odd number of flips, intends to reverse the last stable state of the light. An even number of flips, intends to restore the last stable state of the light. I wish such consideration for timing went into web browsers. If I click on something 15mS after a page completely re-arranges itself, it's probably not what I wanted.
@BryonLape4 жыл бұрын
How does he make a truth table and then program the logic backwards?
@krish2nasa4 жыл бұрын
How about the below pseudocode logic? SwitchStateChange( ) Invert(LightState)
@mmschwarz12134 жыл бұрын
Where can you download the Light Switch code? It is not available per the instructions at the end of the video.
@patrickevans97984 жыл бұрын
I couldn't find it either.
@roberttillotson48894 жыл бұрын
This is a free lecture on clean coders and I want to get the extas as described, but they don't seem to show anywhere on the site. Can you dd them here or lt me know how to get into them somewhere else?
@aymanpatel4 жыл бұрын
Check cleancoders.com/ for various courses on TDD, Clean Code etc by Uncle Bob
@Rob81k4 жыл бұрын
both in same position = equals (==) in opposite positions = not equals (!=), which is logically the same as: either one is up (true&false or false&true) = exclusive or (xor)
@ancapftw91134 жыл бұрын
Now I need a "this will be a FALSE!" Gif for when my Lule Skywalker meme gets used too much.
@AdekunleLawal4 жыл бұрын
Just discovering Uncle Bob. 🤦🏽♂️ What has KZbin been recommending to me. Lol 😊
@ionution20094 жыл бұрын
Wonderfull, in the past I saw programmers'oath, very short videos, but now I didn t find anywhere, maybe have been deleted, but I don t know why, was very interesting videos :(
@drewjaqua29054 жыл бұрын
He's like the Mr. Wizard of programming
@samuellourenco10504 жыл бұрын
My self-made function generator doesn't have software in it: it is all dumb hardware. But the software is in the PC that manages it. It was an attempt of mine to escape software, but it didn't work. Anyway, this guy is a genius!
@ruslan-macari4 жыл бұрын
Great!
@RogerBarraud4 жыл бұрын
3:00 Toilet Roll Stash: Check.
@jelmerstavenga37244 жыл бұрын
Uncle Bob, the Louis Black of programming
@Siddiskongen4 жыл бұрын
Lewis Black....
@maddiej62968 ай бұрын
First thing I heard when I first discovered Uncle Bob. I'd pay a lot of money to hear them both present on something at a bar one evening.