program developing

I'm confused,
I keep seeing articles stating that program developing is a hot career with good pay, but I'm confused on how it is different from computer programming.
So for any of you program developers out there, could you shed some light on the difference, if any?
also, if you are a program developer, what did you do to get a job in program developing? Did you learn things like java?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Luis PérezSoftware Architect in .NetCommented:
Are you confused, did you say? I'm sure I am.

"Program developing", "computer programming", "Software developing", "Software engineering"... at least for me, all of them are abstract concepts related to the same thing: create software.

And how do you create software? Well, you need to know at least 1 programming language. Java, C, C#, Visual Basic... simply choose the one that suits your needs. Every one of them has its own characteristics, and depending on the type of software you want to create (a Windows application, a Web site, an iPhone or Android app...) you must take the right decision. Once chosen, simply install the development environment and let's start.

Hope that helps.
JeffBeallAuthor Commented:
I think that helps, but I guess I didn't have enough of the details ( I do that a lot, sorry )
In the article, it seemed to say that program developers are the ones that look for bugs in a program ( I think the article said that you would run the program and look for glitches ) then i guess once you find the glitches you fix them, which i assume would be the part were you need to know programing.
but a computer programmer, i always thought was one who creates the program. so for instance a company needs something done, the programmer takes what the company wants and creates a program to accomplish it.

I cannot say if this is usual or correct, but if I'm asked I would say:

- software engineers decide what has to be progammed to implemented needed use cases and workflows and make functional specifications
- software developrs analyze how to implement what they get from the engineers and write implementation specifications
- programmers finally implement what they're told to do by the developers

None of these are primary searching bugs, that's the job of testers/QA. Dpeneding on the kind/severity of found bugs any of the above mentioned maybe have to find the cause in their parts and pass it 'down' until the programmer implements the bug fix.

But this is a vague classification, the borders are diffuse and often one person does more than just one of these three jobs (i.e. I do all of these in the company I'm working for, but I even know programmers which get very detailed instruction what to implement where and how).

Hope that helps,

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

JeffBeallAuthor Commented:
that is helpful Zoppo,
I want to know about this because I have always been a "systems" kind of guy, in that I do the "break/fix" stuff for computers.
I really like that, but I think of what I do as a cost to do business, because I'm not generating revenue. I'm more of a maintenance man. So being a cost, I think most businesses don't see a value in what I do, but just view me as something else they are spending money on. So eventually if they can, they will get rid of the cost.
I see programming as something that can generate money, ie, gaming companies selling games, business software companies selling software solutions. and so on.
the thing about programming is, I have tried to learn it, but it's very detail orienated, and that is not my strong point. But the software development thing looks like it might not be just programming, or maybe it is less programming, and like you say more about
"analyze how to implement what they get from the engineers and write implementation specifications"
Hi again,

sorry, I think my 'definition' wasn't accurate - to be honest I'm not sure what exactly a software engineer does, what I meant is a software architect (see who is a computer manager who makes high-level design choices and dictates technical standards, including software coding standards, tools, and platforms. As software architect it's not needed to be a good programmer, but it helps to at least know what's it all about, i.e. which language is the best for which issue.

If you find learning programming difficult and/or if you are not sure if you want to learn it at all I'd suggest to do something different. From my experience every lucky programmer is some kind of a keen nerd, on the other side I know a lot of people who learned programming but weren't lucky programming the whole day over years so they cancelled their jobs and started working/learning something else.

JeffBeallAuthor Commented:
that's ok Zoppo,
as for doing something different. I think you are correct, but I can't help but wonder how much my skills would be valued.
for instance, where i work now, we are pretty slow - we are not getting a lot of trouble tickets. After a certain amount of time, I assume management would think they don't need as much people as we currently have. So I always thought that if I have specialized knowelge, ( and programming is definitely specialized - not many people know how to do it ) I would be more valuable.
Well, of course programming is a valuable skill, an experienced programmer can find new and often very good paid jobs easily.

What I wanted to point out is that not everyone 'is made' for being a  programmer, many people which tried learning programming gave up frustrated since it's time consuming and not really easy.

So IMO before you find a decision you should be sure you can imagine sitting day after day in front of a computer breaking your head to find a bug or a good implementation or reading specifications or documentation.

If you think this could be funny then it's fine and IMO you should try, if you're not sure you should maybe think about something different in a related field.
JeffBeallAuthor Commented:
sorry Zoppo, I didn't see this earlier
I agree with your advice. The programmers I know are like you said, made for it. They seem to have the mentality that meshes well with programming language, very detail orientated.
I have to admit, I am not great with the details. It's just that programming allows you to REALLY use computers. Right now I'm just good at getting computers to work and do what people want them to do. But I'm limited to the existing programs ( word, excel, outlook ,and so on ) With programs, you can customize things to specific needs. I always thought of computers as a very good versatile tool. With programming you create your own tool, that just seems so cool.
Maybe a good starting point could be learning and exercising shell and script programming. There are many languages (depending on your favorite OS) dlike batch-/shell scripts, perl, jscript, vbscript, Windows powershell, python, PHP, many more ...

The advantages of starting this way are:
- it is very easy to get started with this because it's possible to build simple but powerful tools since it's possible to use any existin other OS commands.
- with some of these languages it's not needed to install anything or to learn how to use a compiler or linker or make files before being able to write the first simple programs
- with raising complexity of your script you can examine and learn further language abilities step by step (i.e. first simple scripts won't need any conditional statements or loops)
- there are thousands of great working tools available in the internet which are very helpful to learn.

Especially when you already have some experience with computer administration I would recommend to start this way because even if you decide at any time to stop going further you didn't waste much time because what you learn until than will help you with administrative jobs later on.

Here's a very simple example of a Windows cmd script which you can execute directly on the command line:
for /l %i in (1,1,254) do @ping 10.0.0.%i -a -n 1 -w 100 | findstr "Bytes="

Open in new window

When you paste this in a command line window and press enter it will print out a list of all IPs which can be found via PING between and

This is sometimes very helpful and, to be honest, it's really not easy (or better said it's quite some effort) to implement something similar in lower level languages like C/C++ or Java.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
JeffBeallAuthor Commented:
thank you Zoppo, that is a good idea - I could start there.
Luis Pérez, I hope you don't mind the point distribution, Zoppo had a lot of comments.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Development

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.