Learning C language before JavaScript

By no means am I an expert programmer in any language. Indeed I’ve only recently started to look at programing again after more than a decade of not programming anything at all. I Started with with Java as part of an O.U. degree about 16 years ago. Never did anything with it. Languages like Java are so high level you are often left with a feeling of not really knowing why certain things are done the way the are, its all sort of hidden behind the abstractions. I also taught myself JS too even though at the time it was a much smaller language than it is today, I was still left with the feeling that its all a bit of a magic black box.
It wasn’t until I taught myself C (mainly following K&R C book ) that I felt I could start to appreciate what is going on. C is close enough to the metal to force you to think about how data is stored and manipulated as bits and bytes, about data types and about memory management. Most of these things are hidden from you to some degree in higher level languages and hence difficult to fully appreciate their significance.
In short there is certainly no necessity to learn C but it is a small enough language to learn in a reasonable amount of time and will challenge the way you think about the machine your sat in front of. Having at least an appreciation of an assembly language wouldn’t hurt either though this is far from necessary.
As has already been mentioned C is not C++ nor C# or objectiveC these are all much bigger languages that will require much more investment and distract you from the basic concepts.
In short I think C is an excellent language to learn even if it is just to understand what what higher level languages are offering (or hiding from) you. You will probably find linux/unix environments easier to work with C although take that with a pinch of salt. The last Windows machine I used was Windows ME! so what do i know:laughing:
The K&R C book second edition is still as good an introduction as anything else.