Wisdom From Linus | Prime Reacts

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
lonus has some some wisdom he would like to share with you okay it started off with this beautiful thing you copied that function without any understanding why it does what it does as a result your code is garbage again lonus isn't that just lovely but let's actually look at the real thing okay so this is actually from an excert so this was uh this was just a few days ago remember how everybody's like lonus he's changed he went to anger management it's so great anyways Stephen stop making things more complicated than they need to be this is actually something that at this point I have a meeting 3 days a week it feels like where one of the phrases is why are things so complicated making things more complicated than they need to be is is is like an apparent pastime of web development now I have this bone to kind of pick in general like here's like something that I really hate you develop a service that helps manage and launch your Docker containers right let's just say you have that doesn't matter what the thing's called and then what do you do then you build something that wraps your Dockers so that way you don't even want people having to think really it's about Docker we're just going to we have this nice little tool that helps you do everything well what happens when you do that now you have a tool that has virtually no documentation is only known internally that effectively just is a onetoone mapping with Docker that now instead of having people just learn the thing itself they have to learn the tool that does the thing like I hate that approach I'm just I'm just kind of making up you know a thing right but you see this all the time where people rap an already well-known tool with their own tool because it it helps shortcut some basic common use cases and that causes such problems just make people learn the tool right I mean there's some added value right the the the happy case is super quick right the happy case that's why they do it is right is because everyone keep keeps building the same thing over and over again and I'm gonna I'm gonna make a real I'm going to make a real strong statement here it is okay to rebuild the same thing over and over and over again it's okay story of my life my team made a rapper over Docker compos they call it Docker composer and it probably is shitty honestly because now you have to learn Docker composer and its available options as opposed to something that's more documented called Docker compose which is already a rapper around a well-known thing called Docker now you got to learn three things and one of them depends on Carl putting the gosh dang documentation up and not too read me do Carl dude I hate it anyways and damn it stop coping vssf layer functions it was a bad idea last time it's a horribly bad idea this time too I'm not taking this kind of crap the whole get next Eno uh should be Atomic 64 ad return end of story you aren't special if the vs if the VFS functions don't work for you you don't use them but damn it you also don't then steal them without understanding what they do and why they were necessary the reason get next Eno is critical is because it's used by things like pipes and sockets Etc that get created at high rates the the the iode numbers most definitely do not get cashed you copied that function without understanding why it does what it does and as a result your code is garbage again now the thing is is you don't have to know what V VFS is you don't have to know what getting the next Eno is um you you I mean you should know what an atomic 64 is but uh let's just say you know what none of these things are okay sounds like a personal Grudge it doesn't sound like a personal Grudge it sounds like somebody that is maintaining open source in which people are constantly adding things and when you're adding things to the Linux konel you have to be judicious AF right like as judicious as possible you cannot let like everything has to be completely and utterly like required to be so dang good and this conversation has been had once before this right here now here's the hard part I have with this statement and here's the good part so let's try to take something away from this that I think is really uh valuable which is how often this reminds me of a boot dodev article boot dodev by the way boot. Prime as hashad boot um where it's about not trying to fix the direct problem but trying to understand why the problem exists and how to fix what's causing the problem this is effectively a derivative of the XY problem right you have problem X and you're trying to go about solving problem X by going down Route y y invokes some sort of problem so you go and try to get y fixed and when why is too hard to fix or people are confused why you're trying to do why it's because what you're really trying to do as X you've just told them about y does that make sense and so then it's very very confusing it's called the XY problem yeah I have a video where I read an article about it it's really really good it's actually it's it's one of my favorite ways I try to think about honestly the XY problem every person should take time and read the XY problem or go watch my video on it uh all right here we go I'll just read a little bit of this the XY problem or XY problem often comes up in software development or customer support where someone asked to help uh to achieve solution X that they have chosen a way to solve a different problem why helping their solution may not help them solve the actual problem if it's not a good approach in the first place so in other words you're constantly confusing everybody around what you're trying to do because you're so focused on why that you're not actually solving the real problem anyways let's keep on going honestly kill this thing with fire it was a bad idea I put my foot down and you are not doing unique ra uh regular file iode numbers until somebody points out points to a real problem fair this is good this is good this is okay I like where this is going I like where this is going actually because uh this whole I make up problems and then I write overly complicated crap code to solve them has to stop no more it stops here dude this is a lesson in which I feel like all of web dev right now desperately needs to hear you don't have to solve every Problem by creating a new abstraction right not every problem is worth solving it's okay to sometimes repeat yourself I feel like dry and uh javascripts unique ability to abstract has made people gone crazy I think I think there's I think see see this is what I think that has happened here let's get a new let's get a new picture here this is what I think that that where things have gone wrong all right there's there's three parts to the problem that we're seeing with like modern web development one is lack of experience and this is because I mean this is because the web is the easiest easiest to enter right it just is it's just extremely easy to enter two dry don't repeat yourself this Mantra has plagued development so dang much right everyone is constantly trying never to repeat themselves ever and it's causing people to write rappers around everything because anytime something is repeated between teams it's like we got to solve this there's a tool that exists here we could solve this by making a better tool and then then it just explodes and then number three JavaScript now you're probably thinking okay this is another anti- JavaScript rant it's not an anti- JavaScript rant I actually really think JavaScript is an incredible language JavaScript allows you to abstract add infinitum and that is the danger of JavaScript is that what it's meant for versus what it is used for are two different things and when you combine all of this together this third one actually becomes a danger because of how easy it is to abstract in JavaScript it is an amazing language the fact that you can abstract anything at any point in any kind of way you foresee is incredible it's honestly it's it's incredible but I think what these things these three things together have just done so much damage to web development because people can just constantly they can see a problem and they can just drive the problem into some version of abstraction and when someone doesn't like one aspect of that they can drive a new solution and when someone doesn't like that one aspect they can drive another solution and when someone doesn't like that aspect they can drive another solution yeah there's a competing standards thing it's dry just boiler plate TF yeah I know uh how will this affect the Sprint burndown good point those are good points uh but this is honestly this is a great I love the I actually I I absolutely love this uh I think that this is something that um everybody here should take like deep even me I I need to hear this regularly which is find a real problem before you solve something stop finding problems that could exist stop designing a system that will work for everybody at all times I don't want to see a single single event FS patch that doesn't have a real bug report associated with it and the next time I see you coping VFS functions or any other core functions without understanding what the they do and why they do it I'm going to put you in my spam filter for a week I'm done I'm really really tired of having to look at event FS garbage love Linus based line of take honestly this is a great line of take this is so good this is so good because the reason why I love this is that it it's just it goes back to this problem that I feel like has just been indicative of of development for the last about 10 years which is stop solving problems that don't exist like I think we should all wake up a little bit have a nice little a framed picture of lonus and look at it and go I will stop doing this and just start solving things instead of solving problems that don't exist a little smell the konel and wake the freak up it's a pretty good one uh wait there's a response to it oh one of Steven's answers got me rolling on the floor laughing what did poor Steven do poor Steven and now some of this was needed due to the way the dur was wrapped let's see hold on oh this is just like yeah we'd have to like understand more more um what's it called we'd have to like read through this to understand this every time I click this and the tree changes it it it's it's hard for me to understand where I just was I'm not we're not I hey you know what I ain't going to read all that I'm sorry or congratulations bro woke up and it's $1 1999 yeah you know they still I mean again they still use that type of method for communication and yet somehow it's the most successful project ever ran ever just because something isn't new and shiny doesn't mean it's not like the most successful thing ever you know like real talk it's there to keep the noobs out it's there to keep the shiny the shiny object syndrome people out like oh I can't be using this to look at I couldn't look at this and then what happens they all leave fixing that isn't broken is West Coast Tech Venture Capital the name is fixing that ain't broke in a gen
Info
Channel: ThePrimeTime
Views: 423,572
Rating: undefined out of 5
Keywords: programming, software engineer, software engineering, developer, web design, web development, programmer humor
Id: EvzB_Q1gSds
Channel Id: undefined
Length: 12min 17sec (737 seconds)
Published: Fri Feb 02 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.