Interview with Senior JS Developer

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 2,2 тыс.

  • @IcaroAlvarez
    @IcaroAlvarez 2 года назад +1369

    I like your sweater. Would you mind telling the brand? Great video btw!

    • @programmersarealsohuman5909
      @programmersarealsohuman5909  2 года назад +928

      Jack & Jones Men's Jprblastudio Sweat Hood Noos Sweatshirt Dark Coat Sweat Fit .js

    • @hectorg362
      @hectorg362 2 года назад +14

      @@programmersarealsohuman5909 Ima steal your look

    • @bitcoinmechanic
      @bitcoinmechanic 2 года назад +83

      @@programmersarealsohuman5909 Can it be transpiled into a pair of jeans?

    • @evenzero
      @evenzero 2 года назад +74

      @@programmersarealsohuman5909 is it portable?

    • @josh1234567892
      @josh1234567892 2 года назад +45

      @@evenzero not really

  • @Chrisxantixemox
    @Chrisxantixemox 2 года назад +5057

    "Easy fix, will just take me 3-5 days to *find* it".
    No truer words have ever been said.

    • @voidfroze
      @voidfroze 2 года назад +59

      That deeply hurt my soul 🤣😭

    • @bastisprogrammingcorner
      @bastisprogrammingcorner 2 года назад +61

      That is assuming his estimation is correct. ;-)

    • @robsands6656
      @robsands6656 2 года назад +11

      I was already laughing but this is the line where I lost it

    • @lukeglasscock4094
      @lukeglasscock4094 2 года назад +3

      hilarious! and true

    • @anywallsocket
      @anywallsocket 2 года назад +5

      The Linux video he says the same but it takes WEEKS

  • @za_wavbit
    @za_wavbit 2 года назад +3384

    I used to be a frontend guy, really got sick of it due to the constant churn ("what do you mean we need to rewrite all our forms to use the newest library? we haven't even finished the LAST two form-rewrites!"). Moved to what I thought was my real passion, devops, got into the same situation with cloud providers and container orchestrators, and then realized this is a problem in every area of tech and I should really just move into a cave in the woods and raise chickens.
    Edit: due to Blackrock buying up all the houses, caves are now trendy and selling for $800k on Zillow. I might need a new plan.

    • @Littlefighter1911
      @Littlefighter1911 Год назад +77

      Or you know, don't always run after the newest tech.
      There is a reason C is still used, especially in critical areas and that even though it's factually bullshit for safe applications.
      (A shit ton of unsafe functions that nobody needs are part of most standards, like "strcmp", "memcpy", "malloc", "setjmp" etc.)
      People still try to sell a shit ton of linters on conventions for embedded computing, as that's the biggest problem there.
      But C didn't really change, even with C11 or newer. The "newest" feature there coming is finally being able to write in a binary notation like "0b0011101",
      that should have been there 40 years ago, because it's importance for embedded can't be understated.
      At the end of the day, if the user can't feel the difference (for example because you will be able to deliver features much faster, or because it fixes certain visible annoying bugs),
      updating libraries beyond vulnerability patches should be on the buttom of your priorities, imo.
      My brother works in GameDev and every time they update UnrealEngine I get pissed for him, because I know it will be another week or two spent on going through all obsolete or changed functions and adjustments to their new behavior.
      But that's the great thing, most libraries offer some sort of LTS version with only security patches being applied as not to break your application.

    • @za_wavbit
      @za_wavbit Год назад +42

      @@Littlefighter1911 I agree with you, but churn is unavoidable in some areas of software development. Security is fast-paced because it has to be, because there are always new exploits. Frontend dev is constantly evolving because needs and platforms are constantly expanding. Even if you don't chase new tech, you're forced to try to keep up because if you don't, engagement/revenue/whatever KPIs fall off, vulnerabilities get exploited, etc. You're comparing software areas that are completely different from each other, like saying "oil painting almost never changes, the last major change was switching to synthetic brush bristles because wild boar hair is hard to come by, why don't those 3d film animators just stop chasing new shiny stuff like me?" - they're different fields.

    • @za_wavbit
      @za_wavbit Год назад +76

      @podcouchcast Everything is C (or C++, or Rust sometimes, or whatever), if you look deep enough. The world of software is much larger than just web and mobile apps, and JS engines running those TypeScript apps are written in C++, and the OS running that engine is written in C, and all the system software on the box running the webserver is written in C and C++.

    • @sixstanger00
      @sixstanger00 Год назад +26

      Yeah, I've been kind of bringing my knowledge of the latest programming practices up to par and I'm starting to notice that particularly with frontend dev, the tech world has become over-saturated with libraries, and there's seems to be a rat race to 1UP last year's number 1 with yet another. Everybody and their mama seems obsessed with trying to compartmentalize JS & CSS into libraries.
      Most of the libraries I've learned about - particularly Bootstrap, React, & Tailwinds - are nothing more than "templates" that developers can use to speed up the dev process. I get that most clients want their stuff done last week, but honestly I prefer the absolute control working in pure JS & CSS offers. Using Bootstrap regularly is just one step above using WordPress; you end up with a bunch of different sites that all look the same. Even JS itself has undergone some recent practice changes that for me, are real head scratchers. For example, "var" has been the keyword used to declare variables in JS since the 90s, but only recently...some 25 years later, we decide to start using "let" and "const?" Why? JS worked fine without this distinction, so I've yet to understand why this was implemented?
      Nothing wrong with occasionally updating a code base with new features or tech, but let's be honest here....what has React honestly done for JS dev? For all I can make out, it's just another way of modifying/writing to the DOM, which JS can already do *_without_* React.
      If a company wants to pay me $80k a year to forever rewrite existing code stacks, fine. Their money, their problem. But for my own personal projects? Never. I wouldn't rewrite my stack every two years, let alone every month. Tech evolves too quickly for that sort of pursuit to be fruitful. By the time you finish a rewrite, tech has already moved on.

    • @shannongfm9945
      @shannongfm9945 Год назад +42

      What version of Chicken are you running?

  • @leoselbach_
    @leoselbach_ 2 года назад +3322

    "The strength of JavaScript is that you can do anything. The weakness is that you will." - Reg Braithwaite

    • @laas29
      @laas29 Год назад +37

      the perfect phrase, there are a lot of ergonomics in JS but is a bad idea to do everything in JS, specially because is one of the languages that changes a lot.

    • @AdamWestish
      @AdamWestish Год назад +38

      ​@@laas29 with only 30 years or so of cruft accumulated from sixteen major groups developing JS to run on 5,000 different software stacks that change every month, what could possibly go wrong with a language that allows you to load an infinite number of possibly conflicting libraries into memory on every single tab and window open on machines with already poor security?

    • @__mac
      @__mac Год назад +5

      love it!

  • @SWIIIMS
    @SWIIIMS 10 месяцев назад +219

    "This is not production code.
    It will be tomorrow though."
    Was the highlight for me

  • @ChristopherSalisburySalz
    @ChristopherSalisburySalz 2 года назад +948

    "Is it scaleable? No. Is it maintainable? No. Is it portable? No. " that made me laugh so hard!! 😂🤣 This is one of the best ones.

    • @mikicerise6250
      @mikicerise6250 Год назад +72

      This isn't our production code.
      It will be tomorrow, though.

    • @PixelPenguin77
      @PixelPenguin77 Год назад +11

      "now we're stuck with this messy language"

    • @nopalfi1409
      @nopalfi1409 Год назад

      @@PixelPenguin77 "I love it - Javascript"

    • @3DGrunge
      @3DGrunge 7 месяцев назад

      sounds like he is talking about using frameworks rather than js and a proper serverside language. Tip never use react.

  • @d.sherman8563
    @d.sherman8563 2 года назад +6283

    "My job is to keep our code running while other packages are changing theirs." That's gold 😆

    • @steviebuilds1715
      @steviebuilds1715 2 года назад +390

      "The major version breaks our code, but our code breaks the minor version"

    • @nikluz3807
      @nikluz3807 2 года назад +19

      I felt that

    • @ogcontraband
      @ogcontraband 2 года назад +52

      DLL hell - recreated

    • @mohsin6312
      @mohsin6312 2 года назад +4

      LOL 😂😂😂😂

    • @AlbertWessling
      @AlbertWessling 2 года назад +6

      @@ogcontraband right in the feels

  • @a2xd94
    @a2xd94 2 года назад +1308

    “Documentation…hehehehe”
    This hits way too hard

    • @NevelWong
      @NevelWong 2 года назад +6

      I don't get it. JSDoc has been the de-facto standard for longer than even Node has been around. It's so well implemented, it can even be used as a typescript replacement in both vscode and jetbrains. And you can generate an html documentation from it by just typing like 3 npm commands. How could this possibly be easier?

    • @somerandomchannel382
      @somerandomchannel382 2 года назад +78

      ​@@NevelWong because.... they rewrite their codebase nine times each month. It's a little overstatement but yeah, if you have documentation, rewrite your code and update documentation, then do it again and again.. Documentation is just more work to rewrite when the updates come out. You can litterly write a perfect application today, Sleep for 3 months and come back that app is so outdated you need to update everything again...
      ITS SOFTWARE DEVELOPERS. NOT REACTIVE DEVELOPERS.

    • @thyscott6603
      @thyscott6603 2 года назад +2

      It's so truuu tho

    • @a2xd94
      @a2xd94 2 года назад +24

      @@NevelWong its not about the tools, its about the workflow. Many teams that are staffed lean have the mentality of 'just ship it and we'll perfect later'...and later never comes

    • @wybren
      @wybren 2 года назад +16

      Documentation? The code is self explainable. For me atleast when I look at my code.

  • @joephus24
    @joephus24 2 года назад +3589

    hahah, "no one really knows what the value is, until you get an error" 🙌absolutely killed it.

    • @lmaoiwaslikelmao1132
      @lmaoiwaslikelmao1132 2 года назад +4

      Lol

    • @marcgoodman4862
      @marcgoodman4862 2 года назад +72

      It's funny because the code works perfectly when I put a breakpoint on line 32.

    • @JackPunter2012
      @JackPunter2012 2 года назад +121

      @@marcgoodman4862 Well time to package up the debugger and ship it with the breakpoint lol

    • @joephus24
      @joephus24 2 года назад +12

      @@JackPunter2012 lmaooo

    • @lot.bajrami
      @lot.bajrami 2 года назад +4

      Typescript helps alot, you can avoid these types of behaviour easily

  • @tjkoury4543
    @tjkoury4543 2 года назад +271

    I’ve started saying “I love it” when something explodes while I’m developing. This video is too accurate.

    • @AntonAdelson
      @AntonAdelson Год назад +3

      👍👍👍😂😂

    • @temp50
      @temp50 9 месяцев назад

      @@AntonAdelson I'm doing the same thing! I love it! :D

    • @shouldigetit
      @shouldigetit 3 месяца назад

      lol

  • @Jerad2142
    @Jerad2142 2 года назад +1060

    Imagine a language so good that you put as many libraries/packages on top of it as possible to not actually touch that language itself.

    • @Microphunktv-jb3kj
      @Microphunktv-jb3kj Год назад +32

      js needs standard library.

    • @SiLintDeath
      @SiLintDeath Год назад +166

      @@Microphunktv-jb3kj congratulations we now have a new whaterverJS library. 😂💀

    • @oscarlove4394
      @oscarlove4394 Год назад +200

      @@Microphunktv-jb3kj xkcd 927
      "what do you mean there are 14 competing standards? that's too many we need a universal standard that everyone uses"
      2 weeks later: "there are now 15 competing standards"

    • @charlesnathansmith
      @charlesnathansmith Год назад +34

      It's built for the Internet, so it's designed to be compatible with as many different devices as possible. And isn't fully compatible with any of them

    • @bocoroth915
      @bocoroth915 Год назад +24

      @@Microphunktv-jb3kj It has one. It's called jQuery. Or in our case, jjQuery.

  • @traktor6844
    @traktor6844 2 года назад +4347

    best part: "how do you debug node apps? you don't! you just write good code"

    • @MohammedAliUno
      @MohammedAliUno 2 года назад +148

      We can't. We won't. We wouldn't. We don't.

    • @decentlabs
      @decentlabs 2 года назад +56

      "node inspect script.js"
      But how do you debug the transpilers?

    • @fullstack_journey
      @fullstack_journey 2 года назад +12

      @@decentlabs probably end to end testing

    • @chuxmyk
      @chuxmyk 2 года назад +1

      Lmao. Me too. 🤣🤣

    • @alexandermercer5363
      @alexandermercer5363 2 года назад +1

      @@decentlabs you don't.

  • @Jared-Cruz
    @Jared-Cruz 2 года назад +2917

    “Nobody knows what type a variable is … I mean, we use typescript, and we still don’t know.” That part got me laughing so hard.

    • @xxwaldi
      @xxwaldi 2 года назад +39

      cracked me up the way he delivered it

    • @Ryan-hp6xt
      @Ryan-hp6xt 2 года назад +165

      This is so true though, I had such a hard time explaining this to people... Typescript is just design time guards, it doesn't really do anything at runtime, it's just developer time type checking basically.
      So if you have an http fetch to an interface in typescript and then it actually runs in the browser that api might return a field that's not on your typescript type, Javascript doesn't care, the field will be on the object even though typescript says it won't be.
      Typescript is really just to help developers write better code, it's like training wheels for developers. Putting training wheels on a bicycle doesn't mean it won't go 50mph down a hill and end up wrecking horribly in a ditch.

    • @nickjunes
      @nickjunes 2 года назад +72

      Typescript is a great way to add a lot of complexity and boilerplate to a problem and then solve it half way.

    • @limbo3545
      @limbo3545 2 года назад +44

      Expected null, received undefined and type is declared as unknown. I wonder why it doesn't work as expected...

    • @MunyuShizumi
      @MunyuShizumi 2 года назад +45

      @@Ryan-hp6xt Just use class-validator.
      Not that we do..

  • @KT-ut9zg
    @KT-ut9zg 2 года назад +3764

    As a 'fullstack' JS developer I laughed so hard at this, all the way through until the end (but to be honest at the end I realise I was actually crying) XD

    • @Seanage
      @Seanage 2 года назад +105

      Imagine spending nearly 2 decades in a strongly typed language and the jobs in JS simply are more common and pay more.. whelp, guess I'm in JS.

    • @sergiosegaty8367
      @sergiosegaty8367 2 года назад +41

      Me too man. I mean, love TS, love JS, to death. Was the first language I noticed i was fluent. But man, all his points are true.

    • @ABC-ip6jq
      @ABC-ip6jq 2 года назад +1

      ???

    • @molomono9481
      @molomono9481 2 года назад +11

      @@R67K There is a followup video, Junior JS developer, just for you.

    • @marcgoodman4862
      @marcgoodman4862 2 года назад +13

      Oh, you're a fullstack JS developer? You must know how the foreign language interface in C works then.

  • @EvilTim1911
    @EvilTim1911 2 года назад +243

    Man you can't even write comedy this accurate without having spent years with JS

  • @silvanpaul2531
    @silvanpaul2531 2 года назад +153

    the fact that this guy made a jjquery website just for this joke is dedication to the max

    • @Spax_
      @Spax_ 6 месяцев назад +2

      LMAOOOOOO best website ever actually

    • @Jestranged
      @Jestranged 5 месяцев назад +1

      honestly tho i'd just go straight to jkjquery

  • @edez1t
    @edez1t 2 года назад +1320

    "we rewrote our codebase around 9 times... THIS month" 😂😂

    • @MyBinaryLife
      @MyBinaryLife 2 года назад +23

      that one had me dying

    • @22981991
      @22981991 2 года назад +18

      his untrimmed beard is the witness of the endeavors

    • @MikkoRantalainen
      @MikkoRantalainen 2 года назад +2

      Seems legit.

    • @nicholas_as
      @nicholas_as 2 года назад +1

      so basically he rewrote his entire codebase every 3 days

    • @psymoozoo
      @psymoozoo 2 года назад

      I caught that too😂

  • @pumaGCB
    @pumaGCB 2 года назад +1004

    I like the fact that out of all the parodies you made, the javascript guy feels the most deranged of them all, and this is exactly how I feel as a javascript dev.

    • @mikicerise6250
      @mikicerise6250 Год назад +23

      That's because you haven't met the Javascript guy who uses vim. ;)

    • @asimplenameichose151
      @asimplenameichose151 Год назад +32

      @@mikicerise6250 I am that guy

    • @Feedback406
      @Feedback406 Год назад +2

      🤣

    • @Hexanitrobenzene
      @Hexanitrobenzene Год назад +41

      The feeling of "derangeness" comes because the guy keeps contradicting himself.
      - Such a messy language... I love it ! :)

    • @mikicerise6250
      @mikicerise6250 Год назад +18

      @@Hexanitrobenzene No, I don't recommend it.

  • @kim_nguyen_
    @kim_nguyen_ 2 года назад +2112

    "We had callback hell, and then we went to promises. Await came out, we went back to promises. And now we wrote everything back to callbacks... because it's just more comfortable." 🤣🤣 God dammit.

    • @romulloqueiroz
      @romulloqueiroz 2 года назад +151

      At least you know it's bad...

    • @MrBrax
      @MrBrax 2 года назад +60

      Promises and await are great

    • @marcgoodman4862
      @marcgoodman4862 2 года назад +3

      Savage.

    • @walterlotte4215
      @walterlotte4215 2 года назад +9

      @@JDLuke Glad I don't have such a negative approach to learning. I enjoyed the process. Crazy that I needed less time than you, though, being a new dev. But that's probably because of the approach.

    • @magne6049
      @magne6049 2 года назад +2

      pretty accurate tho

  • @ijustsawthat
    @ijustsawthat 2 года назад +43

    "I don't want to do the Sub Zero Fatality, I just want to show data in the table from the server."
    Best JS phrase I ever heard.

  • @TheTwober
    @TheTwober 2 года назад +75

    As a senior developer I can confirm that this is exactly how JavaScript developers sound like.
    They make all these strange noises this guy makes, also they always seem to be busy rewriting their code to match some new library that came out.

  • @mastornadettofernet
    @mastornadettofernet 2 года назад +1403

    I have written javascript for the last 10 years and this is painfully accurate

    • @JC-hp7pc
      @JC-hp7pc 2 года назад +16

      React has had essentially 0 breaking changes over several major versions. React 17 brought 0 new features, just switched the render functionality to babel so you don’t have to import the default react library. React is actually quite stable, that is one reason it destroyed Angular and Vue 3 is a fragmented dumpster fire now.

    • @alivepenmods
      @alivepenmods 2 года назад +21

      @@JC-hp7pc It's not React alone that's the problem. It's the potentiation of the different JS tools and the disdain towards old-and-stable technologies that makes for a mess, especially when trying to apply client-side concepts to server scripts.

    • @JC-hp7pc
      @JC-hp7pc 2 года назад +7

      @@alivepenmods Fair points. Personally I have always felt javascript data types were insufficient. Even with lodash, the tools for manipulating data are very under-developed. If javascript had an associative array, it would become 1 billion percent less awkward so you could avoid stuffing associated data into objects which have 0 tools for parsing. So when you look at what JavaScript was created with, it is easy to see why everyone decided “hey this language cannot do what I want, I am going to build an abstraction on top to try to make things easier.” JavaScript by itself feels incomplete.

    • @aylictal
      @aylictal 2 года назад +4

      @@JC-hp7pc wtf are you talking about. objects are literally the definition of an associative array. if you need an ordered associative array there is map.

    • @JC-hp7pc
      @JC-hp7pc 2 года назад +14

      @@aylictal wtf are you talking about. You cannot perform map, sort, forEach, etc on an object. You can transform it with Object.entries() if you want a key, value pair, but it doesn't return an associative array as the result after you map the object. An object is an associative array that you cannot perform data manipulation on. Javascript data manipulation is garbage and full of hacks.
      Tell me more about things I already know.

  • @Katanotkate
    @Katanotkate 2 года назад +97

    "Do you know there is a library for that?"
    This is soooo javascript

  • @nikitak9628
    @nikitak9628 2 года назад +761

    This skit is hilarious. Also quite realistic. Keep em coming!

    • @leyasep5919
      @leyasep5919 2 года назад +7

      it is hilarious BECAUSE it is eerily realistic.
      It might even BE the reality.

    • @leyasep5919
      @leyasep5919 2 года назад

      @@Bunty793 if you're starting the ad hominems, who am I to take such an advice from a gamer ? ;-)
      Oh that might be why your sarcasm translator would be off, which is risky on such a website.

  • @CyberTechBits
    @CyberTechBits 2 года назад +42

    That first line...."I have three production outages named after me....four"... OMG I was rolling 😂

  • @BenjaminMaggi
    @BenjaminMaggi 2 года назад +13

    Been doing exclusively JS for over 10 years now, and this is 100% accurate !

  • @JanMichalSzulew
    @JanMichalSzulew 2 года назад +349

    I can't believe how great this is. I've watched it 5 times since discovering it yesterday and I can't stop laughing out loud. I thought that the C++ developer was the best, but no, this one wins hands down. The editing is absolutely brilliant. One hell of a comedic genius, too bad this is such a niche subject. Kudos.

    • @bartzalewski
      @bartzalewski 2 года назад +8

      agreed. this is brilliant comedic execution that so few people will understand.

    • @aylictal
      @aylictal 2 года назад +4

      honestly he coulda just talked about npm or node_modules the entire time, let alone javascript as a whole, as its probably javascripts biggest fuckup pattern. the babel / typescript crap is funny too though.

    • @JanMichalSzulew
      @JanMichalSzulew 2 года назад +5

      @@aylictal "JavaScript is probably biggest JavaScript's fuckup" does indeed sound like something straight out of this video :))) possibly with an editing cut after the first "JavaScript"

    • @terryriley6410
      @terryriley6410 Год назад +2

      It's not a niche subject.

    • @terryriley6410
      @terryriley6410 Год назад

      @@aylictal npm is not owned or created by js. js' biggest fuckup would be anything related to the weak and quirky dynamic typing it has.

  • @nothke
    @nothke 2 года назад +146

    Also sprinkling "rust" in the conversation as if it will solve every problem, but they haven't even tried it, is 100% accurate.

    • @felixjohnson3874
      @felixjohnson3874 10 месяцев назад +14

      "For the fifth consecutive year in a row 98% of JS devs say they plan on learning Rust sometime next year"

    • @segueoyuri
      @segueoyuri 9 месяцев назад +1

      @@felixjohnson3874 I'm not even sure JS devs are able to learn a language that actually works and is predictable. "What?? You can't compare NULL to an int?"

    • @arnerademacker
      @arnerademacker 9 месяцев назад

      I have literally starting learning rust to spite the trend

    • @aoeu256
      @aoeu256 6 месяцев назад

      @@segueoyuriDoesn't Rust simply upfront all your problems into before your program compiles?

    • @segueoyuri
      @segueoyuri 6 месяцев назад

      @@aoeu256 I don't follow, my dear sir. What that has to do with anything I said?

  • @frankhu5418
    @frankhu5418 2 года назад +152

    I've watched this three times. This is a work of art.
    JavaScript, I love it.

    • @BboyKeny
      @BboyKeny 2 года назад +10

      Same I love JS and don't recommend it. If you can't understand why NaN doesn't equal NaN because NaN is a number and therefore it is not NaN, then why even program?

    • @GiI11
      @GiI11 2 года назад +3

      Do I recommend it? No.

    • @leoMC4384
      @leoMC4384 2 года назад +9

      Do you have another option?? No.
      Such a messy language... I love it.

    • @VeytorVellah
      @VeytorVellah 2 года назад +1

      To be honest, NaN != NaN is a requirement of IEEE 754 and not a fault of Javascript. You get the same in C, Java, Rust...

    • @Hewanliar1
      @Hewanliar1 2 года назад +5

      Do I reccomend it? undefined

  • @horusOsiris22
    @horusOsiris22 2 года назад +13

    You are a legend sir. I return to this video periodically and somehow it just gets funnier

  • @daveice20
    @daveice20 Год назад +86

    I saw this video 1 year ago and I said to myself: "I'm going to learn programming with Javascript"
    At the time, I had no clue what 90% of this video meant, I just loved the chaotic nature and figured if the jokes are like this the job is probably for me.
    Now, I understand everything in this video, and it's just as funny as the 1st time I saw it with zero knowledge.

    • @theseangle
      @theseangle Год назад

      Lol I love your experience

    • @joshcarter-com
      @joshcarter-com Год назад

      Don’t say you weren’t warned…

    • @paultapping9510
      @paultapping9510 Год назад

      but was the industry for you?

    • @daveice20
      @daveice20 Год назад +3

      @@paultapping9510 yes, I enjoy it so much that I got my GED, now I'm enrolled in online uni for CompSci Bach; although, I likely won't stay Javascript long term as it's way too saturated for my tastes; lately I've been looking into ADA, and I've had PERL bookmarked for learning

  • @mazymetric8267
    @mazymetric8267 2 года назад +2429

    As Bjarne Stroustrup once said: "There are two kinds of languages: the ones people complain about and the ones nobody uses".

    • @ds_7
      @ds_7 2 года назад +161

      Kind of false, most people don’t think Python is crap, but everyone thinks JavaScript is crap

    • @mazymetric8267
      @mazymetric8267 2 года назад +277

      ​@@ds_7
      There are definitely a lot of problems with python.
      It is slow.
      It's a scripting language so it doesn’t scale to large projects.
      It is only best for AI, data science. In most cases outside of those fields, it's not the best option available. For example:
      You can write native android/iOS apps in python but Swift/Java/Kotlin do it better.
      You can write cross-platform mobile apps in python but flutter does it better.
      You can write web apps in python but JS, php do it better.
      You can write rest apis in python using flask but spring boot does it better.
      Granted Python isn't hated as much as JS but there is a portion of devs that hate python with a passion.

    • @ds_7
      @ds_7 2 года назад +63

      @@mazymetric8267 As I said, *most people* don’t think it’s crap. I never said it was the best choice for all use cases or that there aren’t haters. And Spring boot means you have to use Java -> I’d honestly rather quit programming forever than use Java, and this is coming from someone who grins and bears JS. And yes, I have written a bunch of Java. Ugh.

    • @aquarius_gaurav
      @aquarius_gaurav 2 года назад +18

      @@ds_7 why do you hate to code in Java?

    • @ugurunver2403
      @ugurunver2403 2 года назад +3

      There is also Python as a third kind.

  • @happysunshinekid7184
    @happysunshinekid7184 2 года назад +268

    "So the major version breaks our code but... our code breaks the minor version"

    • @bozhu9868
      @bozhu9868 2 года назад +13

      Best line out of many amazing ones

  • @RonAday
    @RonAday 2 года назад +105

    "I have three production outages named after me". ROFL. I am a Systems Architect w 30 actual years of experience (I'm old). I can vet all of the videos on this channel as being 100% spot on. PERFECT.

  • @ssjgogetta
    @ssjgogetta 2 года назад +29

    "I still don't know how to fix peer dependencies to this day."
    I felt that.

    • @sarkedev
      @sarkedev 4 месяца назад

      I just spent 4 hours in peer dependency hell. Thought of this clip.

  • @asimplenameichose151
    @asimplenameichose151 Год назад +10

    Senior JS engineer here - this is so accurate I'm not sure whether to laugh or cry :D

  • @joshuaalan7580
    @joshuaalan7580 2 года назад +90

    "Node is technically multi-threaded"
    I've never felt so attacked by a portrayal in my life 🤣

  • @ChessFlix
    @ChessFlix 2 года назад +1129

    Ha, lot of these are really funny.
    "We use typescript, and still don't know the types"
    "I still don't know how to fix peer dependencies to this day"

    • @flying-sheep
      @flying-sheep 2 года назад +67

      hey, yarn 2 actually fixes peer dependencies.
      shame that it breaks everything else though

    • @Melvin420x12
      @Melvin420x12 2 года назад +91

      npm audit fix and then it tells you to fix it manually so you just give up

    • @macicoinc9363
      @macicoinc9363 2 года назад +14

      @@flying-sheep You win some, you lose some.

    • @matzieq
      @matzieq 2 года назад +10

      @@flying-sheep I love it!

    • @Kevin-jc1fx
      @Kevin-jc1fx 2 года назад +13

      It's reassuring to know that seniors face the same harshness from JavaScript. 😂

  • @garrettgreen242
    @garrettgreen242 2 года назад +134

    “It’s a bit hacky, I admit it... but JavaScript is hacky by design”

  • @phee3D
    @phee3D 11 месяцев назад +7

    I worked as web developer for 4-5 years, started with vanilla js, html and css. Ended with vanilla js html and scss. This video makes me feel good about my choices, frameworks felt over complicated, unnecessary and unstable. Even typescript feels very hacky and janky, used it for a bit then got sick of wrangling with it.
    My final verdict is to not use javascript anywhere except for making web pages (web pages, not web applications) and when you do use it, use it without any frameworks/libs. Js is great for doing that. For other applications use languages better suited for those tasks. Don't abuse js, it's been through too much already.

    • @jextra1313
      @jextra1313 7 месяцев назад +1

      Vanilla JS/HTML/CSS can do anything you'd ever want in the DOM. If you want backend, use PHP and an SQL server. This is how the web should be structured, not because I said so, but because these are the technologies that the web is designed for, they have the most documentation, and it has been proven over decades that they work. Typescript tries something that will never work because JS wasn't designed with types in mind.
      Very few people actually care about getting good at Vanilla JS, they want to `improve` JS, even though JS is the only thing in the JS ecosystem that isn't broken.
      Package managers have ruined any hope of an understandable, standardized web dev methodology. JS devs are fueled by chaos for some reason.

    • @asimplenameichose151
      @asimplenameichose151 Месяц назад

      @@jextra1313 One of the 'reasons' is that many of them come into an existing shop where - due to the necessity of speed / deadlines - they learn whatever experimental ecosystem was already adopted so they can modify it and get it shipped quickly. Even though rewrites of one kind or another are more common in this space, that doesn't mean the up-and-coming devs will have the ability or option to suggest abandoning ship re: their core frameworks or dependencies. They then end up building more code in the same stack and promoting it, or some variant of it, and trying to keep it working while everything churns around it.
      (Speaking from experience as a dev who originally learned in BASIC and C as a beginner, got jobs in sysadmin, databases, and PHP, and only more recently ended up working in a full-stack JS / TS shop almost by accident ... I had to build code rapidly, while learning the ecosystem, on a framework scaffolding originally selected and demo-implemented by a part-time / offshore temp worker who was at the time still in college; he began the project as just a smoke-and-mirrors show with 'new', 'hot' and, in some cases, barely-supported dependencies. I'm not the only person I've talked to in this vertical who had some kind of similar experience in JS-land.)

  • @bobblue_west
    @bobblue_west 2 года назад +22

    0:30 Did you know JS was written in 7 days?
    Handel wrote the entire score for his Messiah Requiem in just 24 days. 53 movements for full orchestra. So of course a tidily-wink language like JavaScript could be run off in a week.
    It was done by copy and pasting the Java compiler and taking out type checking and casting.
    (BTW: I copy and pasted the previous sentence from a History of JS website. But then most of programming career was just copy and paste from Stackoverflow.)

    • @dekumarademosater2762
      @dekumarademosater2762 Год назад +1

      "We need a scripting language in the browser. Yesterday."
      "Oh, ok, Scheme then."
      "NO! It needs to be new, and modern, and Java-like!"
      "Scheme with Java syntax, ok."
      "And objects! It must have objects!"
      "Oh. You realise that'll double the time, right? Really, this could blow out to, uh, 4 weeks."

  • @promisesheggs8863
    @promisesheggs8863 2 года назад +89

    Watching this as a Full Stack dev and realizing how true and funny this is, you are great man, I love this channel and your contents, you got me cracking today

    • @marcgoodman4862
      @marcgoodman4862 2 года назад +1

      Oh, you're a full stack dev? You must know how the C foreign language interface works then.

  • @habibsspirit
    @habibsspirit 2 года назад +68

    JavaScript is like smoking crack. It's good at first but eventually it starts destroying your life.

  • @nikosgiaglis9027
    @nikosgiaglis9027 2 года назад +122

    Just watched it 3 times straight. This guy is a genius.

    • @JanMichalSzulew
      @JanMichalSzulew 2 года назад +3

      I'm on my 6th rewatch and I still keep literally LOLing. The editing is brilliant.

  • @JasonLayton
    @JasonLayton Год назад +5

    I keep coming back to this one. It's perfect.

  • @IsaacAbotsi
    @IsaacAbotsi 2 года назад +2

    Every sentence here is gold. Thank you so much for this caricature of our job!

  • @L-E-son
    @L-E-son 2 года назад +94

    this has got to be one of the funniest programming-related skits I've ever seen

  • @baumannalexj
    @baumannalexj 2 года назад +628

    Made me cry: "transpile it to es5, load it with system.js, file for bankruptcy, bundle it all up with webpack"
    I set up a build pipeline and was proud that I learned all these steps needed. Created a PR, and got a "☹️ approved."

    • @KingJellyfishII
      @KingJellyfishII 2 года назад +47

      Don't forget filing for bankruptcy, it's the most important step

    • @Knuffle98
      @Knuffle98 2 года назад

      @@KingJellyfishII
      This step is optional, but you'd have to rewrite the codebase to make it more stable so that you don't have to rewrite it again... till next month.

    • @ReshiramR52
      @ReshiramR52 2 года назад

      @@KingJellyfishII Maybe I don't get the joke but why is it an important step? In case something goes wrong?

    • @KingJellyfishII
      @KingJellyfishII 2 года назад

      @@ReshiramR52 oh it's just a joke because they're spending so much time rewriting the codebase that they don't have enough money to survive so they must file for bankruptcy

    • @Hewanliar1
      @Hewanliar1 2 года назад +5

      @@ReshiramR52 its a joke. It basically declare your company dead. nothing to do with the code.

  • @mwdcodeninja
    @mwdcodeninja 2 года назад +66

    I have been up to my eyeballs in JS infrastructure for years. Everything this man said is correct.

  • @TGX999
    @TGX999 2 года назад +2

    Flipping dying.
    This is the best one you guys have done so far.
    Honestly thank you, hosing myself all the way through.

  • @jkbenedict
    @jkbenedict 2 года назад +8

    "We rewrote everything back to callbacks" = GOLD!

  • @neociber24
    @neociber24 2 года назад +67

    Why use Typescript when you can just compile your JS to TS and them transpile it to ES6

  • @mrdesperate1
    @mrdesperate1 2 года назад +185

    As a "modern" UI engineer that specializes in all things javascript. I absolutely loved this. And yes, it is accurate.

    • @TheCsakbalint
      @TheCsakbalint 2 года назад +18

      uI eNgInEeR

    • @niazfaridani-rad2147
      @niazfaridani-rad2147 2 года назад +34

      @@TheCsakbalintBro, you can't even center a div.

    • @TheCsakbalint
      @TheCsakbalint 2 года назад +1

      @@niazfaridani-rad2147 nice reaction :D

    • @Xfacta12482
      @Xfacta12482 2 года назад +25

      ​@@TheCsakbalint fRoNt EnD dEv Is EaSy
      > ships electron notetaking app w/ 100% RAM usage

  • @TheSpacecraftX
    @TheSpacecraftX 2 года назад +271

    A lot more honest about the JS shortcomings than most JS developers.

    • @kathrynnlynn9790
      @kathrynnlynn9790 2 года назад +18

      tbh, most of the time, you either get people who don't understand the language, so when it does something they don't expect they bitch about it, or you get people who evangelize the hell out of the language and think it needs to be used everywhere.
      everyone else just does their job and doesn't make opinion posts on the internet about the hammer they happen to be using at the time.

    • @justSomeUserOnYT
      @justSomeUserOnYT 2 года назад +5

      ​@@kathrynnlynn9790 you hit the nail on the head (no pun intended).
      These arguments about which language is good, better, best is really non productive and just confuses new developers.
      Find the best tool for the job, and use it. You don't need to compare it to other tools; there are simply too many now.

    • @HerbertBraun
      @HerbertBraun 2 года назад +6

      The problem is not the language (it's not perfect but what is) - it's the ecosystem which got out of control. And that's what this video is about. (And about null, of course ...)

    • @ilikecanes
      @ilikecanes 2 года назад

      @@kathrynnlynn9790 based take

    • @TeaRm34paRt
      @TeaRm34paRt 2 года назад +1

      ​@@kathrynnlynn9790 but it helps us newbies when other people share personal ins and outs about using that hammer, even if they cannot explain them in detail. We learn by example even from bad examples.

  • @chubbyBunny94
    @chubbyBunny94 11 месяцев назад +6

    I’m a frontend designer ( making things look pretty) but somehow got a job as a junior software engineer. And this skit is 100% accurate. This dev teams methods are nonsensical. If there’s a way to overengineer something, they will do it. Every Friday in our tech stand ups, they’re always talking about the lasted ‘cool’ new package, that come out 30-seconds ago, to ram into the enterprise-grade application. Boy, if only the CEO would see the people that are leading his products development.

  • @jamescomstock7299
    @jamescomstock7299 Год назад +4

    I nearly chocked to death watching this video. 11/10 would and did watch again.

  • @tacokoneko
    @tacokoneko 2 года назад +81

    I primarily use C, C++, Rust, PowerPC assembly and it's clear this channel writer uses javascript the most because his javascript ones are the best

    • @HermanWillems
      @HermanWillems 2 года назад +2

      yeah :D no wonder its the most used language.

    • @theterribleanimator1793
      @theterribleanimator1793 2 года назад +25

      "PowerPC assembly" jesus fucking christ. Hope they are paying you well.

    • @RiwenX
      @RiwenX 2 года назад +1

      I use Rust for almost everything these days

    • @HermanWillems
      @HermanWillems 2 года назад

      @@RiwenX it can be broadly applied from embedded to front end...

    • @SnowyPup
      @SnowyPup 2 года назад

      Have you ever tried intel itanium assembly? Also, that’s cool, I used to have an iMac G4 and an Xserve G5 dual core

  • @taoteg1941
    @taoteg1941 2 года назад +201

    This is 100% my life every single day (just add a little Python to spice up the back end). You had me rolling I was laughing so hard. I almost spit out my coffee.... almost.

    • @aryanmn1569
      @aryanmn1569 2 года назад +3

      And I love it 😂

    • @mon0t0n
      @mon0t0n 2 года назад

      And you like Zidialav Beksinski...
      I like you :)

    • @rossgeography
      @rossgeography 2 года назад

      php as horrible as that syntax is (possibly uglier than javascript) at least you can avoid A LOT of this JS framework/library nonsense (people seem largely settled on Laravel/Composer as the framework - though it did go through these JS growing pains)

    • @jerrygreenest
      @jerrygreenest 2 года назад +2

      Don't spit your coffeescript

    • @somedatussr4323
      @somedatussr4323 2 года назад +1

      Javaspit

  • @jamesmcgeachie
    @jamesmcgeachie 2 года назад +31

    "this is not production code... it will be tomorrow though"

  • @N....
    @N.... 2 года назад +14

    3:32 "Global variables? No one uses them." "It must be somewhere in the `window`..." LOL

  • @zauxst
    @zauxst 2 года назад +3

    JavaScript, I love it... No, I don't recommend it...
    I liked the video on the 10th second mark, on the 1st minute mark I subscribed to the channel. Pure gold.

  • @yourix2
    @yourix2 2 года назад +51

    "Atleast you know its bad." I felt this one

  • @thebibeksaha
    @thebibeksaha 2 года назад +16

    This channel is going to blow up bro.. quality content

  • @DamienSawyer
    @DamienSawyer 3 месяца назад +2

    I've been doing front end since the 90's and keep up to date with the latest as well as anyone can. Best library I ever used was knockoutjs. It did a couple of things well and that was it. I have one ste that's still in production with it 13 or so years later and happy as larry.

  • @jasonma1904
    @jasonma1904 2 года назад +3

    I laughed at every single word of this video. Love it. Thanks for making this brilliant video on RUclips.

  • @deem3365
    @deem3365 2 года назад +26

    4:29 "Documentation? *Nervous laugh*"
    too real man... too real...

  • @TheOriginalJohnDoe
    @TheOriginalJohnDoe 2 года назад +50

    As someone who has spent years and years of working as a front-end dev, this hurts on another level, I can tell you that.

  • @KalpeshPanchal
    @KalpeshPanchal 2 года назад +41

    This is one of the best skits done and too real. Hence, so funny with bitterness of truth.

  • @ThePhyskid
    @ThePhyskid 2 года назад +6

    This is brilliant. This perfectly represents my experience with JS.

  • @avetisdn7849
    @avetisdn7849 6 месяцев назад +2

    that "it is somewhere in the window" right after talking about global vars was brilliant

  • @RaphaelDDL
    @RaphaelDDL 2 года назад +7

    Magnificent. Thank you youtube for this video suggestion.
    "We tried coffescript, rewrote our codebase. We tried Typescript, rewrote our codebase. And then we went back to vanilla javascript because it's just more comfortable"
    Same. I hate TroubleScript rofl (that's the loving nickname I gave to it).

  • @dahliaspumpski5837
    @dahliaspumpski5837 2 года назад +7

    This is still absolute gold and I’ve rewatched it so many times

  • @logiconabstractions6596
    @logiconabstractions6596 2 года назад +20

    "No one really knows what the value is. Until we get an error"
    Sounds about right, yes.

  • @DrathVader
    @DrathVader 2 года назад +32

    As someone who uses mostly C++ and python, my heart goes out to JS developers.

  • @shambhangal438
    @shambhangal438 Год назад +4

    'No one really knows what the value is... until they get the error'.
    Genius.

  • @xynko4513
    @xynko4513 2 года назад +23

    As a DevOps Engineer the "Documentation?.. heh heh.." part gets me every time.

  • @millertime6
    @millertime6 2 года назад +26

    “Load it with system JS, file for bankruptcy, load it all up with webpack…” I choked when I heard this 😂

    • @thatryanp
      @thatryanp 2 года назад +2

      How did we end up here? Who is steering this ship? Oh well, hopefully there's a zero config bundler that will fix it all

  • @neuzen
    @neuzen 2 года назад +45

    Senior JS dev is actually 19 yo guy w/o beard.

    • @jean4j_
      @jean4j_ 2 года назад

      Looool 😂

  • @Zooiest
    @Zooiest 9 месяцев назад +1

    Did you know? The byte order of typed arrays depends on the executing computer's endianness[a][1], which can cause compatibility issues when reading a smaller value from an array buffer modified by a larger-element typed array. This makes JavaScript platform-dependent.
    Did you also know? `Function#toString()` depends on the JavaScript engine's implementation of it.[2] These two make JavaScript simultaneously platform-dependent and implementation-dependent. So much for interoperability and standardization.
    [a]: The choice of endianness is actually implementation-dependent too (see table 29 of section 9.7 of the ECMA-262 specification), but most engines[citation needed] use the computer's endianness.
    [1]: ECMA-262, 25.1.3.17 "SetValueInBuffer"
    [2]: ECMA-262, 20.2.3.5 "Function.prototype.toString"

  • @thecoderui
    @thecoderui 9 месяцев назад +4

    We need another one for Interview with Senior Android Developer

  • @afrotonder
    @afrotonder 2 года назад +17

    this was soooooo good xD nearly blew a gasket every time he said: "so we had to rewrite or codebase" or "so we went back to vanilla cause its more comfortable" xD being a JS developer is the best. 🤣⚡

  • @TaqveemKhalid
    @TaqveemKhalid 2 года назад +8

    This is fantastic, had me giggling away. You've gotta do one of DBAs.

  • @AdamSwagMeeks
    @AdamSwagMeeks 2 года назад +7

    Holy hell, this is so outrageous yet spot on. Killed it.

  • @Anonymous-nj2ow
    @Anonymous-nj2ow 2 года назад +3

    my senior project was in node/js/express, i've never self taught anything so quick in my life, and it was still a struggle. LUCKILY theres like 100k tutorials out there for some version of whatever monster you're putting together for basic stuff.
    but man when i got express working it was like hallelujah

  • @vladoz9299
    @vladoz9299 2 года назад +2

    I learned Doug Crockford vanilla JS like 10 years ago. Also used jQuery and Bootstrapjs. This is crazy already

  • @AntonioSantos-ve6zv
    @AntonioSantos-ve6zv 2 года назад +5

    Nice! These doubts down the road are exponentially bigger for learners like me...doubts/issues that set you up all the time!

  • @Cool_Goose
    @Cool_Goose 2 года назад +9

    Well, what can I say, it's definitely reality, so I guess that's why it hits home for so many of us.

  • @EvanBoldt
    @EvanBoldt 2 года назад +9

    “We actually use typescript. We still don’t know what the types are.”

  • @florint.4620
    @florint.4620 8 месяцев назад +1

    This is the best video from the channel. I watched it three times and laugh out loud every time. This video reinforces what Alan Kay said once: "The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the last time a technology with a scale like that was so error-free? The Web, in comparison, is a joke. The Web was done by amateurs."

  • @dlk3904
    @dlk3904 27 дней назад +1

    it's been a year. i still watch this about once a month

  • @Ordnas95
    @Ordnas95 2 года назад +15

    "Global variables? no one uses them"
    "it must be somewhere in the window"
    XDDDDDDDDDDDDDDDDDDDDDDDDD

  • @daigriff1989
    @daigriff1989 2 года назад +28

    How do you debug that?
    You don't, you just write good code.... Brilliant 🤣🤣🤣

  • @gozhora6451
    @gozhora6451 2 года назад +17

    "Noone knows what the value is until we get an error" too trueeee!

  • @benisprobablyangry239
    @benisprobablyangry239 2 года назад +1

    "Nobody knows what a variable's type is. We use typescript and we still don't know!"
    Nothing could better sum up the JS Ecosystem. I would love to say "this year", but this has been true for the last 10 years.

  • @Muzzino
    @Muzzino Год назад +2

    This video will never not be the most accurate description of JavaScript

  • @mark94213
    @mark94213 2 года назад +7

    Sooo good - this sums it up incredibly well haha nice job!

  • @jerrygreenest
    @jerrygreenest 2 года назад +30

    3:14 I literally had a situation when a PATCH (0.0.X) version change in one library broke the whole application.
    When you have lots enough dependencies, and your project lives through a year or so, that is inevitable.
    P.S. Everyone though: "Project lives through a year? We have a fake javascript developer here!"

    • @asimplenameichose151
      @asimplenameichose151 Год назад +1

      You are not alone; that same situation with a single-library patch (auto-upgraded into by npm) taking a whole app down happened to me last year also

  • @mattpopovich
    @mattpopovich 2 года назад +9

    Throwing in a casual “declare bankruptcy” like you’re Michael Scott 😂 4:46

  • @cryptodoomer2855
    @cryptodoomer2855 2 года назад +1

    This channel is my main source for programming knowledge

  • @soulrecalibration
    @soulrecalibration 2 года назад +3

    I've watched this over 9 times since yesterday and I still can't stop laughing. Please make a making of of this.