JavaScript: How It's Made

  Рет қаралды 864,616

Fireship

Fireship

Күн бұрын

Learn the computer science 🔬🤓 behind #JavaScript by looking at how it works under the hood. Understand why JS is called a "high-level single-threaded, garbage-collected, interpreted (or just-in-time compiled), prototype-based, multi-paradigm, dynamic language with a non-blocking event loop" fireship.io/courses/javascrip...
#compsci #howitsmade
- MDN Event Loop developer.mozilla.org/en-US/d...
- Bits and Bytes channel / bitsandbytestvo
- Chrome v8 v8.dev/
Take the JavaScript quizzes:
iOS itunes.apple.com/us/app/fires...
Android play.google.com/store/apps/de...
Upgrade to Fireship PRO at fireship.io/pro
Use code lORhwXd2 for 25% off your first payment.

Пікірлер: 708
@lightning_11
@lightning_11 6 ай бұрын
A wise person once said: "Learning Javascript is like looking both ways before crossing the street, then getting hit by an airplane."
@brianmazzocchi
@brianmazzocchi 2 күн бұрын
🤣
@AmxCsifier
@AmxCsifier 4 жыл бұрын
The first time ever someone described assembly as syntactic sugar.
@AmxCsifier
@AmxCsifier 4 жыл бұрын
@K.D.P. Ross You sound dehydrated
@msthalamus2172
@msthalamus2172 4 жыл бұрын
I would never have thought so, but when I was getting my CS degree, one of our assignments was to construct a Hello World app-- in binary. All of a sudden, assembly seemed like a cake walk! :)
@AmxCsifier
@AmxCsifier 4 жыл бұрын
@@msthalamus2172 I never did anything like that but I went from ASM to C once upon so I can relate in a way
@diegosandoval2043
@diegosandoval2043 4 жыл бұрын
It's more like lexical sugar.
@luis_musik
@luis_musik 4 жыл бұрын
@@diegosandoval2043 contrary to machine code, instructions in assembly can have different signatures. I don't think that's possible at a lexical level
@creatorsremose
@creatorsremose 4 жыл бұрын
Been writing JS for 20 years, knew all of this shit already and still enjoyed your video... accurate, professional and fun.
@gwengold1342
@gwengold1342 4 жыл бұрын
Lmao u mastered it
@braindeveloperdimensional5579
@braindeveloperdimensional5579 4 жыл бұрын
For 20 years you must have gathered wise knowledge. Want to share some?
@cautarepvp2079
@cautarepvp2079 4 жыл бұрын
now are you earning 200k or something? 20 years of exp holy fck
@dusscode
@dusscode 4 жыл бұрын
Creator's Remorse hard to believe
@amongdoomers9464
@amongdoomers9464 3 жыл бұрын
he probably lying , lmao
@jeereB
@jeereB 4 жыл бұрын
Not an easy task to squeeze all that info in a bit over 10 minutes. Keep up with the great videos!
@Fireship
@Fireship 4 жыл бұрын
Thank you. It's taken years to gain a comfortable understanding of these concepts.
@delldm1676
@delldm1676 4 жыл бұрын
@@Fireship it would be better to slow down your speed when teaching. High speed for teaching doesn't help. . So, by slowing down the speed "when explaining" you can be understood in a good way.
@ankitshaw2011
@ankitshaw2011 3 жыл бұрын
@@delldm1676 there is an option in youtube player to slow down the speed
@michaelrooze278
@michaelrooze278 3 жыл бұрын
its definitely no microtask, i promise you that.
@zemoxian
@zemoxian 2 жыл бұрын
@@michaelrooze278 I see what you did there. 😝
@OddStare
@OddStare 4 жыл бұрын
0:05 The fact that i understood every words makes me happy
@blightning1476
@blightning1476 3 жыл бұрын
Yeah, same here. Made my day :D
@ayayron9452
@ayayron9452 3 жыл бұрын
I didn't understand a single thing.
@esquilo_atomico
@esquilo_atomico 3 жыл бұрын
​@@ayayron9452 I watched this video two months ago and understanded absolutely nothing, now I tried again and finally I could. The sensation is amazing.
@horseoperamarker
@horseoperamarker 3 жыл бұрын
Ok
@Oshanii
@Oshanii 4 жыл бұрын
i watched this for like 2 days, pausing and taking notes and googling. its nice to have everything in one place like this, explained succintly. definitely a good start to get to know the basics.
@Victor_Yeah
@Victor_Yeah 5 ай бұрын
Exactly what I wanna say❤
@pookiepats
@pookiepats 19 күн бұрын
hot dog great idea brother - thx fireship
@derpmarine216
@derpmarine216 4 жыл бұрын
"high-level single-threaded garbage-collected interpreted or just-in-time compiled prototype-based multi-paradigm dynamic language with a non-blocking event loop concurrency model" *Mind. Blown.*
@911madza
@911madza 4 жыл бұрын
imagine saying that in interview once asked describe js in one sentence
@jsonkody
@jsonkody 4 жыл бұрын
.. weakly typed
@warpspeed8305
@warpspeed8305 4 жыл бұрын
LOL
@rokkeey
@rokkeey 4 жыл бұрын
IKR
@eramires
@eramires 4 жыл бұрын
It just don't know what it want to be so it end up being everything :-P
@romainvincent7346
@romainvincent7346 4 жыл бұрын
2:22 "are you a scripting language?" undefined 😂
@masonhunter2748
@masonhunter2748 3 жыл бұрын
The console.log outputs info to the console, and then it returns nothing, aka undefined
@pyhlo9201
@pyhlo9201 2 жыл бұрын
@@masonhunter2748 you missed the joke
@tinuthomson
@tinuthomson 4 жыл бұрын
Just wanna say , one of the best channel on programming.
@Fireship
@Fireship 4 жыл бұрын
Awesome to hear that Tinu :)
@michaloslav8563
@michaloslav8563 4 жыл бұрын
"One of"? Really? Hands down the best one
@braindeveloperdimensional5579
@braindeveloperdimensional5579 4 жыл бұрын
Can you mention some other? It feels good to do good.
@MrUnique960
@MrUnique960 4 жыл бұрын
I can flex so hard on other devs with this knowledge.
@SingTingz31
@SingTingz31 11 ай бұрын
It's wild coming back to your older videos and how your voice and style have progressed
@narcodico
@narcodico 4 жыл бұрын
This is exactly the type of language understanding you need to have in order to really take advantage of what it offers. I absolutely enjoyed your take on this!
@jayanths1221
@jayanths1221 4 жыл бұрын
I've been a Javascript developer for over 2 years now and I had no idea that Promises get priority over other asynchronous tasks in the event loop.
@cksvideocloudstorage2993
@cksvideocloudstorage2993 4 жыл бұрын
Im on a programming strand and JS is one of our lessons. How was it?
@braindeveloperdimensional5579
@braindeveloperdimensional5579 4 жыл бұрын
@Any Rebel I would like to tell you that you shouldn't buy it if someone tells you to choose JavaScript over PHP. Because it's been 20 years since people first started saying that PHP is going to disappear and Ruby, Pearl, Python or JS is going to take over it. It didn't happen and it's not going to happen so chill and if you are really competitive and really want to bash your head into a wall then I would tell you to go straight for Node.js but if you want to preserve your sanity then avoid taking on JavaScript without any previous experience with any other language.
@MLennholm
@MLennholm 4 жыл бұрын
As long as you write your code properly and competently, it's not something that matters. You should never write code that relies on a specific timing between different asynchronous tasks.
@cautarepvp2079
@cautarepvp2079 4 жыл бұрын
@@braindeveloperdimensional5579 why wtf? Many people actially suggest and advice to start with javascript if you want web developer then you can move into software,
@braindeveloperdimensional5579
@braindeveloperdimensional5579 4 жыл бұрын
@@cautarepvp2079 I think you didn't understand my comment. I am a JavaScript developer, both front-end and back-end. I am not against JavaScript, I am against the hate that other devs and now days even the normal folks throw at the face of other languages and frameworks. No framework is worth learning if it doesn't solve your problem and no language is bad just because it's syntax is funny or you simply don't like it.
@pajotrus
@pajotrus 4 жыл бұрын
wow, I spent months learning all of this stuff and you squeezed all this knowledge into a 10-minute video, which is very entertaining to watch! of course, I encourage everyone who is new to dig deeper into these topics, but still, describing it in such a concise and precise way is your great skill!
@Fireship
@Fireship 4 жыл бұрын
Thanks! I agree, the more you know about this stuff the better - especially the event loop scheduling and prototype chain.
@dssingh9955
@dssingh9955 4 жыл бұрын
Let's talk
@yt-sh
@yt-sh 3 жыл бұрын
@@Fireship Thanks for all the video you publish, you make learning easy and fun
@BlameItOnJoe
@BlameItOnJoe 4 жыл бұрын
As someone with a degree on design, I love that I could grasp all of the concepts explained. I love that these videos are made because even when you won't mess with the guts of it all, it helps to know and makes you more confident of working with it. Great job! : D
@ericsg95
@ericsg95 4 жыл бұрын
This is really a great topic! So many things as a JS dev, I have taken these stuff for granted but now each line that I write I can be more aware and be thankful for all these abstraction baked in JS. I am encouraged to write better codes after knowing all the heavy duty done by the JS and I will play my part as well!! Great video! Looking to see more of this kind of documentary!!
@abinesh-devadas
@abinesh-devadas 4 жыл бұрын
Best intro on JavaScript within 8 sec awesome... Thumbs Up
@marko_2317
@marko_2317 4 жыл бұрын
Straightforward exaplanations, without beating around the bush and all of it wrapped up with nice entertaining content (those old compiler/interpreter cartoons were quite entertaining)! Keep it up!
@bennettfoley3018
@bennettfoley3018 4 жыл бұрын
fabulous lecture. Looking forward to the rest of the course! thanks for sharing your expertise
@fab313
@fab313 4 жыл бұрын
Excellent video. Summarizing so much information in barely 10 minutes and in such a clear way is quite an achievement!
@filip0822
@filip0822 4 жыл бұрын
I really love that! Event loop is presented in such a bright way that your video say more about it in 2 minutes than the long speeches from big conferences :D
@will_abule
@will_abule 4 жыл бұрын
So true well taught I'll share it on Twitter looking forward to the next JavaScript video
@Fireship
@Fireship 4 жыл бұрын
Awesome, thanks Will :)
@kanaanbahmani5062
@kanaanbahmani5062 3 жыл бұрын
I can listen to these topics for hours and days non-stop, please create more of these types of videos
@ViniciusNegrao_
@ViniciusNegrao_ 4 жыл бұрын
Man, great info, those are some normally unheard stuff from JS. I've been working with js for 8 years and I'm still learning new stuff everyday!
@tomwalsh96
@tomwalsh96 3 жыл бұрын
I remember watching your videos years ago but never remember them being this good! Maybe I've only just started to really appreciate it as I become a better developer. They are simultaneously in depth and easily digestible, with a sprinkle of humour for good measure 👏
@DrakiniteOfficial
@DrakiniteOfficial 3 жыл бұрын
I've been using JavaScript regularly for 6 years, and I still learned a lot in this video!
@911madza
@911madza 4 жыл бұрын
for folks to claim they know all the modern cutting edge, i always say to watch fireship and get their minds blown away
@BinkiklouGaminglol
@BinkiklouGaminglol 4 жыл бұрын
then they will reply "I aLrEAdy KnEw ThAt" or "I am Fireship."
@vinceresempre1617
@vinceresempre1617 4 жыл бұрын
New to the JS world. Dayum, what an intro. Not even a single second wasted. Kudos!
@dominiclapitan8466
@dominiclapitan8466 4 жыл бұрын
Didn't know you have a mobile app for JS quizzes. This is just amazing! Thank you for your hard work and dedication to KZbin and the world of JS! I hope you prosper more
@pwan3971
@pwan3971 4 жыл бұрын
This channel is a gold mine of knowledge, love it!!
@shass3207
@shass3207 4 жыл бұрын
Simply amazingly good production quality, and free of all useless fluff that is common in videos on this topic!
@osamaa.h.altameemi5592
@osamaa.h.altameemi5592 3 жыл бұрын
Man this is pure gold, the micro-queue thing blew me away. Now I know "promises" are not just another way of handling stuff, they have are used for higher priority tasks.
@victorpinasarnault9135
@victorpinasarnault9135 3 жыл бұрын
I never get tired to hear about JavaScript. It began as a completion of Java as a programming server side code, but became more than that. It's starts as a script language, but soon became a general purpose language.
@saadabbasi2063
@saadabbasi2063 4 жыл бұрын
Lots of love and thumbs up Thanks Jeff
@jugzster
@jugzster 4 жыл бұрын
Aside from the educational, clear, and concise info, awesome job on the movie and pop culture references! Makes it entertaining without being distracting👏🏻
@LV-md6lb
@LV-md6lb 4 жыл бұрын
As always, well done!
@Peekaymaja
@Peekaymaja 4 жыл бұрын
I'm a javascript developer, mean stack. And your videos are so cool to explain what I already in detail. Thank you.
@rustystrings0908
@rustystrings0908 4 жыл бұрын
Awesome, your videos are really engaging, and I'm learning that there is so much more left to lean about JS than I thought
@otheraw5659
@otheraw5659 4 жыл бұрын
This series is gonna be so amazing !
@lycansre
@lycansre 4 жыл бұрын
You're making me love Javascript more than Swift. I learned both, IOS Development and FEWD. Thank you for making such informative videos.
@elijahmedrano2068
@elijahmedrano2068 3 жыл бұрын
I love the visual aspect of your videos! Great stuff!
@iamunr
@iamunr 4 жыл бұрын
Aaaand this series has turned me into a Fireship fan. A++, keep'm coming!
@SuperGUERO17
@SuperGUERO17 4 жыл бұрын
WOW I've learned more about javascript from watching this video, then from all the books and courses I've done
@gregfletcher2360
@gregfletcher2360 4 жыл бұрын
Man, I love your video's! Can't wait for the next one!
@reymartpineda5557
@reymartpineda5557 4 жыл бұрын
Nice, thank you for this knowledgeable video. Keep it up
@JamieStrausbaugh
@JamieStrausbaugh 4 жыл бұрын
Wow, just wow. This video you've made here on the fundamentals of JavaScript pushes beyond the scope of awesome and returns undefined. 🤯 Magnificent contribution! 👌🥳
@divinedela9125
@divinedela9125 4 жыл бұрын
Great video as always, Jeff. I love the Computer Science stuff
@THE16THPHANTOM
@THE16THPHANTOM 4 жыл бұрын
this is just perfect. especially the explanation about heap vs stack. i will sending a lot of beginner people to this video for learning the difference between heap and stack and how it all works.
@ohmygeeve
@ohmygeeve 3 жыл бұрын
Learned about this stuff long ago but definitely needed a refresher!
@himbary
@himbary 4 жыл бұрын
Absolutely amazing quality. Will definitely follow you guys.
@MereAYT
@MereAYT 9 ай бұрын
Thanks for keeping it conceptual. It is hard to find coding tutorials that don't immediately break out the IDE and dive into code minutia.
@ayushdev132
@ayushdev132 4 жыл бұрын
Thank you man... I just found you and your videos are amazing.
@Wawaloo17
@Wawaloo17 4 жыл бұрын
This video is just what I needed. Great content!
@aryany5737
@aryany5737 3 жыл бұрын
amazing man!!! i was really searching for this type of video which gives me real topics to think about
@eduardvandenheever8565
@eduardvandenheever8565 Жыл бұрын
I just recently found your videos and I find them both immensely helpful and entertaining. I love the memes!😆Thank you very much.
@chodingninjas7415
@chodingninjas7415 2 жыл бұрын
I luv ur channel man I binge it like some TV series
@IanJBarker
@IanJBarker 4 жыл бұрын
One of the best videos I've ever seen. Thank you!
@nghiaminh7704
@nghiaminh7704 Жыл бұрын
the part about "implementation details" at around 4:28 is *very* important and well-presented. thanks for making this video.
@francisroberts1471
@francisroberts1471 Жыл бұрын
Wow I won't even mention the number of times I replayed that intro! AWESOME!
@MCMadk
@MCMadk 4 жыл бұрын
Just learnt about the microtask queue. Good stuff. Keep it up !
@shargeforce
@shargeforce 4 жыл бұрын
Before 0:26 was over I already subbed. Good job. Greetings from switzerland.
@jackwright7014
@jackwright7014 4 жыл бұрын
I always wondered how JavaScript works under the hood! As a web developer leaving the 'beginner' phase, I found this really interesting!
@swapnildadamode662
@swapnildadamode662 2 жыл бұрын
You are legend! This is all of my years studying webdev
@HealyUnit
@HealyUnit 4 жыл бұрын
I liked this video, then unliked it just so I could like it again. Your explanations are clear and concise, and your visual style is amusing yet straightforward.
@alexanderrandolph483
@alexanderrandolph483 4 жыл бұрын
Good explanation of levels of different languages.
@ahmadtarifi1619
@ahmadtarifi1619 4 жыл бұрын
Awesome like always, thank you for this amazing video 👌
@alexcubed4270
@alexcubed4270 4 жыл бұрын
Yet another awesome and high-quality video. Keep up the great content! :)
@randomuser66438
@randomuser66438 4 жыл бұрын
I'm happy I know everything cited in the first 18 seconds. Makes me feel I'm in the right path.
@moseskarunia
@moseskarunia 4 жыл бұрын
I love your animation and illustration. I wonder how you index such huge database of gif memes? 😂
@aibrainlet8041
@aibrainlet8041 4 жыл бұрын
ugh quickly becoming my favorite channel
@CrisTowi
@CrisTowi 4 жыл бұрын
Great job with this video and with the channel in general. Fun and interesting!
@XalphYT
@XalphYT 4 жыл бұрын
Subscribed! You have such a fresh approach to making videos that it's truly awe inspiring. It also helps that you're factually correct. Like, wow!
@namangarg3933
@namangarg3933 4 жыл бұрын
Super Awesome Explanation !! Loved it
@stachowi
@stachowi 4 жыл бұрын
WTF! This is amazing... keep this type of content coming!!
@blissh_
@blissh_ 3 жыл бұрын
Man, i love you so much, your videos are the best, you motivate me to continue learning.
@FitnessChaos
@FitnessChaos 3 жыл бұрын
Such a good video. Never seen a explanation of JS like this
@aguswidhiyasa
@aguswidhiyasa 4 жыл бұрын
The most understanable channel of javascript
@BertMaurau
@BertMaurau 4 жыл бұрын
Thank you for this highly information-packed, quality video! A solution to prevent (main)thread-blocking code, is to move it to a separate web-worker for example to keep the main-thread responsive :D
@vikramsrinivasan8176
@vikramsrinivasan8176 4 жыл бұрын
Loved it. Subscribed. 1st time clear cut differentiation of compiler & interpreter. 👍
@Devillman90
@Devillman90 3 жыл бұрын
Nice video man! I didn't knew that the micro task have priority over the Task Queue! Thanks for that!
@Sachica00
@Sachica00 4 жыл бұрын
Amazing man, lots of confusing terms very well explained about javascript which I think despite what many paople say, is an amazing language!
@adagas-caouchristian7875
@adagas-caouchristian7875 4 жыл бұрын
In my opinion JavaScript is a good language, but it's easy to write unoptimized or insane code with it, hence its bad reputation. "There are no bad tools, just bad developers", yadda yadda. On the other hand, maybe its transition from a simple client-side language (merely meant to enable dynamic interfaces in web pages) to a full-fledged, general purpose scripting language wasen't as smooth as it should've been. The people at ECMA should impose more standards in order to avoid the tiny but frustrating inconsistencies across JS engines.
@gdolphy
@gdolphy 4 жыл бұрын
Those inconsistencies and bad developers create an environment where the overall system will continue to evolve.
@MLennholm
@MLennholm 4 жыл бұрын
@@adagas-caouchristian7875 Javascript has its legacy in the early days of the WWW, when the idea was that an author of an HTML document should be allowed to write all kinds of mistakes and the browser should just do its best to figure it out anyway. That's why, according to the same 'mantra', JS has things like implicit type coercion, hoisting, ASI etc. We should probably be grateful they didn't also make it case-insensitive.
@LeandroLima81
@LeandroLima81 4 жыл бұрын
Amazing... I love the speed. I so happen to be able to follow along. This time. 😁
@jlai383
@jlai383 4 жыл бұрын
I like this kind of video so much! Thx Fireship!!
@mrjean9376
@mrjean9376 4 жыл бұрын
Seriously this is best programming channel! Okay u got new sub.
@joepesci5845
@joepesci5845 4 жыл бұрын
Woooow what is this kind of Quality??? 10+/10, Thank You!!!
@Rambou92
@Rambou92 4 жыл бұрын
Damn! The whole JavaScript Architecture in 10 mins!
@raihan.nismara
@raihan.nismara 2 жыл бұрын
ooh my.. this is so good, love your content how you did serve it!
@SogMosee
@SogMosee 4 жыл бұрын
holy shit dude, you went pretty deep. Well done man.
@cabo087
@cabo087 4 жыл бұрын
Great video to refresh my memory.
@xtremehackerzpro9511
@xtremehackerzpro9511 4 жыл бұрын
Great explanation of event loop process :)
@joseberardocunha
@joseberardocunha 4 жыл бұрын
Fabulous explanation.👏👏
@Omar-vz9el
@Omar-vz9el 4 жыл бұрын
This is completely fascinating!
@tsheskoelmaximus3784
@tsheskoelmaximus3784 4 жыл бұрын
# Was great to connect the dots
@ikezedev
@ikezedev 4 жыл бұрын
Great one Jeff... Everything you do stands out
@sajibsrs
@sajibsrs 2 жыл бұрын
Short and effective. Thanks
@halash_gowda5127
@halash_gowda5127 4 жыл бұрын
You've saved me 1 complete month of research time on JS ..Take a bow genius.
@NikoLagman
@NikoLagman 4 жыл бұрын
The first KZbin video in a while that made my browser hang... on purpose.
@nicolapigozzo5188
@nicolapigozzo5188 4 жыл бұрын
Yeah let s go with JavaScript. I will follow you guys. Great job
@marcaurele5234
@marcaurele5234 4 жыл бұрын
Excellent content , Great video ! Would like to see more !
@aravind.a
@aravind.a 4 жыл бұрын
Extreme detailed explanation bro.. you're master.
The JavaScript Survival Guide
14:47
Fireship
Рет қаралды 709 М.
God-Tier Developer Roadmap
16:42
Fireship
Рет қаралды 6 МЛН
АВДА КЕДАВРАААААА😂
00:11
Romanov BY
Рет қаралды 6 МЛН
What Happens If You Trap Smoke In a Ball?
00:58
A4
Рет қаралды 16 МЛН
BRAWLER MUTATIONS WILL BREAK THE GAME! - Brawl Talk
09:34
Brawl Stars
Рет қаралды 25 МЛН
Why so many distros? The Weird History of Linux
8:23
Fireship
Рет қаралды 1,4 МЛН
Reacting to Controversial Opinions of Software Engineers
9:18
Fireship
Рет қаралды 1,9 МЛН
7 Cryptography Concepts EVERY Developer Should Know
11:55
Fireship
Рет қаралды 1,2 МЛН
PROOF JavaScript is a Multi-Threaded language
8:21
Beyond Fireship
Рет қаралды 255 М.
GitHub Copilot just got promoted to Captain
4:01
Fireship
Рет қаралды 77 М.
10 weird algorithms
9:06
Fireship
Рет қаралды 1 МЛН
TLS Handshake Explained - Computerphile
16:59
Computerphile
Рет қаралды 537 М.
TypeScript - The Basics
12:01
Fireship
Рет қаралды 1,5 МЛН
СЛОМАЛСЯ ПК ЗА 2000$🤬
0:59
Корнеич
Рет қаралды 1,4 МЛН
Как часто вы чистите свой телефон
0:33
KINO KAIF
Рет қаралды 1,2 МЛН