News for hackers. Stuff that matters.
Re:The Book That Every Programmer Should Read by javadyan on Monday October 31, 2011 @05:21AM (#3176830)
I firmly believe that every programmer should be able to read and write C to some extent, and to learn it one must read K&R. So, yes, I agree that it is also one of the books that every programmer should read.
Re:The Book That Every Programmer Should Read by Volpe on Monday October 31, 2011 @05:46AM (#3176869)
Curious why you think that? Every programmer?

What does learning C provide that other programming languages (majority of which have some basis in C) don't teach you?

Memory management (allocation, pointers, etc)? Pipes and buffers?

They are present in other languages, and one could argue with memory management why 'every' programmer must learn those techniques even if they are never really applicable to them.

I'm really trying to think back to my C days (I haven't done it in a long time) as to why it is so important to know? What is unique about it?

Re:The Book That Every Programmer Should Read by epscylonb on Monday October 31, 2011 @05:55AM (#3176890)
I think I am a better programmer for having used C.

C is interesting because like php it is very easy to end up with an unmanageable code base (but of course C is a lot more powerful than php).

I learnt a lot from good C code, the best C libs I have seen use a pseudo version of objects. They create a data structure to hold state and pass that as the first parameter to each function that can be used on it. Once I got my head around that I found I had a better understanding of the concept of object orientated programming.

Re:The Book That Every Programmer Should Read by javadyan on Monday October 31, 2011 @07:23AM (#3177033)
One good reason is that by writing algorithms and data structures in C, you can see them in all the detail, see how the memory is laid out and how it's managed, and understand their costs and benefits.

I used ANSI C to implement most of the algorithms we studied at the university and I can say that it helped me understand them better.

Plus, an understanding of what happens on the lower level can be quite handy when debugging some software written in a more high-level language.

Re:The Book That Every Programmer Should Read by kabdib on Monday October 31, 2011 @10:25AM (#3177439)
C and some limited amount of assembly are what drive most of the electronics that surround you; most of the of "smart" devices in your house, car and pocket contain large amounts of code written in C. The phone infrastructure you use, the traffic signals, the network you get news from, the browser you're using right now? C.

Scripting languages and bytecode-driven languages? Their interpreters and jitters are likely written in C.

There are exceptions. I understand that some Java-based systems are built in Java, all the way to the metal. Apple was a Pascal shop until it turned to C in the late 80s. By and large these are systems on the fringe, and the bulk of the heavy lifting today is done in C.

You should probably understand it.

Re:The Book That Every Programmer Should Read by nobody31 on Monday October 31, 2011 @04:31PM (#3178909)
Same reason you can't be a mechanical engineer without having taken a shop class.

You can sit in front a CAD and FEM package all day - but if you don't appreciate how the things will actually be built you aren't going to be a really good engineer.