📖Chapters 00:00 - What we’ll learn? 01:46 - How do Processors Understand Code? 06:01 - Assembly Language Application Demo 10:36 - C++ Application Demo 19:33 - JavaScript and JavaScript Engines 21:18 - V8 JavaScript Engine 27:26 - Taking a Look at V8’s Source Code 35:23 - Understanding How V8 is used by Node.js 39:32 - Taking a Look at Node’s Dependencies 41:47 - Project Ideas using V8 43:43 - Taking a Look at Node’s Source Code 52:34 - Taking a Look at other Node.js Files 56:20 - A Brief History of JavaScript & Node.js 01:00:50 - Understanding LibUV (Processes & Threads) 01:07:50 - Understanding Node.js Process 01:11:37 - Event Loop in Node.js 01:29:12 - Thread Pool or Worker Pool 01:31:02 - Don’t Block the Main Thread 01:36:46 - Wrap Up This was a really adventurous journey of exploring V8 and Node.js source code. It is going to be the most popular Node.js course in couple of years, I can see the future. All the best 😊
I kept searching for course explaining the concepts of the nodejs not just jump in to express framework and here you go.keep going you are doing such a great work
I am thankful for this serious. I like my learning mediums to be either books or official documentation but bring a variety to how I learn, I always look for videos with high quality teaching material. Thank you for your effort and we hope to see more videos from you.
Thank you very much Sayed Dileri! Glad you’ve learned valuable things here! I’ll try my best so that you can learn even more in future contents! Thanks again!
Amazing high-quality content! Such well structured explanations are very difficult to find right now on the web. When looking online, you typically find a lot of tutorials/articles that explain how NodeJs works by showcasing it through a package like express. This can be proved extremely useful, but if you want to dive deeper into NodeJs, more material like the ones you post are necessary. Anyone who wants to dive deeper can benefit from those. Keep up, I'll follow every video you post!
I've read Operating Systems book in this year to get some computer science knowledge as a front-end developer but still I discover something new from computer science topics when I watching your videos. Come to learn Node - upgraded in computer science ^^. You definitely should keep going man!
For the first time in my life i started watching double ads of RUclips for the whole length of video as a way of expressing my gratitude to you brother..Thank you so much
Hands down best explanation. Answered all my questions and cleared any doubts about Nodejs. Even more how you can access the underlying structure to add your own c++ functions. Amazing 🤯
Thought you had 962K subscribers, until I realized it was just 962 subscribers. Your content is so amazing, I wasn't a bit surprised when I thought you were close to a million subscribers. You deserve it. I've watched this video and the ones prior, plus the buffer one so far and I'm so thankful, I landed on your page. Literally speechless, it's amazing. Thanks for being so thorough.
bro PLEASE continue making videos! It's so helpful and explained very well. I'm a full stack developer and your in depth explaining of nodejs and how it works under the hood has gotten me more appreciative of C++ and Linux/UNIX etc. Watching your vids is what I do when I'm losing motivation to study and procrastinating, it's so helpful!
Thanks soo much for this video. I am on the road to becoming a fullStack developer. I have already gotten to an intermediate level on the frontEnd side, b ut when i initially started learning the backend with NodeJs, it felt a little bit different and i felt oi needed a way to learn about the core concepts. I am verry happy i found this video. I am looking forward to finishing the rest of the course with you. ❣
Yeah I understand that first feeling you're talking about! Fortunately after a while and learning these core concepts it won't be like that anymore! Glad you found this useful and thanks for your comment!
Astonishing. I'm taking the time to grasp Node.JS concepts - particularly because I'm looking for a career migration. This video was relaxing, helpful, and extremely well-explained. I am closer to being a software engineer now than I was before watching this video. Thank you.
You have unveiled node js in a manner which is both fun to watch and mind blowing... Please make more videos... I presume you are well versed and have command over a multitude of languages... Like c++ rust and a bunch more... I have started to learn to code little over a year now.. these days I'm learning node js and alongside this learning some fundamentals like dsa... Please make a video describing your coding journey. Would love to watch it and take notes
man, i'm truly learning javascript, i didn't know nodejs damn. I really hope you keep up with the good work. just finished this video, i'll continue with the entire series
Great job, @Cododev. I really appreciate all the work you put in the video. It clarified most of the questions I had about how NodeJS works behind the scenes. Looking forward to watching your the rest of your content :) Cheers!
Typescript will improve the stability of the runtime, which could possibly improve the performance of your team, but not the performance of your code because it ultimately this will be converted into js >> c++ >> assembly including the deoptimizer, 31:50 . This content is very high quality btw.
you are a great teacher sir, you can teach a topic on an entertaining way on a great depth. i can watch whole video on single sit and entertained like watching movies or animes.
read a comment on a different video that you are thinking of releasing the node js complete course on udemy, so i hope you do so because currently there's no course on node js that even is close to the way that you teach. there's a desperate need for people who teach in depth like you do. waiting for the release of your course though, take care!
I have a query regarding the async programming, my earlier assumption was that because javascript is single threaded hence while performing any I/O operation the libuv used to open a thread to perform the I/O and then return the data and then the callback gets queued in the event loop. This was the general idea i had about async programming and i thought every async operation worked this way. Then i was reading through multiple languages that perform async and i found some blogs which said async programming has nothing to do with multiple threads and a single thread can be used for async operation . I saw this mainly in C# and you pointed that out at 1:29 that network requests do not require any threads from libuv. My whole confusion is if the main thread isn't executing the task , i am assuming it is being outsourced to someone else and for them to execute that task we need to open a thread but it looks like it doesn't seem to be the case.
That’s a great question! Well to start, async programming is totally different from multi-threading programming. And about the network requests, yes libuv doesn’t open a new thread to handle each request, rather the operating system will somewhat somehow get the requests and handles them USING ITS OWN THREAD(S). So technically there are multiple threads involved but those OS threads have nothing to do with our threads, in other words, we don’t need to care about them in our code, so we are doing all these in only one thread, and we are also doing these asynchronously. This outsourcing you mentioned is the case, if you can send me a link to these articles, I will take a look and let you know with more details. Thanks!
@@Cododev You are completely right , i did some digging few days ago and turns out most of I/O operations are non blocking and the device driver is actually responsible for completing the task . Internally, OS uses I/O Request Packets(IRP, think of it as an object which carries the state of the task and the metadata) to send to the device driver which changes the status of the IRP (lets say we are writing to a file , it will set the status to pending and give the control back) and as soon as the I/O is done , an interrupt signal is sent to continue the execution of the code which was written after await (and here the event loop is beneficial as the callback that is pushed into the stack gets executed only when the call stack is empty so we get the kind of execution that we see in node). There are languages like c# which actually does more/different optimisation on the compiler level (like breaking the code which has async operation into 2 parts , 1st is just before the async operation and the other is after the async and when it receives the interrupt signal , the code after the async operation starts executing) blog.stephencleary.com/2013/11/there-is-no-thread.html
Thanks Yahya for your kind words! Next up we'll learn about these core concepts in node: EventEmitters, File System, Streams, Net, and HTTP. Once we learn about them, we will have enough knowledge to build some intricate projects, so the course is going to get project-based after that (we'll build a very complex application and learn about so many new things along the way). And of course, once we complete our application, we’re going to learn about deployment, scaling, monitoring, security and so much more! Thanks again for your interest in the channel Yahya!
I have a question, probably a dumb one? Why does an “executable file” created on one machine have to match the operating system and processor architecture if we want to run it on a different machine? From my understanding, the “executable file” is made up of 0’s and 1’s, and every computer can understand 0’s and 1’s. Shouldn’t “the executable file” be independent of the machine’s operating system and processor technology? (Forgive my English)
Never stop to make videos, now you are my favorite dev channel!
📖Chapters
00:00 - What we’ll learn?
01:46 - How do Processors Understand Code?
06:01 - Assembly Language Application Demo
10:36 - C++ Application Demo
19:33 - JavaScript and JavaScript Engines
21:18 - V8 JavaScript Engine
27:26 - Taking a Look at V8’s Source Code
35:23 - Understanding How V8 is used by Node.js
39:32 - Taking a Look at Node’s Dependencies
41:47 - Project Ideas using V8
43:43 - Taking a Look at Node’s Source Code
52:34 - Taking a Look at other Node.js Files
56:20 - A Brief History of JavaScript & Node.js
01:00:50 - Understanding LibUV (Processes & Threads)
01:07:50 - Understanding Node.js Process
01:11:37 - Event Loop in Node.js
01:29:12 - Thread Pool or Worker Pool
01:31:02 - Don’t Block the Main Thread
01:36:46 - Wrap Up
This was a really adventurous journey of exploring V8 and Node.js source code.
It is going to be the most popular Node.js course in couple of years, I can see the future. All the best 😊
Are sir aap yaha😀
I kept searching for course explaining the concepts of the nodejs not just jump in to express framework and here you go.keep going you are doing such a great work
I am thankful for this serious. I like my learning mediums to be either books or official documentation but bring a variety to how I learn, I always look for videos with high quality teaching material.
Thank you for your effort and we hope to see more videos from you.
Thank you very much Sayed Dileri! Glad you’ve learned valuable things here! I’ll try my best so that you can learn even more in future contents! Thanks again!
Amazing high-quality content! Such well structured explanations are very difficult to find right now on the web. When looking online, you typically find a lot of tutorials/articles that explain how NodeJs works by showcasing it through a package like express. This can be proved extremely useful, but if you want to dive deeper into NodeJs, more material like the ones you post are necessary. Anyone who wants to dive deeper can benefit from those. Keep up, I'll follow every video you post!
they all read from wikipedia except this one , this video is truly a masterpiece and i love it
I've read Operating Systems book in this year to get some computer science knowledge as a front-end developer but still I discover something new from computer science topics when I watching your videos. Come to learn Node - upgraded in computer science ^^. You definitely should keep going man!
For the first time in my life i started watching double ads of RUclips for the whole length of video as a way of expressing my gratitude to you brother..Thank you so much
I can't believe this video series is free! Thanks soo much bro
Hands down best explanation. Answered all my questions and cleared any doubts about Nodejs. Even more how you can access the underlying structure to add your own c++ functions. Amazing 🤯
Thought you had 962K subscribers, until I realized it was just 962 subscribers. Your content is so amazing, I wasn't a bit surprised when I thought you were close to a million subscribers. You deserve it.
I've watched this video and the ones prior, plus the buffer one so far and I'm so thankful, I landed on your page. Literally speechless, it's amazing. Thanks for being so thorough.
I'm coding on javascript about 6years but this is something new I never know. Very useful thanks!
bro PLEASE continue making videos! It's so helpful and explained very well. I'm a full stack developer and your in depth explaining of nodejs and how it works under the hood has gotten me more appreciative of C++ and Linux/UNIX etc. Watching your vids is what I do when I'm losing motivation to study and procrastinating, it's so helpful!
just wow.. i'm bown.. i really wish and hope you'd finish this series i'll be there
This chanel is underrated man, god bless you for sharing this for free .
Thanks soo much for this video. I am on the road to becoming a fullStack developer. I have already gotten to an intermediate level on the frontEnd side, b ut when i initially started learning the backend with NodeJs, it felt a little bit different and i felt oi needed a way to learn about the core concepts. I am verry happy i found this video. I am looking forward to finishing the rest of the course with you. ❣
Yeah I understand that first feeling you're talking about! Fortunately after a while and learning these core concepts it won't be like that anymore! Glad you found this useful and thanks for your comment!
Astonishing. I'm taking the time to grasp Node.JS concepts - particularly because I'm looking for a career migration. This video was relaxing, helpful, and extremely well-explained. I am closer to being a software engineer now than I was before watching this video.
Thank you.
Bro you should have atleast million subscribers for this content otherwise who would have known idk. subscribed! great content!.
Definitely the best video for understanding node js ❤❤❤
Masterpiece . The course we all deserve . Kudos 🤲
This is a hidden diamond .. I am so lucky that i found this, i filled a lot of holes in my understanding thank you man
You have unveiled node js in a manner which is both fun to watch and mind blowing...
Please make more videos...
I presume you are well versed and have command over a multitude of languages... Like c++ rust and a bunch more... I have started to learn to code little over a year now.. these days I'm learning node js and alongside this learning some fundamentals like dsa... Please make a video describing your coding journey. Would love to watch it and take notes
This is probably the best Node.js course on Internet. Thank you for this amazing material and I hope you keep creating more content like this.
By far one of the best series of videos I’ve come across during my time of RUclips. Simply incredible work, thank you very much
never seen just a high-quality video before. Great job !!
Outstanding course ! Oriented to people with inquisitive minds , who need to understand why and how things work.
man, i'm truly learning javascript, i didn't know nodejs damn. I really hope you keep up with the good work. just finished this video, i'll continue with the entire series
I have noticed that the more detailed and helpful videos will almost always be the ones with the fewest views. But the most superficial gain millions
That's because the most of people have learning lazy of right way, because that is the harder way, but also the more efficiently way.
Very informative and deep. Needs this kind of video to understand things clearly. Thank you so much 😀
best programming content i have ever seen. thanks for it
Keep it up bro. This was an awesome explanation. Highly recommend for anyone who really wants to understand low level understanding of NodeJS.
Great job, @Cododev. I really appreciate all the work you put in the video. It clarified most of the questions I had about how NodeJS works behind the scenes.
Looking forward to watching your the rest of your content :)
Cheers!
Thanks Gabriel!
You are an artist ✨
Best video on the subject, so easy to understand.
Typescript will improve the stability of the runtime, which could possibly improve the performance of your team, but not the performance of your code because it ultimately this will be converted into js >> c++ >> assembly including the deoptimizer, 31:50 . This content is very high quality btw.
you are a great teacher sir, you can teach a topic on an entertaining way on a great depth. i can watch whole video on single sit and entertained like watching movies or animes.
Detailed explanation , with good content, keep it coming❤
thank you so much for making this video. I would really appreciate more this kind of videos related to back end and nodejs. Thanks again.
read a comment on a different video that you are thinking of releasing the node js complete course on udemy, so i hope you do so because currently there's no course on node js that even is close to the way that you teach. there's a desperate need for people who teach in depth like you do. waiting for the release of your course though, take care!
bro really knows what it is actually required before learning things like node environment
This is the best tutorial I ever seen on the youtube.❤
Oh man.. this play list is just too good!!!!! Thanks a looott!!!!!!!! ❤❤❤
Only two minutes in the video and I fall in love ❤️
Finally something that makes sense. Thank you. ❤
Thanks!
Thanks a lot for your support Shishir!
This is excelent and exactly what i was looking for. Thank you so much ! Please keep doing videos like this
the best content i have ever seen
This stuff is really amazing.
Looking forward to watch the full series.
it was simply amazing, great explanation, just keep making these kind of videos. :)
Your tutorial is simply the best...
Great work!
You have amazing story telling skill man, very rare.
I have a query regarding the async programming, my earlier assumption was that because javascript is single threaded hence while performing any I/O operation the libuv used to open a thread to perform the I/O and then return the data and then the callback gets queued in the event loop. This was the general idea i had about async programming and i thought every async operation worked this way. Then i was reading through multiple languages that perform async and i found some blogs which said async programming has nothing to do with multiple threads and a single thread can be used for async operation . I saw this mainly in C# and you pointed that out at 1:29 that network requests do not require any threads from libuv. My whole confusion is if the main thread isn't executing the task , i am assuming it is being outsourced to someone else and for them to execute that task we need to open a thread but it looks like it doesn't seem to be the case.
That’s a great question! Well to start, async programming is totally different from multi-threading programming. And about the network requests, yes libuv doesn’t open a new thread to handle each request, rather the operating system will somewhat somehow get the requests and handles them USING ITS OWN THREAD(S). So technically there are multiple threads involved but those OS threads have nothing to do with our threads, in other words, we don’t need to care about them in our code, so we are doing all these in only one thread, and we are also doing these asynchronously.
This outsourcing you mentioned is the case, if you can send me a link to these articles, I will take a look and let you know with more details. Thanks!
@@Cododev You are completely right , i did some digging few days ago and turns out most of I/O operations are non blocking and the device driver is actually responsible for completing the task . Internally, OS uses I/O Request Packets(IRP, think of it as an object which carries the state of the task and the metadata) to send to the device driver which changes the status of the IRP (lets say we are writing to a file , it will set the status to pending and give the control back) and as soon as the I/O is done , an interrupt signal is sent to continue the execution of the code which was written after await (and here the event loop is beneficial as the callback that is pushed into the stack gets executed only when the call stack is empty so we get the kind of execution that we see in node). There are languages like c# which actually does more/different optimisation on the compiler level (like breaking the code which has async operation into 2 parts , 1st is just before the async operation and the other is after the async and when it receives the interrupt signal , the code after the async operation starts executing)
blog.stephencleary.com/2013/11/there-is-no-thread.html
Thanks dude you give everything you got to help us keep it up ❤❤
great level of info buddy... exactly the one I was looking for
yohh!!!! wow quite amazing .. i like the way u explained with the diagrams cool hatsoff dude..!!!
i learned a lot of content from this
Amazing work! Congratulations and thanks you for share this content
Nice man, great jog. From Brazil!!!
Thanks for this well illustrated video and easy to understand examples
Thanks for this content, really appreciate your hard work
That was amazing, extraordinary explaination 🔥
Outstanding explanation ❤
Thank you so much. May God increase you in knowlegde.
just brilliant, please continue
Great content with high quality!!!
great explanation of Event Loop
very informative, liked the way you explained everything
I have learned so many things. Thank you so much.
priceless content
Amazing content, many thanks.
Hope you are planning to continue making advanced videos
Really nice. Perfect done. Do you plan to release more? If yes, waht are you planning to release?
Great video
I really wish that you'd teach a degree or something cause this is literally amazing work.
Really good man! Thank you!
Need more videos... great work 👍👍
This is worth more than 1000 tutorials.
Thank you for amazing video!!
This video was really great and helpful. Thank you.
Excellent Stuff keep up the good work
Shut up and take my money. I do not care how costly your course is I AM GOING TO BUY IT
Subscribed!!!!! Great work Bro!
I appreciate your effort and what will come next? I am looking for the content that you put on this channel next time.
Thanks! Cododev :)
Thanks Yahya for your kind words!
Next up we'll learn about these core concepts in node: EventEmitters, File System, Streams, Net, and HTTP. Once we learn about them, we will have enough knowledge to build some intricate projects, so the course is going to get project-based after that (we'll build a very complex application and learn about so many new things along the way).
And of course, once we complete our application, we’re going to learn about deployment, scaling, monitoring, security and so much more!
Thanks again for your interest in the channel Yahya!
Welcome @@Cododev.Thanks for replying!
I am waiting and really excited about that path. ☺☺🤗
Incredible good content! ❤❤❤
Event loop is a part of libuv, V8 use libuv's event loop, isn't it? Watching 1:30:00 I started to doubt that event loop is in V8, but is not.
Amazing work, Subscribed! 👍
Excellent Video. Thanks for sharing
Great 🎉 Please keep on
Thank you, you level up me
Very underestimated channel.
you're a legend
This is a great course!
Well done! Keep it up 👍 Subscribed!
Thanks Vahan! Appreciate it!
Please can you recommend books on node and JavaScript language
Great video.Thank you so much!
Honest question: I know the this channel has a playlist of several hours videos about nodejs. It is worth it ?
yes
That's called real engineering ❤
great stuff - thanks
I have a question, probably a dumb one? Why does an “executable file” created on one machine have to match the operating system and processor architecture if we want to run it on a different machine? From my understanding, the “executable file” is made up of 0’s and 1’s, and every computer can understand 0’s and 1’s. Shouldn’t “the executable file” be independent of the machine’s operating system and processor technology? (Forgive my English)
What is the background music?
Thank you!!
'_"
keep going!
You are King