Live data from Hacker News

The Mediocre Programmer

themediocreprogrammer.com

31–40 of 95 posts

Re: The Mediocre Programmer

#31
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…

It seems like the author addresses that in the contents of the book. In the first chapter, they say that there is no way to close every gap of knowledge, and the only difference between a good and mediocre programmer is contentment.

Re: The Mediocre Programmer

#32
The mediocre caveman:

I have everything I need. I do not need to learn about nature. Caves are very comfortable.

Raw meat is tasty, chewing it with my 3 remaining teeth is great.

I do not need innovation. I can happily live to my 30s... if I am lucky, and do not get killed by a wild animal or a member of my tribe. By the way, what is a justice system? sounds very complex, I do not care about it. I will fix all my grievances through violence.

Oh, by the way, some guys showed up mounting horses and using metal weapons and enslaved us. Perhaps I should have spent more time trying to innovate.

This is exactly what the mediocre programmers and mediocre organizations sound like. People about to get rekt by people that develop an understanding of their world and their craft and innovate.

Re: The Mediocre Programmer

#33

Being a mediocre professional is great! Do you complain when the guy cooking your meal at a restaurant is a mediocre restaurant cook? Or when the doctor prescribing your medicine is a mediocre doctor? Anyone who is mediocre in their profession should still feel pride in what they do. Are you among the best? Maybe not, but you are good enough that people value what you do and that is what matters the most. If you find…

Be the best darn USAF cargo pilot there is!

Yeah, it is great to aim at the top but at some point you have to be happy with what you have achieved instead of constantly feeling bad for not achieving more. Getting to the level where you can be considered a mediocre programmer is a huge achievement and hundreds of millions of people in the world would love to be in your shoes.

Re: The Mediocre Programmer

#34
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…

Considering that there’s no consistent definition of what is meant by mediocre programmers vs “good”, “really good” etc, I get the feeling that this isn’t a very productive approach to measuring the skill of programming. As the responses to your comment demonstrate, it’s hard to get a common definition and thus I feel this discussion to be fairly pointless.

I will say this though: there is nothing magic about programming, or really any technical skills like it. It’s all about practice and getting better with time. I do sincerely believe that anyone can be a productive programmer that delivers within the constraints that are demanded of them.

If you’re talking about “prodigies” or “polymath” or people that have certain conditions that allow them to be more productive without the same amount of effort, yes, I do agree such people exist. And they exist in every field. I don’t think they should be what most programmers should try to emulate though.

Re: The Mediocre Programmer

#35

The mediocre caveman: I have everything I need. I do not need to learn about nature. Caves are very comfortable. Raw meat is tasty, chewing it with my 3 remaining teeth is great. I do not need innovation. I can happily live to my 30s... if I am lucky, and do not get killed by a wild animal or a member of my tribe. By the way, what is a justice system? sounds very complex, I do not care about it. I will fix all my gri…

As long as there aren't enough great programmers in the world to satisfy all programming needs we will need mediocre programmers to cover for them. Programming isn't a competition and hence it doesn't matter if others are much better, all that matters is that there is a need for what you can provide.

Re: The Mediocre Programmer

#36

The mediocre caveman: I have everything I need. I do not need to learn about nature. Caves are very comfortable. Raw meat is tasty, chewing it with my 3 remaining teeth is great. I do not need innovation. I can happily live to my 30s... if I am lucky, and do not get killed by a wild animal or a member of my tribe. By the way, what is a justice system? sounds very complex, I do not care about it. I will fix all my gri…

As long as there aren't enough great programmers in the world to satisfy all programming needs we will need mediocre programmers to cover for them. Programming isn't a competition and hence it doesn't matter if others are much better, all that matters is that there is a need for what you can provide.

If you train a developer, educate them about good practices, reward responsible behavior and engineering rigor, and amplify their impact giving them good infrastructure and tools, it is hard for that engineer to stay mediocre.

If you show developers thay you do not care about how they do things, they will become mediocre. Unless they are ethical and do it anyways.

Re: The Mediocre Programmer

#37
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…

Building something in 100 hours that satisfies a class of problems but will only see use once is definitely not smart. It's called taking advantage of your employer to satisfy your own curiosity. Do that in your free time of your job is not one where that solution will see millions of uses (meaning you are not working for - depending on decade we are talking - Bell Labs, IBM, Microsoft, Amazon etc.).

If you are that good but work at a regular company, build an awesomely good script that is maintainable by even a mediocre programmer that comes after you and spend the other 55 minutes of that hour doing the next task. Then go home when everyone else goes for lunch without anyone noticing because you did the work of 2 people already anyway. If you have a good boss they won't care and give you awesome life work balance that you definitely would not get at Bell Lab, IBM, Microsoft or Amazon because they know how to exploit your drive and passion for their own good. No you don't make enough money to get that time of your life back.

Re: The Mediocre Programmer

#38
post #8
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…

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.

It's good enough for a time until a competitor comes in with better software and you go bankrupt due to unable to compete on price and usability.

Re: The Mediocre Programmer

#39
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…

Not only this, but very few people even ask the simple question, how do I become a better software engineer.

The four quadrants of competence applies.

Q1. Unconscious Incompetence. Q2. Conscious Incompetence. Q3. Conscious competence. Q4. Unconscious Competence.

Most people never leave Q1 phase, just muddling through their career and stagnate or burn out.

It takes lot of effort to jump from Q1 to Q2 and become aware how difficult things are in reality. Some take effort to become better and these types will usually succeed over time.

Lot of senior level people end up in Q3 and it's comfortable zone to be in. But, it takes more significant effort to jump to Q4, where they can gain additional pull to be able to lead and make significant more money.

It's significant journey and the timescale is not linear, it's logarithmic in some situations and extremely long in other situations.

Re: The Mediocre Programmer

#40

Earlier quoted context omitted.

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'm not sure how relevant it is today but one litmus test I found years ago was how naturally they grasped the concept of a pointer. If a programmer grokked pointers that was a good indicator that s/he was on the path to being a good programmer. It's probably just a proxy for being able to think at a level of indirection.

[deleted]
Post reply on HN