Hacker News new | ask | show | jobs
by galfarragem 2953 days ago
Noob question: Is there room for below average programmers? If so, where?
3 comments

I wouldn't think of it in those terms. Most programmers aren't "amazingly good" at it. So, I'd say most work as ... programmers.

I just wanted to make this point because I've repeatedly seen folks frustrated by others who just get things faster and ultimately make progress much more quickly in their careers.

I think it's useful/important to acknowledge that programming is a bit like sports. It's not fair, but some people start with an incredible genetic (or something) advantage built in. I've seen this time and again.

Just to add to this, what you might see as being "amazingly good" might simply be the ability to cobble together pieces of (bad) code from various libraries, without really understanding how things work under the hood.

Incidentally, the best programmer I've ever met (he co-authored a very popular programming language) happens to be one of the slowist typists I've seen. I once asked him why, and he said "because I have to think."

Take your time and have fun.

It really depends on what you personally believe means "amazingly good programmer".

For some it means writing hard mathematical algorithms. For some it means writing the efficient and secure low level code. For some it means solving real problems fast by efficiently glueing existing code. For some it means great communication/management with 30 other programmers on team.

I think it is more about finding who you really are and following that than trying to become some dogmatic idea of what "amazingly good programmer" is.

Find your niche. The bubble effect is strong in all of us.

> Is there room for below average programmers?

Yes!

If we assume that about a third of all programmers are "average" (whatever that means), another third is "above average", and one third is "below average". So, it's not actually a tiny minority, despite what Hackernews might make you think.

Programming consists of many different aspects: creating an architecture, designing algorithms, implementing them, hunting bugs, testing etc.

If you think you are "below average" in one of these areas, you can team up with other developers who are good in that area, and let them guide you.

For example, I work with somebody who is amazing at digging deep and really understand the low-level nitty gritty of bugs. But, they are not that great at building high-level abstractions. So when a task involves building high-level abstractions, we discuss these abstractions beforehand, write some mock examples that use the new abstractions etc.

Some developers aren't good at low-level stuff, but build great user interfaces. Some don't do that very well, but shine when it comes to automation.

To sum it up, "below average" programmers can be very useful to an organization with the right amount of specialization and collaboration/mentoring.

I've been slowly learning to program as a side project (I'm an architect, buildings not IT) and considering to adapt my career to a suitable niche in IT. Front-end/UI-UX seems to be the answer.

I used to hate (the lack of elegance of) JS but I got used. After a lot of dabbling, I'm still between React and Vue. While I prefer Vue, all jobs ask for React. Framework marketability seems to be crucial when/while you perceive yourself as below average.

A person can be an average programmer, and still a superstar if they are an expert in a problem domain. As an examples, shipping / order fulfillment has many weird nuances - things like tariffs, dealing with dangerous goods, differing address systems, etc. Expertise in practically applying the code is extremely valuable.