JavaScript for the Haters

1,452,207
0
Published 2022-11-24
Why does everybody hate JavaScript so much? A complete roast of JS that highlights the strongest criticisms against the world's most popular programming language.

#javascript #roast #comedy

đŸ”„ Black Friday Discount

fireship.io/pro

đŸ”„ Use code BLACKFIRE at checkout for 40% off

💬 Chat with Me on Discord

discord.gg/fireship

🔗 Resources

- Full JavaScript Course fireship.io/courses/js
- JavaScript in 100 Seconds    ‱ JavaScript in 100 Seconds  
- React for the Haters    ‱ React for the Haters in 100 Seconds  

🎹 My Editor Settings

- Atom One Dark
- vscode-icons
- Fira Code Font

🔖 Topics Covered

- JS Roast
- Funny JavaScript features
- Worst aspects of JavaScript
- JavaScript pitfalls
- JavaScript

All Comments (21)
  • @Virbox
    When you code in JS, you always want to shout "F%ck this", but you can't be sure what "this" means in your local environment...
  • Non-JS developers: Finally a video for me.. JS developers: Finally a video for me..
  • The worst thing about JavaScript is being a tutor trying to explain "that's not how it should work, and you shouldn't do that, but yes, it does work"
  • @migvelv
    1:18 I love how he couldn’t be bothered to say “object” twice so he copied the audio, following the DRY principle
  • @panlis6243
    "Completely detatched from reality" is the most accurate description of js type system that I've ever heard
  • @Xylight
    There was Atwood's law, now here's my law: "Everybody who can code in JavaScript, suffers with JavaScript"
  • I love how JavaScript worked around the weird equality test issues by adding more equality operators like === (in other words, no I mean it, is it really really equal?)
  • @MxSlfDstrct
    I love that the only good thing he has to say about JS is that he gets paid good money to write it
  • @rea9lizer
    Un popular opinion: The only problem with TypeScript is that it's based on JavaScript
  • @JettoDz
    "Programming in JS is like looking both ways to cross the street, and then getting hit by an airplane" - Don't know by who
  • @Radian628
    Fun fact: {} + [] is 0 because, in this case, {} is not an object. Rather, it's an anonymous block scope. If you're confused, it's equivalent to the expression "if (true) {} + []". "if (true) {}" isn't a piece of data--- it's a statement. The + operator in this case is unary, meaning that [] is its only operand. To demonstrate this, you could type out "+ []" and get the same result. Unary + simply casts its operand to a number. [] casts to 0. And hence, the result is 0.
  • @pesterenan
    "Puts food on my family" Well, considering JS type conversion, a family and a table are the same thing for JS, so this is acceptable. xD
  • @crappycoder
    Best 100 seconds to send to someone planning to try and be a javascript dev. From: A javascript dev.
  • @AvenDonn
    I'm a C# dev who was forced by Amazon to code in JS. Now that I'm out of my month long journey of TS and NodeJS, I'm constantly putting $ in my strings in C#. Thanks JS
  • @ShemoKam
    I love how we as a community can disagree on many things, but we all collectively hate javasctipt 😂👍
  • @ChrisLDGK
    I’ve been working as a react developer full-time for the past 5 years and I’m absolutely stoked to see someone shit on JavaScript
  • @BoloH.
    "Used exclusively to build things it's not supposed to" few hours earlier I was working on a TS/JS project and had this exact thought.
  • @cIappo896
    Javascript got me into a project that is a part LinkedIn, part Facebook, part Upwork, part Jira and part Medium. The deadline is January 2023, and there's 3 FE devs, including me. I'm the most senior with 3 years. Our backend isn't done yet.
  • @oODomeeOo
    I had a JS project last week in university which drove me insane because of the CommonJS, ES6 and bundling clusterfuck. Like everything you do breaks another thing. Then there are features which are supported since years in one browser and not in others (I look at you module web workers and importmaps). The video was relieved my pain.