Why I Fire Programmers | Prime Reacts
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
Every single time Prime highlights a sentence on his screen but leaves out the first and last letter, a kitten dies
I can’t unsee this now. It’s literally EVERY TIME
Yeah, it kills me. I got skill issues and fail not to do that, but I feel like he does it on purpose
maybe he never got a proper feedback
or he did but is unwilling to grow and change...
No they don't, source: I'm a kitten
Oh no, not a kitten 🙄
the guy: "Write a bubble sort from memory, right now"
me, with 13 years of professional experience: "what is a bubble sort again?"
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.
@@vonpitlord1783 Bubble sort is usually the very first sorting algorithm you get taught in CS classes when you learn about sorting
That's the point. After a while you kind of forget what the names mean.
@@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
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
20% linked in post review. 80% bubble sort tutorial
gotem
goetm
goemt
geomt
gemot
emgot
@@adammurai1955excellent joke but please can you fix the last line the result should be "egmot"
@@almicc damn, I was off by one
Lmao at chat "this is not pythonic enough" at Prime's bubble sort
they will always get you
@@ThePrimeTimeagenbest way to measure the size of that dict
Well, chat wasn't wrong.
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
@@loogabarooga2812 show!
ahhh linkedin and its ideology juice
Soulless HR speak and CEO "this is why i'm a good person" pandering distilled, bottled and served to perfection.
The corporative obligatory courses with souless music about beeing communicative kkkkkkk
why bring juice into this you anti semite!
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.
How was he even allowed to do such a mess in the first place?
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.
And the money the company lost because of it ultimately comes out of your salary
@@fdg-rt2rk there are many companies that do not have quality as a focus during development. They just want the feature done and shipped.
@@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.
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
yeah lol, he literally says in his 2nd point that not growing is something worth firing someone off.
@@googleforcedhandleyeah, not sure why Prime didn’t get that. Think he was too hung up regarding the skills part.
He was just giving himself fellatio.
@@googleforcedhandle OP contradicted himself.
"i love youuuu" *door slam*
ahahahha came for this comment. Thought exactly the same 😂
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.
Wrong.
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".
@@JellyMyst lol
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.
WTF, youtube deleted my response here but I'm still getting notifications when people talk.
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!
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"
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..
@@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.
@@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.
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.
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))
Eh, good attitude takes you further.
@@scahsaint6249 absolutely agree, attitute is also important
Should have written "Attitude is no substitute for aptitude", more rhetorically effective.
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
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.
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...
This had to be malicious I refuse to believe it 😭
that's actually crazy
Obviously a plant working for Intel or AMD to boost CPU sales.
@@asdasddas100 Could easily be a child raised by wild immutability advocates and now trying to adapt to civilization.
@@asdasddas100"never attribute to malice that which is adequately explained by stupidity"
That was very cool, PRIMETIME rose to the challenge, if I was not already subscribed that would got me to sub. Awesome!
What you implemented is actually a weird insertion sort, which has best case o(n^2), while bubble sort has best case o(n)
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
Good job all I am impressed by your knowledge productivity creativity and potential.
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.
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.
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
In chess it's said that if a player takes way too much time on a move, that move won't be good.
I hope I will never have to deal with that damn. I know these people exist though.
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.
Came here to listen to some programming stories and tweets, learned how to bubble sort. 10/10
3:50 the xor swap attempt 🤣
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
Not exactly. My brother works in Brazil for a Swiss company but they did lower his income to reflect his costs of living.
@@CheeseOfMasterswait what the fuck
isnt it, like, heavy discrimination and just very greedy stuff?
@@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.
@@ohno1052 welcome to outsourcing
Cybersecurity is the better option.
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."
thanks for the bubble sort though, as a noob I appreciate it
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).
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. 😞
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.
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.
@@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.
@@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.
@@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.
Okay subbed 😂 that was hilarious got called on the bubble sort and passed
I would've changed the for loops on the bubble sort tbh, the outer one just goes i
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...
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.
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.
Another great video from based prime
how would you sort spherically from center of sphere starting point expending outward spherically ?
Just sort by distance squared
I was taught insertion and bubble using while loops cause it makes it more efficient (A-level comp sci)
the switches sound awesome are these kailh box whites?
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.
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....
it means they are shitty designers.
A long long long time ago, my first program was bubble sort in Pascal.
Only 20 years of experience and the man can pull off a bubble sort. Legend.
8:00
You live in a field? In a tent? How do you deal with the bugs?
Did not expect a bubble sort display based on this video title ngl.
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.
I also have never had a car breakdown because it was delivered from the factory with no wheels
I'd like to hear about a time when Prime had to scathingly review a pull request from a senior developer.
"Our start up needs to let people go. Whoever can't do bubble sort from memory goes."
It's a fair cop.
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).
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.
In python every for loop is actually a while loop
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.
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.
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
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)
Neil Gaiman, Be easy to work with, get work done on time, do great work. You only need two.
This has definitively been the least contentful and boilerplate Primeagen video I've ever watched.
is this good or bad?
@@ThePrimeTimeagen yes
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`?
Hey prime I was on popos and I couldn’t get my computer to wake from sleep, did you have that problem?
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.
Should I learn caml a through n before learning ocaml?
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.
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.
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.
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.
6:11 that feeling when you get to run your code 😂
I saw the 5000 tabs opened on the side while you typed in each character trying to remember how to type in English.
Literally just did a bubblesort in an interview a few hours ago. :)))
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.
pixel perfect JDSL
@@sferavel right. For sure you would want someone who has good architecture ability. Jdsl was an unmaintainable house of cards.
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.
1:30 Literally bubble sort,, this shit is sooo funny haha
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.
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 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.
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.
True, bubblesort has best case O(n) but his algo has O(n^2).
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
Even getting "const a = b + c" right on the first try deserves immense cheer
ahhh linkedin XDDD
Most of the posts there could be produced by a llm and the users would not notice...
9:30 "people take things extremely personal these days" that's the Brazility sneaking right in....
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.
I once wrote a bug that killed a herd of cows.
The bug was caused by an extra 0.
I wasn’t fired.
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...
Skill is king, good reliable code at a fast pace and you can get away with anything.
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?
yes
I mean I heard Netflix pays their Hiring Engineers pretty good lol
++1 is making me sad.
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
Now make bubble-sort in JDSL
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
I'm definitely a bikeshedder.. I'm kind of ocd so I'm a bit worried about being able to move past it
good code IS subjective. The "fancy places" have hard tests because things are mess.
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.
Tyke is absolutely right.
Aren't you ment to check for swaps in bubble sort? if no swaps are made in a cycle the array is sorted
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
@@abz4852 I see alright, comp sci class got me fucked up
You are right, he didn't implement actual bubblesort but a worse version of it.
what means "pixel perfect" regarding code?
many things
it means making a screenshot of your UI match exactly what the designer threw together on their powerpoint slide
ic tnx@@Quantris
Australians use the stone sort, is basically the same but you order the array starting from the top.
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.
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.
If you do get an algo question in an interview, definitely start by writing the question as a test.
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.
@@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
@@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.
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
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...
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.
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.
7:33 beautiful bevaraj
7:10 sounds like he has management potential, to me!
Great!
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.