JavaScript for the Haters

Поділитися
Вставка
  • Опубліковано 20 сер 2024
  • 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
    🔗 Resources
    - Full JavaScript Course fireship.io/co...
    - JavaScript in 100 Seconds • JavaScript in 100 Seconds
    - React for the Haters • React for the Haters i...
    🎨 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 drama

КОМЕНТАРІ • 2,2 тис.

  • @Virbox
    @Virbox Рік тому +17786

    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...

  • @maxxinmaze4501
    @maxxinmaze4501 Рік тому +12705

    Non-JS developers: Finally a video for me..
    JS developers: Finally a video for me..

    • @meegmemes
      @meegmemes Рік тому +21

      🤔

    • @somebody_2837
      @somebody_2837 Рік тому +65

      I feel that people are just hating js because others hate it, and not because they think it's bad, even the non js devs are hating on it for absolutely no reason.

    • @sharmarahul384
      @sharmarahul384 Рік тому +42

      Yeah! I am JS developer and waiting for this video!

    • @proyas21
      @proyas21 Рік тому +1

      Yoooooo

    • @ukaszzajac6704
      @ukaszzajac6704 Рік тому +87

      @@somebody_2837 no, its just a bad language, it was not designed to be used this extensively

  • @gibbyfromicarlybestshow986
    @gibbyfromicarlybestshow986 Рік тому +1810

    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"

    • @ziskador
      @ziskador Рік тому +70

      that's exactly what my teacher says in every class 🤣🤣🤣

    • @aki7162
      @aki7162 7 місяців тому +2

      That's why you should study js by urself reading specs

    • @DavidLaFontaine
      @DavidLaFontaine 6 місяців тому +12

      If you listen closely, you can hear the faint screams from inside the tutor's braincase ...

    • @carlospacheco7544
      @carlospacheco7544 2 місяці тому

      too relatable that it hurts.

    • @awwalmohammed9254
      @awwalmohammed9254 2 місяці тому

      I had the same issue

  • @migvelv
    @migvelv Рік тому +8266

    1:18 I love how he couldn’t be bothered to say “object” twice so he copied the audio, following the DRY principle

    • @Brawaru
      @Brawaru Рік тому +4

      languagesEverCreated.some(lang => isJavaScript(lang)) // ⇒ true
      Checks out!

    • @festusighalo
      @festusighalo Рік тому +156

      I see what you did there 😄😄

    • @yuriy636
      @yuriy636 Рік тому +40

      Definitely

    • @dontreadmyusername6787
      @dontreadmyusername6787 Рік тому +479

      It is one of the languages of all time
      If i had to rate it out of 10 i would rate it a number

    • @Zmunk19
      @Zmunk19 Рік тому +182

      @@dontreadmyusername6787 and I would rate it out of 10

  • @panlis6243
    @panlis6243 Рік тому +4110

    "Completely detatched from reality" is the most accurate description of js type system that I've ever heard

    • @i_should_be_coding
      @i_should_be_coding Рік тому +258

      The JS type system's biggest fault is trying to help you do things you didn't know you intended, mostly by casting everything to a string.
      It's like editing a word document, but Clippy has sudo privileges over your filesystem now.

    • @Merthalophor
      @Merthalophor Рік тому +113

      @@i_should_be_coding Yeah wtf were they thinking? "let's make 0 == "0" for when the programmer forgot to remove the quotation marks, so he doesn't get an error and have to debug his code" lmao

    • @ChickenBoy260
      @ChickenBoy260 Рік тому +43

      @@Merthalophor and so we have === for type checking

    • @MrCool-lo3ls
      @MrCool-lo3ls Рік тому +31

      @@Merthalophor i think the reason was for user input to work better, as in: they type a number, the program would think it is a string, but the programmer would want to compare it to a number.

    • @idanlib
      @idanlib Рік тому +1

      It's like a monkey with a machine gun. You can't really blame the monkey for the small genocide it commits every time it wants to pass arguments to a function which is also an object because everything is an object.

  • @BrianOSheaPlus
    @BrianOSheaPlus Рік тому +1138

    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?)

    • @bellissimo4520
      @bellissimo4520 Рік тому +133

      It's more equally equal.

    • @ConernicusRex
      @ConernicusRex Рік тому

      No other language has this because '==' in those languages is testing for equality but '==' in JS... isn't. Because it's "Like Java but for r*tards."

    • @Favmir
      @Favmir Рік тому +287

      "They are all equal…… but some are more equal than others."

    • @dotanuki3371
      @dotanuki3371 Рік тому +44

      apparently it's not enough. I took at look at react a few years back, think it was around version 15/16. threw together a oneliner that walked the dep tree of a fresh 'new' react app (at a casual 200 mb), and counted duplicated libraries. the winner was an equality checker lib, at 19 duplicates

    • @TheInnerSpark
      @TheInnerSpark Рік тому +5

      @@dotanuki3371 wtf really? what do you need 19 duplicates for!?!?!

  • @JettoDz
    @JettoDz Рік тому +138

    "Programming in JS is like looking both ways to cross the street, and then getting hit by an airplane" - Don't know by who

    • @chadvise3308
      @chadvise3308 5 місяців тому +3

      😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂

    • @tangsi721
      @tangsi721 2 місяці тому +2

      笑死了

  • @MxSlfDstrct
    @MxSlfDstrct Рік тому +858

    I love that the only good thing he has to say about JS is that he gets paid good money to write it

    • @_DRMR_
      @_DRMR_ Рік тому +72

      No, he said it puts food on his family.

    • @r.y.z.
      @r.y.z. Рік тому +5

      He also said he loves programming with it.

    • @monkey_gamer_001
      @monkey_gamer_001 10 місяців тому +10

      yeah but he said it like he's being held hostage@@r.y.z.

    • @r.y.z.
      @r.y.z. 10 місяців тому

      @@monkey_gamer_001 that's just his voice

    • @JohnStockton7459
      @JohnStockton7459 6 місяців тому

      All these new coders only in it for the money are so cringe. Like it genuinely makes me happy knowing all of you will fail and remain broke forever

  • @pesterenan
    @pesterenan Рік тому +2177

    "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

    • @joostvisser8537
      @joostvisser8537 Рік тому +81

      If you add food and family it equals dinner table in JS

    • @David_Box
      @David_Box Рік тому +90

      For those who don't know, that's actually a quote from George Bush

    • @timurf6392
      @timurf6392 Рік тому

      @@David_Box Yes! Just like free nations don't develop weapons of mass destruction!

    • @vapeurdepisse
      @vapeurdepisse Рік тому +1

      What types in JS

    • @alanwilliamduarte5617
      @alanwilliamduarte5617 Рік тому +6

      oq vc ta fazendo por aqui meu caro jogador de oxygen not included? Não é possível que vc possa ter uma vida normal!

  • @Xylight
    @Xylight Рік тому +3124

    There was Atwood's law, now here's my law:
    "Everybody who can code in JavaScript, suffers with JavaScript"

    • @adamantii
      @adamantii Рік тому +63

      * cries in JavaScript *

    • @mihir7126
      @mihir7126 Рік тому +4

      @Dr. Gregory House the answer is yes.

    • @BloodyMobile
      @BloodyMobile Рік тому +10

      If you don't hate JS at least partially after using it, you haven't used it thoroughly yet.

    • @lewa_j
      @lewa_j Рік тому +4

      Sadly, you don't have to code in it to suffer from it

    • @tedchupig
      @tedchupig Рік тому

      i dont hate js, i hate ms

  • @Radian628
    @Radian628 Рік тому +1140

    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.

    • @Lexaire
      @Lexaire Рік тому +43

      Where did the semicolons get inserted?

    • @BluePieNinjaTV
      @BluePieNinjaTV Рік тому +116

      @@Lexaire nowhere because JavaScript doesn't require them

    • @crackwitz
      @crackwitz Рік тому +150

      What the fuuuuuuuuuukkk

    • @dantnad
      @dantnad Рік тому +124

      Cool, now explain 2 - "2" = 0 and 2 + "2" = 22

    • @geniewiley4217
      @geniewiley4217 Рік тому +147

      @@dantnad type coercion, ints and strings have different definitions for the + operand so javascript converts a string to an int or vice-versa

  • @oODomeeOo
    @oODomeeOo Рік тому +84

    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.

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 Рік тому +10

      I mainly use MDN as my reference for things Web. That has handy compatibility matrices for all the important features (that I’ve come across so far), so I know to only use stuff where all the boxes are green.

    • @dylanbailey4791
      @dylanbailey4791 Рік тому +2

      Out of curiosity, how on earth did you solve it? Java to Js dev here, trying to make npm packages at my job has been a nightmare

    • @oODomeeOo
      @oODomeeOo Рік тому +7

      @@dylanbailey4791 We didn't lol. The prof had just Chrome as a requirement so Firefox won't work at all because of importmap and module web workers. And library wise we discarded everything except ES6 modules. That worked quite well, because bundling isn't required then.

  • @rea9lizer
    @rea9lizer Рік тому +5880

    -Un- popular opinion: The only problem with TypeScript is that it's based on JavaScript

    • @st-jn2gk
      @st-jn2gk Рік тому +203

      Have you tried dart? it feels like the most elegant amalgamation of both. truly a beautiful language. Unfortunately only has a community for flutter.

    • @rea9lizer
      @rea9lizer Рік тому +52

      @@st-jn2gk I've been looking forward to try Flutter but never looked into Dart's syntax and features. Thanks for suggestion, would definitely try it out soon!

    • @akatsukilevi
      @akatsukilevi Рік тому +6

      Tru

    • @LeoPacheco87
      @LeoPacheco87 Рік тому +57

      Popular opinion*

    • @aaronmarcus6295
      @aaronmarcus6295 Рік тому +21

      @@st-jn2gk Dart is so amazing

  • @window.location
    @window.location Рік тому +1453

    Non-JS devs: hates JS.
    JS devs: hates JS every moment.

    • @oktavic777
      @oktavic777 Рік тому +104

      You mean moment.js?

    • @isaacqadri
      @isaacqadri Рік тому +10

      @@oktavic777 lmao

    • @CodecrafterArtemis
      @CodecrafterArtemis Рік тому +23

      When React hooks started to gain popularity, I joked that JS devs don't want half of JS (the object-oriented parts).
      Now, with the popularity of TypeScript, I feel like most JS devs don't want JS at all.

    • @mihir7126
      @mihir7126 Рік тому +5

      Moment gives me PTSD.

    • @jsonkody
      @jsonkody Рік тому +1

      Nah .. I am sad about some stupid $#!@ in JS but overall I am ok with the lang .. BUT I hate more and more other BASE tech. - its so bad design .. CSS and HTML, and request/response and like those uses kebab case, html comments are so stupidly bad it's not evem funny etc.

  • @sharpfang
    @sharpfang Рік тому +77

    Not even a mention that every implementation of Javascript is different and incompatible with other implementations. Theoretically same code should work on any web browser, or other webpage rendering device. In practice you write miles of code to test for presence of features, and work around their absence, and in the end it still fails on a number of devices where the test itself triggers a runtime error.

    • @MrQuantumCodes
      @MrQuantumCodes Рік тому

      That has never happened to me as of yet, I thought that was a thing of the past. I can sort of agree that some functions still do this, but I don't think it's that prominent to be called a problem :)

    • @Dragiux
      @Dragiux Рік тому +11

      @@MrQuantumCodes You don't run your code on enough devices.

    • @sharpfang
      @sharpfang Рік тому +6

      @@MrQuantumCodes "That was a thing from the past" means you don't test your code on older devices. Some 3 weeks ago I decided I'll get back to Javascript after some 15-year hiatus, learn all the new stuff. Made a nice small webapp (a slideshow pulling random pictures off a *booru site) using all the modern best practices. Then bought the cheapest new 10" Android tablet to hang it on the wall and run the app on it, as a kind of electronic photoframe. Android 4.2, newest Chrome capable of running on it, 10 years old, the app crashed horribly. Allegedly JSON.Parse was on Chrome since the beginning, and is the fallback if newer JSON parsers fail. Apparently not on Android, sought alternatives, all too new, had to do the deprecated eval() people tell horror stories about. Fullscreen API - the standard version causes runtime error, but I managed to find the experimental, pre-standard implementation specific to Chrome and it worked. Checking for fullscreen was a no-go though, the checking for presence of the property would cause runtime error, never mind trying to read it. I had to scratch a modern, neat [].includes() to find if an element is in the array, and iterate elements like one would in Netscape Navigator. And had to do body id="body" because GetElementsByTagName wasn't implemented.

    • @daveyvanderweide4977
      @daveyvanderweide4977 Рік тому +4

      @@sharpfang Android 4.2 is a thing from the past though. It is well over a decade old now. I am not suprised modern JS won't run optimal on a deprecated OS

    • @sharpfang
      @sharpfang Рік тому +1

      @@daveyvanderweide4977 And yet I bought the tablet "new" never used, from a retailer, dunno how old really but not some refurb. Recently seen a knock-off Xiaomi 12 phone look-alike, advertized to run Android 11. In reality it ran Android 4.2 reskinned to look like and identify as 11. And it wasn't some ancient product that spent ages in storage. It was manufactured over the past year, 'cause they wouldn't be able to replicate Xiaomi 12's look faithfully before its release. In short, Android 4.2 is far from dead, and its users, sellers and manufacturers don't care about its "deprecated" status. Meanwhile JS developers who do, create for these very users the problems I wrote about.

  • @AvenDonn
    @AvenDonn Рік тому +185

    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

    • @YuriG03042
      @YuriG03042 Рік тому +12

      at least you are not concatenating strings!

    • @farid-frederick
      @farid-frederick Рік тому +35

      learn php and maybe you put $ in variable name as well

    • @encycl07pedia-
      @encycl07pedia- Рік тому +5

      @@farid-frederick PHP > JS

    • @GreyDeathVaccine
      @GreyDeathVaccine Рік тому

      @@encycl07pedia- I love new features in php8

    • @isodoubIet
      @isodoubIet Рік тому +3

      input "what is your name? "; name$

  • @BoloH.
    @BoloH. Рік тому +180

    "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.

    • @_robertas
      @_robertas Рік тому +11

      someone made a minecraft mod just for allowing people to code is js 💀💀💀

    • @i-ahmed3495
      @i-ahmed3495 Рік тому

      @@_robertas he wants them dead probably

    • @ouhyeap315
      @ouhyeap315 Рік тому +1

      ​@@_robertas xdd

    • @edipedipbulmaz
      @edipedipbulmaz Рік тому

      im making a country-creating game in JS AND IT'S LITERALLY AN APP LMAO
      that's the reason i use localstorage over json, because i literally can't use json

    • @ConernicusRex
      @ConernicusRex Рік тому +1

      Yep. A general purpose tool that can be a applied to any job is almost always going to be a bad tool for whatever job you apply it to. It's like trying to dig a hole with a butterknife. Sure, you can, but someone came up with shovels for just this situation.

  • @ChrisLDGK
    @ChrisLDGK Рік тому +946

    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

    • @RikTaa
      @RikTaa Рік тому +14

      Just starting out, got any tips?

    • @faridguzman91
      @faridguzman91 Рік тому +202

      @@RikTaa abandon ship

    • @bobbypaycheque
      @bobbypaycheque Рік тому +73

      @@RikTaa Learn a real language like C

    • @user-ov1nn2sr4s
      @user-ov1nn2sr4s Рік тому +18

      @@bobbypaycheque probably not worth it, easier to get js job first and then start learning something more complicated like C

    • @nishantdesai3705
      @nishantdesai3705 Рік тому +143

      @@bobbypaycheque C is for kids, just learn assembly language

  • @psyk109
    @psyk109 Рік тому +25

    "it puts food on my family" Yep. That is exactly how JS works.

    • @napalm5
      @napalm5 Рік тому

      George Bush said this back in the day

  • @cIappo896
    @cIappo896 Рік тому +178

    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.

    • @isaiahdavis5435
      @isaiahdavis5435 Рік тому +9

      LOL

    • @ValidT
      @ValidT Рік тому +19

      Sounds about right

    • @darkwoodmovies
      @darkwoodmovies Рік тому +16

      Psh, the backend is just a random DB vendor stitched together with Node and Express.

    • @sergiishpak
      @sergiishpak Рік тому +3

      what is the name of the project?

    • @encycl07pedia-
      @encycl07pedia- Рік тому +1

      Can you create a GUI with Visual Basic to track your progress?
      I'd just use PHP. That's what Facebook was built on. Power to the users!

  • @crappycoder
    @crappycoder Рік тому +444

    Best 100 seconds to send to someone planning to try and be a javascript dev.
    From: A javascript dev.

    • @JorgetePanete
      @JorgetePanete Рік тому

      😂

    • @pleonexia4772
      @pleonexia4772 Рік тому +19

      Literally decided to learn JavaScript 12 hours ago. Had no idea what I was in for.

    • @JorgetePanete
      @JorgetePanete Рік тому +6

      @@pleonexia4772 Go for Rust, it works, and has a compilation step

    • @javabeanz8549
      @javabeanz8549 Рік тому +5

      @@pleonexia4772 I learned it because I needed to, but I have made a few funny things with it and I learned enough to do some troubleshooting.

    • @abjoern
      @abjoern Рік тому

      I've never understood why it's called 100 seconds when the videos are 160-170?

  • @ryanpmcguire
    @ryanpmcguire Рік тому +277

    Despite being relatively experienced in javascript i am legitimately thinking about buying the course just because of the extremely concise, no BS style of delivery. I would unironically buy a course on every major language from you if it's done in the same style as your usual how-to's.

    • @ZephrymWOW
      @ZephrymWOW Рік тому +22

      if your experienced then you have no use for these courses lol. Just make something. Sounds like your experienced in tutorial hell.

    • @poolkrooni
      @poolkrooni Рік тому +63

      @@ZephrymWOW let people enjoy things in life.

    • @adambickford8720
      @adambickford8720 Рік тому

      @@ZephrymWOW Bullshit. 60s w/this guy is equal to hours of experimentation.

    • @trumpetpunk42
      @trumpetpunk42 Рік тому +12

      @@ZephrymWOW the entertainment value alone would worth it! I'd rather watch a good roast of my work platform than some laugh-tracked talking heads on TV...

  • @amalkatrazz
    @amalkatrazz Рік тому +208

    I've recently tried JS. I am not a dev, I am a tech writer and I wanted some functionality in the webdoc I was making that the Jekyll theme we use does not support out of the box. I know some basic Python and I studied R as part of my linguistics major so I figured implementing a couple of simple scripts would be totally non-issue.
    And no, it was not an issue, I figured out quite quickly how to code the entire thing. Problem was, I would have spent at least a third of that time less if JS had syntax that made sense and if its console log errors were remotely descriptive of what is wrong with your code. I might be stupid, I have an arts degree after all, but to me, "x is not a function" does not intuitively mean that I missed one semicolon in a few dozens of lines of code.

    • @Gintoki_Madao
      @Gintoki_Madao Рік тому +36

      The last part of your paragraph sounded like frustration 😭

    • @joon_yoo
      @joon_yoo Рік тому +35

      I'll be honest, most error msgs are nondescriptive pieces of garbage that don't even point to the area of the error so I get you man

    • @Saphkey
      @Saphkey Рік тому +10

      A good IDE will oftenmost point out syntax errors for you that the error logging would be useless for.

    • @amalkatrazz
      @amalkatrazz Рік тому +4

      @@Saphkey I used browser and text editor, and console messages in the browser were useless crap most of the time 😢

    • @manuelsilva3754
      @manuelsilva3754 Рік тому +3

      that's why you use a formatter like prettier or so

  • @carlsmith8593
    @carlsmith8593 Рік тому +53

    I never even wanted to learn JS, now I'm stuck writing it forever.

    • @carlsmith8593
      @carlsmith8593 Рік тому

      @DeadManWalking - True. Though, ironically, I think CoffeeScript would make an excellent shell scripting language.

  • @frz_akbar
    @frz_akbar Рік тому +94

    JavaScript dev when debugging: "Where tf my data going?"

    • @rayleigh404
      @rayleigh404 Рік тому +7

      God damn true

    • @Daaboo
      @Daaboo 4 місяці тому +2

      Best errors are when the console and the page is just blank. Like wtf did just happen?

  • @dioveath
    @dioveath Рік тому +108

    "Homeless developers" lol. Seriously entertaining. Best video to date. And I'll need to build some npm modules.

  • @DrAnimePhD
    @DrAnimePhD Рік тому +78

    I originally was gonna be a programmer. College was going great at first. Then we got to Java and JavaScript. That damn language made me immediately transfer my credits into a different major. In hindsight, I’m thankful JS saved me from a career of pain and depression

    • @RomanMlejnek
      @RomanMlejnek Рік тому +15

      based

    • @vapeurdepisse
      @vapeurdepisse Рік тому +23

      Big BS but you have an anime avatar so that's no surprise.

    • @DrAnimePhD
      @DrAnimePhD Рік тому

      @@vapeurdepisse Counterargument: I am in your walls

    • @thebuffman5597
      @thebuffman5597 Рік тому +2

      @@bri4498 Tbh we are learning javascript right now and i started messing around just with how optimized i could write code in it. Then the teacher asked me about my iq, just because I had an idea on what to do in javascript. Golden moment.
      But really, on the other hand i have been programming for 7 years beforehand in game maker studio, it was funny when a girl in class asked "ohh, you must've learned that before, right?" I nodded to be polite instead of telling her "This is my first attempt at this language lol".
      Anyway, it is funny, how exploiting these issues can also make some funny things. Like some vodoo magically optimized codes xD
      Like literally i optimized the teachers code to run at 50% of the normal time and made 1000000.... iterations to prove my point, yep it is indeed optimized lol.

    • @crispyybaconx
      @crispyybaconx Рік тому

      @@bri4498 what's wrong with scratch?

  • @Idk-j1n
    @Idk-j1n Рік тому +211

    I love how we as a community can disagree on many things, but we all collectively hate javasctipt 😂👍

    • @Leonhart_93
      @Leonhart_93 Рік тому +7

      Nah, I think it's rather cute how you can make impressive shit happen by just literally writing 3 lines, no libs or builds or other bloating required. Of course, it doesn't scale great but it definitely has beling instantly available as an advantage.

    • @edipedipbulmaz
      @edipedipbulmaz Рік тому +1

      yeah i do suffer with js but don't touch to my localstorage

    • @juandiegofm
      @juandiegofm Рік тому

      HAHAHAHA...just pretentious people bitching about JS while using a fucking browser that works like a fucking charm!!! HAHAHAHAHAHAHAHAHAHAHA! Good grief!🤣

    • @thatboywithakeyboard9292
      @thatboywithakeyboard9292 Рік тому +3

      and yet still our lives depends on it.

    • @Daaboo
      @Daaboo 4 місяці тому +1

      That's the thing. With vanilla it's just all good and games but no employeers want just vanilla or even jquery!!! They want dumb libraries like Ruby or Angular because why make things easy 🙄

  • @mikelezhnin8601
    @mikelezhnin8601 Рік тому +51

    "it's a loosely typed language, and by that I mean completely detached from reality"
    the burn is real xD

  • @Nneoh1
    @Nneoh1 Рік тому +70

    "Because it puts food on my family"
    man I love your humor :D

    • @ericvogler6909
      @ericvogler6909 Рік тому +7

      Ya that reference is 20+ years old by now

    • @Nneoh1
      @Nneoh1 Рік тому +4

      Didn't ask

    • @madhououinkyoma
      @madhououinkyoma Рік тому +7

      @@ericvogler6909 reference to what?

    • @ericvogler6909
      @ericvogler6909 Рік тому +4

      @@madhououinkyoma It was something dumb George W. Bush said.

  • @peytoncastillo4508
    @peytoncastillo4508 Рік тому +5

    Therapist: can you define a love/hate relationship in your life?
    Me: “JavaScript ”

  • @flamakespark
    @flamakespark Рік тому +21

    Whenever you feel like you regret choosing JS as a primary lang, just remember that you could have chosen a PHP

    • @jsm33t
      @jsm33t 7 місяців тому +1

      $whats $wrong $with $p$h$p ?

  • @clxxiii
    @clxxiii Рік тому +423

    This has got to be good

    • @nicejungle
      @nicejungle Рік тому +69

      "this" is always a good joke in javascript

    • @patricksieber7338
      @patricksieber7338 Рік тому

      it is

    • @andylee5969
      @andylee5969 Рік тому +3

      What do you mean by “this”

    • @JonnyJKF
      @JonnyJKF Рік тому +14

      @@andylee5969 what does any JavaScript developer mean by ‘this’? Whatever it is I’m sure the interpreter disagrees.

    • @ashishkarnkarnashish
      @ashishkarnkarnashish Рік тому

      How this comment 21 hours ago when video is only 1 hour ago

  • @mtyrio
    @mtyrio Рік тому +16

    1:18 thumbs up for sound effect on object Object

  • @andythedishwasher1117
    @andythedishwasher1117 Рік тому +26

    Dude you nailed it so hard. The Cronenberg mascot idea floored me. I feel like there needs to be a cartoon with programming languages as characters...

    • @andythedishwasher1117
      @andythedishwasher1117 Рік тому +9

      Javascript would probably just be the giant AnCap conglomerate supervillain that thinks it is responsible for its own success but in fact is mainly dependent upon the many services it "supports" (meaning they really just use Javascript begrudgingly as a key to the mystical Document Object Model which only Javascript may enter (until the arrival of Web Assembly in season 2...));

    • @davidwuhrer6704
      @davidwuhrer6704 Рік тому +3

      @@andythedishwasher1117 The fact that the script tag has a type attribute is a clue that JS was never meant to be the only DOM scripting language. And yet here we are. The power of monopoly, cleverly disguised as "network effect".

  • @R-Jay.
    @R-Jay. Рік тому +9

    My biggest fear is an interviewer asking me 2+"2" and 2-"2" kind of questions 😅
    You perfectly "summed it up" 😄

  • @asii_k
    @asii_k Рік тому +33

    One of our pipelines will occasionally write files with lines that are '[object Object]' and it's been a bit of a mystery why that's happening but I think this video solved that

    • @pleonexia4772
      @pleonexia4772 Рік тому +1

      Couldn't be too good at programming or anything for that matter if you're given the solution to an issue and still aren't sure whether it's the solution

    • @titan5064
      @titan5064 Рік тому +23

      @@pleonexia4772 if you're given the solution to an issue and you're sure it's the solution then you've not programmed enough

    • @madhououinkyoma
      @madhououinkyoma Рік тому +17

      @@pleonexia4772 always love coming to comments with people being like “if blah blah blah, then you mustn’t be good at programming”. Usually all from people who don’t know anything about programming 💩

    • @v01d_r34l1ty
      @v01d_r34l1ty Рік тому +1

      @@madhououinkyoma if you can’t take a joke about programming, you don’t do enough programming… also JS is “scripting” not “programming” hehe 🔥

    • @abc_35p
      @abc_35p Рік тому +2

      @@pleonexia4772 Let's say you probably don't know javascript if you don't know that printing an object will by default print "[object Object]".

  • @topticktom
    @topticktom Рік тому +72

    This has to be 1000 seconds long

  • @Cthulch
    @Cthulch Рік тому +25

    Made me laugh out loud a few times. This is a good one, thanks.

  • @CeladonBadger
    @CeladonBadger Рік тому +12

    I love JS because having to work with it for half a year motivated me to finish my master’s degree in data science/AI.

  • @sohrb
    @sohrb Рік тому +40

    oh boy this is gonna be a fun one :)

  • @alp6742
    @alp6742 Рік тому +11

    A JS dev making a video where he roasts JS and other JS devs are looking forward to see it

  • @JewelOfSoul
    @JewelOfSoul Рік тому +18

    you actually made me feel the need to learn Rust or Go.

  • @kaimemes
    @kaimemes Рік тому +13

    it's kinda insane to think about how JavaScript, a language that (if you look at particular objective measures to gauge the quality of a language) kinda sucks, got popular

  • @Cerberus8771
    @Cerberus8771 Рік тому +17

    Was furloughed recently which sucked since it was right before the holidays and after making some hefty financial commitments. Sent out my resume to various places. Was hoping for a job that used a typed language. Lo and behold, I was able to land a job with TS/JS (close enough) a week before thanksgiving. Not what I wanted but I love it. Do I recommend? No, but I love it!

  • @someever
    @someever Рік тому +28

    the fake png💀💀💀

  • @fededevi1985
    @fededevi1985 Рік тому +98

    To someone who worked on compilers or interpreters javascript looks exactly like the first language you will develop in a compilers course

    • @peacefulexistence_
      @peacefulexistence_ Рік тому +29

      The fact that JS was originally a lisp before the author was told to "make it look more like this new Java thing" makes it even better

    • @ltrotskey6571
      @ltrotskey6571 Рік тому +1

      eh, my compilers course had us making a language that resembled Turbo Pascal, with most of the features stripped out.

  • @__.-__.
    @__.-__. 6 місяців тому +12

    Please make Python for the Haters
    🥺🥺🥺

    • @patrickgoodman7478
      @patrickgoodman7478 6 місяців тому +2

      This. Please fireship it's all I want for Christmas this year

  • @RavMucha
    @RavMucha Рік тому +9

    [object Object] in NaN seconds.
    I'll just w8 here and refresh.

  • @hellelo.5840
    @hellelo.5840 Рік тому +37

    I think I will agree with 100% of this, waiting for the video, I am a js developpeur.

  • @horizont6172
    @horizont6172 Рік тому +6

    02:29 I WAS EATING, MAN WTF YOU'RE DOING !

  • @natywubet2175
    @natywubet2175 Рік тому +9

    1:58
    Bruh albert enstein is haskel developer 😂

  • @omairys
    @omairys Рік тому +99

    I'm trying to love this language, but in the end it makes me feel like I should go to therapy after deploying a new build.

    • @ekzac
      @ekzac Рік тому +23

      First error (tip for free): you should not try to love this thing. It is a healthy hate-hate relation you must target. That thing only works if you yell at screen and call it of all bad words you can remember.

    • @infectedasylum7035
      @infectedasylum7035 Рік тому +3

      Using JavaScript makes me feel like MacGyver

    • @vasiovasio
      @vasiovasio Рік тому

      Be like Me - PHP for LIFE!!! 😊

    • @zanza8197
      @zanza8197 Рік тому

      @@vasiovasio Symfony to be specific!!
      Though we also have to deal with JS from time to time.

    • @Andrushe4kanka
      @Andrushe4kanka 8 місяців тому

      Have u tried build react-native app? this is the circle of hell

  • @rohantalele8987
    @rohantalele8987 Рік тому +27

    Man, I face real anxiety when someone asks output based questions in a JS interview.

  • @zarrar9561
    @zarrar9561 Рік тому +12

    Just in case anyone is wondering what that machine language in the intro say's. It says "Hi Mom"😅

  • @AJofSteele
    @AJofSteele Рік тому +4

    I still don’t know if I’m supposed to put semi colons after each line or not

    • @aadilmb8058
      @aadilmb8058 Місяць тому

      You don't have to, but it's good practice.

  • @jt4351
    @jt4351 Рік тому +64

    That reverse psychology ending is gold. I actually love JS. Easy to learn, hard to master, for sure. And like you, it has put food on my tables so hate away lol

    • @madhououinkyoma
      @madhououinkyoma Рік тому +23

      Well, it put food on his family so not the same

    • @JobinJacobKavalam
      @JobinJacobKavalam Рік тому +9

      Same for my family too. Despite all the perceived hate, i could say with near certainty that the creator of the video truly loves the language.

  • @tooFarGonexk4he4tu3s
    @tooFarGonexk4he4tu3s Рік тому +91

    As a student learning JS I should mention that modern courses tend to avoid talking about type conversion and often encourage developers to use TS as soon as they get some basic understanding of the language.

    • @TheyCallMeIce
      @TheyCallMeIce Рік тому +23

      Why am I not surprised... Have you heard of our lord and savior, Web Assembly?

    • @JorgetePanete
      @JorgetePanete Рік тому +12

      The problem is that JS is still in schools :/

    • @oscarljimenez5717
      @oscarljimenez5717 Рік тому +1

      Everyone should avoid talking about type conversion in JS, can be a real mess.

    • @colinmarshall6634
      @colinmarshall6634 Рік тому +9

      @@JorgetePanete Until there is a good replacement for web dev you will always have a need for lots of JS devs

    • @JorgetePanete
      @JorgetePanete Рік тому +3

      @@colinmarshall6634 WASM in Rust or The Next Thing™

  • @neanda
    @neanda Рік тому +4

    "it helps me put food on my family" 🤣🤣 that took me by surprise, I'm gonna use that one day

  • @SapphireKR
    @SapphireKR Рік тому +22

    Fun fact: The binary stuff in 0:12 actually means "hi mom"
    01101000 01101001
    00100000 01101101
    01101111 01101101

  • @hugazo
    @hugazo Рік тому +11

    Totally worth the waiting! And yes, i'm also a js developer who hates and loves js

  • @juancruzc.degaetano7099
    @juancruzc.degaetano7099 Рік тому +8

    This "for the haters" videos are just hilarious, I love 'em.

  • @stephenthumb2912
    @stephenthumb2912 Рік тому +6

    1. There are endless JS Frameworks
    2. JS Framework's main goal is to reduce the use of JS.

    • @RottenMuLoT
      @RottenMuLoT Рік тому +2

      That's the paradoxal beauty of it all. The fastest, bug-free, secure and easiest to read and maintain code is the one that doesn't exist at all ! (I'm actually dead serious because it is true when you really think about it).

  • @costplusdotcomdotmy
    @costplusdotcomdotmy Рік тому +6

    omg i just looked at is-odd on github. there's a link to another repo called is-even. I died when I saw index.js hahaha

  • @tusharwani3146
    @tusharwani3146 Рік тому +5

    the binary at 0:12 reads, hi mom

  • @RAKESH-qt5qt
    @RAKESH-qt5qt Рік тому +16

    This is hilarious 😂 better than most stand-up comedy stuff!

  • @theena
    @theena Рік тому +2

    That David Cronernberg reference had me on the floor.

  • @daone197
    @daone197 Рік тому +9

    2:36 Javascript puts food on your family?🤔

  • @thecoder4403
    @thecoder4403 Рік тому +5

    Comming from the C background where I used to know each and everylogic or at least how program is running ..... now doing js feels like learning alien programming language ...... the two things which haunt me the most is ... NaN != NaN and the sort function ... wtf is this ... who creates such type of sort function??? who even use such type of sorting for numbers ??????

  • @bakenbard
    @bakenbard Рік тому +6

    Developer with 20 years of JS experience once said: i have no idea what i'm doing...

  • @seriouslyWeird
    @seriouslyWeird Рік тому +2

    The electron memory hogging junk apps and the node horror speaks from my heart

  • @SteveGouldinSpain
    @SteveGouldinSpain Рік тому +4

    As a pre-web programmer, I got the same sickly feeling when JavaScript came out that I did when CSS was inflicted on us.

  • @ptrdblmeter
    @ptrdblmeter Рік тому +22

    This is why I switched to C#. Good Luck not getting an undefined value by trying to do maths your not supposed to, I'm just gonna write a program that's actually gonna tell me what the hell is wrong with what I wrote.

    • @salvationindustries
      @salvationindustries Рік тому +2

      C# is good and all, but javascript has a different use case even if both can do backend web. You are using interpreted languages in general for the speed of development more than efficiency of the program and that matters when you want to build something as soon an possible.

    • @charlesm.2604
      @charlesm.2604 Рік тому +6

      @@salvationindustries C# supports different execution profiles (Just-In-Time compilation for debugging and Ahead-Of-Time compilation for production).
      The engine is also open source and can be embedded or used in Terminal with real-time interpretation for scripting purposes.

    • @madhououinkyoma
      @madhououinkyoma Рік тому +5

      @@charlesm.2604 I don’t think you understood their comment

    • @charlesm.2604
      @charlesm.2604 Рік тому +3

      @@madhououinkyoma I understood that they talked about interpreted languages vs. compiled languages. Which I replied, C# can be interpreted as well.
      Worst part is that nobody uses JavaScript, we use TypeScript, so there's a transpilation step which needs to run before execution anyway.

    • @madhououinkyoma
      @madhououinkyoma Рік тому +2

      @@charlesm.2604 their main point is about “speed of development”. So, how fast you can build a new, working feature or test a prototype.

  • @WolfPhoenix0
    @WolfPhoenix0 Рік тому +7

    Jeff: "JavaScript, an embarrassing toy language used exclusively to build things it's not supposed to"
    Me: "Now, THIS is my kind of Fireship video. 😂"
    Also, Jeff will only be cancelled if he makes a "JavaScript for the Lovers" video. Now that's one I definitely don't want to watch!

  • @7th808s
    @7th808s Рік тому +5

    I've never written javascript code, returned back to it and immediately know what it's doing. I'm alwas looking at it like "wait, this actually works?"

  • @sn_kgs
    @sn_kgs Рік тому +3

    I'm a high school CS teacher and I love to teach JS. In my experience, students want to quickly build things that look fancy and quickly get bored with dull black terminal windows or sandboxed solutions for use in schools only like Kara or Greenfoot. HTML/CSS is easy to learn and allows them to start their project with an almost finished GUI that they can quickly adapt or rewrite workout changing the actual app. This is also a good demonstration of SoC (which I have never been taught in school, hence all my programs were slapped into ghastly messes of single Java files) with HTML for the structure, CSS for the design and JS for the functionality. Last but not least, JS's event driven control flow is really intuitive, especially when you've worked with graphical programming tools like Scratch or AppInventor before, and prevents you from nesting loops into each other which you won't understand later.

    • @mister-zen8491
      @mister-zen8491 5 місяців тому

      On behalf of all the students that hate JS and prefer python, old fashioned CLI, and C#...
      Phuck you for continuing the spread of this abomination of coding.

  • @Viralvlogvideos
    @Viralvlogvideos Рік тому +3

    0:30 background music is epic 😆

  • @cryingwater
    @cryingwater Рік тому +5

    Coding in Javascript is like coding liquids. If you put an integer into a let, it becomes and integer variable, and then you can also set this integer variable to contain a string if you don't need it anymore. It's cool. Sometimes

    • @davidwuhrer6704
      @davidwuhrer6704 Рік тому +1

      Personally I wouldn't allow anything other than "const". Unfortunately this still doesn't give you any type safety. Also, it breaks all forms of non-recursive iteration; good, in my arrogant opinion those are unnecessary syntactic sugar anyway and only encourage writing spaghetti code.
      The reason some languages have static typing is to discourage repurposing variables. And that doesn't work _at all._
      Go goes so far as to use a different operator for when you reassign a variable, but it _still allows it._
      Dynamic typing is cool though. It enables functional polymorphism. That's also why generic types are a thing.

  • @drewsarkisian9375
    @drewsarkisian9375 8 місяців тому +1

    "It puts food on my family." Wiser words were never spoken.

  • @david6650
    @david6650 Рік тому +2

    javascript is like a lamborghini you have to push to start, without a steering wheel

  • @CrusaderGabriel
    @CrusaderGabriel Рік тому +4

    I remember in uni I had to research like everything about JavaScript (just because a guy that dropped out chose C++ and we weren't allowed to pick the same language...) And a fun fact I remember (or may be mis-remembering) is that they named it JAVAscript to "profit" on the popularity of Java, but then people took at look at it and were like "dafuq is this" lol

  • @thatsalot3577
    @thatsalot3577 Рік тому +10

    Your one of the most awaited videos

  • @MachiriReviews
    @MachiriReviews Рік тому +1

    "Hey bro, you hate JavaScript too?"
    "Yeah bro."
    *passionate kiss*

  • @modley_the_m_guy
    @modley_the_m_guy Рік тому +1

    "What's your favorite drink?"
    "Mocha."

  • @ZaqueoRaccoon
    @ZaqueoRaccoon Рік тому +9

    This is painful to watch because its so true.
    Laughed my ass off. I think I'll just buy your course, that reverse psychology worked.

  • @Pocahonkers
    @Pocahonkers Рік тому +6

    Sometimes I wonder what seemingly every single javascript framework compares itself to when they sell themselves as "lightweight", "fast" and "easy to learn".

    • @ahandlethatisnottaken
      @ahandlethatisnottaken Рік тому +1

      probably to jQuery

    • @cmaxz817
      @cmaxz817 Рік тому

      @@ahandlethatisnottaken they should leave the OG alone man. Poor jQuery has been serving JS devs for years and years and years. I mostly use it to do some trivial shit which I don't like to code tons of boilerplates using vanilla JS.

  • @MinerPlayer
    @MinerPlayer Рік тому +6

    As a person constantly learning JS i can say, JS is not bad how it looks, it's worse

  • @omarpixel9176
    @omarpixel9176 Рік тому +1

    I could swear your videos are getting more and more unhinged and I'M ALL HERE FOR IT

  • @matthewg5792
    @matthewg5792 Рік тому +3

    you harnessed my feelings exactly with
    "object object object object"

  • @iuseflare
    @iuseflare Рік тому +23

    this is gonna be lit just based off of the thumbnail

  • @AliKamelAliC
    @AliKamelAliC 11 місяців тому +9

    00:01 Why does it feel like an almost perfect lip-sync?

  • @IAmNumber4000
    @IAmNumber4000 Рік тому +1

    The is-odd developer currently holds the entire internet hostage.
    If he pulled it from repos, it would trigger the apocalypse

  • @WishPL
    @WishPL Рік тому +45

    Q: How much do you hate some gnarly aspects of JS?
    A: Yes

  • @MxSmack
    @MxSmack Рік тому +6

    This is probably the best channel about development at the moment.

  • @TheRythimMan
    @TheRythimMan Рік тому +1

    And that's why we have "strict mode" and typescript. That being said, I love javascript because it lets me do insane crap other programming languages would not even allow me to compile. With parenthesis in the right place you can make some pretty crazy half-number/half-string that surprisingly work.

  • @official_mosfet
    @official_mosfet Місяць тому +1

    2:35 "It puts food on my family"... Right...

  • @seancpp
    @seancpp Рік тому +9

    1:25 LMAO

  • @NakedGeep
    @NakedGeep Рік тому +10

    There’s a reason it’s been brought to so many different platforms, and why there’s multiple runtimes (incl. deno, Ryan Dahl’s 2nd go). It has some quirks, but only if you do things in the wrong way. It’s been a solidly good language since ES6, and nothing will change my mind

    • @KanashimiMusic
      @KanashimiMusic Рік тому

      "only if you do things in the wrong way" - so, for example, if you use JavaScript? :P
      (I'm joking plz don't kill me kthxbye)

  • @muntasiradnan6321
    @muntasiradnan6321 Рік тому

    "completely detached from real world" - i owe you a beer bro 🤣🤣🤣🤣🤣

  • @tsukigva6130
    @tsukigva6130 Рік тому +4

    Albert Einstein (Haskell programmer) 💀