I don't get that one. I mean I get the idea but cannot map it to any real scenario no matter how exaggerated. The smart approach of last 15(?) years is not to try to outsmart your compiler but try not to get in it's way [as it usually knows better]. P.S. Also, one can always work with '-O0' only, so...
@@anton7354 Exaclty. Bud sadly many developers in my experience have not seen their compiler as their best friend, but rather, as in the video....their enemy. Hence the physical damage delt.^^
@@mrocholl I stumble across a lot of compiler bugs because I typically like to use new-ish features (for the compiler we're using at least). Works on my machine with a newer compiler, but automated testing will fail, because I can't do template realisations with the namespace in the name instead of putting it in a namespace.
@@anton7354 because C++ devs will do undefined shit because it’s faster (or more often, they think it’s faster) then turn off all the warnings that they’re doing undefined shit, then get mad when the undefined behavior changes.
That's why the joke is somewhat decent; he has enough subject familiarity to reflect truths. For those seeking context, C is one of the first portable systems programming languages, developed specifically to enable porting of Unix between different computers. This earned it the nickname "portable assembler", though C code need not actually be portable; mostly, it's up to the programmer to pay attention and know the rules, because the first compilers really couldn't.
@@slowpoke8670 because as human you’re inevitably gonna miss some, which can be fatal. Many security vulnerabilities are caused by this. Also running tests and checking if everything works is wasting a lot of time, this is one reason why typescript is becoming popular - it catches many errors before needing to run the program. With JavaScript code you need to test software A LOT.
@@pmarreck No, a race condition happens when two things that aren't supposed to happen at once happen at once. You don't really run into this until you get into multi-threading. Imagine you have a function that is checking a list, you assume this list won't change while checking it. But you have a logic bug where your bubble sort starts in another thread and starts sorting the array. This is a race condition, you have two different pieces of code 'racing' for the data. You don't know what will happen because you have no way of knowing for sure what the data will be when you read it. It would be like if you hooked two keyboards up to your computer and had two people try playing a game at once, each would be 'racing' for the same resources. So >Knock Knock >Who's There + Race Condition //This is the race condition In the normal joke structure these two "Who's There + Race Condition" happening at once is 'illegal', both being said at once is a single instance of a race condition. If he followed up with a 'jinks you owe me a coke' by predicting the 'wtf' response correctly then it would be two race conditions, because 'jinks' is a meme based on calling out a race condition when it happens as it violates the rules of conversation.
@@Duu2 all os are written in some form of C and game engines or anything that require low amounts resources / low level or needs to ran efficiently is probably written in a form of C.
@@Duu2 Then you did wrong. Always write your applications such that they can be building block for other applications. If other people didn't do that, you wouldn't be able to build your application either.
A document in a language inferior to ROFF is not really Real Software. Although technically a computer programme, it is still a document. Anyone can write that without having to know anything about algorithmic complexity. JavaScript is a security critical bug. Who ever thought that remote execution of random code as a feature was a good idea?
@@wuxxy I wasn't talking about eval. I was talking about the remote code execution vulnerability that is JavaScript being treated as a feature. No actual smart good developer uses eval. The Sphinx documentation generator does.
I think one unrealistic thing here is that C++ developers never use C and C++ interchangeably :). C devs are a separate niche and they usually heavily dislike the C++ folks
"We don't need a package manager... We write everything ourselves!" This is gold :) ... I was talking the other day about how lost I feel when I see the over 1000 packages in the node_modules folder from our pretty standard React-Native app. In my long gone C days we really felt puzzled about the idea of not writing everything.
It's a good idea to share code, but many NPM packages really take it too far. Just write that 10 line code yourself and save me the extra dependency that is just an extra liability.
Then you should consider Rust. It's low level, as fast as c++ or c, has package manager. And if I'm not mistaken, Rust is safe language, meaning you can't compile error code into production because the compiler will tell you the error before compile the app. You will love it if you're the guy that code lowe level programming. But it's still young tho, has a little job. But still cool
No we do use it. In my new app i use a giant 7 libraries. Of couse for all of them i reverse engineered the build script and added my own to make it work with my build system.
@@justincameron9123 wtf are you talking about? you are not FORCED to install anything. if you don't like a particular library, just implement the functionality you need yourself. if it takes too much time/effort for you to do it properly, then use a library. it's pretty much the same in every language
"We no longer use boost, due to an obscure threading bug in what was supposed to be a thread safe container. Something about the custom optimized mutexs not playing well with our outdated compiler."
Euhmmm I have an Apple keyboard on my Linux machine. I love the low profile keys... I tried a mechanical keyboard again last year, but switched back to the lovely scissor switches. And I even develop in assembly still and adore vi :D
@@blacksmithie precisely that! I love the click though. But they are too high so too much strain on the wrists and fingers and indeed the travel is so large that it’s really not ideal for me. The best keyboard I had was a mechanical keyboard the IBM 5150 I believe model M. But I wonder if I would still dig it.
Longtime C programmer here. My middle school had ancient IBM PS/2s with Model M keyboards. Hated them. I do prefer mechanical keyboards, but I'm not going to be super snobby about it and I don't think the Model M deserves its weird cult status.
0:46 Me, an FPGA developer: Learn a propper HDL you philistine, and if you are planning to use software in your HPS/softcore processor, then for crying out loud just use C.
Honestly even this depiction is going easy on the wizardry where senior devs both type out an idea and watch it compile successfully and run within seconds or minutes from start to finish
You mean the minutes and the coffee break, including the cigarettes, it takes for a clean-build? And the liquid nitrogen I need to pour onto my laptop to not go air plane and fly off the desk? :D
The person who mentored me in IBM mainframe systems did that with both 370 assembler and JCL. I got good enough to do that with JCL, but my assembly skills were weak. I reverted to C and promptly crashed the system - segmentation fault that exercised failing hardware. Fun times.
@@monkemode8128no man, if you *actually* took the time to run the code you'd see it comes out as: "Race condition who?" "Knock knock" "Race condition" "Who's there" Make sure you always test your code once before committing!
I think a real senior C++ developer would jump into templates right away and never get out of them. "Did you know C++ templates were turing complete? Is the Javascript linter turing complete? Well, nobody knows that."
The C++ auto specifier means that any idiot can now use templates without having to think much about what they're doing. It's both terrifying and awesome at the same time.
I hope VBA won't be left out. I want to be roasted too! -It's not my job to write performant code, it's the company's job to buy faster computers. -You can do anything in Excel, why would you use anything else? -Who says VBA is obsolete? Microsoft? How would they know? They haven't touched it for a decade. -Yes, I count the macro recorder as programming experience. -People have always said VBA is dead. So far they have always been wrong. -What do you mean by cross platform? Every office has Excel. I can produce code with the press of a button in minutes. Can you do that with your fancy memory management? I didn't think so. -Of course you can do web scraping in Excel, you just need to try harder. -You can usually ignore what the run time errors say as they just give random messages. -That run time error is actually part of the correct functioning of the program. Just tell the user to ignore it. -We don't touch that macro. The intern who wrote it, left 10 years ago and critical systems depend on it. -What do you mean Excel is not a database? -VBA has the API support to connect to all known databases. Just use simulated mouse clicks to copy data across.
Good stuff! Former MS Access junkie guilty of doing absolutely shameful things w/ VBA, interop, and things we won't ever speak of again. I'm convinced if I had stuck with that paradigm I would have been just fine from a career standpoint, but still glad I found .NET and C# in the early days (~2002). :)
Great skit as always; I know it's good because it hurts! I'd love to see you do a pt. 2 tackling reflection and the dev ~experience~ with the compiler and stylistic differences between C and C++.
The main things to focus on is memory management, and wrangling its awful standard library. But being low featured, it forces you to plan more carefully.
@@halfbakedproductions7887 Actually it was 'back when we counted bandwidth in bits per second. Not kilobits, just bits. We're efficient with memory as we started with 8k for the whole program that executed on a 8080. Saving memory and putting in ASM blocks to save a few cycles then makes sense.
That's why it says senior C++ developer. I was around when C++ and Java were introduced, and they're very different languages from the ones sharing their name back then. Too bad C++ still insists on making every new feature be harder to actually write or read. I'd say C++ was in need of a Kotlin style redesign, but history has shown that people don't want cleaner languages like D very much.
As someone who has programmed in C++ since 1993, I feel confident in saying it is a horrible language. The only thing worse than C++ is all the other languages.
The "++" stands for the programming that gets done AFTER you write it in C. ++C is Java, which is the prototype that you throw away before you write the real one in C.
This is so funny. I wrote my first "C" program in 1985 to take a schematic capture output from a Sun Microsystems workstation and map the connections onto a specified wirewrap board. I learned the basics of C++ and thought, "I'll just write reusable structs." A high school tour group I led through the top secret facility saw the first digitized photo in the world publicly. When the kids saw a picture of their school entrance, they were shocked. We let them notice, we didn't tell them. The picture was displayed on 10, 19-inch monitors. In 1985 our 2gig hard drives were the size of a mini refrigerator and were powered by 220 volts.
@@asandax6 I am meant for today's technology. Since the dot bomb, I added clinical psychology and cognitive neuroscience to the mix. I want to create self-aware AI. Coding has changed. I am getting used to Python and Golang. How about a distributed functional model of the brain using a BFT consensus engine with AI managing the rules of governance? One company is working on doing proof-of-stake with indeterminate state machines. Now that's cool. BTW, back in 1985, we had one of these drives short to the 5V line on my friends controller board, 8 mos into development. Flames shooting three feet out the back of his board. We all thought it was funny. Funny that 6 mos later, he went back to picking cherries in Oregon on his parents farm.
@@PresentFocus Thank you for this! My grandfather introduced me to his Magnavox Odyssey, and I was hooked. I programmed a Snake-like games for my Mattel Aquarius in BASIC because they hadn't released a Tron Lightcycles game. For years - decades even - I let my tech development languish. Last year, I came back with a vengeance. I learned Python and SQL. I'm now at the national AI Academy at NC State. Like you, I see self-aware AI as a good thing - or at least as an inevitable thing which we need to try to steer towards what is good. I similarly have some background in clinical mental health, currently working in an outpatient community mental health clinic. I'm called to this work as sure as our blessed Lady was called to hers (not that I claim equality with her sinless nature, of course). Earlier this week, I got invited to the Google Foobar Challenge. Wish me luck! And if you have any interest in connecting, you can email me at "my first name dot my last name at g mail" with the first and last name you see me use here.
@@MarcillaSmith Probably noone will ever write self-aware AI. I can't even fathom what "awareness" is. But our awareness was not coded. It evolved. From what? Arguably nothing. With the help of certain environmental conditions maybe, by luck. So maybe software needs to evolve to become aware. But from which initial conditions? Maybe just small pieces of code like read, write, calculate, delete? But does this even make sense? One thing interesting is as far as we know all things with awareness are alive. They live! Do sotwares live? And life evolved from non-life. That is also deep. Maybe software needs to evolve to be alive and then evolve to be aware. How do you make software alive? Do you throw batteries and cable pieces and lead-contacts etc on a piece of paper on which is written.... code? How does it even happen?
@@ltva8781 If the only true low level language is binary shoved between registers and written in VIM, I'll gladly accept the position of mid-level. But I would question if people know how far the scripting languages go at that point.
@@TheDSasterX You can have literally 10 levels of abstraction with modern high-level languages. C never goes beyond 2 or 3 IMO. The first level is variables, branches and cycles, the second is functions and structs. The third may be function prototypes and some attributes.
"All platforms are built in it. How can it not be cross-platform?" I started writing a program to do some data processing on an older PC at work. I used C++ because the computer was old enough to not have .NET Framework 2.0, which is the lowest version my IDE could target. It turns out that even though I wrote the program in C++, I still could not run my compiled executable on that computer because I did not have a Windows XP Toolchain for the compiler. Even though it was a simple console application to just open files and push numbers around, it failed to run on an equivalent 32-bit x86 Windows NTFS computer. I can probably do it with JavaScript, though.
@@overloader7900 You mean like .NET native compilation? I actually would still like to be able to get a program running on this machine. I generally do not have access to addon VS components or NuGet.
Can you make one for Rust devs? "Rust is the best language and it's a human rights violation to force someone use other language" "Borrow Checking, son" "Jobs? What is that?" "Stable ABI is literally bad" "Would you like to talk about -Jesus- rewriting your program in rust" "Learning curve? More like learning cliff"
I once worked with a COBOL dialect that had pointers and dynamic memory allocation. It was on the Wang VS minicomputer. And the comment about 'we write applications that allow other people to write applications'... I'm guilty of saying that, back at the same time I was working with that funky COBOL - writing a preprocessor to allow code reuse and pseudo local variables and a forms designer, in C! Using vi. God, I love IDEs.
"We need to see the compiler as the enemy" this dealt me physical damage
I don't get that one. I mean I get the idea but cannot map it to any real scenario no matter how exaggerated. The smart approach of last 15(?) years is not to try to outsmart your compiler but try not to get in it's way [as it usually knows better].
P.S. Also, one can always work with '-O0' only, so...
@@anton7354 Exaclty. Bud sadly many developers in my experience have not seen their compiler as their best friend, but rather, as in the video....their enemy. Hence the physical damage delt.^^
@@anton7354 The only enemy is MSVC
@@mrocholl I stumble across a lot of compiler bugs because I typically like to use new-ish features (for the compiler we're using at least). Works on my machine with a newer compiler, but automated testing will fail, because I can't do template realisations with the namespace in the name instead of putting it in a namespace.
@@anton7354 because C++ devs will do undefined shit because it’s faster (or more often, they think it’s faster) then turn off all the warnings that they’re doing undefined shit, then get mad when the undefined behavior changes.
I liked this video just for "We don't need a package manager. We write everything ourselves."
"...we do use boost though"
A script that clones a github page... can that be considered a package manager?
This is Russian IT reality for next decades I think. Help me plz
something a JS dev would say - source I'm a js dev
sad conan noises
"All platforms are built in it. How can it not be cross platform" absolutely decimated me
Well, it's true.
That's why the joke is somewhat decent; he has enough subject familiarity to reflect truths. For those seeking context, C is one of the first portable systems programming languages, developed specifically to enable porting of Unix between different computers. This earned it the nickname "portable assembler", though C code need not actually be portable; mostly, it's up to the programmer to pay attention and know the rules, because the first compilers really couldn't.
"The run time error detection is the programmer's responsibility" lmao
why it is a joke? i don't get it, i'm new at programming so can u explain pls??(srry for my english, i accept positive feedback) :)
@@slowpoke8670 because as human you’re inevitably gonna miss some, which can be fatal. Many security vulnerabilities are caused by this.
Also running tests and checking if everything works is wasting a lot of time, this is one reason why typescript is becoming popular - it catches many errors before needing to run the program. With JavaScript code you need to test software A LOT.
@@sohn7767 What this tells me is that you're not a good programmer ;-)
@@RobinLeGaming hey hey my software has NO ERRORS
**segfaults**
@@sohn7767 I'm sorry, but I got my opinions on people saying testing is a waste of time.
0:59 “Knock knock race conditions. Did you get it, the reference, do you need pointers?” 2 A tier jokes in 5 seconds. I applaud you.
Well if it's pointers it's more of a C tier joke. shared_ref that's a proper C++ tier joke.
3 tiers - race condition, reference and pointer, and pointer's 2nd meaning of 'a tip' being a double entendre. Very well written.
efficiency is the point
isn't it "who's there? knock knock, race conditions"
@@pmarreck No, a race condition happens when two things that aren't supposed to happen at once happen at once. You don't really run into this until you get into multi-threading.
Imagine you have a function that is checking a list, you assume this list won't change while checking it. But you have a logic bug where your bubble sort starts in another thread and starts sorting the array. This is a race condition, you have two different pieces of code 'racing' for the data. You don't know what will happen because you have no way of knowing for sure what the data will be when you read it.
It would be like if you hooked two keyboards up to your computer and had two people try playing a game at once, each would be 'racing' for the same resources.
So
>Knock Knock
>Who's There + Race Condition //This is the race condition
In the normal joke structure these two "Who's There + Race Condition" happening at once is 'illegal', both being said at once is a single instance of a race condition. If he followed up with a 'jinks you owe me a coke' by predicting the 'wtf' response correctly then it would be two race conditions, because 'jinks' is a meme based on calling out a race condition when it happens as it violates the rules of conversation.
‘People build applications. We build applications, that let people build applications.’ Well said! 🤣
Yeah its totally true
Interviewer disagrees! :D
@@Duu2 all os are written in some form of C and game engines or anything that require low amounts resources / low level or needs to ran efficiently is probably written in a form of C.
@@Duu2 Then you did wrong. Always write your applications such that they can be building block for other applications.
If other people didn't do that, you wouldn't be able to build your application either.
no
"... Websites???!? ..thought we were talking about Real Software." 😂
A document in a language inferior to ROFF is not really Real Software. Although technically a computer programme, it is still a document. Anyone can write that without having to know anything about algorithmic complexity.
JavaScript is a security critical bug. Who ever thought that remote execution of random code as a feature was a good idea?
Ok chef
He's not wrong
@@davidwuhrer6704 You do know we don't use eval() right.. there is literally no actual smart good developer that uses eval
@@wuxxy I wasn't talking about eval. I was talking about the remote code execution vulnerability that is JavaScript being treated as a feature.
No actual smart good developer uses eval. The Sphinx documentation generator does.
"We need to see the compiler... as an enemy."
brilliant
No. It's the kernel that's the enemy.
@@RillianGrant Both the kernel and the compiler are enemies :D
I think one unrealistic thing here is that C++ developers never use C and C++ interchangeably :). C devs are a separate niche and they usually heavily dislike the C++ folks
C++ is a “convenience language” 🤣
@@dickheadrecs i know some people who would rather call it an inconvenience language
including me
I don't hate you guys, just classes and your standard library. ^^
c++ is bloated
@@node0382 if you are using the entire standard library (which you won't regardless of whatever application you are making), yes
"Knock knock.. race condition! Did you get it? The reference? Do you need pointers?" Brilliant X-D
the delivery of that joke was so on point
I don't get it
@@developerninja619 Race conditions go hand in hand with references and pointers. Use the google.
“I remember writing kernels and drivers when I started in C. What were you doing, painting GUI’s?” 🤣🤣🤣
"I learned C in a day"
@@ezradlionel711 And that was all the time I could retain it in my memory.... Then segfault!!!
as a senior C++ dev i was specting at least 10 blue screens per frame.
Perhaps you should stop using Windows.
@@elan4157 no
Are you using turbo c
Linux is better
"We don't need a package manager... We write everything ourselves!" This is gold :) ... I was talking the other day about how lost I feel when I see the over 1000 packages in the node_modules folder from our pretty standard React-Native app. In my long gone C days we really felt puzzled about the idea of not writing everything.
It's a good idea to share code, but many NPM packages really take it too far. Just write that 10 line code yourself and save me the extra dependency that is just an extra liability.
Then you should consider Rust. It's low level, as fast as c++ or c, has package manager. And if I'm not mistaken, Rust is safe language, meaning you can't compile error code into production because the compiler will tell you the error before compile the app. You will love it if you're the guy that code lowe level programming. But it's still young tho, has a little job. But still cool
I'm enjoying rust but the rust community insists you install a dumbass library for every little thing, I prefer to keep my dependencies to a minimum
No we do use it. In my new app i use a giant 7 libraries. Of couse for all of them i reverse engineered the build script and added my own to make it work with my build system.
@@justincameron9123 wtf are you talking about? you are not FORCED to install anything. if you don't like a particular library, just implement the functionality you need yourself. if it takes too much time/effort for you to do it properly, then use a library. it's pretty much the same in every language
"Knock Knock"
"race condition!"
"Who's there?"
genuinely cannot stop laughing
😂😂😂😂😂
Is it race or raise?
@@nikilthalapaneni4264 Race condition
@Eitan Tal or may be you didn't get the joke
@@ankursharma5043 well, then I didn't get it either
"We build applications that let people build applications" 😂 damn
Living for a purpose, personified
Loved the “no” from the camera man
Sums it up
Sounds like an IDE
That is very true. Like I use the Unity game Engine and the back end is all c++.
"We no longer use boost, due to an obscure threading bug in what was supposed to be a thread safe container. Something about the custom optimized mutexs not playing well with our outdated compiler."
ashamed that I googled if "10 elegant ways to implement a segfault" was a real book
Was it?
Fine... I will do it myself
Of course, not 😂
I so wished this was a good book
I googled this too lol. Just learn gdb instead. I feel like this should at least be a Medium article though, it deserves to be written.
A C or C++ programmer would NEVER have an Apple keyboard - mechanical keyboard at least, preferably an IBM Model M
Euhmmm I have an Apple keyboard on my Linux machine. I love the low profile keys... I tried a mechanical keyboard again last year, but switched back to the lovely scissor switches. And I even develop in assembly still and adore vi :D
@@CallousCoder try a thinkpad keyboard, you won't ever look back
@@blacksmithie precisely that! I love the click though. But they are too high so too much strain on the wrists and fingers and indeed the travel is so large that it’s really not ideal for me.
The best keyboard I had was a mechanical keyboard the IBM 5150 I believe model M. But I wonder if I would still dig it.
I use a $3 keyboard and it does the job pretty well. Only problem is that most of the letters on the keys wore off after a month of use.
Longtime C programmer here. My middle school had ancient IBM PS/2s with Model M keyboards. Hated them. I do prefer mechanical keyboards, but I'm not going to be super snobby about it and I don't think the Model M deserves its weird cult status.
Dude, just discovered your channel today and instantly subscribed.
Keep up the great work and I hope this channels gets millions of subs..!!!!
0:46 Me, an FPGA developer: Learn a propper HDL you philistine, and if you are planning to use software in your HPS/softcore processor, then for crying out loud just use C.
This is pure gold. Possibly the best of the bunch. Can't decide between this and Senior JS dev (EDIT: senior JS dev wins)
Honestly even this depiction is going easy on the wizardry where senior devs both type out an idea and watch it compile successfully and run within seconds or minutes from start to finish
Do you know of any videos like that on RUclips?
coask
You mean the minutes and the coffee break, including the cigarettes, it takes for a clean-build? And the liquid nitrogen I need to pour onto my laptop to not go air plane and fly off the desk? :D
@@varadinagypal What chip are _you_ using? A Dorito?
The person who mentored me in IBM mainframe systems did that with both 370 assembler and JCL. I got good enough to do that with JCL, but my assembly skills were weak. I reverted to C and promptly crashed the system - segmentation fault that exercised failing hardware. Fun times.
"Knock Knock"
"Race condition"
Brilliant.
Although,
"Who's there"
"Knock knock"
Would also work.
So, LGTM, approved.
I actually did a spit take xD
Also, "did you get the reference?", "do you need pointers?" 😆
"Race condition who?"
"Who's there"
"Knock knock"
"Race condition"
@@monkemode8128no man, if you *actually* took the time to run the code you'd see it comes out as:
"Race condition who?"
"Knock knock"
"Race condition"
"Who's there"
Make sure you always test your code once before committing!
I am laughing for half an hour non stop. Great job man \m/
Edit: 6 months later, I am still laughing ....
I think a real senior C++ developer would jump into templates right away and never get out of them. "Did you know C++ templates were turing complete? Is the Javascript linter turing complete? Well, nobody knows that."
Love it!
The C++ auto specifier means that any idiot can now use templates without having to think much about what they're doing. It's both terrifying and awesome at the same time.
I used C++ templates very heavily for a decade before deciding that they are actually an antipattern and should be avoided in almost all situations.
"It is more difficult to create unsafe software in Java? Well then where is the fun?". This
I hope VBA won't be left out. I want to be roasted too!
-It's not my job to write performant code, it's the company's job to buy faster computers.
-You can do anything in Excel, why would you use anything else?
-Who says VBA is obsolete? Microsoft? How would they know? They haven't touched it for a decade.
-Yes, I count the macro recorder as programming experience.
-People have always said VBA is dead. So far they have always been wrong.
-What do you mean by cross platform? Every office has Excel.
I can produce code with the press of a button in minutes. Can you do that with your fancy memory management? I didn't think so.
-Of course you can do web scraping in Excel, you just need to try harder.
-You can usually ignore what the run time errors say as they just give random messages.
-That run time error is actually part of the correct functioning of the program. Just tell the user to ignore it.
-We don't touch that macro. The intern who wrote it, left 10 years ago and critical systems depend on it.
-What do you mean Excel is not a database?
-VBA has the API support to connect to all known databases. Just use simulated mouse clicks to copy data across.
this slays.
Excel just got Python in it
Good stuff! Former MS Access junkie guilty of doing absolutely shameful things w/ VBA, interop, and things we won't ever speak of again.
I'm convinced if I had stuck with that paradigm I would have been just fine from a career standpoint, but still glad I found .NET and C# in the early days (~2002). :)
this is so good
Good job bro, kindly recommend, you should give talk as different roles in it, like programmers, project managers, sales, it guys etc..
No that's mediocre shit - Keep doing these badass tech-geek skits !
Yesss, screw PMs asking for everything in PowerShell or some other “readable” language.
Great skit as always; I know it's good because it hurts! I'd love to see you do a pt. 2 tackling reflection and the dev ~experience~ with the compiler and stylistic differences between C and C++.
If you respect C's simplicity, and work with its flow, it's amazing.
If you don't respect it, you go insane quite quickly.
@Dave B Well.... yeah.... but that's part of its folksy charm!
The main things to focus on is memory management, and wrangling its awful standard library. But being low featured, it forces you to plan more carefully.
@Dave B yes
@@daveb6125 Isn't that what library's are for?
@@daveb6125 depends. You write your own library. And reuse them later
As someone who is interviewing for many video game programmer jobs for the first time, this is how I view all the senior c++ devs
Especially those who are older. Most of them were 1980s bedroom coders and had their first experience of computers before Moses was born.
@@halfbakedproductions7887 Actually it was 'back when we counted bandwidth in bits per second. Not kilobits, just bits. We're efficient with memory as we started with 8k for the whole program that executed on a 8080. Saving memory and putting in ASM blocks to save a few cycles then makes sense.
"Do you need some pointers?" nailed it!. First thing i learnt when i was programming my first C++ program.
Programming in C: Take this hammer and build a space ship.
Programming in C#: Take this space ship and build a hammer.
Nuff said...
What about C++?
@@stevo946 In case of C++ the hammer handle will not try to murder you every time you swing it xD
Hammer Spaceship
But it will be the fanciest spaceship or hammer around. I guarantee it.
Programming in PHP: Here, use this double clawed hammer and build a webshop for selling spaceships
This is my favorite video as C++ programmer. I watch this periodically.
“We do use Boost though” 😂
"C is the real hero, I don't really like C++" lmao
I'm sad you don't have the views you deserve. :(
These skits are so creative and funny!
I recently stumbled across your channel, and all I have to say is that it's gold! brilliant work, keep it up!
„we see the Compiler as enemy“ 😂
This almost feels like my rants being published without my consent.
I love these. I would really like to see a Python/Data Science one.
He did it
@@GT-tj1qg he did it afterwards, and I enjoyed it very much 👍
i got whiplash from the "we do use boost though" lmaooo
“Did you get it, the reference? Do you need pointers” lmao
"It's not an error, it's a segfault" xD
lmao captured the self-important "I'm better than you" attitude pretty well 😂
"We need to see the compiler as the enemy" LOL
what can I say it's a sneaky language
"is your company rich?"
literally perfect.
Loving this... Every second. KEep up the amazing work!
This channel is absolute gold
"All platforms are built in it, how can it(C++) not be cross platform"... Savage!!! 🔥
"Try writing a kernel in javascipt" 😂
One day someone will 😂
Been done. I think it was the legendary Fabrice Bellard who implemented an x86 emulator in JavaScript, then got a Linux kernel to boot in the browser.
Oops. They did it.
“We dont need package manager, we write it ourselves. We do need boost though”
Lmao. Felt that 😂
Okay, from now, you are one of my favorite youtubers. Keep going. :D
Hope Fortran, Cobol, Assembly (my fav. langs) will come soon. :D
"Do you get it? The reference? Do you need a pointer?"
Genius
As someone who once wrote "print "hello world"" in python, i can strongly relate to this
Yeah, that doesn't work anymore in Python 3+ :)
The other day I accidentally wrote 'printf("Hello, world");' in Python
As any -fule- C programmer kno, if you are outputting a literal string that is not a formatting template, you use fputs, not printf.
pymel, baby
@@toastom nah man, you gotta put it in a string stream and format it then output into cout
His videos showed up in my feed today and went through all of them cracking up, absolutely hilarious!
This was a great interview with a C developer! Can't wait for the interview with a C++ developer.
That's why it says senior C++ developer. I was around when C++ and Java were introduced, and they're very different languages from the ones sharing their name back then. Too bad C++ still insists on making every new feature be harder to actually write or read.
I'd say C++ was in need of a Kotlin style redesign, but history has shown that people don't want cleaner languages like D very much.
This might be the best videt on YT. hilarious!
"We do use Boost though", OMG I'm laughing so hard right now
it's incredible how funny something can be even when 90% of it flies right over my head.
It's wordplay. We can tell when wordplay is being used even if we don't understand why what's being said is actually funny.
As someone who has programmed in C++ since 1993, I feel confident in saying it is a horrible language. The only thing worse than C++ is all the other languages.
"we don't need a package manager"
Aaah! Hell!
There's soo much more potential for jokes about C++! Hope you guys can do more videos on it in the future.
I'm on the edge of my seat for the junior Python developer
"Of course i know when im inside a virtual enviroment, inside another virtual enviroment, running inside a docker container"
Please do Python next.
I just "binged" all your sketches. Great work.
why would you bing anything when there is duckduckgo
“What were you doing? Painting GUIs?”
LMAO
fav book " 10 elegant ways to create a seg. fault"
Im on the floor lol
My favorite part in these videos is when the cameraman says "no" lol
Actually writing stuff in java isn’t greatly safer looking at log4j..
Waiting patiently for your next vid.
Think I've watched all your vids like 10 times each by now lol
This channel is gold, keep it up!
"web sites?!?! we are talking about real softwares" LMFAO
The "++" stands for the programming that gets done AFTER you write it in C. ++C is Java, which is the prototype that you throw away before you write the real one in C.
I laughed so hard at the knock knock joke, "did you get it? the reference? do you need pointers?" lmfao
This is so funny. I wrote my first "C" program in 1985 to take a schematic capture output from a Sun Microsystems workstation and map the connections onto a specified wirewrap board. I learned the basics of C++ and thought, "I'll just write reusable structs." A high school tour group I led through the top secret facility saw the first digitized photo in the world publicly. When the kids saw a picture of their school entrance, they were shocked. We let them notice, we didn't tell them. The picture was displayed on 10, 19-inch monitors. In 1985 our 2gig hard drives were the size of a mini refrigerator and were powered by 220 volts.
For Gen Zs Hard drives are those disks you plug on sata connections and go "vrrrr".
@@asandax6 I am meant for today's technology. Since the dot bomb, I added clinical psychology and cognitive neuroscience to the mix. I want to create self-aware AI. Coding has changed. I am getting used to Python and Golang. How about a distributed functional model of the brain using a BFT consensus engine with AI managing the rules of governance? One company is working on doing proof-of-stake with indeterminate state machines. Now that's cool. BTW, back in 1985, we had one of these drives short to the 5V line on my friends controller board, 8 mos into development. Flames shooting three feet out the back of his board. We all thought it was funny. Funny that 6 mos later, he went back to picking cherries in Oregon on his parents farm.
@@PresentFocus Thank you for this! My grandfather introduced me to his Magnavox Odyssey, and I was hooked. I programmed a Snake-like games for my Mattel Aquarius in BASIC because they hadn't released a Tron Lightcycles game. For years - decades even - I let my tech development languish.
Last year, I came back with a vengeance. I learned Python and SQL. I'm now at the national AI Academy at NC State. Like you, I see self-aware AI as a good thing - or at least as an inevitable thing which we need to try to steer towards what is good. I similarly have some background in clinical mental health, currently working in an outpatient community mental health clinic. I'm called to this work as sure as our blessed Lady was called to hers (not that I claim equality with her sinless nature, of course).
Earlier this week, I got invited to the Google Foobar Challenge. Wish me luck! And if you have any interest in connecting, you can email me at "my first name dot my last name at g mail" with the first and last name you see me use here.
@@MarcillaSmith I will send you my LinkedIn profile in email. I think it will be a satisfying connection for both of us. Time to make history, maybe 🤔
@@MarcillaSmith Probably noone will ever write self-aware AI. I can't even fathom what "awareness" is. But our awareness was not coded. It evolved. From what? Arguably nothing. With the help of certain environmental conditions maybe, by luck. So maybe software needs to evolve to become aware. But from which initial conditions? Maybe just small pieces of code like read, write, calculate, delete? But does this even make sense?
One thing interesting is as far as we know all things with awareness are alive. They live! Do sotwares live? And life evolved from non-life. That is also deep. Maybe software needs to evolve to be alive and then evolve to be aware. How do you make software alive? Do you throw batteries and cable pieces and lead-contacts etc on a piece of paper on which is written.... code? How does it even happen?
wow it really is amazing to see Señior C++ in the flesh like this
I love these videos so much! Cant wait for the next one
"Did you get it? The reference? You need a pointer?"
It’s always weird seeing my textbooks for embedded systems call C and C++ high level languages
They are medium level, I think. At least C. Near assembler speed but sort of readable code
@@ltva8781 If the only true low level language is binary shoved between registers and written in VIM, I'll gladly accept the position of mid-level. But I would question if people know how far the scripting languages go at that point.
@@TheDSasterX You can have literally 10 levels of abstraction with modern high-level languages. C never goes beyond 2 or 3 IMO. The first level is variables, branches and cycles, the second is functions and structs. The third may be function prototypes and some attributes.
That knock knock joke is just so clever, wow
Subbed! This shit is too funny 🤣🤣 Keep em coming my guy!
“People build applications…we build applications that let people build applicstions.”😂😂
"All platforms are built in it. How can it not be cross-platform?"
I started writing a program to do some data processing on an older PC at work. I used C++ because the computer was old enough to not have .NET Framework 2.0, which is the lowest version my IDE could target. It turns out that even though I wrote the program in C++, I still could not run my compiled executable on that computer because I did not have a Windows XP Toolchain for the compiler. Even though it was a simple console application to just open files and push numbers around, it failed to run on an equivalent 32-bit x86 Windows NTFS computer. I can probably do it with JavaScript, though.
You can do it if you use a compiler that targets machines instead of .NET
@@overloader7900 You mean like .NET native compilation? I actually would still like to be able to get a program running on this machine. I generally do not have access to addon VS components or NuGet.
Try an older MSVC compiler version or MinGW, maybe one of those will be able to compile for Windows XP
@@richardrisner921 no, just compile it to a native executable on your machine using a c++ compiler like gcc or clang
@@richardrisner921 you talkin C# or C++?! These are hugely diffirent things
bro why is this so short compared to the others:( its so funny please do it again!
Your videos are amazing, funny and so accurate.
Next do Python!!
I have no idea what hes talking about but I find it hilarious. Keep it up!
What software is not written in C
"All platforms are built in it, how can it not be cross-platform?!" 😂😂😂
"is your company rich ? " xD
I keep quoting "we need to see the compiler as enemy" because it keeps happening.
Welp, lets be real. There is a real peace and holy feeling on writing software in C++ which you cant get from any other language
no, i'm filled with dread and misery every time i have to code something in that
When you truly understand C++ its absolutely amazing. And you feel like an actual programmer
God's programming language for a reason 💪
i think you guys are talking about C
@@urjasvi You're thinking of HolyC, not C++
Having migrated from C++ to C# i so miss pointers and structs! İ tried to inherit from int the other day and cried a little
@pntg0n!kyuu In name only. Where's my inheritance support or default ctor overloads in C# structs?
Can you make one for Rust devs?
"Rust is the best language and it's a human rights violation to force someone use other language"
"Borrow Checking, son"
"Jobs? What is that?"
"Stable ABI is literally bad"
"Would you like to talk about -Jesus- rewriting your program in rust"
"Learning curve? More like learning cliff"
learning cliff got me
I once worked with a COBOL dialect that had pointers and dynamic memory allocation. It was on the Wang VS minicomputer. And the comment about 'we write applications that allow other people to write applications'... I'm guilty of saying that, back at the same time I was working with that funky COBOL - writing a preprocessor to allow code reuse and pseudo local variables and a forms designer, in C! Using vi. God, I love IDEs.
"We don't need package manager, we write everything ourselves." < Fact
apt-get install everything ourselves
@@davidwuhrer6704 😂
"we write everything ourselves"😂😂😂
RAII, STL and templates my friend. Everything else we just need to trudge through!
why is it that every single programmer manages to type "dsfd" for a console log error handling
Dude that race condition joke got me. I was not expecting that. It was perfect. 10+ years C++ here
"We don't need a package manager, we do everything ourselves"
Should have been followed by:
"Oh you want compression? I'll get back to you in 5 years"