Why I Fire Programmers | Prime Reacts

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

Комментарии • 471

  • @Trekiros
    @Trekiros 9 месяцев назад +918

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

    • @keco185
      @keco185 9 месяцев назад +112

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

    • @XDarkGreyX
      @XDarkGreyX 9 месяцев назад +32

      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 9 месяцев назад +47

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

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

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

    • @bobanmilisavljevic7857
      @bobanmilisavljevic7857 9 месяцев назад +2

      Oh no, not a kitten 🙄

  • @MC_Kun
    @MC_Kun 9 месяцев назад +506

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

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 месяцев назад +106

      gotem

    • @adammurai1955
      @adammurai1955 9 месяцев назад +44

      goetm
      goemt
      geomt
      gemot
      emgot

    • @almicc
      @almicc 7 месяцев назад +9

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

    • @adammurai1955
      @adammurai1955 7 месяцев назад +10

      @@almicc damn, I was off by one

  • @gamebuster800
    @gamebuster800 6 месяцев назад +181

    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 6 месяцев назад +35

      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 6 месяцев назад +6

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

    • @flarebear5346
      @flarebear5346 6 месяцев назад +15

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

    • @redjoker365
      @redjoker365 6 месяцев назад +25

      @@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 6 месяцев назад +7

      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

  • @TheBswan
    @TheBswan 9 месяцев назад +246

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

    • @ThePrimeTimeagen
      @ThePrimeTimeagen  9 месяцев назад +73

      they will always get you

    • @Luclecool123
      @Luclecool123 9 месяцев назад +18

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

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

      Well, chat wasn't wrong.

    • @loogabarooga2812
      @loogabarooga2812 9 месяцев назад +6

      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 8 месяцев назад

      @@loogabarooga2812 show!

  • @luccaflower751
    @luccaflower751 9 месяцев назад +33

    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"

    • @o1-preview
      @o1-preview 9 месяцев назад +2

      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 9 месяцев назад +11

      @@o1-preview 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 8 месяцев назад

      @@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 6 месяцев назад +4

      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.

    • @chonchjohnch
      @chonchjohnch 2 месяца назад

      @@o1-previewyou aren’t a programmer, you’re someone who imports stuff

  • @logank.70
    @logank.70 9 месяцев назад +143

    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 9 месяцев назад +5

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

    • @lucaslopes1260
      @lucaslopes1260 9 месяцев назад +31

      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 9 месяцев назад +5

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

    • @razorswc
      @razorswc 9 месяцев назад +26

      ​@@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 9 месяцев назад +22

      @@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 9 месяцев назад +73

    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 9 месяцев назад +3

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

    • @tc2241
      @tc2241 9 месяцев назад +7

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

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

      He was just giving himself fellatio.

    • @shazam314
      @shazam314 9 месяцев назад +2

      @@googleforcedhandle OP contradicted himself.

    • @YT-dr8qi
      @YT-dr8qi 4 месяца назад +1

      You know, growth cannot be infinite. At early steps - yes, you constantly grow. But the knowledge and experience expires. Expectations ate also tend to grow. And the more experience you have and in more areas, the more efforts it takes to just keep it up-to-date. So at some point you can get close to the saturation when a speed of skills expiration almost equals the speed of learning new. In reality such people still continue the developing themselves but the pace of improvement doesn't meet the expectations of others. Especially when someone looks at a novice who progresses at a certain speed in a single area and expects, that a senior with experience in 7 fields will progress at the same speed at each of these 7 fields.
      Learning never stops. But amount of up-to-date knowledge doesn't grow linearly. At the beginning the growth pace may even increase with years as previous experience helps learning new faster. But on later stages the growth pace slows down and most of the learning efforts can be spent just on keeping at the same level where you was without degrading

  • @Psychobellic
    @Psychobellic 9 месяцев назад +116

    ahhh linkedin and its ideology juice

    • @adamhenriksson6007
      @adamhenriksson6007 9 месяцев назад +38

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

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

      The corporative obligatory courses with souless music about beeing communicative kkkkkkk

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

      why bring juice into this you anti semite!

    • @Frontline_view_kaiser
      @Frontline_view_kaiser 2 месяца назад +1

      LinkedIn:
      The place where you get lectured on morals by a company that sells clusterbombs

  • @EpsilonAJS
    @EpsilonAJS 9 месяцев назад +79

    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 9 месяцев назад +5

      Wrong.

    • @DudeWatIsThis
      @DudeWatIsThis 8 месяцев назад

      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 8 месяцев назад +10

      @@JellyMyst lol

    • @S-we2gp
      @S-we2gp 8 месяцев назад +2

      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 8 месяцев назад +1

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

  • @thechadbuddha
    @thechadbuddha 9 месяцев назад +40

    "i love youuuu" *door slam*

    • @mauricio14junior
      @mauricio14junior 5 месяцев назад

      ahahahha came for this comment. Thought exactly the same 😂

    • @HülyeLó
      @HülyeLó 3 месяца назад +1

      That sounded like an *I love you back, but I don't want to talk into your livestream* door slam

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

    Bro i don’t know whats more impressive:
    1-Casually doing bubble sort alg mid stream
    2-Being fkn fast in vim
    3-Or doing both while casually talking and being hilarious.

  • @kr30000
    @kr30000 9 месяцев назад +45

    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 9 месяцев назад +14

      This had to be malicious I refuse to believe it 😭

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

      that's actually crazy

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

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

    • @az8560
      @az8560 9 месяцев назад +16

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

    • @streettrialsandstuff
      @streettrialsandstuff 9 месяцев назад +8

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

  • @dtinth
    @dtinth 9 месяцев назад +17

    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 9 месяцев назад +2

      Eh, good attitude takes you further.

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

      @@scahsaint6249 absolutely agree, attitute is also important

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

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

  • @Cursed_Crystal
    @Cursed_Crystal 9 месяцев назад +15

    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 9 месяцев назад +5

      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.

  • @neildutoit5177
    @neildutoit5177 6 месяцев назад +5

    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.

    • @adamnixon5503
      @adamnixon5503 4 месяца назад +3

      This comment should be pinned to the top. I'd love to see the staff turnover for this Tyke guy! People who claim others can't take feedback can never take feedback themselves. When given the brutal truth back, you are therefore labelled difficult! This video(not Prime's take on the video) is about a guy on a power rush, and with a narrow set of beliefs. Worst kind of person and manager.

  • @mickoalhwint.andrada8080
    @mickoalhwint.andrada8080 9 месяцев назад +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!

  • @kyguypi
    @kyguypi 9 месяцев назад +39

    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.

  • @adi96adi
    @adi96adi 8 месяцев назад +5

    3:50 the xor swap attempt 🤣

  • @SXsoft99
    @SXsoft99 9 месяцев назад +17

    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 9 месяцев назад +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 9 месяцев назад +4

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

    • @gileee
      @gileee 9 месяцев назад +6

      ​@@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 9 месяцев назад +6

      ​@@ohno1052 welcome to outsourcing

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

      Cybersecurity is the better option.

  • @tanglesites
    @tanglesites 9 месяцев назад +7

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

  • @TheThreatenedSwan
    @TheThreatenedSwan Месяц назад +1

    Quality of life in the US is worse (when it actually is and it's not just a lie by biased metrics) than Europe because we have multiple times the "diversity" and not because we have entrepreneurship

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

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

  • @DanielEmp
    @DanielEmp 6 месяцев назад +1

    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.

  • @ZM-dm3jg
    @ZM-dm3jg 4 месяца назад +2

    Writing code to deliver features as fast as possible and let other developers clean-up performance or security or clean code issues got me promoted 4 times in 36 months and tripled my salary.

    • @Leonard0F41G
      @Leonard0F41G 2 месяца назад

      I bet you made them HATE their jobs

  • @pbentesio
    @pbentesio 6 месяцев назад +1

    I am from Europe. Imagine earning 24k a year for a mid level software development job you could be getting 80-100k a year for in NA... couldn't be me.🙃

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

    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.

  • @donner7708
    @donner7708 9 месяцев назад +5

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

  • @nomoremuda
    @nomoremuda 9 месяцев назад +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...

  • @Th1200
    @Th1200 9 месяцев назад +3

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

  • @Bolpat
    @Bolpat 9 месяцев назад +12

    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 9 месяцев назад +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 9 месяцев назад +3

      @@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 9 месяцев назад

      ​@@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 9 месяцев назад

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

  • @az8560
    @az8560 9 месяцев назад +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 9 месяцев назад

      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 7 месяцев назад

      it means they are shitty designers.

  • @exception05
    @exception05 9 месяцев назад +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.

  • @kveldulfpride
    @kveldulfpride 6 месяцев назад +1

    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.

  • @JoeJoeTater
    @JoeJoeTater 6 месяцев назад +3

    You almost figured it out right at the end. All the "truly fire-able offenses" do just boil down to "we'll fire you if you act autistic"... which is, ya know, bigotry. Firing someone for being autistic is illegal discrimination. "Just smile more" is literally the exact advice given to women for how to "succeed". ("Succeed" here is double speak for "know your place".) How the actual fuck can you say that with a straight face? If you're unironically telling someone to "smile more" as career advice, that should be an immediate red flag telling you to rethink your biases.
    Engineers are not actors. We don't owe you smiles. Your subordinates are there to do a job and get paid. It's not okay to pressure them into pretending to be your friends under the threat of being fired.
    Also, "autistic" doesn't need a euphemism. When you say "acoustic" when you really mean "autistic", you're just outing yourself as a bigot. It doesn't need concealing because it's not a bad word to begin with.

  • @bugfacedog44
    @bugfacedog44 8 месяцев назад +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.

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

    If you are an enjoyable person to work around, but work at 60% capacity compared to your colleagues and co-workers, I'd prefer you over someone who makes work hell but is a fantastic work. I'd rather pick up the slack for the guy that makes work fun and enjoyable (to an extent) than have the guy who makes work insufferable get his shit done on equal footing.

  • @WomboBraker
    @WomboBraker 3 месяца назад +1

    he's like the modern street performance artist. Doing programming puzzels for subs ahahahaha
    THE GOAT

  • @tylerbrown1457
    @tylerbrown1457 8 месяцев назад +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."

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

      That's fine as long as feedback is accepted both ways.
      If the code does not suck, and the manager is on a power rush or nitpicking, that leads to a toxic environment.

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

      @@adamnixon5503 Indeed; may adults act like adults, treat each other like adults. I tell the truth, so I may expect people to do the same. I treat people as equal, so I may expect the same in return. If you know that my code sucks but don't share that knowledge with me, you're in possession of something that I - according to my philosophy - have God-given rights to. If you conceal that information from me, it's at best a callous, and at worst; a hostile act. If your excuse is that you didn't want to "insult" me, I feel inclined to interpret that as your covert sense of superiority shielding its own illusion from truth, probably in attempt to evade repressed feelings of shame. At my cost, of course. You absolute twat!
      If my code sucks, you're very welcome to tell me like it is. Note that one implication of "like it is" is that you be specific. Another is that you don't project condescension onto my persona; that's not a point of interest in this relationship. You are also not permitted to try and establish any kind of power hierarchy that is not already established in the employment or social contract between us that we have both signed either literally or figuratively, and any such motions will be categorically rejected. If you try to push me down, you forfeit your right to complain if I accept the new rules, mirror the gesture and push you down.
      If we can agree to play this game according to these rules, I'd be willing to bet that we can together achieve things that we couldn't achieve alone.

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

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

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

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

  • @mumk
    @mumk 9 месяцев назад +3

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

  • @Ramiprops
    @Ramiprops 9 месяцев назад +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)

  • @sharkysharkerson
    @sharkysharkerson 9 месяцев назад +13

    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.

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

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

  • @EnjoyCocaColaLight
    @EnjoyCocaColaLight 8 месяцев назад +1

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

  • @brando8314
    @brando8314 9 месяцев назад +5

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

  • @gesnow
    @gesnow 4 месяца назад +1

    Write your bubble sort in COBOL…or RPG…

  • @wadecodez
    @wadecodez 9 месяцев назад +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.

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

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

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

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

  • @coyoteden8111
    @coyoteden8111 2 месяца назад

    The caw of satisfaction inspired me to be proud of my work

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

    As someone new to programming, watching him do that bubble sort and moving around so smooth and fast without using his mouse - it was intimidating

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

      He is a professional with years of experience. Be inspired, not intimidated. You got this

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

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

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

    at my first year in university, our C lab instructor wanted us to implement a sorting function and asked us if anyone has finished the task and i told her yes and she was like which one did you use? i said bubble sort (tri à bulle, we were learning in french unfortunately) and she got confused as hell. she asked me to write down on the board even! she even was not sure i wrote it correct until i manually executed an example and showed her that it worked on my machine!!!
    never thought i'd be doing much effort for such a simple function

  • @abdullaalmosalami
    @abdullaalmosalami 4 месяца назад +5

    "You code sucks" or "This code is bad" is an insult. It's pointless. Be specific, be kind, and I promise it won't hurt and will produce better results and won't result in people hating their life. For fuck's sake.

  • @SkullFlight
    @SkullFlight 8 месяцев назад

    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 7 месяцев назад

      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 7 месяцев назад

      In python every for loop is actually a while loop

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

    LI and social media in general have created a habit of needing to create ideological absolutes in situations (like employing SWE's) that don't work well with absolutes.
    Some of the best work I've seen produced in multiple jobs has been produced by people who will very rarely look up from their shoes, some of the worst I've seen produced was made by folks with some of the highest EQ ever.

    • @AnonYmous-yu6hv
      @AnonYmous-yu6hv 9 месяцев назад

      And companies will prefer the charismatic douchebags and fake people that average or less than people who are less good with people but are very technical.

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

      @@AnonYmous-yu6hv I would put a fat asterisk on that. I've been a part of several companies that are biased toward highly technical folks that can't talk their way out of a paper bag, or are actively incredibly rude/arrogant, because they view the only purpose of an engineer being producing code, not working within the broader context of a company.

  • @VivekYadav-ds8oz
    @VivekYadav-ds8oz 9 месяцев назад +5

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

  • @JonathanSwiftUK
    @JonathanSwiftUK 5 месяцев назад

    Hey, really cool single-character variable names, feels like the mid 70s at school with the RMZ 380Z and BASIC. Maybe we should go back to this more charming era, a simpler time.

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

    Bugless production is a myth, there will always be bugs in production. The time and effort required to find a bug increases exponentially as testing becomes closer to truly exhaustive. After a certain level of testing your return on investment is no longer worth it and the risk is next to none.

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

    It can be frustrating working with people who take things personally. I had a job where they made me the head of a team and I got pulled in to talk to a manager about a complaint from a guy on my team that "I keep telling him what to do." I was like "yes, uh... Assigning him work each day is my job." The manager was like "yeah I know, maybe use softer language?" Like, dude

  • @HrHaakon
    @HrHaakon 5 месяцев назад

    If you have to implement a sort from memory, go with heapsort. Yeet it all into the heap, and pull it out.
    Just do the recursive data structure, and say it's "good enough".

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

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

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

    I had a collegue, how was bikeshedding, wasn't producing documents on time, was unable to receive remarks and was aggressive. I was not the boss, so obviously I couldn't fire him, but I would definitely have fired him!

  • @Seaoftea
    @Seaoftea 9 месяцев назад +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 9 месяцев назад +1

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

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

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

  • @bernicefenton
    @bernicefenton 9 месяцев назад +2

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

  • @H4KnSL4K
    @H4KnSL4K 9 месяцев назад +3

    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.

  • @ANONAAAAAAAAA
    @ANONAAAAAAAAA 9 месяцев назад +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.

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

    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.

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

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

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

    This only works if the rest of the team are normal doesjbags. When they pick on you, all these rules will still lead you to be fired, because they all protect each other. These rules are correct if the team itself is healthy. But these rules do not investigate on that. There is a silent dangerous assumption here. If the rest of the team sabotages you, and you are stuck in the job for some reason, it's hard not to become passive aggresive about things right ... because they are all working will with each other and communicating nice and appreciating each other and telling each other the stuff they need to know to perform well ... except they do not tell it to you and the manager who leads these conversations doesn't have a clue of course. He still believes you don't fit in and it's all you.

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

    50 years ago I invented the bubble sort. Thought I was amazing. Then I discovered somebody else thought of it first. I was devastated.

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

      and that's why it's called bubble sort instead of bonkers sort

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

    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?

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

      yes

    • @SnowDaemon
      @SnowDaemon 8 месяцев назад +1

      I mean I heard Netflix pays their Hiring Engineers pretty good lol

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

    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.

  • @HoRRoRlets
    @HoRRoRlets 6 месяцев назад +1

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

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

      Correct answer: Bad code is code that easily breaks down because the engineer has not thought through the problem. He/She has not run through the proper debugger checks like asserts and static analysis. (see Carmack) .
      Current answer: Bad code is anything your line manager decides is bad code either because he/she(always he) wants to exhibit control or has a narrow way of doing things. Be wary of 'clean code' advocates, and managers like these.

  • @CarKiller92
    @CarKiller92 5 месяцев назад

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

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

    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.

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

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

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

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

  • @ifaus-on-yt
    @ifaus-on-yt 9 месяцев назад

    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.

  • @boli2016
    @boli2016 8 месяцев назад

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

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

    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.

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

    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

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

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

  • @EdmondDantèsDE
    @EdmondDantèsDE 9 месяцев назад +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 7 месяцев назад +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.

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

    A problem is expecting every developer on your team to be equally good at everything. They're not. People have strengths and weaknesses. I knew a guy who couldn't really create new features quickly and confidently, but he could fix bugs at an alarmingly fast rate. Did I sit him down and complain to him about his new features? No. I assigned him a shitload of our bugs. I knew a lady who could write great code but couldn't really design classes or subsystems. If you gave her an empty scaffold to fill in, she did great with it. Did I chastize her because of her lack of software design skills? No. I accompanied many of the tickets I sent to her with a lot of the top-level design problems already solved, and she blazed through the rest. Sure I wanted to teach and help these developers get better, but I was absolutely not going to ignore the gifts that they had.

  • @GeetareMan
    @GeetareMan 6 месяцев назад +1

    #PomeranianDad is wild lmao

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

    I get my grade 9 students to come up with a way to sort numbers without ever seeing it before. They naturally end up with bubble sort or something very close. If they can all do it without ANY experience, every programmer on the planet should be able to do it from memory. That person just needs higher standards for their employees lol.

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

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

  • @TenNiepokorny
    @TenNiepokorny 6 месяцев назад +1

    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.

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

      Careful. That sort of intelligent reply might get you fired as you cannot accept feedback.

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

    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)

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

    Bikeshedding is when you build a Nuclear Reactor, yet keep discussing the color, size and quality of the bike shed right next to it.
    It's nitpicking on irrelevant details.
    I have a minor tendency to do this, but my solution is typically to throw a tool at it (ruff is my favorite) such that the solution is easily obtainable. That, and spelling errors. HATE 'EM!

  • @mekowgli
    @mekowgli 9 месяцев назад +11

    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 9 месяцев назад +1

      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 9 месяцев назад +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 7 месяцев назад

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

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

    Tyke is absolutely right.

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

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

  • @Shaita
    @Shaita 6 месяцев назад +1

    Putting a bug in production is not only on developer's

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

    Little bikeshedding here but he didn't say he would never a fire someone under those circumstances, just that he has not yet had to.

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

    I get incredibly frustrated with people who take 5+ days to implement something trivially solvable. Additionally their "solution" is both overly complex and doesn't even account for the base use case let alone edge cases. When someone's not only wasting my time but wasting the whole teams time it annoys the hell out of me. And when the manager goes "maybe this is just a hard problem and we should've split it into smaller components". Bro it was moving a well structured folder and downloading some files into it if they didn't already exist. 1 loop and a couple if statements max

  • @Readraid_
    @Readraid_ 9 месяцев назад +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 9 месяцев назад

      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_ 9 месяцев назад

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

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

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

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

    Essentially, if you cost more than you bring in, over a reasonable period of time.