Live data from Hacker News

The Book That Every Programmer Should Read

onlinehut.org

21–30 of 73 posts

Re: The Book That Every Programmer Should Read

#21
After reading Code my hacking skills increased considerably. I am never comfortable relying on abstractions so understanding more of the programming stacks I use increased my willingness to experiment with then. It also helped me to better understand pointers and memory management as memory became a real thing to me.

Also, I had fun building my own simple computers in logic gate software.

Re: The Book That Every Programmer Should Read

#22
post #6
post #3

Earlier quoted context omitted.

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.

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 rea…

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

#25
Another book that takes this "soup to nuts" approach to the pillar of computer abstractions is Zalewski's "Silence on the Wire". It's mostly focused on computer security, but it does an excellent job of peeling back software abstractions and showing how innocent decisions like blinkenlights and link-following web spiders can be utilized to compromise security. My favorite computer security book, easily.

Re: The Book That Every Programmer Should Read

#26
I graduated w/ a degree in Electrical & Computer Engineering with a minor in CompSci. From the review, this sounds like all the stuff I learned that wasn't CompSci, distilled into an easy-to-read form. Stuff like flip-flops, RISC assembly, how memory works, etc. It sounds fantastic.

Having the benefit of an EE based undergrad degree was awesome for this reason, esp. since my first job was firmware design. The downside is that I never took a compiler course and have had very little exposure to stuff like discrete mathematics and turing machines. I didn't learn anything about OO design 'til after school, and I still haven't gotten into functional programming.

Sometimes I worry that I actually missed out on the good stuff. :/

Re: The Book That Every Programmer Should Read

#27
Has anyone ever read The Cartoon Guide to the Computer? http://www.amazon.com/Cartoon-Guide-Computer-Larry-Gonick/dp...

I have given this book to 2 people who told me they wanted to know more about computers. It's very easy to read and does an excellent job of explaining basic computer concepts. Probably not too interesting for this crowd. But it's an excellent introduction to computing.

Re: The Book That Every Programmer Should Read

#29

Sounds a lot like my Digital Circuits course in university. We started with a breadboard of transistors, and after we built each component we got that component as an IC to build the next level of abstraction (flip-flop → memory → adder → processor → etc) . At the end we ended up with a fully programmable computer that we were tasked to program as a sensor-driven traffic light controller. Seeing every step from the g…

I've decided today that I need to start playing with Arduino for precisely this reason. Before I switched from EE to CS, I took one of the first EE courses where we used a breadboard, a controller which we had to program and actually made some type of device (can't recall now what it was). I can picture my engineering notebook full of detailed notes, complete with the numbered pages and initialed corners after filling in a page. It was a lot of work, but tons of fun and so cool to see it working at the end.

I can only imagine how much easier it will be today than in 1994. Oh the gadgets I will build... Good thing my birthday is here and Christmas is coming soon!

Re: The Book That Every Programmer Should Read

#30

I graduated w/ a degree in Electrical & Computer Engineering with a minor in CompSci. From the review, this sounds like all the stuff I learned that wasn't CompSci, distilled into an easy-to-read form. Stuff like flip-flops, RISC assembly, how memory works, etc. It sounds fantastic. Having the benefit of an EE based undergrad degree was awesome for this reason, esp. since my first job was firmware design. The downsid…

I was a physics major in college and got into programming a couple years ago.

In my experience, of the hard sciences, CS is by far the most amenable to self-study. CS isn't easier, whatever that might mean, but CS is amazingly inviting: if you've got a computer and a textbook budget, you can learn some really neat stuff. So don't despair; get studying!

Post reply on HN