Scared away from Programming

So I read all over the place that being a programmer is bad, stressful, blah blah blah. And I was kinda skeptical of being one anyway. Also one of my teachers at my high school (I will be a senior next year) said to go into CIS instead of CSCI, to be a Sys Admin or Network Admin, which I assumes involves managing a network and/or servers. Is this a good route also? Especially since I have sparked a keen interest in Linux and actually putting my hands on hardware. How is the money in these fields compared to being a programmer? I always thought that being a dev would be fun, if you worked for a small, progressive minded company. What are your thoughts? Logan, Wendell, Qain, everybody?

Both of these are tech related, but programming is more akin to being a chef, and sys admin is more akin to making sure the stoves, refrigerators, and food supplies are up to snuff. Both are vital, and will remain to be vital for years, so you're already in the right area.

You're a junior now so you've got plenty of time to try both. Do some online programming stuff and some basic sys admin stuff.

If you're not sure where to start with programming try Zed Shaw's Learn Python the Hard Way.

If you're not sure where to start with sys admin stuff try setting up a home media server on an old computer (don't have an old computer? buy a rasberry pi).

That should help you sort out which you have more fun doing. I'm biased as a developer though.

Programmer(CS/CSIS) actually makes stuff, CIS more makes sure the computers running the software stay up. CS programmers(not sure about CSIS since I didn't go the route) are the highest paid bachelor degrees there are. Not that admins aren't well paid but just not as well as CS majors.


I would say learn some programming, python, C++, java, or maybe even C if you want a challenge. In order of easiest to hardest. A lot of people say java is easier than c++ but at the beginning they aren't much different, once you get to pointers and such c++ can be more complicated but thats not beginner stuff so I'd say java and c++ are about as hard/easy as the other. 

Programmers are meant to be some of the best paid in the IT field, but it would mostly depend on who you work for and what you are doing.  Not everyone is cut out to be a programmer career-wise as it can be an incredibly stressful job, with deadlines, debugging, etc.  Again it would depend on your work environment to a large degree.  I imagine working for a major gaming developer wouldn't be as fun as it sounds and probably highly stressful, but working for a small indie developer might not pay as well to begin with.

Aside from handling the stress, you need to be a good problem solver.  90% of programming is all about solving problems, and I don't just mean debugging. But if it's something you like to do you should definitely pursue it.  I think everybody should get into programming, whether it be as a career choice or as a hobby.  Not only is it fun, but it's a great way to exercise the mind.

If you're just starting off I'd probably avoid the more complicated languages to start with and go with PHP or javascript, or something relatively easy to learn where you can start making real, usable programs in a couple of weeks.  Javascript is a C based language, so the transition to C++ would be a natural one.

What you learn really depends on what you want to do.  If it's web based stuff, learn HTML, CSS, Javascript, PHP, Java.  There are so many out there,  you are really going to have to narrow down what you want to achieve with your programming and go from there.

Thanks for the input everyone. I just didn't understand the stress part that people talk about in regards to being a developer (I know it depends on your environment). By the way, I have dabbled in Python and HTML/CSS, and I actually have been enjoying it quite a bit. I get a feeling of satisfaction when I create something that actually works.

I just wanted some input to keep in mind!

It's great that you've enjoyed your experiences.

I think the stress issue comes into play with the working environment.  Some companies are notorious for treating their programmers poorly - being pushed to complete a complex project by business people who don't understand the issues of it can be rough.  Sitting in front of a computer for hours, reading and writing and researching code, isn't for everyone.  You can spend weeks working on a small piece of code, trying to integrate it into a larger project.  You can get sick of working on that same project for months or years.  It requires a lot of patience.  But if you don't mind that sort of logic and problem solving, brilliant!

And math.  You've only skimmed the surface of programming, but as you get deeper you'll discover that nuances are aplenty.  When people begin to worry about performance, developers have to know various algorithms and ways to approach different problems.  There's just a lot of information in the field - a lot of tricks you have to pick up.

CS is a solid choice.  Software and hardware are inextricable, and the best people in the field always have some familiarity/understanding of both.  You can always select your courses to put emphasis on the area you're more interested.  Plus, at many universities, the various computer-related majors often overlap so much that it's not hard to get a double major in you four years.

Here's a good thread worth checking out to give you a bit of an idea of some of the various languages.
It also provides links!

I think to understand the stress side of things you can probably google Mythical Man Month and read a bit about how the average number of line on a large project per programmer day is only about 10 lines. This is because programming projects can be very big and complex and they always have a new problem to solve and allot of this can be just needing to research and understand the problem. I know I will stress about the fact that I have to go in to work the next day to solve a problem and I don't know how I am going to solve it so I'll end up staying up all night at home trying to figure out the problem so that when I get to work the next day I can actually try something or know what I am doing, if you have a dead line this can be even worst because you have to go and tell someone normally you boss that you still don't know what your doing or you tried something but it didn't work. You can also google the statistics for software project and you can find that 2 out of 3 software projects are cancelled or go over budget or over on time so their is more failure than success. If you enjoy solving problems and can try something new and not just Google solutions, and handle failure then you would probably enjoy programming professionally.  

Thanks for your input! I am someone who is not really scared of failing at anything. However with the collective input of this thread and from others I am kind of steering towards the Server/Net/Sys Admin course. Or a Network Engineer? Yet another thing to mull over.

can confirm being a programmer is stressful. half way to being bald.

genetics =/= programming