DEV Community

Discussion on: Beware the Trendites

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

I think I understand where you're coming from. I rarely make statements like "a true professional must X". My motivation on that one exception was that it is hard to really understand the underlying mechanics of programming without knowing C. That knowledge of underlying mechanics is generally critical to writing clean, well-performing, efficient code.

That said, it could be argued that knowing any number of similar low-level languages with such low-level control can substitute for knowing the C language. For example, if one were proficient in Assembly, they could absolutely skip C in terms of the fundamental knowledge it provides.

The trouble is, we have too many programmers who just "leave the fundamentals to the mega-nerds", and crank out garbage as a result. They don't actually know what they're doing, why they should use certain algorithms and design patterns. Even if someone can leave the low-level work to others, they shouldn't be in the dark about it.

Collapse
 
bosepchuk profile image
Blaine Osepchuk

There are "good" programmers who know C and there are "bad" programmers who know C. There are also "good" programmers who don't know C (or any other low level language).

To make your case you'd have to take a group of "bad" programmers break them into groups and run experiments on each group. And then come up with the result that the only way to turn them into "good" programmers was for them to learn C (all other treatments failed). If that turned it to be true, I'd be very suprised.

I know there are a lot of "bad" programmers out there but I think their level of C knowledge is a non-casual factor. Do you know of research that suggests otherwise?