
Ask HN: Does learning C really help you develop better software? - philonoist
The question encompasses for both Beginners and Professionals for building expertise and great intuition in building software.<p>The other part of the same question I would want to know is, whether C improves our expertise and geat intuition of problem-solving in data structures and algorithms.<p>It could be in any domain, be it web development, or any other.
======
dozzie
C allows you to interact directly with your OS (especially true for unix
OSes). This in turn helps you to understand how a specific higher-level
feature is implemented, how can it be used, how and when can it fail, and how
to debug it in all the other programming languages, like `subprocess' module
in Python, polling descriptors (any language), or ports in Erlang.

------
gabluc
C gives you a behind the scenes look at most abstractions you use in terms of
data structures. You create and destroy things such as lists, trees and such.
You manage your memory manually and that let's you appreciate the work people
put by making languages that do those things for you but you also learn a lot
in terms of abstraction.

There are surely languages you use or will use which implementations are in C
( Python for example )

I think it's somewhat similar to a question with JVM languages. Do you have to
learn a bit of Java to get a deeper understanding of Scala of Clojure?

Do you have to learn a bit of Latin to express yourself in English or Italian
a bit more fluently?

