How Did You Learn What You Know About Computers/the Internet?
October 11, 2004 10:47 AM   Subscribe

I am taking a brain-painful networking class (hint: it's all about the routers, baby!) and the studying is intense. It's hard, but I'm holding my own. I see questions here on AskMe that bring really cool answers from lots of folks, with a lot of repeat answerers, which leads me to ask, How Did You Learn What You Know About Computers/the Internet? Was it in school? Did you apprentice with someone who had m4d sk1lz? Did you teach yourself? Other?
posted by Lynsey to Computers & Internet (18 answers total) 2 users marked this as a favorite
Almost everything I know about computers, and everything I know about computers, I learned from paying attention in the critical moments immediately after I realized I had done something wrong. If you can avoid making the same mistake twice, you're better than 80% of the techies out there. The other 20% comes from making connections between things that make up your 80%, so that you can predict what mistake you're about to make before you make it.

Experience is great: you'll always flinch and cringe at the right time.
posted by spacewrench at 10:56 AM on October 11, 2004 [1 favorite]

Most of my learning process was the result of some employer/client asking "Do you know how to do X?" and my answering "But of course!" and then rushing off to read the documentation / google / whatever until I actually could do whatever they were paying me to do.
AskMe has raised this process to a science, naturally.
posted by signal at 10:59 AM on October 11, 2004

I certainly did NOT learn it along with my degree in Computer Science. Hell, I didn't even become fluent in any one programming language. And I graduated 'with honor' in 2000. From Georgia Tech! *whinge*

My sources are Google and the coffee shops at Barnes & Noble/Borders.
posted by mischief at 11:07 AM on October 11, 2004

I learned a bit from school, my old LAN party pals, and people I met at concerts who fixed broken gear in their spare time. (Oh yeah, for now it's the routers; once the demand rises, services will the shit.)

Texts/MAN pages/PDF files are great resources for learning. So are RFC directories, FAQ sites, and user groups. Mailing lists from various manufacturers/developers can sometimes keep you ahead of the general public in terms of what's new. Some companies may even look for beta testers, and will request your input. Above all else, you should check out various business sources: Red Herring, Barron's, the Morningstar Indexes, End of Free, Corporate Financials Online and can help you discern which technologies and companies are leading or bleeding.

As spacewrench said, trial and error plays a huge role. The term "hacker" originally referred to someone who took things apart, to see how they ticked.
posted by Smart Dalek at 11:18 AM on October 11, 2004

The difference between me taking a computer to someone to see what the problem was in 1995 and me figuring out that my motherboard was fried in 2004 in a matter of minutes was simply experience.

In the past year years of daily computer use, I've seen it all, and more importantly, I've learned to look for certain signs and figured out how to test variables.

If I woke up this morning and my computer was dead, I would have a list of tests I could do, each one ruling out a possibility. That came from experience seeing computers do everything imaginable, and figuring out how to isolate each part that was screwing up from every other part, in order to determine causes.

If you want to learn about networking, the best way is to try every configuration imaginable. Build a wireless network at home. Then add in computers of different OSes. Then try some different encryption technologies. Then try making a central login page on your router. Then try building your own VPN system, etc, etc, etc.

In a short time, you'd have experience in lots of common network configurations and know how to troubleshoot them in the field.
posted by mathowie at 11:20 AM on October 11, 2004

Majoring in Computer Engineering?
Not so helpful for real life experiences, however it does give you a much deeper understanding why things are done the way they are done, and why something might be going wrong.

As for figuring out what needs to be done day to day. Experience is probably the most useful. It helps when you need to do something, if you've done it before. (whether it's get a website up and running, or finding out why the computer reboots constantly) And if -you- don't have experience, there are people who do, and a lot of times they write books and articles, or are your cow-orkers, and can explain what's going on.

Regardless of the specific area of computers you're going into it all boils down to one thing, reducing the size of the problem domain until it contains one problem, and as you gain experience and knowledge, this process becomes less and less intensive, and you will be able to more quickly ascertain what to do.

There's no one way to do it, hopefully, you will acquire your skills from an amalgamation of techniques; school, your own experience, your coworkers experience, books, and the internet.
posted by patrickje at 11:52 AM on October 11, 2004

I'm actually 2nd generation techie in my family so I grew up hearing about LANs and WANs over the breakfast table. We didn't have a real geek household but computers were seen like any other mechanical thing -- they break, you fix them -- and never had that "you just can't understand some things" mystique to them that I know some people have about them.

The WWW was just taking hold when I started library school, so I went in to school learning about gopher and archie and left learning about Mosaic and WAIS. I had enough know-how to teach other people so I got some early jobs teaching email classes [when email = Pine] in 94-95 which necessitated learning more about how the Internet worked. There's nothing like having to explain something over and over to people who really don't understand it [or who don't speak much English] to really help you understand it yourself. I had a few programmer boyfriends who taught me miscellaneous stuff and then got a job at an ISP in 2000 or something where I learned a lot of hardcore Internet routing stuff [configuring DSLAMs, DNS routing stuff, everything about configuring all kinds of email and browsers] and hung out with a lot of people who knew more than I did.

Now I am again teaching email classes at the public library [helped a 76 year old woman get her first account today!] and a lot of the stuff I learned five years ago in Seattle still isn't relevant to Central Vermont yet. To me the central part of learning this stuff has been

- being intellectually curious and tenacious with problems and quandaries
- having stuff to mess around with that you won't wreck, or that is already wrecked
- not limiting yourself to one operating system/browser/product
- knowing the vocabulary so you can talk to people about it [also: good peer group that enjoys messing with stuff like this]
- being able to think systematically about the problem, and being unwilling to sleep or eat until you fix it

For me, all computers are just big complicated video games, fun to play with and break and fix.
posted by jessamyn at 12:10 PM on October 11, 2004

Basically, I just started playing around with a computer. It's harder to do now, but I used to break a lot of things messing around on the computer, and I ended up learning a fair amount just trying to get the computer fixed before my parents noticed. After a while, I pretty much got a hang of common problems and common solutions. I also had some good friends that were very knowledgeable, and learned a lot about how to use and get around UNIX from just talking with them and observing what they did. Now that I've been out of college for a few years, I find that I'm pretty set in my ways in computer usage so I don't mess around nearly as much as I did before. If I wanted to learn about a particular subject such as networking, I'd probably google for some good sources and buy a good book on the subject.
posted by gyc at 12:17 PM on October 11, 2004

and never had that "you just can't understand some things" mystique to them that I know some people have about them.

and use as an excuse to shut their brains off whenever they get near one.
posted by quonsar at 1:17 PM on October 11, 2004

Had a ZX81 as a 12 year old, then progressed on to Amstrads and Apple IIs.

Then I did nothing with computers for some years because I was studying music.

After I dropped out of university and became a technical writer, I got made redundant, and got a job at the helpdesk at the local University. (The very same one where Simon Travaglia, the Bastard Operator From Hell works to this very day. But that is a story for another day).

I learnt heaps there. Universities have really diverse IT environments, very cranky users, and higher-level support people are all grad students who really know why things break. So once I decided that I too wanted to be a programmer, I had lots of clever people to ask for help, and lots of broken things to practise solving problems with.

I did take computer science part-time, and that's proved useful, but by far the most practical stuff I've learned has been through advice from other people. (These days the googled web fills some of that role too).

My single big piece of advice would be "be stupid". By which I mean, be open about what you don't know and ask for help or explanations. Most IT people love to explain how things work.
posted by i_am_joe's_spleen at 1:26 PM on October 11, 2004

in my opinion, computers are like cars. you don't learn anything about them if they work.

i've run across a lot of computers that didn't work. generally i'm comfortable taking a pile of parts and turning it into a working computer with some sort of OS installed. i also have learned enough from my own experience and from talking to others who actually had formal training that i know enough to realize when i'm in over my head. that's important. it's easy to be on the right track and then take one step too far.
posted by caution live frogs at 1:51 PM on October 11, 2004

Never taken a class (well, ok, did some Fortran in college), but read a lot of books and websites. Although, as everyone else in this thread says, you just can't beat experience, you got to do it to really get it. Books and online info are just the start.

I'm not a networks guy, and I have an engineering graduate school background, so maybe that's a different perspective. I'm a programmer and designer and figure that if I go back and look at something I did a couple of years ago and cringe at the sloppiness, inelegance, inefficiency or just general crapness of it, then maybe I'm progressing.
posted by normy at 3:34 PM on October 11, 2004

Oh, yeah, I've also been lucky enough to have a couple of willing and very experienced mentors who have been inspiring - while ripping to shreds what I thought was good work. Hard to find, but great when it happens.
posted by normy at 3:48 PM on October 11, 2004

I studied at U of Hard Knox's prestigious inverse engineering college. Seriously. I have nearly no formal education worth discussing, but between plain old real world experience, a strong understanding of fundamentals, recognition of my own ignorance, and a knack for extrapolation, whatever I don't understand I can learn without a lot of trouble. After a while, the resulting knowledge starts to accumulate, and I mine it for patterns.

In some respects, I think having strong empathy is an extremely good way to learn how things work. Put yourself in the shoes of a guy who has to make something, under what seem like the appropriate constraints, and most likely what you come up with won't be far off the mark from what actually got made.

The short answer is that I have no idea how I learned what I know. I just know it, and whenever I encounter a gap in that knowledge I fill it without much effort -- reading, trying stuff, watching what works and learning why it doesn't.
posted by majick at 3:50 PM on October 11, 2004

I would have to add, that a lot of people do think like cation live frogs, computers are like cars -- and this is the problem. Many people don't want to try to fix something because they're afraid it'll break (on cars accidently cutting the break line is slightly more dangerous/expensive than deleting a DLL). Once the "if you touch it breaks" and "it's magic" erodes, computers are very simple things. Yes, the barebones are very complicated but the basics to power users is something very easy to come by.
posted by geoff. at 5:06 PM on October 11, 2004

All most excellent answers, thank you! I went into this class with lots of little bits of unconnected knowledge - now I'm filling in the blanks and learning why I do the stuff I do every day as an IT support person at my work (i,e.: what is a subnet mask and why do I put that one in when I configure a machine?). And hey, I've got the OSI model down, backwards and forwards! Only 3 more quarters to go.... :D
posted by Lynsey at 5:11 PM on October 11, 2004

A few good mentors, and man pages. Lots of trial and error, which works best when you get an assignment that you have no idea how to execute.

Also, and this one is a bit metaphysical: teach someone who knows less than you. Something happens to your learning when you begin teaching something to someone else. This is an emergent property of knowledge, which has never been fully accounted for. Teaching someone else how to do something you only sorta know how to do makes you know it so much better, and changes the nature of your study. This has worked for me with Algebra, French, and all sorts of computer related things.
posted by squirrel at 6:25 PM on October 11, 2004

Playing. Gotta play with new stuff all the time. Wether it is new software or new hardware, if you're not playing about with it you're falling behind.

And, the #1 most important thing: Don't memorize something by rote. Knowing that you can hit Ctrl-P to print when you are using word, but not realizing that you can do the same thing in almost any application means you really didn't learn anything at all. Yeah, that example is a bit obvious, but I've dealt with HUNDREDS of people who learn just like that. You throw a notepad document in front of them, and they can't print it.

That applies to more complex problems, too, of course.

You'd benefit by finding the guy who all the unsolvable problems go to in your class / group / place of employment / whatever and watching him work. There's always a guy like that in every workplace. He's usually sitting there looking like he's doing no work at all (and he probably isn't). His entire reason for being in the company is "The buck stops here".
posted by shepd at 10:22 PM on October 11, 2004

« Older GoogleBombing: Suppose I regis...   |  Ok, how about tipping when you... Newer »
This thread is closed to new comments.