No, the point is that learning the language is a trivial task once you know the high-level concepts. You're overplaying the importance of actually "learning a language". The reality is that you either know how to program or you don't -- and if you know how to program, what languages you know or don't know doesn't actually matter, because you can easily learn any programming language and become proficient at it on your own in a matter of weeks, if not days.
In other words, you can learn how to use a drill or a hammer pretty quickly on your own (just RTFM), but it's much harder to learn how to build bridges on your own. And if you understand how to build bridges, the task of learning how to use the tools necessary to do so is trivial by comparison.
So when someone comes into this forum asking "How should I learn how to program?", it's never productive to tell them how they can learn to use the tools (i.e. learn a particular language), because the first and most important thing anybody needs to learn and to know is that the tools don't really matter.
And honestly, the fact that you've had 2 years of a supposed CS/SWE education and *still* don't understand this fundamental concept is kind of sad. But it's not entirely your fault either -- see my above comment about how most CS programs are crap.
Quote (Fawar @ Dec 3 2012 03:31pm)
From your point of view it would be the best to learn to sort the database at the same time has learning the language itself. I see how easier it is... not
And to clarify my point even further, there are three key skills/knowledge/understanding that's required to implement a database sort.
1) Knowledge/understanding of how to sort data sets (this can be further generalized to "problem solving")
2) Knowledge/understanding of how to convert a theoretical solution for sorting a database into an actual, codified implementation. In other words, this is basically the ability to translate an internal high-level concept into an external expression of that concept.
3) Knowledge of a specific language, used as the actual vehicle for accomplishing 1 and 2.
Of the three, 1 and 2 are by far the most important and hardest to learn. 1 is the most important because it is the most universal. 2 is slightly less important than 1, but it's pretty damn important because everyone needs to be able to communicate what they know.
3 is the least important by miles, because it is simply a tiny extension of 2. If you know how to do 2, it doesn't matter if you know how to do it in C/C++, Java, Python, English, Klingon, binary, hex, or elvish. Because unlike the languages of the world, all programming language share the same basic grammar and semantics (mostly) -- they differ only in syntax, and learning syntax is dead simple.
-----
By the way, this is why mathematics is considered to be the "hardest" field, because it is a superset of basically everything else in the sciences. Everything else is just fluff on top of fluff.
http://xkcd.com/435/This post was edited by irimi on Dec 3 2012 04:57pm