Why I Fire Programmers | Prime Reacts

Sdílet
Vložit
  • čas přidán 25. 01. 2024
  • Recorded live on twitch, GET IN
    / theprimeagen
    Become a backend engineer. Its my favorite site
    boot.dev/?promo=PRIMEYT
    This is also the best way to support me is to support yourself becoming a better backend engineer.
    Reviewed LinkedIn Post: / tykelewis_ive-never-fi...
    By: Tyke Lewis
    MY MAIN YT CHANNEL: Has well edited engineering videos
    / theprimeagen
    Discord
    / discord
    Have something for me to read or react to?: / theprimeagenreact
    Kinesis Advantage 360: bit.ly/Prime-Kinesis
    Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
    turso.tech/deeznuts
  • Věda a technologie

Komentáře • 396

  • @Trekiros
    @Trekiros Před 4 měsíci +727

    Every single time Prime highlights a sentence on his screen but leaves out the first and last letter, a kitten dies

    • @keco185
      @keco185 Před 4 měsíci +91

      I can’t unsee this now. It’s literally EVERY TIME

    • @XDarkGreyX
      @XDarkGreyX Před 4 měsíci +26

      Yeah, it kills me. I got skill issues and fail not to do that, but I feel like he does it on purpose

    • @weeb3277
      @weeb3277 Před 4 měsíci +34

      maybe he never got a proper feedback
      or he did but is unwilling to grow and change...

    • @rawallon
      @rawallon Před 4 měsíci

      No they don't, source: I'm a kitten

    • @bobanmilisavljevic7857
      @bobanmilisavljevic7857 Před 4 měsíci +2

      Oh no, not a kitten 🙄

  • @gamebuster800
    @gamebuster800 Před měsícem +57

    the guy: "Write a bubble sort from memory, right now"
    me, with 13 years of professional experience: "what is a bubble sort again?"

    • @vonpitlord1783
      @vonpitlord1783 Před měsícem +10

      exactly my thought lmao. Just tell me what it does and I'll put it into code, please don't tell me buzzwords. My brain has no space for them.

    • @redjoker365
      @redjoker365 Před měsícem +1

      @@vonpitlord1783 Bubble sort is usually the very first sorting algorithm you get taught in CS classes when you learn about sorting

    • @flarebear5346
      @flarebear5346 Před měsícem +4

      That's the point. After a while you kind of forget what the names mean.

    • @redjoker365
      @redjoker365 Před měsícem +5

      @@flarebear5346 To be fair, bubble sort is really only taught as an intro to sorting and algorithm efficiency analysis and the lesson ends with explaining that we don't use bubble sort in production because it's so inefficient. So you might encounter it a couple times in CS classes and then never again afterwards unless you're teaching programming

    • @BearMan-li6be
      @BearMan-li6be Před měsícem +2

      Bubble sort is default sorting algorithm you do when you don’t know how to do any sorting algorithms
      When I was in uni in initial data structures class we had to code our own sorting algo and bubblesort was what I accidentally created

  • @MC_Kun
    @MC_Kun Před 4 měsíci +353

    20% linked in post review. 80% bubble sort tutorial

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  Před 4 měsíci +86

      gotem

    • @adammurai1955
      @adammurai1955 Před 4 měsíci +29

      goetm
      goemt
      geomt
      gemot
      emgot

    • @almicc
      @almicc Před 2 měsíci +2

      @@adammurai1955excellent joke but please can you fix the last line the result should be "egmot"

    • @adammurai1955
      @adammurai1955 Před 2 měsíci +4

      @@almicc damn, I was off by one

  • @TheBswan
    @TheBswan Před 4 měsíci +194

    Lmao at chat "this is not pythonic enough" at Prime's bubble sort

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  Před 4 měsíci +55

      they will always get you

    • @Luclecool123
      @Luclecool123 Před 4 měsíci +15

      ​@@ThePrimeTimeagenbest way to measure the size of that dict

    • @NostraDavid2
      @NostraDavid2 Před 4 měsíci +1

      Well, chat wasn't wrong.

    • @loogabarooga2812
      @loogabarooga2812 Před 3 měsíci +4

      It was the swap part
      numbers[j], numbers[j+1] = numbers[j+1], numbers[j]
      Very pythonic
      Also, lol at this dude doing the xor trick

    • @EnjoyCocaColaLight
      @EnjoyCocaColaLight Před 2 měsíci

      @@loogabarooga2812 show!

  • @Psychobellic
    @Psychobellic Před 4 měsíci +100

    ahhh linkedin and its ideology juice

    • @adamhenriksson6007
      @adamhenriksson6007 Před 4 měsíci +32

      Soulless HR speak and CEO "this is why i'm a good person" pandering distilled, bottled and served to perfection.

    • @gustavomezzovilla7248
      @gustavomezzovilla7248 Před 4 měsíci +3

      The corporative obligatory courses with souless music about beeing communicative kkkkkkk

    • @SandraWantsCoke
      @SandraWantsCoke Před měsícem

      why bring juice into this you anti semite!

  • @logank.70
    @logank.70 Před 4 měsíci +128

    There was a developer at the company I work for now made such a mess of a project during his time and then left. The quality of the product has become so bad, and customer outrage has become so vocal, that they are threatening to just shut it down. It boggles my mind how somebody who can do so much damage can stick around for so long.

    • @fdg-rt2rk
      @fdg-rt2rk Před 4 měsíci +4

      How was he even allowed to do such a mess in the first place?

    • @lucaslopes1260
      @lucaslopes1260 Před 4 měsíci +27

      Management tends to trust older hires more than new hires. Add in a culture that doesn't value good practices and you get a recipe for disaster.

    • @keco185
      @keco185 Před 4 měsíci +4

      And the money the company lost because of it ultimately comes out of your salary

    • @razorswc
      @razorswc Před 4 měsíci +25

      ​@@fdg-rt2rk there are many companies that do not have quality as a focus during development. They just want the feature done and shipped.

    • @logank.70
      @logank.70 Před 4 měsíci +20

      @@fdg-rt2rk
      They had all the confidence in the world but zero competence along with the director of engineering thinking they were good. They had no PR process or gated check-ins in place. There were many times he would write code, not compile, and push. When I started on the team branch policies were put in place which is how I knew he had been doing that the whole time. Multiple times the code review would be "this code doesn't compile" and he would resolve it without doing anything. I just don't understand why we live in an age where firing somebody is a year(s) long process.

  • @tc2241
    @tc2241 Před 4 měsíci +52

    I think what OP is getting at is that being bad isn’t the issue, it’s being unable to improve. I’ve hired many under developed workers as I saw their potential to grow. I’ve also fired talented individuals because they’re combative and constantly go off on their own. I think the OP just wrote it too “inspirational-ly”, like it’s going to be on a slide during a TED talk

    • @googleforcedhandle
      @googleforcedhandle Před 4 měsíci +3

      yeah lol, he literally says in his 2nd point that not growing is something worth firing someone off.

    • @tc2241
      @tc2241 Před 4 měsíci +5

      @@googleforcedhandleyeah, not sure why Prime didn’t get that. Think he was too hung up regarding the skills part.

    • @briankarcher8338
      @briankarcher8338 Před 4 měsíci

      He was just giving himself fellatio.

    • @shazam314
      @shazam314 Před 4 měsíci +1

      @@googleforcedhandle OP contradicted himself.

  • @thechadbuddha
    @thechadbuddha Před 4 měsíci +30

    "i love youuuu" *door slam*

    • @mauricio14junior
      @mauricio14junior Před 12 dny

      ahahahha came for this comment. Thought exactly the same 😂

  • @EpsilonAJS
    @EpsilonAJS Před 4 měsíci +52

    The problem with feedback like "you communicate poorly" or "this code is bad" is that they are totally inactionable - they don't teach the person how to improve. And if you have specific, actionable feedback, just give that by itself. Adding the inactionable stuff is plain harmful - it's just offensive venting at that point.

    • @JellyMyst
      @JellyMyst Před 3 měsíci +1

      Wrong.

    • @DudeWatIsThis
      @DudeWatIsThis Před 3 měsíci

      But sometimes it can be _very_ hard to tell when someone "communicates poorly" until a huge mess has been made. Communicating poorly doesn't only mean messing up the repo or being an asshole in meetings.
      I'm in a small team and had a REALLY good programmer who, when the team grew a little, I promoted to handle 2 junior programmers.
      After that, he just took in all of their work and burned himself to the ground. If they went "Hey boss, can you help me with this?" he would sigh and just say "I'll have a look at it later", and then he'd do it all himself, instead of gently helping them out in their specific issue. He stopped testing thoroughly, the codebase became worse, and he became irritated. His 2 juniors became code monkeys who would fill in Visitor methods, create business classes, prototype the UI, and little else.
      Eventually he got extremely burned out and left the company. The 2 juniors and I took over his work, and we had to work many months to straighten out his mess. And guess what? Those 2 juniors were pretty smart guys, they just needed a chance. Turns out this guy was just completely inept at handling people, or delegating. And it wasn't just "you communicate poorly", but more like "you think others are stupid and won't be able to do what you do".

    • @S-we2gp
      @S-we2gp Před 2 měsíci +7

      @@JellyMyst lol

    • @S-we2gp
      @S-we2gp Před 2 měsíci +1

      Yeah this is a good point. Granted when i get feedback like that I ask for what specifically they dont like or would change. However its also true the person giving the feedback should have provided the specifics from the beginning. This problem can be solved from both sides, so whenever im on either I try to ensure i solve, I dont expect that from other people (even though you rightly could) I try to be twice as good rather than expecting other people to have these things dialed in. Unless its one of your higher engineers giving crappy feedback to a lower engineer, then you gotta tell them to improve, but since in my mind i always place myself at the top (lol) that i always try to solve these things.

    • @DudeWatIsThis
      @DudeWatIsThis Před 2 měsíci +1

      WTF, youtube deleted my response here but I'm still getting notifications when people talk.

  • @mickoalhwint.andrada8080
    @mickoalhwint.andrada8080 Před 4 měsíci +2

    Your videos just appear to me in youtube algorithm, As a CS college student I really enjoyed it! Thanks for providing content with real life experiences!

  • @luccaflower751
    @luccaflower751 Před 4 měsíci +9

    bubblesort is literally the educational example of "this is the intuitive way most new programmers think up a sorting algorithm. now let's move on to actually good algorithms"

    • @and_I_am_Life_the_fixer_of_all
      @and_I_am_Life_the_fixer_of_all Před 4 měsíci +1

      Ive nerver had to use a search or sort algorithm in my life in a real world program, someone has already a library for it that you can just import.. same for data structures - the only time I had to use them was in interviews or promotion exams in big companies..

    • @luccaflower751
      @luccaflower751 Před 4 měsíci +2

      @@and_I_am_Life_the_fixer_of_all i feel like that's kind of missing the point of why you might want to learn these things. learning the implementation of certain data structures and algorithms helps gain an understanding of their characteristics and what they might be good for. a lot of people don't even know of these things in the first place, and don't even think to reach into the standard library for a particular data structure, because they never learned that this particular problem maps really well to that particular data structure.

    • @DudeWatIsThis
      @DudeWatIsThis Před 3 měsíci

      @@luccaflower751
      The interview: Implement quicksort. Implement djikstra/A*. Spin 4-dimensional matrixes atop each other. Answer "use a hash map instead" when asked how you would optimize something - ANYTHING.
      The job: Writing "FreeJsonLibraryYouGotFromGitHub.Serialize()" once a week, and knowing when something needs a Visitor instead of regular polymorphism.

    • @slayerxyz0
      @slayerxyz0 Před měsícem +1

      Bubble sort has some nice properties that can make it faster for small datasets and partially sorted data. Its also generally more cache friendly than other sorting algorithms and better suited to vectorization.

  • @dtinth
    @dtinth Před 4 měsíci +16

    When I see posts like this, it always reminds me of this quote: “Attitude is no substitute for competence” (Eric S. Raymond, How To Become a Hacker (2001))

    • @scahsaint6249
      @scahsaint6249 Před 4 měsíci +2

      Eh, good attitude takes you further.

    • @dtinth
      @dtinth Před 4 měsíci

      @@scahsaint6249 absolutely agree, attitute is also important

    • @KarimElHayawan
      @KarimElHayawan Před 3 měsíci +1

      Should have written "Attitude is no substitute for aptitude", more rhetorically effective.

  • @Cursed_Crystal
    @Cursed_Crystal Před 4 měsíci +11

    Im still a student but i joined few years ago one git repo. You could add things to the repo if you got the points you were getting for fixing code. I found small bug that needed a fix that was not too hard. I wrote the fix and got told that i need to change something since its not good. Done it. Then change another thing and another and another. It was frustrating but in the end i see how much they taught me on the way. It does not matter if your code is bad. What matters is that you are willing to listen to others and learn from that

    • @JuusoAlasuutari
      @JuusoAlasuutari Před 4 měsíci +4

      You said it. Most code in the world sucks, it's OK to not be an amazing coder. To be human is to have skill issues.

  • @kr30000
    @kr30000 Před 4 měsíci +39

    I have seen a developer with multiple years in the industry write code so slow that if I was a manager, I would have fired them.
    The person in question wrote a function that took 5 seconds to filter 200 items in a list...I was shocked when I look at the exponential iteration that also recreated the entire array and object in it...just for a filter operation...

    • @asdasddas100
      @asdasddas100 Před 4 měsíci +12

      This had to be malicious I refuse to believe it 😭

    • @johndoe9604
      @johndoe9604 Před 4 měsíci

      that's actually crazy

    • @JuusoAlasuutari
      @JuusoAlasuutari Před 4 měsíci +5

      Obviously a plant working for Intel or AMD to boost CPU sales.

    • @az8560
      @az8560 Před 4 měsíci +14

      @@asdasddas100 Could easily be a child raised by wild immutability advocates and now trying to adapt to civilization.

    • @streettrialsandstuff
      @streettrialsandstuff Před 4 měsíci +5

      ​@@asdasddas100"never attribute to malice that which is adequately explained by stupidity"

  • @tanglesites
    @tanglesites Před 4 měsíci +7

    That was very cool, PRIMETIME rose to the challenge, if I was not already subscribed that would got me to sub. Awesome!

  • @Ramiprops
    @Ramiprops Před 4 měsíci +5

    What you implemented is actually a weird insertion sort, which has best case o(n^2), while bubble sort has best case o(n)

  • @haskell42
    @haskell42 Před měsícem

    I am amazed how all this imperative bubble sort code is full of noise and index managment which is totally not related to the problem itself and can potentionally introduce so many mistakes and errores... Love it

  • @ChuckNorris-lf6vo
    @ChuckNorris-lf6vo Před 4 měsíci

    Good job all I am impressed by your knowledge productivity creativity and potential.

  • @kyguypi
    @kyguypi Před 4 měsíci +37

    I've never fired someone for a lack of experience. Because I checked that when I hired them and it's not something that changes unpredictability.
    I think this guy is that type that really struggles to keep track of which variables are mutating.

  • @mekowgli
    @mekowgli Před 4 měsíci +8

    I'm missing the main point: Someone that, despite years of experience, struggles with anything except trivial tasks straight out of tutorials. Someone that works on a 1 day task for 2 weeks, produces something that works 20% and you end up spending the night rewriting it the day before deadline, because what he created is an unsalvable mess. Someone you spend more time helping than doing it yourself would take (for years...). Someone you can't fire regardless, because you're not Netflix and finding someone that wants to work for you is super hard.

    • @oblivion_2852
      @oblivion_2852 Před 4 měsíci

      It would bother me less if someone took a long time but their solution was good. Seemingly the people who take forever produce code that doesn't even work

    • @Evilanious
      @Evilanious Před 4 měsíci +1

      In chess it's said that if a player takes way too much time on a move, that move won't be good.

    • @SandraWantsCoke
      @SandraWantsCoke Před měsícem

      I hope I will never have to deal with that damn. I know these people exist though.

  • @bugfacedog44
    @bugfacedog44 Před 2 měsíci +1

    It's called bikeshedding because of this hypothetical scenario:
    You're on a committee building out a nuclear reactor. No one understands the nuclear reactor so doesn't really have any substantive feedback. But they do understand the bikeshed that will be on premises. You have a 2 hour long meeting about the build-out of the multi-million dollar reactor and spend 20 minutes discussing what color we should paint the bikeshed.

  • @donner7708
    @donner7708 Před 4 měsíci +5

    Came here to listen to some programming stories and tweets, learned how to bubble sort. 10/10

  • @adi96adi
    @adi96adi Před 3 měsíci +3

    3:50 the xor swap attempt 🤣

  • @SXsoft99
    @SXsoft99 Před 4 měsíci +16

    I have less salary, yes but the costs of living differ from place to place, also work in east Europe for a company in the US (if you don't have sleep at night) you basically have a huge salary

    • @CheeseOfMasters
      @CheeseOfMasters Před 4 měsíci +8

      Not exactly. My brother works in Brazil for a Swiss company but they did lower his income to reflect his costs of living.

    • @ohno1052
      @ohno1052 Před 4 měsíci +3

      ​@@CheeseOfMasterswait what the fuck
      isnt it, like, heavy discrimination and just very greedy stuff?

    • @gileee
      @gileee Před 4 měsíci +5

      ​@@ohno1052 Honestly, I don't know what else to expect. Why else would a company from Switzerland hire someone from Brazil? If they were gonna pay someone a Swiss paycheck then they would find someone in Switzerland.
      I'm in Eastern Europe and many EU and USA companies come here to outsource work because of cheap labour. When covid hit and the cost of living increased our companies increased how much dev cost and the companies went to a different East Europe country where IT isn't in a huge boom and programmers cost less. That's how big companies protect the bottom line. And to be fair their paychecks are still better than any local company and they 100% pay up every month.

    • @NihongoWakannai
      @NihongoWakannai Před 4 měsíci +5

      ​@@ohno1052 welcome to outsourcing

    • @weirdboy2214
      @weirdboy2214 Před 3 měsíci

      Cybersecurity is the better option.

  • @tylerbrown1457
    @tylerbrown1457 Před 3 měsíci +1

    Lots of great points. I'll add that people tend to take constructive feedback personally because they're attached to their work. It's hard not to be, we all spend enormous amounts of time and effort getting good at coding. Plus, coding itself demands that you put a lot of yourself into it, if that makes sense. It's natural to be emotionally invested to a degree. That's why it's so important to not say things like, "your code sucks" in code reviews. Rather, be honest but always be specific, "this big block of code is hard to follow because it's so convoluted, it'll be much easier to read if you extract a couple functions out of it and use x and y array methods instead of for loops."

  • @mumk
    @mumk Před 4 měsíci +3

    thanks for the bubble sort though, as a noob I appreciate it

  • @bobbycrosby9765
    @bobbycrosby9765 Před 4 měsíci +3

    Insertion sort is easy for anyone who played a lot of card games. It was the first sort i naturally reached for when I first learned programming in high school (pre-internet).

  • @fairbanj
    @fairbanj Před měsícem

    We had a guy who was a terrible coder but had a great attitude and work ethic. We kept him for about 5 years before we finally let him go. We've now spent nearly 10 years still cleaning up his code. 😞

  • @Bolpat
    @Bolpat Před 4 měsíci +11

    9:25 My sense is that schools and maybe parents just don’t give harsh feedback anymore. Maybe people feel stuff on a scale that ranges from their worst to their best experience in that domain, so if your worst feedback experience wasn’t horrible, a vaguely subpar feedback feels close to the worst feedback ever. You don’t even need have the experience yourself, you just need to witness it.

    • @Blaisem
      @Blaisem Před 4 měsíci +1

      That's not really true. Being shit on from a person of authority will never train you to accept being shit on by a peer. One has the privilege to do it, while the other doesn't. I got shit on all the time by teachers and my parents growing up in the 90's, and all these anti-millennial sentiments of people growing up soft because of upbringing are so myopic. I guarantee you engineers in the 70's and 80's were just as ready to throw down over some colleague coming up and saying their code is trash to their face.
      I still remember in university, the older professors were the absolute prickliest sons of bitches I ever met, even those who had been in the industry. They had enormous egos and pride. Although my time in the industry has mostly involved people in my generation or younger, my few encounters with the previous generation in the wild only reinforced this perception. The generation before simply loves to make themselves out to be heroes, but they're just human. They aggroed each other constantly and can be huge manbabies. I remember a 55-year-old just hanging up on a call because he felt challenged and didn't like it. Fired 2 months later, good riddance.

    • @Lodinn
      @Lodinn Před 4 měsíci +2

      @@Blaisem That's interesting. It feels like the very perception of authority figures has shifted, and the very notion of the "privilege to criticize" is often rejected these days. A lot of people 30 and younger dismiss the "I'm more experienced/knowledgeable" argument right out of hand.
      In 90s-early 00s, trashtalking someone's work felt like the norm. That last decade there's an ever-increasing need to sugarcoat everything, essentially "be nice or I won't listen". It is a shift in responsibilities also: we used to have "it's your responsibility to learn", now it's more "it's your responsibility to teach so that I'd understand". Most of the time, it turns out just fine, but the edge cases are pretty noticeable on both sides.

    • @Blaisem
      @Blaisem Před 4 měsíci

      ​@@Lodinn It's possible things have changed in the last decade, although if I recall correctly, people were already saying 10-15 years ago that the new generation was back then was already going soft.
      I can't tell if it's just a perennial perception every 10 years that people want to announce the new generation is soft, and then that new generation 10 years later turns around says the same thing about the next generation.
      As for missing a privilege to criticize, I don't have any facts to argue against it. I can only say in my personal sphere it hasn't been the case. Bosses are free to offer negative feedback, and people mostly take it when it happens. I mean, they can leave in a huff, but I can't recall it happening.
      I guess we could have a discussion on what that negative feedback looks like.
      As a boss, you are responsible for morale, so there's a proper way to deliver the negative feedback. A good boss in a private developmental meeting say your code writing is leading to bugs in production and needs to improve; they shouldn't call you out in the daily and say "hey, Timmy your code lately has been garbage, fix it." On the other hand, I've seen a boss get pissed over a bug(s) and yell at the team, and the person named Timmy knows it's their fault from their commit, and quietly so does everyone else. Timmy then fairly expects punishment through other means like bonus or missed promotions. But hey, maybe what's deemed proper has changed over time.
      Finally, I will say this interaction has often been unnecessary. Most people around me who haven't left for personal reasons have left due to layoffs, so for all I know the boss doesn't have to give negative feedback, just select the people he doesn't like when it's time for layoffs. Or shuffle them to another team.

    • @clovernacknime6984
      @clovernacknime6984 Před 4 měsíci

      @@Blaisem Shitting on people has nothing to do with giving feedback, it's simply an attempt to establish dominance. And of course, when such power games are played using feedback as a cover then feedback itself becomes perceived as an attack which needs to be defended against. The behaviour you described is the end result.

  • @mattmmilli8287
    @mattmmilli8287 Před 3 měsíci +1

    Okay subbed 😂 that was hilarious got called on the bubble sort and passed

  • @slendi9623
    @slendi9623 Před 4 měsíci

    I would've changed the for loops on the bubble sort tbh, the outer one just goes i

  • @nomoremuda
    @nomoremuda Před 4 měsíci +3

    feedback strategy i favor -> the Velvet Hammer, very direct, very candid, but doesn't have to be delivered in a harsh or deconstructive manner.... especially if it comes from a good place to improve the person's performance...

  • @ifaus-on-yt
    @ifaus-on-yt Před 4 měsíci

    Entirely unrelated to your video, but I do have a question for you. Where would someone like myself find a community to get a solid code review of small-scale javascript projects? I haven't dabbled in Javascript for like 15 years until about 2-3 months ago after seeing your channel. It got me interested again. Now I'm hooked again XD.

  • @DanielEmp
    @DanielEmp Před měsícem

    The criticism => shitty code => criticism => shitty code gave me PTSD. Some people just won't improve, even if they seemingly accept the criticism, then you literally have to solve their F-ing task for them via code review points. Every single time.

  • @andru5054
    @andru5054 Před 4 měsíci +1

    Another great video from based prime

  • @user-xk1cp5jd2g
    @user-xk1cp5jd2g Před 4 měsíci +2

    how would you sort spherically from center of sphere starting point expending outward spherically ?

    • @redpepper74
      @redpepper74 Před 4 měsíci

      Just sort by distance squared

  • @ike__
    @ike__ Před 4 měsíci

    I was taught insertion and bubble using while loops cause it makes it more efficient (A-level comp sci)

  • @talhaakram
    @talhaakram Před 4 měsíci

    the switches sound awesome are these kailh box whites?

  • @az8560
    @az8560 Před 4 měsíci +4

    Pixel-perfect is often unachievable, especially with fonts. Designers design something in photoshop with all its fancy font rendering settings, use all the exquisite fonts they have on their computer, adjust kerning or other obscure settings... and then you have a jpg, an application/browser/os which renders fonts differently, and you have to bruteforce through whatever settings you have available to make it at least the same number of lines.
    Sometimes they just do the same component in their mock-ups differently because they have a luxury of adjusting each individual use case and forgetting what was on the previous screenshot, but it obviously doesn't make sense to have several different implementations just to accommodate their forgetfulness. Sometimes they just completely miss things.
    I can't imagine someone just firing the implementer instead of communicating about the mismatches first, that just doesn't make sense. Unless you just searching for an excuse to fire somebody.

    • @thewiirocks
      @thewiirocks Před 4 měsíci

      In this context, "pixel perfect" usually refers more to getting all the alignments and edges right. If you have multiple content boxes that are supposed too align to the same edges, but one of your boxes is a pixel or two wider, that looks sloppy. Using different padding in each box looks sloppy. Randomly changing font sizes / font families looks sloppy.
      I've had engineers whine about "who cares if it's off by 1 pixel?!?" As if quality work is not something to be strived for. I get that they don't see it when they're just getting started. But if you've been working on the same product with the same theme for months and you continue to be sloppy with your implementation, we're going to have problems.
      Of course, your code is probably just as sloppy, soooo....

    • @SandraWantsCoke
      @SandraWantsCoke Před měsícem

      it means they are shitty designers.

  • @magicsmokeblog
    @magicsmokeblog Před 4 měsíci +1

    A long long long time ago, my first program was bubble sort in Pascal.

  • @thomasmoncrief26
    @thomasmoncrief26 Před 4 měsíci

    Only 20 years of experience and the man can pull off a bubble sort. Legend.

  • @EnjoyCocaColaLight
    @EnjoyCocaColaLight Před 2 měsíci +1

    8:00
    You live in a field? In a tent? How do you deal with the bugs?

  • @CarKiller92
    @CarKiller92 Před 8 dny

    Did not expect a bubble sort display based on this video title ngl.

  • @exception05
    @exception05 Před 4 měsíci +3

    I am not on the side of such a manager. This message of his shows how poorly management sometimes understands people, and because of his position and limited short experience, it seems to him that he understands. This thread shows the complexity of human communication, as well as its many facets, and his approach may actually work if he wants to create a company of "Good Happy Slow Shit Code". Programming is not a kindergarten, but a highly profitable and highly competitive environment with enormous stress. It's not for the weak. If his bunch of deadbeats ever screw his business, let's see if he'll be passive-aggressive or actively-aggressive. "If you can't play a man's game, if you can't code shit, you are shit! Hit the bricks, pal, and beat it, cause you are going out!". Anyway I'm against unhealthy toxic environment, also I'm against deciding the fates of programmers this way.

  • @mikebarnacle1469
    @mikebarnacle1469 Před 4 měsíci +1

    I also have never had a car breakdown because it was delivered from the factory with no wheels

  • @brando8314
    @brando8314 Před 4 měsíci +4

    I'd like to hear about a time when Prime had to scathingly review a pull request from a senior developer.

  • @MegaMech
    @MegaMech Před 4 měsíci +1

    "Our start up needs to let people go. Whoever can't do bubble sort from memory goes."
    It's a fair cop.

  • @SkullFlight
    @SkullFlight Před 3 měsíci

    This is different from how I remembered bubblesort. It used to be a while loop instead of the outer for that breaks when the array is sorted (that is, when the innner for loop doesn't find any elements to swap).

    • @jeanlasalle2351
      @jeanlasalle2351 Před 2 měsíci

      That is still bubble sort.
      It doesn't really matter in this case, and if it does his solution is more efficient in the worst cases. He probably could have added a check though to prevent further iterations if already sorted.
      The goal is not to work from memory but to be able to implement basic sorting.

    • @jeroenvermunt3372
      @jeroenvermunt3372 Před 2 měsíci

      In python every for loop is actually a while loop

  • @rudde7251
    @rudde7251 Před 29 dny

    I hate college who just "smile more" but it doesn't reflect their actual mood. They will smile you in the face and you're like yeah, sure I can try that. And then all of a sudden they explode like I TOLD YOU DO THAT AND THAT! Dude chill, I didn't know it was that important to you.
    This was a dude who asked me to come to the office more and I did come more. But I still prefer staying home as I had it in my contract I could.

  •  Před 26 dny

    Bublesort is a good mindchallenge interview exercise when hiring senior programmers. But if they use variable names like i and j, they probably won't let in into my team.

  • @datboi_gee
    @datboi_gee Před 2 měsíci

    talking about americans getting paid 3x the salary of european engineers and some dude in the chat says "it's called hazard pay"
    go off, king

  • @drd2093
    @drd2093 Před měsícem

    Bubble sort worst case is n squared. But for already-mostly-sorted data it can be superior to other sorts, because its best case is o(n)

  • @idiomaxiom
    @idiomaxiom Před 4 měsíci +1

    Neil Gaiman, Be easy to work with, get work done on time, do great work. You only need two.

  • @VivekYadav-ds8oz
    @VivekYadav-ds8oz Před 4 měsíci +5

    This has definitively been the least contentful and boilerplate Primeagen video I've ever watched.

  • @boli2016
    @boli2016 Před 3 měsíci

    That was a snazzy little command you did there to console.log wrap everything.
    What is that called, and are these steps correct?:
    1. visual highlight all the lines you want it to apply to
    2. `:s/` to replace, then use regex to match all characters with a `()` to have a matching group on the whole entire line
    3. `/` then the replacement including a `\1` for the first matching group
    Why were the `;` semicolons added in both the matching section and in the result section?
    And this is different from `%s` in that you didn't need to specify the regex flags like `g`?

  • @FindingFocus
    @FindingFocus Před 4 měsíci

    Hey prime I was on popos and I couldn’t get my computer to wake from sleep, did you have that problem?

  • @ZPanic0
    @ZPanic0 Před 4 měsíci

    So how do I improve my capacity to turn ideas into code? I'm "fine" at it, but I'd rather be more than fine.

  • @JorgetePanete
    @JorgetePanete Před 4 měsíci

    Should I learn caml a through n before learning ocaml?

  • @wadecodez
    @wadecodez Před 4 měsíci +1

    This is why mental health is a common problem for programmers. All those statements in the blog post were subjective. Not everyone is perfect so if the VP of engineering is not willing to put people through training then these are all personal attacks.

  • @ANONAAAAAAAAA
    @ANONAAAAAAAAA Před 4 měsíci +5

    The reason why the fired programmers didn't hear the feedbacks and behaved poorly was, maybe, the upstairs and the companies failed to earn respects and full commitments from them.
    I've yet to see an engineer who cause troubles by his noncooperative attitudes when the team is leaded by competent, respectable engineers.

  • @TenNiepokorny
    @TenNiepokorny Před 27 dny

    During my 12 years as a software developer not even a single time I was asked to implement bubble sort from memory at work. Useless knowledge.

  • @CanadaWaxSolvent
    @CanadaWaxSolvent Před měsícem

    I worked with a guy who could give you most detailed and extenisve explanations for anything. The problem was he never really listened to your question, and he talked to everyone like they had never programmed before. So you ask.. do we have an enumeration for this.. and he gives you a long winded explanation of what an API is.

  • @nathanreeves8291
    @nathanreeves8291 Před 4 měsíci +1

    6:11 that feeling when you get to run your code 😂

  • @HonsHon
    @HonsHon Před měsícem

    I saw the 5000 tabs opened on the side while you typed in each character trying to remember how to type in English.

  • @mirceacaprioru
    @mirceacaprioru Před 3 měsíci

    Literally just did a bubblesort in an interview a few hours ago. :)))

  • @sharkysharkerson
    @sharkysharkerson Před 4 měsíci +12

    If someone wrote fast pixel perfect code that was always bug free then he wouldn’t need any feedback or guidance and we should be listening to that person. It’s the bad ones that can’t be guided that are the problem.

    • @sferavel
      @sferavel Před 4 měsíci +1

      pixel perfect JDSL

    • @sharkysharkerson
      @sharkysharkerson Před 4 měsíci

      @@sferavel right. For sure you would want someone who has good architecture ability. Jdsl was an unmaintainable house of cards.

  • @rowdyriemer
    @rowdyriemer Před měsícem

    To be fair, I don't think the guy is saying he wouldn't fire someone for incompetence - just that he hasn't. Perhaps so far, it just hasn't been something he needed to do.

  • @tookster7483
    @tookster7483 Před 2 měsíci

    1:30 Literally bubble sort,, this shit is sooo funny haha

  • @kveldulfpride
    @kveldulfpride Před měsícem

    When the Peter principle runs past the end line in leagues, matters of managerial grace become weird and eventually breaks companies. It's a systemic issue caused by soft skill focused engineers. Give me real engineers who are not 'humble' for social gains, and I could make a genie.

  • @theondono
    @theondono Před 4 měsíci

    When I’ve not fired people:
    - you made an oopsie, and then fixed
    When I’ve fired people:
    - You made an oopsie, despite multiple warnings and red flags that you were supposed to check, and that oopsie costed the company several orders of magnitude your yearly salary.

  • @I_am_who_I_am_who_I_am
    @I_am_who_I_am_who_I_am Před 2 měsíci

    I love this channel 😂
    prime I didn't think I could enjoy programmer speak at 45 but truly enjoy it.
    You're awesome, and the folks who call you misogynist suck. My beautiful wifu brings me food and drinks too and I live in a field too.
    So boohoo to the haters.

  • @Seaoftea
    @Seaoftea Před 4 měsíci +1

    My dude didn't even do bubble sort correctly. FIRED! You wrote an exchange sort algo which will always perform at n^2 instead of returning once everything is sorted.

    • @Asto508
      @Asto508 Před 3 měsíci +1

      True, bubblesort has best case O(n) but his algo has O(n^2).

  • @alexanderkuznetsov7597
    @alexanderkuznetsov7597 Před 4 měsíci

    Prime, just in case, you can select text "by word" the same way vim does, by doing a double click, holding the button after the second click

  • @bernicefenton
    @bernicefenton Před 4 měsíci +1

    Even getting "const a = b + c" right on the first try deserves immense cheer

  • @Th1200
    @Th1200 Před 4 měsíci +2

    ahhh linkedin XDDD
    Most of the posts there could be produced by a llm and the users would not notice...

  • @GustavoPinho89
    @GustavoPinho89 Před 4 měsíci +1

    9:30 "people take things extremely personal these days" that's the Brazility sneaking right in....

  • @nisonatic
    @nisonatic Před 4 měsíci +1

    The reason he won't admit to firing people because their code isn't good is that he'd be the jerk for not helping the employee learn how to do it right.
    Let's be clear: the business reality is that software engineering is not an apprenticeship. None of the managers want to pay their engineers to teach stuff to junior people when they can just hire someone who already knows it, or they can learn it on their own time.
    It would be fine (or at least less bad) if he could be honest about this.
    Instead, he goes through an elaborate dance to avoid admitting it. This kind of manager is why the new guy who is lost in the sauce is put on a "performance improvement plan" and, over a few months, managers build up a paper trail of all the nebulous "not responding to feedback" or "passive aggressive comments" or whatever, and then fire him.
    But it's totally not because he needed training. No, the guy was untrainable, even though we never tried.

  • @Mehuge
    @Mehuge Před měsícem

    I once wrote a bug that killed a herd of cows.
    The bug was caused by an extra 0.
    I wasn’t fired.

  • @dzanfox
    @dzanfox Před 2 měsíci

    Newbie dev here, and two and a half minutes into the video and I learn about ++i and that it's slightly faster over i++.
    I'm starting to learn may be bad at what I do, I don't know...

  • @StuartLoria
    @StuartLoria Před 3 měsíci

    Skill is king, good reliable code at a fast pace and you can get away with anything.

  • @davidharting3119
    @davidharting3119 Před 4 měsíci +3

    Prime, if I just read the articles and don’t watch your reaction, will you still be able to afford your extravagant South Dakota lifestyle?

  • @EnjoyCocaColaLight
    @EnjoyCocaColaLight Před 2 měsíci +1

    ++1 is making me sad.

  • @draftingish4833
    @draftingish4833 Před 2 měsíci

    I was today years old that, I learned what bubble sort is and That I have written it a number of time :D. I got my degree in it, but never got to work directly in it. I never got to work on a dev team soooo.... :D

  • @Tychosvideos
    @Tychosvideos Před 4 měsíci +2

    Now make bubble-sort in JDSL

  • @KCKingcollin
    @KCKingcollin Před měsícem

    I know he basically just said "I don't really want to know about Europe", but I might at least add that Germany has a massive IT market and one of the highest quality of life on average in the world, I guess what I'm saying is that saying "Europe" isn't better, is like saying "the USA" isn't better, we have states and one state can be drastically different then the one next to it, it's kinda like that in Europe too, they have lots of countries, and I don't think it was the best of take considering people (maybe myself included soon) move to Germany for the specific reason of getting a much better job and life in IT

  • @sub-harmonik
    @sub-harmonik Před 4 měsíci

    I'm definitely a bikeshedder.. I'm kind of ocd so I'm a bit worried about being able to move past it

  • @martins2246
    @martins2246 Před 4 měsíci

    good code IS subjective. The "fancy places" have hard tests because things are mess.

  • @neildutoit5177
    @neildutoit5177 Před měsícem

    When I've fired managers, it's because they were unable to figure out what feedback to provide someone and how to provide it in a way that that individual can use it to grow.
    jk obvs. I haven't fired managers but I hate this mindset so much. If someone isn't growing it's pretty much always because they aren't being managed properly. Usually some type A personality who doesn't understand that neurodivergent people respond differently and have different needs. Which it's supposed to be your job to understand as a manager.

  • @senorpoodles1755
    @senorpoodles1755 Před 4 měsíci

    Tyke is absolutely right.

  • @Readraid_
    @Readraid_ Před 4 měsíci +2

    Aren't you ment to check for swaps in bubble sort? if no swaps are made in a cycle the array is sorted

    • @abz4852
      @abz4852 Před 4 měsíci

      thats a different version of the algo which is probs more optimised but could run into a problem if you made a mistake. In this version you know that the maximum number of swaps is at most the number of items in the array so you can just make the outer loop for let i = 0; i < array.length.
      If you used while (!swap) {} on the outer loop and the inner for loop you used if (left

    • @Readraid_
      @Readraid_ Před 4 měsíci

      @@abz4852 I see alright, comp sci class got me fucked up

    • @Asto508
      @Asto508 Před 3 měsíci

      You are right, he didn't implement actual bubblesort but a worse version of it.

  • @AHN1444
    @AHN1444 Před 4 měsíci +2

    what means "pixel perfect" regarding code?

    • @haikelareff
      @haikelareff Před 3 měsíci

      many things

    • @Quantris
      @Quantris Před 2 měsíci

      it means making a screenshot of your UI match exactly what the designer threw together on their powerpoint slide

    • @AHN1444
      @AHN1444 Před 2 měsíci

      ic tnx@@Quantris

  • @elpatosilva
    @elpatosilva Před 3 měsíci

    Australians use the stone sort, is basically the same but you order the array starting from the top.

  • @throwaway3227
    @throwaway3227 Před 4 měsíci

    We may have a third of your salaries, but our taxes actually pay for things that benefits us. We also don't have to deal with health insurance.

  • @H4KnSL4K
    @H4KnSL4K Před 4 měsíci +1

    Re: bubble sort - This would be a good chance to practice Test-Driven-Development. Start with some test data and you can quickly verify that your code is correct.

    • @nisonatic
      @nisonatic Před 4 měsíci

      If you do get an algo question in an interview, definitely start by writing the question as a test.

    • @NihongoWakannai
      @NihongoWakannai Před 4 měsíci +1

      Wtf are you talking about? A sorting algorithm being correct is dependent on the implementation not the end result. You can write a sorting algorithm incorrectly and still have it sort the array.

    • @H4KnSL4K
      @H4KnSL4K Před 4 měsíci

      @@NihongoWakannai Well, you can also try to implement it and have it *not* actually sort it correctly. So you need to ensure you are getting a sorted result! Otherwise it is wrong. Note, it might not be optimal, or you followed the wrong algorithm, but getting it sorted is kind of crucial to a sorting function

    • @H4KnSL4K
      @H4KnSL4K Před 4 měsíci

      @@NihongoWakannai You could also add some tests to ensure it is fast enough. Like if you are testing a quick sort, you can give it increasing input and measure the timing to see if it is behaving as it should. If you wanted to test bubble sort, you would have to add a parameter which would be the number of iterations it is allowed to run for, and then inspect the data to verify it is working as a bubble sort should.

    • @theodorealenas3171
      @theodorealenas3171 Před 4 měsíci

      It's cool, but nothing to do with TDD. TDD would start with a test that empty returns empty, then minimal code to make that pass. Then 2 elements sort, then code that can swap 2 elements. Then test with a normal array, then the loops in the code. That's more like TDD. I don't see how it's useful here though

  • @HoRRoRlets
    @HoRRoRlets Před měsícem

    what is an example of bad code...
    Self taught, and still working through my own projects...have no idea what is good code...
    I do look at some of my older projects, and think...that could be done in a better way...and then think about that...

  • @HyperionStudiosDE
    @HyperionStudiosDE Před 4 měsíci +4

    I can't program bubble sort from memory and I don't care. Never needed it.
    Doesn't mean it's hard, I just don't remember things I don't use.
    Although maybe it'll be easier to remember if I internalize why it's called "bubble" sort.

    • @jeanlasalle2351
      @jeanlasalle2351 Před 2 měsíci +2

      Honestly, I understand that you can't remember bubble sort since the terminology might not be very explicit.
      However, I think that a developer should be able to implement sorting themselves.
      And most of the time, if they don't go overboard they might just do bubble sort instinctively.

  • @srijanraghavula
    @srijanraghavula Před měsícem

    7:33 beautiful bevaraj

  • @CaptTerrific
    @CaptTerrific Před 4 měsíci +1

    7:10 sounds like he has management potential, to me!

  • @terry-
    @terry- Před 2 měsíci

    Great!

  • @H4KnSL4K
    @H4KnSL4K Před 4 měsíci +2

    I found insertion sort the most natural to my understanding of how to sort, so that would probably be my first choice for a simple dumb sorting routine. I suppose bubble sort is simpler and faster, so if performance doesn't matter (you don't expect large inputs, and/or this is not going to be called a lot) then it might be a good optiion.