Live data from Hacker News

The Mediocre Programmer

themediocreprogrammer.com

71–80 of 95 posts

Re: The Mediocre Programmer

#71
post #49

Earlier quoted context omitted.

The energetic stupid programmer is the single most destructive thing you can have on your team and in your codebase. They make messes for everyone else, and a dummy writing bad code can produce more volume than even the best coder writing good code. Eventually, guardrails and processes get put in place to protect against their damage, and the whole team slows down. Good coders walk, and you're left with the dummies,…

The codebase is probably not that good to begin with and quite frankly doesnt need to be I think programmers have a chip on their shoulder about the importance of the work they do. You are not painting the sistine chapel Most programming is what you refer to as "workaday"

When you’re trying to scale teams of thousands of programmers, the dynamics of sloppy ones leaving traps and cruft in the codebase become the things you care about. At least, it’s the stuff I care about now.

Much of what we do is mundane, and, if we do it right, more of what we do should feel mundane because the right abstractions and metaphors already worked their way into the tools and systems we use. However, I still contend (and I’m far from the only one to hold to this) that the worst thing you can have on your team is someone with a lot of energy but poor judgement/awareness. Doing it well is hard. Doing it poorly is far easier, to the point that there are folks that will be a team net negative.

Re: The Mediocre Programmer

#72

I half read, half skimmed the contents, and what I found was significantly divergent from what I was hoping for. I was hoping to find some combination of a breakdown of potential paper cuts that hold programmers back, and an insightful breakdown of seemingly insurmountable problems that keep programmers in their provincial comfort zones, providing a series of bite-sized victories to lead one to greatness. Instead I f…

The point of the book is to help people manage the struggle, not how to become a great programmer. If that isn't what you want then you can go find some other book. The authors own explanation: > There are plenty of books on how to become a better programmer out there. Books like this tend to have checklists and other advice that the author deems important enough for you to do in order to become a better programmer.…

I will admit, I forgot that description as I got deeper into the content.

In terms of managing the struggle, though, at least in my experience, a lot of it comes from having broken models of effectiveness. The net result is having to use a lot of emotional energy attempting to discern what the optimal answers are in a deeply ambiguous sea of grey, with the added difficulty of especially ruthless hindsight. Again, maybe my expectations were grossly miscalibrated, but there wasn't much in terms of orienteering in that environment.

What advice there was: the regular, time-boxed 'containers' of learning, struck me as deeply taxing on someone who struggled with context switching or executive function. Further the exhortation to seek out like-minded peers would be especially painful (non-?) work for someone with social anxiety.

I guess what I wrestle with reconciling is the desire to unconditionally affirm and pastor those in the depths of their struggle, with the advocated actions that would often be inconceivably costly to those most in need of that affirmation and support.

Maybe the impersonal written word is a sub-optimal medium for this mission?

Re: The Mediocre Programmer

#73
post #63

Earlier quoted context omitted.

Those sound more like expectations/goals/perspectives. Brainwashing reads like someone is jamming this stuff down your throat

Yeah, brainwashing carries a negative connotation. I'm not sure what the right verb would be. "Persuading" is too weak, since we're talking about changing the person's fundamental value system away from being too ambitious.

Not everyone wants to go up the ladder all the way to the top, many are happy to deliver whatever makes the customer happy with what is being asked today, without caring about what is going to be the next great thing, most likely already legacy in 5 years timeframe.

The dark matter developers that don't care one second online communities like HN and Reddit do exist, never got paid to attend a conference even on their own town, and have more things to do with their life than hunting for stars on github after work.

Re: The Mediocre Programmer

#74
post #5
post #2

> before we can become better programmers we have to pass through being mediocre programmers Sure it's true, but it leaves out a fundamental truth about programming (and technically complex disciplines in general): most people that attempt programming will never be a good programmer - indeed most never even cross through the gate of mediocrity. There seems to me to be a superegalitarian notion that all people given t…

On another hand, many commercial programming tasks or programming roles are relatively mundane or lower-skill, and do not require exceptional levels of programming ability. If an exceptional programmer was dropped into one of these roles, they might quit out of boredom, or try to refashion the role into building tooling or systems to automate away some or all of the drudgery, but perhaps at the cost of not delivering…

> a beautifully elegant solution for a class of problem of which there will only ever be a single instance, which can be solved with 1 hour of bad scripting

This is a stupidly common problem, and one that is hard to fight against. Why would you decline a good / inspiring part of the codebase, coupled with the unsureness that during the lifetime of the software this would come handy.

Re: The Mediocre Programmer

#75
post #49

Earlier quoted context omitted.

The energetic stupid programmer is the single most destructive thing you can have on your team and in your codebase. They make messes for everyone else, and a dummy writing bad code can produce more volume than even the best coder writing good code. Eventually, guardrails and processes get put in place to protect against their damage, and the whole team slows down. Good coders walk, and you're left with the dummies,…

The codebase is probably not that good to begin with and quite frankly doesnt need to be I think programmers have a chip on their shoulder about the importance of the work they do. You are not painting the sistine chapel Most programming is what you refer to as "workaday"

> You are not painting the sistine chapel

This is very uninspiring and destructive thinking. Just think of detailed and pristine handworks of everyday tools found at excavations, or the charters of guilds in the middle ages. It's not about what you do. It's about you doing it.

Re: The Mediocre Programmer

#76

Earlier quoted context omitted.

The point of the book is to help people manage the struggle, not how to become a great programmer. If that isn't what you want then you can go find some other book. The authors own explanation: > There are plenty of books on how to become a better programmer out there. Books like this tend to have checklists and other advice that the author deems important enough for you to do in order to become a better programmer.…

I will admit, I forgot that description as I got deeper into the content. In terms of managing the struggle, though, at least in my experience, a lot of it comes from having broken models of effectiveness. The net result is having to use a lot of emotional energy attempting to discern what the optimal answers are in a deeply ambiguous sea of grey, with the added difficulty of especially ruthless hindsight. Again, may…

i have been mentoring wanna-be programmers for a while. 15y old and 40y old. Men and Women. In big companies and in tiny companies. For few weeks, and for many months. And... most do make it. Some don't. Not very proportional on abilities/capabilities, AFAI see them. It seems to depend on internal flame.. and some humility. Internal eagerness to do exactly that thing, And be useful. That desire keeps one growing, trying, failing, rising again, finding ways, learning about self by looking from "aside" (controlled shizophrenia IS the state of programmers mind), asking others, helping others, and repeating.. Common advices are difficult, everyone's struggle is different. Hence these taste like usual mumbo-jumbo.. here are some: do not fight your daemons, harness them. Find out weaknesses, and walk around them. Far away if need be. Or straight across them under different angle. Observe and study everything about yourself. Not all weaknesses are equal, are most are not weaknesses per-se, it's the perception that gives them the name. Ah, and same thing about the strenghts - Sometimes it might be better to avoid to ride a strength as it may take you too far, too fast..

There are many many meanings of the word "better", in "better programmer".. i'd prefer the ones closer to "better person" than to "ultimate machine". And.. the ambition.. may not be the best tutor. Persistence.. might be better.

It is important to find yourself a project/s of your own. Nothing too great, can be tiny or insignificant to others. Then don't give up until you do it.

And.. Have Fun. If there's never fun, then this isn't your thing. Abstractly said, programming is the ultimate boredom, and i only manage to do it for 35+ years by searching new ways of finding fun. Nowadays it's mentoring people. What's next.. will see :)

Re: The Mediocre Programmer

#77

Earlier quoted context omitted.

The codebase is probably not that good to begin with and quite frankly doesnt need to be I think programmers have a chip on their shoulder about the importance of the work they do. You are not painting the sistine chapel Most programming is what you refer to as "workaday"

> You are not painting the sistine chapel This is very uninspiring and destructive thinking. Just think of detailed and pristine handworks of everyday tools found at excavations, or the charters of guilds in the middle ages. It's not about what you do. It's about you doing it.

> this is very uninspiring and destructive thinking

Good! The code most people write are not things that will last the ages. the romantic notion of guilds in the middle ages is silly and what I was referring to regarding the chip

Re: The Mediocre Programmer

#78

I half read, half skimmed the contents, and what I found was significantly divergent from what I was hoping for. I was hoping to find some combination of a breakdown of potential paper cuts that hold programmers back, and an insightful breakdown of seemingly insurmountable problems that keep programmers in their provincial comfort zones, providing a series of bite-sized victories to lead one to greatness. Instead I f…

Me too, however, are we just crazy and hurting ourselves to achieve a highly lauded place in our world? Are you filled with the sort of general malaise that only the genius possess and the insane lament?

Re: The Mediocre Programmer

#79
post #8

Earlier quoted context omitted.

I gotta ask, What do you consider good? There's plenty of working software that's good enough. Made by fair programmers who don't care about lisp or FP. Is your scale of good affected by what you see here on HN? Because I feel like the front page of this site has the same effect as Facebook for skewing views of reality.

I’m not sure how to express it very well, but I interact a bit with people who I’d consider “good” programmers. I don’t think I’d correlate it with experience or effectiveness at a job, a good many of them haven’t even made it out of school yet. But they tend to be able to internalize programming/mathematics concepts that by many are considered difficult or complex. I know some will disagree with this, arguing that t…

I wonder, is being able to see a leetcode problem that relies on a generalization of merge sort to solve, never having learned merge sort, and coming up with a merge sorting approach the kind of person who can be a programmer. Does this person even exist(like how many people in the world have that strong of abstract reasoning skills to be able to pull that off).

Re: The Mediocre Programmer

#80
post #2

> before we can become better programmers we have to pass through being mediocre programmers Sure it's true, but it leaves out a fundamental truth about programming (and technically complex disciplines in general): most people that attempt programming will never be a good programmer - indeed most never even cross through the gate of mediocrity. There seems to me to be a superegalitarian notion that all people given t…

> but it leaves out a fundamental truth about programming (and technically complex disciplines in general): most people that attempt programming will never be a good programmer - indeed most never even cross through the gate of mediocrity. Isn’t this true of almost everything? Most people who attempt [x] will never be at a good at [x]. Technical fields aren’t special in this regard. Replace [x] with running and it’s…

OTOH humans are some of the best long distance runners of any species, with the proper daily routine, most humans can endurance run better than most animals in the world. Depends on what yard stick you are using and in what context.
Post reply on HN