Well... to add to the board a bit, I figured I'd throw out the question thats been beaten to death countless times.

"Which programming language should I learn?"

I am a Networking major, so I haven't had much programming experience. All I know so far is bash scripting. Since my concerns lie primarily in system administration, etc., I've been leaning towards Perl, only because I've heard it is useful for scripting simple jobs. On the other hand, I am very interested in learning C, as I've turned into a linux junkie over the past year, I would like to really understand some of the finer things involved. Plus... it's obviously a more powerful language than Perl.

What do you think?

I myself have learned c and c++ it is somewhat difficult when you get into the gui and oop areas of the language but very enjoyable. Since you are a linux junkie you may want to learn c to help contribute to the linux kernel itself or programs that are ran on linux. I believe in learning a powerful language then learning a scripting language to do small jobs :/

You have to ask yourself: What do I want to achieve?
Do you need a high-level language which is easy and fast to program with, or a low-level language to code kernel modules, doing embedded programming and such?
A lot of people recommend C++, but I beg to differ. C++ takes *ages* to learn properly, because of all its quirks. I've coded regularly in C++ since late 2002, and I still feel like a novice. Nowadays I recommend people Python. It's high-level enough to master quickly, but if you need to do low-level stuff with it, you can code python modules in C. Python is really easy to embed and extend.

So, yes. Python, then C is the way to go in my opinion.

Right on. Thanks for the responses.

Learn Bash inside and outside.

Then learn Perl inside and outside.

Don't expect to get good for at least a year (i.e. be patient, and learn properly and in-depth).