Live data from Hacker News

The Worst Programmer I Know (2023)

dannorth.net

171–180 of 385 posts

Re: The Worst Programmer I Know (2023)

#171

Earlier quoted context omitted.

I don’t think anyone is saying it’s a good solution. It’s one amongst many bad ones that are used because that’s what we have. For example, I’ve been running a remote team for 8ish years now and I keep begging people to have conversations in public channels. One of the reasons is to see who’s spending a lot of time lending a hand. Guess what, devs refuse to do that. So what am I supposed to do? I have a person who I…

First off - please do not be offended by the following comment, there is zero bad intent in it and is only meant as a way of nudging you into a correct mindset about the problem you described. Based on your public profile, you seem to not have much in the way of hands-on technical background and I suspect you manage your team based on some set of scrum/agile techniques. It can work purely for project delivery I suppo…

I think lots of the other comments are making wild assumptions leading to responses that don’t align with reality. Yours is actually the absolutely correct one. I agree with the solution wholeheartedly. The only difference is I have been trying to promote the tech lead from within vs hiring externally. I want the team to know that we value their contributions and that we’re going to do everything we can to promote internally. I have various challenges with this internally related to seniority, language skills, etc but I’m working to resolve that.

But in the meantime, I still have a team to manage.

Re: The Worst Programmer I Know (2023)

#172
post #159

So there wasn't a way to capture the fact that Tim was helping with so many JIRA stories in a way that makes Tim's work more visible? Like maybe pair programming stories that Tim owns and moves on the board (assuming Tim's time is best used in a mentorship capacity)? It kind of rubs me the wrong way that Tim can just fly under the radar and do whatever he wants without any paper trail or accountability while the rest…

You can put subtasks under stories, and Tim can have his own subtask that represents his contribution. You can also (with an extension) put time against subtasks if leadership/management want to get really pedantic. Each team member should have at least 1 assigned story/task/bug in each sprint, and Tim should have at least x hours logged against subtasks off stories in the sprint.

Or you can, you know, trust your team to deliver the stories they said they could do in a time window, as a whole. Let them figure out the how at the team level.

Re: The Worst Programmer I Know (2023)

#173
post #93

Yea the best teams I've ever been on have always had someone like Tim. The best best teams I've been on, Tim's helpfulness osmoses onto other people, and instead of Tim always being the one, the process goes like this: 1. Dev gets stuck 2. Dev attempts to unstick self for appropriate amount of time given problem and probability of self-unsticking given resources (e.g. some stuff is easier to search for internally, or…

Problem on a lot of teams is people skip over #2 in my experience. Good devs always do #2, bad devs skip it.

That's easy to solve. When they ask me it might take an hour or two until I come back to them. If they were just trying to us me as a rubber duck the problem will have been solved by then. And it's not only devs. Also PMs have this behaviour. Sitting it out before asking what they need makes most question vanish.

Re: The Worst Programmer I Know (2023)

#174

The idea of measuring individual developer productivity is kind of absurd to me. I'm not saying that what we do is magic, there are just so many variables. Measuring story points or lines of code is kind of the opposite of productivity. This encourages developers to do as much meaningless work as possible. I'd want a developer to make a task simpler or use an existing tool which means less time writing code. The valu…

I had a director that was obsessed with github enterprise stats. He forbid people from squashing commits and told people to commit every day, even if you're in the middle of something. This was so that he could see who was writing the most code. One of our interns was close to the end of his term and this director wanted to hire him. He thought the intern was amazing based on the amount of code he wrote. The problem…

Probably not the point but committing every day is one methodology for TBD and it’s great for generating productivity. Not so much useful for measuring productivity though.

I can’t imagine how miserable it would be to try to measure dev productivity by quantifying commits on a daily basis. What a waste.

Re: The Worst Programmer I Know (2023)

#175
post #114

The idea of measuring individual developer productivity is kind of absurd to me. I'm not saying that what we do is magic, there are just so many variables. Measuring story points or lines of code is kind of the opposite of productivity. This encourages developers to do as much meaningless work as possible. I'd want a developer to make a task simpler or use an existing tool which means less time writing code. The valu…

the worst programmer nowadays is the vibe coder. vibe coding is so overrated imo https://www.lycee.ai/blog/why-vibe-coding-is-overrated

Vibe coding is now a skill requirement for real, actual jobs but, thankfully I guess, no place I want to work (yet). The other day I saw a YC24 company in the "financial services industry" with a "vibe coder position". A prerequisite for the position was at least 50% of your current code being generated by AI; vibe-coding experience was "non-negotiable". Traditional programmers need not apply. And you'd better be ready to grind, 12 hours a day up to 7 days a week. It pays up to $120,000 a year plus squat for equity and relocation to San Francisco is required. That's like, McDonald's money in San Francisco, so guess they figure running a vibe-coding sweatshop is a huge savings for them.

Oh, and the cherry on top? The "financial service" this startup provides? Automated robocalls demanding money from debtors on behalf of debt collectors.

https://www.ycombinator.com/companies/domu-technology-inc/jo...

YC has entered its villain arc.

Re: The Worst Programmer I Know (2023)

#177

Earlier quoted context omitted.

I had a director that was obsessed with github enterprise stats. He forbid people from squashing commits and told people to commit every day, even if you're in the middle of something. This was so that he could see who was writing the most code. One of our interns was close to the end of his term and this director wanted to hire him. He thought the intern was amazing based on the amount of code he wrote. The problem…

Probably not the point but committing every day is one methodology for TBD and it’s great for generating productivity. Not so much useful for measuring productivity though. I can’t imagine how miserable it would be to try to measure dev productivity by quantifying commits on a daily basis. What a waste.

TBD = trunk-based development

Re: The Worst Programmer I Know (2023)

#178
post #162

Earlier quoted context omitted.

> who was writing the most code There's yer problem right there. Code quantity is not correlated with value. In fact, it can be negatively correlated with value if it's buggy and laden with technical debt. Measuring productivity by lines of code produced actively discourages writing clean, maintainable, bug-free code.

> Code quantity is not correlated with value. In fact, it can be negatively correlated with value if it's buggy and laden with technical debt. ** "No Code" or Nihilist Software Engineering ** No code runs faster than no code. No code has fewer bugs than no code. No code uses less memory than no code. No code is easier to understand than no code. No code is the best way to have secure and reliable applications. Write…

Unix-nature loves malicious argument and code injection vulnerabilities, while C brings its own set of issues such as buffer overflows.

Re: The Worst Programmer I Know (2023)

#179

The idea of measuring individual developer productivity is kind of absurd to me. I'm not saying that what we do is magic, there are just so many variables. Measuring story points or lines of code is kind of the opposite of productivity. This encourages developers to do as much meaningless work as possible. I'd want a developer to make a task simpler or use an existing tool which means less time writing code. The valu…

I had a director that was obsessed with github enterprise stats. He forbid people from squashing commits and told people to commit every day, even if you're in the middle of something. This was so that he could see who was writing the most code. One of our interns was close to the end of his term and this director wanted to hire him. He thought the intern was amazing based on the amount of code he wrote. The problem…

https://yosefk.com/blog/engineers-vs-managers-economics-vs-b...

> ...It's a common story and an interesting angle, but the "best vs good enough" formulation misses something. It sounds as if there's a road towards "the best" – towards the 100%. Engineers want to keep going until they actually reach 100%. And managers force them to quit at 70%:

> > There comes a time in the life of every project where the right thing to do is shoot the engineers and ship the fucker.

> However, frequently the road towards "the best" looks completely different from the road to "the good enough" from the very beginning. The different goals of engineers and managers make their thinking work in different directions. A simple example will illustrate this difference.

> Suppose there's a bunch of computers where people can run stuff. Some system is needed to decide who runs what, when and where. What to do?

> * An engineer will want to keep as many computers occupied at every moment as possible – otherwise they're wasted.

> * A manager will want to give each team as few computers as absolutely necessary – otherwise they're wasted.

> These directions aren't just opposite – "as many as possible" vs "as few as necessary". They focus on different things. The engineer imagines idle machines longing for work, and he wants to feed them with tasks. The manager thinks of irate users longing for machines, and he wants to feed them with enough machines to be quiet. Their definitions of "success" are barely related, as are their definitions of "waste".

> The "good enough" is not 70% of "the best" – it's not even in the same direction. In fact, it's more like -20%: once the "good enough" solution is deployed, the road towards "the best" gets harder. You restrict access to machines, and you get people used to the ssh session interface, which "the best" solution will not provide.

Re: The Worst Programmer I Know (2023)

#180

Earlier quoted context omitted.

I would agree, but the manager probably should be in touch enough that they could see the teaming behaviour themselves.

They did… that’s the whole premise of the article

A lot of people seem to have zeroed in on "the manager's decision" and completely missed that it referred to the department manager, not the team manager, and the story is told from the perspective of the team manager.
Post reply on HN