PDA

View Full Version : OT: Computer books?



IronFist
08-16-2004, 02:14 PM
Can anyone recommend any good computer books that deal with any of the following subjects:

1. Programming logic - not necessarily syntax for a particul language but more like concepts of how stuff works. Examples with certain languages would be cool, tho. Easy to understand and written for a n00b is a plus.

2. How computers work - like how the different components work together like ram, mother boards, cpus, etc.

3. Network stuff - how things like ethernet and networks and servers work.

Ok sweet that's it.

Thanks.

Toby
08-16-2004, 07:22 PM
Originally posted by IronFist
1. Programming logic - not necessarily syntax for a particul language but more like concepts of how stuff works. Examples with certain languages would be cool, tho. Easy to understand and written for a n00b is a plus.The Art of Computer Programming Vol 1-3 by Donald Knuth. Not easy to read. Not so much for noobs. But very complete and very highly regarded. Problem is that examples are written in MIX assembly. You get very good concept knowledge, but it's essentially a fictional language for a fictional system (although I've heard people have created MIX assemblers so you can try out the problems in the book). Apart from that, any "algorithms" book. E.g. by Robert Sedgewick. Most are tailored towards a particular language, though.


Originally posted by IronFist
2. How computers work - like how the different components work together like ram, mother boards, cpus, etc.Dunno. I've learnt this, but I don't remember where. I find it kind of boring.


Originally posted by IronFist
3. Network stuff - how things like ethernet and networks and servers work.Computer Networks by Andrew Tanenbaum. Std. undergraduate text.

joedoe
08-16-2004, 07:42 PM
You can't learn this out of a book, you have got to find a good instructor. And you have to test it against live resisitng opponents. :D

IronFist
08-16-2004, 07:53 PM
^ lol :D

Thanks Toby. I'll look into those. I hope they're not expensive college texts.

Toby
08-16-2004, 07:57 PM
Originally posted by IronFist
I hope they're not expensive college texts. Tanenbaum, probably yes. TAOCP, yes, but you get 3 books. Plus I'd say that books like that are worth their weight in gold over a book on the latest technology that will be forgotten in 3 yrs. Like you said, concepts over technology.

SevenStar
08-16-2004, 08:41 PM
1. introduction to programming - this is actually an older book and was geared towards visual basic, basic and qbasic, but was a good primer for logic in programming.

2. upgrading and repairing PCs

3. upgrading and repairing networks and high performance networking unleashed.

Losttrak
08-16-2004, 11:55 PM
Get some books on A+. That should give you enough general knowledge about computer hardware.

Tak
08-17-2004, 06:45 AM
For programming, I've found the "Programming and Problem Solving in..." books by Nell Dale (et al) to be very helpful for beginning programmers, because they're oriented toward helping develop a problem-solving mindset that you can make use of with any language.

C++ (http://half.ebay.com/cat/buy/prod.cgi?cpid=1082340652&domain_id=1856&meta_id=1)
Java (http://half.ebay.com/cat/buy/prod.cgi?cpid=1124373728&domain_id=1856&meta_id=1)
Other languages available...

IronFist
08-17-2004, 07:19 AM
Wow, thanks guys. Hey SevenStar, do you have author's names?

GunnedDownAtrocity
08-17-2004, 08:56 AM
there's tons of free info on hardware on the net. just start reading benchmarks of the latest vid cards, mbs, ram, whatever.

a lot of it will not make sense at first, but as it's mentioned more and more you will eventually be able to regurgitate it while it still makes no sense.

IronFist
08-17-2004, 10:49 AM
Originally posted by GunnedDownAtrocity
there's tons of free info on hardware on the net. just start reading benchmarks of the latest vid cards, mbs, ram, whatever.

a lot of it will not make sense at first, but as it's mentioned more and more you will eventually be able to regurgitate it while it still makes no sense.

That's how it works while I learn about cars :)

GunnedDownAtrocity
08-17-2004, 11:51 AM
ha me too. i still don't know **** about cars but i can pretend a little if someone else doesnt know anything.

joedoe
08-17-2004, 05:15 PM
You can always try http://www.howstuffworks.com/

fa_jing
08-17-2004, 07:51 PM
You bring up a good point IronFist. Since I wasn't a CS major, I'm trying to expand my horizons with some CS topics. Currently I'm reading this book Expert Systems-. It's a good read, but one does miss out on a thorough understanding of the text due to the lack of a lecturer. Another cool thing is when I built a working memory bit in freshman physics lab, LOL.

But as far as your career in CS is concerned, you have to specialize in a language, environment and/or family of same. And if you are a coder, you need to become aware of language details, coding conventions and design patterns. Experimenting with different frameworks and building working applications on your desktop is a good thing, again if you are a coder.

joedoe
08-17-2004, 08:00 PM
In some ways I agree with you and in some ways I don't. See, I think IF has the right idea in that he wants to get an understanding of programming principles. That is often best achieved by learning and experimenting with a language and applying the programming principles in that language. Once you understand the principles, you should be able to apply them to most languages - then it becomes a question of learning syntax.

I agree that you should specialise in a language, but you should also experience programming in a few different languages as well as it gives you a broader view of the capabilities of each language.

As for learning about the internal workings of a computer and how networks work, that is all handy information to have (especially the networks stuff). Having a broad understanding of computing in general can only make you a better programmer.

IF, another thing you may want to consider is database theory and in particular relational database theory. Invaluable knowledge for a programmer.

fa_jing
08-17-2004, 08:18 PM
we have some badass database programmers on our team. I had never met them before I had this job. The database piece is cool and essential, wish I knew more. Thats a big part of making a production application run fast.
Finding a job where you can learn something is always a priority.

IronFist
08-17-2004, 10:35 PM
Originally posted by joedoe
IIF, another thing you may want to consider is database theory and in particular relational database theory. Invaluable knowledge for a programmer.

I work as a systems setup analyst now and I work with relational databases every day :)

I just kinda suck at it so I want to learn more.

SevenStar
08-18-2004, 12:32 AM
Originally posted by IronFist
Wow, thanks guys. Hey SevenStar, do you have author's names?

1. introduction to programming - james hanapel


2. upgrading and repairing PCs - Scott Mueller


3. upgrading and repairing networks - craig zacker

high performance networking unleashed - mark sportack