The new forums will be named Coin Return (based on the most recent vote)! You can check on the status and timeline of the transition to the new forums here.
Please vote in the Forum Structure Poll. Polling will close at 2PM EST on January 21, 2025.
Hey everyone, I have decided that I want to brush up on computers and really learn to understand them and how they work. Currently classes are not an option, so I will have to mostly learn from books and tinkering.
I want to start by learning the basics about hardware, networking and work my way up to software and security. Eventually I might fiddle with basic programming. Does anyone have any suggestions on good books I could pick up?
Noxy on
0
Posts
MichaelLCIn what furnace was thy brain?ChicagoRegistered Userregular
edited June 2011
The O'Reilly books are pretty good. Problem with books is by the time they're to print, it's already outdated.
You can learn the basics of programming without a deep understanding of hardware. But it sounds like you're more interested in the hardware side of things anyway?
For networking stuff, I think Stallings is pretty widely accepted as being excellent. It won't go into super duper detail and you won't come away with a lot of new practical skills, but it covers a lot.
It's fine to learn about all the stuff you listed, but it's a bit like saying you want to learn all about instruments, like when they were invented, how they work, how they are made, and maybe work your way up to playing them at some point. You can do all that but like exis mentioned, if your goal is to end up a programmer/musician, you don't need any of that other stuff. Computer security, for instance, is a pretty massive field (try installing TrueCrypt, for instance) and there's more than enough there to keep you occupied for the rest of your life depending on how specific you want to get.
The Elements of Computing Systems, MIT press. The book is phenomenal, and really explains how computers work at their most basic level without being overwhelming. It is commonly taught as CS 101 in several universities.
You'll need some basic programming knowledge to understand the chapters following 5 (the second half of the book), but that's only if you care about the software. The site I linked has a lot of the book's content in it under the study plan tab, so you can see if it fits your needs by reading the first chapter.
Personally, I think this book fits people like you best simply because it touches the surface of so many topics while explaining the details of how a computer works, giving you a sort of a 'general education' in the field from which you can then move on and focus on more specific areas you find interesting.
Grey Paladin on
"All men dream, but not equally. Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity; but the dreamers of the day are dangerous men, for they may act their dream with open eyes to make it possible." - T.E. Lawrence
Thanks for the suggestions so far. I am on a trip right now and will look at them more closely in a day or two when I get back.
I finally have access to a computer, so I thought I could give more details on what I am looking for.
Maybe 8 years ago I was a computer tech. I near the bottom of the ladder and my job was to build PCs and do basic troubleshooting. I knew where the parts went on a computer and could often find problems pretty easily with a bit of research or swapping appropriate parts. Software was a bit harder for me but I had lots of resources available and senior techs to give me a hand.
Here is where I am at and where I want to go. I know the names of the major parts of a computer and can put one together but I want to know more about them. What exactly does it do? Why is this graphics card better than the other? What do those numbers mean? After I understand my hardware enough that I could get online and confidently pick parts to build a machine (Not that I need to but I would like to be able to) I would like to move on to some other subjects. Starting with basic networking and the terms. What exactly is an ip address? What are these other numbers on my ipconfig? What are the settings on my router and how can I take advantage of them? I don't want to master security but I would like to understand it and be able to take that knowledge and grow on it as the years go on.
As for programming; I am not sure where I am on that. I would like to know what kind of languages are out there and know what they excel at but I don't know if I will really end up picking one up. I understand that it takes years to master a language so if I do choose to program it will be on a hobby level where I will just try to figure out how things work rather than create masterpieces. Unless I fall in love with the stuff.
It is kind of hard to pinpoint what I want but I hope that helps. I really want to actually know what I am talking about with the general stuff first and then maybe go a bit deeper and find out what really jumps out at me as something to spend a lot more time on. Make sense?
Thanks everyone for your replies so far, I appreciate it.
If you want to try out some programming, it doesn't really matter which language you use. Get a good beginner's textbook, and go through it. They will usually stick to a single programming language, but it's really not about learning the language -- it's about learning the underlying concepts that will be common to most all programming language.
I think this was one of the first books I went through; it's pretty good about introducing the concepts, and is generally pretty fun to go through. You spend most of the book making simple games. I went through the second edition, so I'm not sure what has changed in the most recent revision.
Both books cover computers from the basic gates all the way from manually flipping bytes and watching what happens, up thru assembly and on to higher level languages. Should give a solid foundation on how things work and why it works.
Posts
Tom's Hardware is a good overall Tech site.
For networking stuff, I think Stallings is pretty widely accepted as being excellent. It won't go into super duper detail and you won't come away with a lot of new practical skills, but it covers a lot.
You'll need some basic programming knowledge to understand the chapters following 5 (the second half of the book), but that's only if you care about the software. The site I linked has a lot of the book's content in it under the study plan tab, so you can see if it fits your needs by reading the first chapter.
Personally, I think this book fits people like you best simply because it touches the surface of so many topics while explaining the details of how a computer works, giving you a sort of a 'general education' in the field from which you can then move on and focus on more specific areas you find interesting.
I finally have access to a computer, so I thought I could give more details on what I am looking for.
Maybe 8 years ago I was a computer tech. I near the bottom of the ladder and my job was to build PCs and do basic troubleshooting. I knew where the parts went on a computer and could often find problems pretty easily with a bit of research or swapping appropriate parts. Software was a bit harder for me but I had lots of resources available and senior techs to give me a hand.
Here is where I am at and where I want to go. I know the names of the major parts of a computer and can put one together but I want to know more about them. What exactly does it do? Why is this graphics card better than the other? What do those numbers mean? After I understand my hardware enough that I could get online and confidently pick parts to build a machine (Not that I need to but I would like to be able to) I would like to move on to some other subjects. Starting with basic networking and the terms. What exactly is an ip address? What are these other numbers on my ipconfig? What are the settings on my router and how can I take advantage of them? I don't want to master security but I would like to understand it and be able to take that knowledge and grow on it as the years go on.
As for programming; I am not sure where I am on that. I would like to know what kind of languages are out there and know what they excel at but I don't know if I will really end up picking one up. I understand that it takes years to master a language so if I do choose to program it will be on a hobby level where I will just try to figure out how things work rather than create masterpieces. Unless I fall in love with the stuff.
It is kind of hard to pinpoint what I want but I hope that helps. I really want to actually know what I am talking about with the general stuff first and then maybe go a bit deeper and find out what really jumps out at me as something to spend a lot more time on. Make sense?
Thanks everyone for your replies so far, I appreciate it.
I think this was one of the first books I went through; it's pretty good about introducing the concepts, and is generally pretty fun to go through. You spend most of the book making simple games. I went through the second edition, so I'm not sure what has changed in the most recent revision.
Python Programming for the Absolute Beginner
http://www.amazon.com/Code-Language-Computer-Hardware-Software/dp/0735611319
and
http://highered.mcgraw-hill.com/sites/0072467509/
Both books cover computers from the basic gates all the way from manually flipping bytes and watching what happens, up thru assembly and on to higher level languages. Should give a solid foundation on how things work and why it works.