Watch Linux kernel developer write a USB driver from scratch in just 3h for Apple Xserve front-panel
ฝัง
- เผยแพร่เมื่อ 23 พ.ย. 2024
- Watch #Linux #kernel developer write a new #USB driver #code from scratch in just 3h by copy'n pasting and thus stealing it from other best matching drivers for #Apple #Xserve front-panel meter. #Ad: GPU offers & more @Amazon: services.exact... You can support my work at: / renerebe github.com/spo...
exactcode.com t2sde.org rene.rebe.de
I finished the 2nd, 1 work-queue instead of N: svn.exactcode.de/t2/trunk/package/kernel/linux/xserve-frontpanel.patch
F3
Shouline have fun lk 21 ynd
Tongkat sun yd
This looks really amazing...I just started coding, learning javascript atm and noticed you are using simple notepad for coding, so could I ask you for advice - should I use notepad or stick to some popular code editor like VSC? Thanks.
@@dafythereal This is something highly personal and i suggest that you try out VS Code, Jetbrains, and Neovim and compare them. Usually it depends on your needs and what you want from your editor what you end up choosing. Traditional IDEs try to minimize the amount of effort to get stuff working and are not afraid of consuming multiple gigabytes of RAM and lots of cpu to achieve it. Neovim and Emacs are what could be called PDEs (Personal Development Environments) that are a lot harder to master but give you much more control and many times less resource usage. If you are the kind of person who likes to tinker with editors and likes maximum control and speed you should probably go for a PDE. If you don't like that stuff you are better off just using Vscode or Jetbrains with a vim plugin so you can get mostly keyboard driven workflow with a lot less hassle. In case you want to try neovim you kan look up the kickstart.nvim guides, there are a lot of them.
- No syntax highlighting
- vi with only basic motions
- single terminal fullscreen
- comic sans font
I trust this man with my life
Yeah, this guy the equivalent an NBA athlete while the rest of us barely making the D-league if not college ball, lol
Yeah, its really easy once you have full knowledge of both the Kernel and how to communicate with USBs.
@@gmodrules123456789 Yes, building a space rocket is really easy once you know how to do it.
@@gmodrules123456789 😂😂😂
very very humbling
This guy is not getting replaced by AI
The day they get replaced by AI is the day Skynet is born
He is getting replaced very fast
@@xamael1989bullshit
5 more years
@@xamael1989 na ah, he is the AI engineer as well.
Whenever my ego inflates as a programmer I watch a video like this.
there's always a bigger nerd
@@Patrick-ko5wrHe is not a nerd brother
@@xlr8inch52Of course he is, but obviously that doesn't mean it's something wrong/bad.
@@Patrick-ko5wri like that saying instead of "fish"
@@xlr8inch52 all of the programmers are nerds mostly the ones that look like him, but it's not bad without these people lots of shit wouldn't work
My wife once said "you are just randomly typing, arent you" when she saw me writing javascript. I feel the same thing for this man.
😂😂😂
cool story bro
hahahahahaaaa
gold rule of programming world => there will be always a super smart dude that makes awesome things that will make your projects look like HighSchool projects.
@@pedroduran8927 im amazed he still looks at keyboard sometimes after writing so much code in his life
I have 0 coding experience and is just enjoying the fact that programmers across the globe agree that he is a coding chad
im horny af
I wish I could repost a comment😂
Still no syntax highlighting, still no code suggestions, still vi, still a legend.
And comic sans as the font... I want to scream. But I appreciate the flex.
Comic Code ! I'm a professional.
A Comic Sans inspired font? I couldn't expect less from a Superhero.
@@matteo.veraldi bringing a comical smile back into your life fixing other coders bugs and security vulnerabilities all day long ;-)
Wow👍🏻, that coffee, thats the real one coffee for real programmer, definitely not for me, my coffee is coffee-waste cos im copy-paste programmer😅...
He looks exactly how I imagined a Linux developer to look like
he even looks like linus torvalds cousin or something
I feel like this is THE Linux developer. The rest are simply xcopies.
Same
Lol
Yea ...2 eyes, 1 nose and 2 ears
Bro was born and said: "Hello world!"
Something like that, I guess ;-)
this killed me that's so funny lol
No, look at his enthusiasm. If you always work like that for a good amount of time. You will get to some level
😂😂😂
😂😂😂
I'm deeply impressed. Not only by your technical skills but also your ability to endlessly keep on sipping of a minitature espresso
Infinite espresso glitch, bro programmed that shit first day, 16 lines in an out free coffee for all
@@sanctasanctorum- 😂😂
1:42 The moment bro said it's gonna be super simple I knew it was in fact not going to be super simple for the rest of the video
Mumbo type shi
cuz you're a dummy bro
Ahahhahaha made me crack up
@@WatercraftGames Nah Mumbo is more of a fk around with python typa guy. This guy is more like those barely known redstone TH-camrs, hell not even TH-camrs, who literally build actual computers inside the game.
I’m 2 minutes in. I haven’t understood a single sentence he’s spoken. I code for a living. I will now leave and take what’s left of my coding ego.
Exactly
Maybe you work in a different domain
That's how specializations work. It doesn't mean you're stupid or that he is smart, it just means you're not experienced in linux kernel drivers lol
@@SalgatAustin No 99.9% of us are for sure stupider
@@johnk6757 speak for yourself
Bro is not using syntax highlighting, legend
Nor any normal mode commands.
I would like your comment but you have 666 likes 🥲
he IS using comic sans though lol
@@unadulterated It's actrually comic code
@@unadulterated best font, next to Courier
Making me feel like the worst software developer in the world.
Love to see it. Learning so much.
same lmao, bro is too chad
Humble yourself, or this man will
Same here man
I don't know how I am gonna look him in the eye if I made a mistake in front of him, lol.
Developers like this are what allow me to write silly little games with C# in a feature packed IDE. God bless you glorious dev
i work at a company with like 100 people and half of them are this level. a couple of the guy have thousands of commits on linux kernel. i am in awe, as a scrub who uses python and go
Where do you work at? 🧐 Some military company? Just curious
Bla bla bla
Can’t get no love from me, scrub
every 'scrub' starts with python or something else and python is not just for scrubs either, dont be hard on your self
Call yourself lucky, you can learn a lot from them while also being paid.
Have a friend who was in a similar sized company, less than 100 actually, as soon as he finished his bachelor and 1/4 of the people there were living gurus in their respective fields. He stayed there for 4-5 years and now is senior sw architect and PM in a top500, passing his days telling other senior devs what to do and how to do it.
It's like watching a neural surgeon doing his surgeon things: fascinating, crazy, a bit scary, for sure impressive. Makes me grateful for the fact that there are people passionate about things that I don't wanna do 😀
“don’t wanna do”
lol *can’t do
@@nickignathe two sentences don’t contradict each other
makes me extra appreciative of white people. I live around mostly mexicans and blacks and I'll tell you, virtually none of them have aspirations outside of 'rapper' or 'basketball player'
@@IrishIwasJewishplease seek help
@IrishIwasJewish so true!
this guy writes an USB driver from scratch in 3h while I, as a web developer, struggle so much for so few.
you inspire me to be better
Haven't basically all web developpers been replaced by ChatGPT by now?
That’s a tough comparison. Web dev is so multifaceted and always involves cleaning up someone else’s mess and trying to clean up a tangled fractal of dependencies. It’s a lot of organization and searching, a little less fun engineering
@@tropicaljupiter you just gave me a new perspective of web development. never thought of seeing it that way since I never compared it to system development. thank you for that
I do not know how many times will you guys hit me but web development comes to me as folder structuring.
@@cerberusrap that's not completely wrong
I work as a full stack developer mainly with next and mern. And, honestly I feel so stupid when i watch this kind of programmers writing codes. So much knowledge in low level languages, memory management and all the brain f things they do. Beautifully written code. Just wow❤
Me right now as well lol!
Yeah but that's all they do and to be honest C hasn't changed much in the last years.
WTF is Even a full stack dev nowadays?
There are so many full stack environments.
@@DoiPunctZeroyou must know every technology ever created for the web and have 15 years of experience in the newest languages that have been out for 10 minutes
At least that's what the hiring managers want 😊 I saw a job asking for python expertise at 14 an hour
Man, quiet down, they just know the machine and how to control it. It's another job from yours, not magic lol
@@Loki_Dokie I still remember a listing where a company wanted someone with 6 years of experience with Swift when Swift had only been out for 4 years.
One of the leads on Swift's development actually posted that he wouldn't qualify since he had only started work on the language in earnest 5 years prior.
People like René are the core foundation of everyday technology we use today. Much respect, René, for not just keeping this knowledge for yourself.
Thank you so much!☺️
I can't lie, dudes like this gives me the drive to want to actually learn low level programming it's just soo cool
I've been coding for more then 20 years and I swear, I have no idea how you can be this good without any syntax highlighting/code completion. Legend.
no hate, but how can u do this for 20 years and write then instead of than?
@@sophokles8244 Since english is my 3rd language. Not including programming ones ;)
@@sophokles8244 Since english is my 3rd language, not including programming ones.
Also, did you miss the point about me needing auto-complete? ;)
@sophokles8244 OH HERE THEY COME, 300 lbs native english kids, wasting time correcting others grammar instead of working his ass out to pay his student debt
@@sophokles8244 because it's a simple youtube comment, not a research paper.
I'm a Javascript/Nextjs dev and watching this I feel like I have no clue about programming. Good vid!
Suddenly transitioning from a high level language to a low level one does that to you.
Most js devs don't have clue about how hardware works
Well most JS developers don't even work with vanilla JS but with frameworks which sadly turns a lot of developers into frameworkers.
You would be correct - in general, JS devs don’t have a clue about programming 😂
Obv exaggerating a bit but defo applies to an extent on stuff close to the hardware
Its kind of simple when you get into it. You just have to think like that hardware. Just put some hours in it. Start with turning on and of some leds on sbc and build it up from there. if you like this kind of thing. :)
i just finished learning the basics of python and now youtube recommends this video to me and it feels like i have just touched a drop in the vast sea of computer science. i did not understand one thing you did but good work
Happy you learned something!
This is c++
@@jayanthsattineni2151 yes i know, im talking about the world of computer science at a whole.
@@jayanthsattineni2151 nah it's not c++, drop the ++ ^^'
@@jayanthsattineni2151 thanks for saying that, i was wondering what language this was
Just pure, raw vi. This is what peak programming looks like
🦾
supplemented by a nice shot of straight espresso. legend.
This video randomly popped up on my youtube feed. I have absolutely no clue about what this guys is doing or talking about but I know this guy is a supreme lord of what he's doing.
11 57 PM Friday - Let's watch random guy write a USB driver ! - TH-cam
🫶
1157 PM Friday after working the whole day… coding…
lmao literally friday 23.59 as I saw this comment 😅
Bro. I read this comment at 11:57PM. It may be Sunday. But still. That’s as crazy as this guys level of knowledge
same!
Sooooooo much programming video perform by programmer in youtube, but person like this is the true programmer...
I am a developer these dudes are next level, thanks for your time and contributions.
Yes they are. The best of the best for the most part.
if you want to get grounded, watch people like him, what a programming genius
I started with Linux 6 months ago, and this video make me feel how much there are still for learn, i will work hard and i will be happy if i will arrive only at the 1% of the knowledge of this guy!! Really congratulations for the awesome video!!
This is literally so awesome I've been waiting for a video for usb drivers in Linux, thank you
I came here to take a peek at how does a USB driver work in general. But I'm more entertained by the workspace environment, with the Comic Code font, flat color, and everything lol.
Did you learn anything? Highly doubted
Whoever uses vi to code edit deserves to be in the final boss category. I'd probably need to code for a couple more decades to reach his level.
sometimes I write on notepad++ :))) more colorful :))
As someone who uses linux on my home desktop, thank you for all the hard work you do for the community.
Please support this hero as much as possible, a part of the future of Linux depends on it
Any dev in some point just dream about having this kind of job in some future🤙
If you are willing to put on the time and effort, also expect that it's going to be a very challenging path. This is the line of work where very few get the job.
Writing a USB driver is your dream! 😂
You must have deep respect for a true coding professional like René. I don't have slightest idea whats going on, I'm just looking and trying to understand something, but no luck yet :)
I only know basic linux & android stuff, and seeing a driver being built was extremely eye opening to how some of code is actually written.. Amazing.
Thanks, I can finally complete my take-home assignment for an entry-level, reverse-paying internship at a BPO
Hehe, I am a daily Linux user, I would say mid, can manage servers, use Linux PC, I can write shell scripts for typical scenarios, I am way far to understand everything René says, but sometimes I find myself drinking, playing around with Linux, and listening to 3 hours on the other monitor René mastering Kernel development 😂
Thanks René, you're the best motivational, and Linux developer, keep it up 🔥🔥
Honestly - that sounds like an awesome afternoon 😄
I'm a Senior Java Developer but I feel a 5 th year schoolboy when watching this man
Java is for noobs
Java is for nobody ¯\_(ツ)_/¯
I have no idea what is happening, but it is very cool and I respect the time it took you to get to this point.
Since I'm a Biomedical Engineer, I haven't even programmed with something that is not Python or Matlab. Haven't understood a single thing and I don't know what am I doing here. But this man gives me inner peace.
Big respect for pure programming without syntax highlight, linting, hint,... not good DX but truly prove your coding ability.
I just came across this video, I have 0 knowledge about software engineering and I was baffled when he said its gonna be easy. Looking in comments I realized it is only easy for him lol. But the part that hit me most is that this dude liked every single comment I scrolled. What a Legend actually.
heya, CS major here from US. I am somewhat familiar with only few things you used here, so it was very interesting throughout. I hope you plan on making a video like this again eventually.
You just singlehandedly restructured and resurrected a decade old skeleton of a driver from a random person, and it works, and within 3 hours. I wouldn't be shocked if you were also a teacher
Insane how you get so much done with those bare tools. I see people praising you for your lack of modern tools and giving the impression that it's something to strive for. I think only people like you with a lot of experience, who don't want/need to try every new shiny thing, can pull this off. Thanks for your contributions!
Fun fact, my productivity decreases when I'm forced to use "modern" IDEs, ...
@renerebe please stop with this utter nonsense. Your skill and knowledge puts you above most, but you cant start out and code the way you do at the start. Some IDE's are poor like eclipse, but Intellij for java/spring development is hands down the professional standard, it is why every company with developers use it.
Sorry. Developer should rather focus on the code and not hope that the IDE auto completes something for them. So far each IDE only interrupted my flow and got on my nerves slowing me more down than helping. Especially Xcode and Visual Studio. Also Java is not a professional standard but a buggy joke of a language. Dev that can only auto complete are the first to be replaced by Ai ¯\_(ツ)_/¯
@@renerebe you have abit of an elitist mentality. To say Java isn't a professional language is ignorance or a lack of knowledge in a professional industry outside linux development. A developer has no chance of knowing each method in every library, auto completion increases productivity and helps a developer better understand what is available.
I'm just the message of comfortable truth.
I developed over 25 years with linux applications and network drivers, I think you're the man!!
I do not understand a single thing but it's quite interesting to see someone really mastered at this topic.
Makes me feel better about myself that even experienced C programmers sometimes forget how to correctly use char array pointers
As a developer myself watching someone writing drivers is like god creating the universe.
I always say if I ever have the opportunity to do it from scratch I would surely become a software engineer this job is in my soul.
this font is a crime
lol
That font's purpose is to be readable, It helps dyslexic people alot.
No matter how much people hate on fonts like Comic Sans, but those fonts complete their task of being easily readable.
It started as a joke, and I unexpectedly liked it.
@@renerebe do u know any usb pcie cards that are linux compatible?
Don't most if not all just work?
i would never do this job, but thank you for your contribute to the linux community, I salute you
Thanks! Why wouldn't you?
@@renerebe because I hate C, ptsd from computer science degree I guess 😅
@@miguelcarrilho4744 I hate C, too. Need to continue my JIT'ed micro kernel ASAP ¯\_(ツ)_/¯
Meanwhile I struggle to center some HTML content…
Hats of to you Sir.
Tbf, HTML is pretty crap ;-)
Interesting video. 25 years ago I tried to start writing a driver for some USB-DVB-S device (edit: it was an internal PCI DVB-S-card) for BeOS (these were the times when I was still watching TV), thinking "I don't know at all what I'm doing, but maybe I'll get somewhere if I just start doing it". I maybe got some little thing working, but it never went anywhere. Driver development is something else...
Whenever I feel like I'm somewhat good at programming I watch this video
I have no idea what you just said in the video, but this is super cool and I really like the video!
So this is what the top 0.5% developers looks like. Ive heard a lot in programming videos, job videos and so on, but thought it was just a legend
I am both impressed by the skills of this man and also never want to touch any kind of code ever again
This is how real men write code.
And the comic font makes it look even more hand-written.
I miss my coding years in the '80s-'90s
nothing less real about using modern tools. shits toxic as fuck.
What is stupid and toxic? Modern IDEs that are huge and dog slow and don't even work over SSH ?
@@renerebe they're not dog slow, sounds like a skill issue. even if they were, the productivity speedups over this nonsense almost certainly sum significantly net positive. and they can absolutely work over SSH. sounds like you have no clue what you're talking about and you're doing this for style points and you've fooled enough people so why let me bother you?
Not once did an IDE make me program faster. Only being able to auto complete code with an IDE sound like a skill issue to me. Also I never found an ide even working well on the million lines code base of the Linux kernel or Firefox. VScode is based in a web browser. Of course it is 100x slower than IDEs used to be.
@@renerebe I can load the linux kernel codebase in vscode with absolutely no issues whatsoever. stop hacking on a dell from 1996? mate, it's one thing to have an opinion. it's another to just be bullshitting. use whatever tools you want, but don't bullshit.
3 hours full screen terminal, not a single GUI given. let that sink in.
This is amazing. Now I wonder how software engineers write code for spaceships, fighter jets etc.
Removing the far more readable defines on vendor vs product ID and replacing with hex values passed straight in hurt my soul this guy works forever alone surely to do this.
Changed readability not a single bit. I also put it back later, but entirely pointless for a product id table.
This guy's skill is absolutely insane. And to think I have the gall to call myself a software developer...
Looks exactly like someone who can write a USB driver from scratch in just 3h for Apple Xserve front-panel. Absolute beast.
I have no idea what he is doing and I cannot understand a word he is saying. But yesterday the algorithm showed this to me and I found it amusing. I watched about 15 minutes of it. It gave me nightmares at night.
Why didn't you just run "import usb_drivers" in python?
j/k, great video. Standing on the shoulders of giants is something that you learn to love as you get older. It's great watching the kids in the comments thinking that you need to write everything.
I have absolutely little idea what went on here, even as an old Linux user, but i do love the white noise hum in the background.
I don't understand most of what he says but I enjoy and appreciate his passion, skills and willingness to explain this heavy tech stuff! Legend
39:40 I like the way these kernel guys use the goto keyword in their code without fear, while we mortal backend developers would get shot on site in the first code review. "-Bad practice", the shooter would say...
As you probably know C doesn't have a concept of RAII so you have to manually clean up resources you allocate and create, and just using goto to jump to a common exit block is just an easy way to not forget to clean up after yourself. It is probably much more important in the kernel (i might be wrong) since none of these resources will be auto cleaned up (again, might be wrong about this) by the kernel like they are when your user space process terminates.
yeah I've seen my professor use goto to jump forward to cleanup code
Yeah even Torvalds says it’s common kernel practice
I used it in a C university assignment once. We were told goto is not a good practice, but it has its uses.
Some modern languages now have the option to specify which loop you want to 'break' out of or 'continue' in.
In C, you can define labels and jump to the points you wish, which lets you achieve the same result.
It shouldn't be feared to the point that languages omit it entirely, it definitely has its uses.
I tell my professor to f off.
He is the real life hacker guy who appears in every movie
I love youtube man,makes me able to watch very talented people like this gentleman.(I barely know anything of programming)
Hats off to developers like this guy that make our stuff work. Writing C really makes you think about what every little thing does, and there's something about that I like
I did a bit of this in 1998-2001, but no way writing a driver, I think he is working with procedural C ,with LLP support...
Guys like him are the brains of CS...
I went on to work with RDBMS, OLAP, OLTP, even taught OS as a subject in Uni..worked with Networks Cisco and Juniper Routers and all....
Still no way can I write a device driver and explain what I am doing at the same time.
Dudes thoughts are racing at 1000mph and we’re trying to catch glimpses of them while he talks and codes.
This is so valuable. Thank you for uploading these
Finally youtube recommended your channel! Good to see the numbers getting higher! Nice René
Really enjoy Rene's videos! Im a total amateur but I find incredible educational value in them. Much love and respect from Bulgaria!
we are ants, comparing to this mammoth .
God level skills .
legend!
I love how this guy is single handedly just shattering every developer under this video's ego.
I can't even get a pointer to work properly sometimes, and this guy just wrote the whole driver like it was nothing.
Damn.
Can't get enough of these videos. They're so well-made and informative.
This guy always reminds me of Werner Ziegler from breaking bad.
better call saul
Werner Zieeeeglerrrr, what is he upto man what's he doing?
Otacon from MGS
Hahaha exactly. I am German too.
Man I'm impressed you didn't use syntax highlighting, that's a plus
I don't understand NOTHING about what you are doing, but.. you make it looks easy somehow. you are awesome!! I wish one day could make things like u!
Thanks, you will!
The whole civilization is standing on the shoulders of giants like him
We appreciate people with your level of talent & your opensource contributions!
Making a 'foreach' macro is something ive never seen before and will definitely start doing
I've seen foreach macros pop up a couple of times working with linux driver stuff. Personally I'm not really a fan since its harder to read and doesn't save you a lot of lines.
I've immediately realised how cool this guy as I saw vi instead of nvim
This guy is proof we ve been invaded by aliens.
Writing code without syntax highlighting is demon level
Algorithms are amazing, because I have zero understanding of what I’m watching, but am over 2hrs in and mesmerized.
@10:00 Perhaps deleting the defines is cleaner for people who have all the function signatures memorized, but for plebs like me, it's nice to have labels for mysterious hex values. I think the arguments for the usefulness of those defines are the same basic arguments against magic numbers
Bro is writing a low level HW driver with no syntax highlighting..
A moment of silence for the web devs out there still trying to center that …. 😂
Damn, this guy is the guy who coded his girlfriend what a rare find.
When you start to get confident in coding youtube suggests you this, so that we keep your self steem in pace
So einen Lehrer wie dich müsste man haben, da könnte man unglaubliche Fortschritte machen. Find dein Skillset so mega.
You are such an inspiration man. This is true excellence.
Being a programmer myself I can say with confidence that I’d probably need 2 entire lifes to reach your level of competence 😂