wkempf wrote:
Can't agree. Programming is NOT easy, and not for those not dedicated and with some apptitude.


"Programming" is easy. "Development" isn't.

"Programming" is what office managers do in Visual Basic: using it as a glue to stick several pre-built components together.

"Development" is what software engineers do, it invovles architectures, good design, and building things from the ground up. And of course, a solid understanding of what you're doing.

One is significantly harder than the other. One is just another little technical "part of the job" details, the other is the job (but on a much larger scale).

I make a construction analogy:

Practically anyone can go down to their local hardware/DIY/B&Q store and make something simple or complex without much full understanding of what they're doing (stuff like how and why a certain adhesive works with certain materials, how the forces are distributed throughout a structure, and other considerations).

Whereas only a small number of people do the job full-time and with full understanding (i.e. Civil Engineering).

I feel the analogy is appropriate; whilst practically anyone could do civil engineering using nothing more than on-the-job training, a formal education embodies that person with a lot more knowledge that can be applied in many ways.

If a civil engineer is a qualified computational scientist, then a "code-monkey" (not used necessarily in a derogative sense) is a builder.