I’m sorry, but you’ve glossed over far too much. You’ve oversimplified things to the point that it’s downright misleading.

Let’s first get something out of the way. Coding is NOT the same thing as programming. Programming is problem-solving. When you solve a programming problem, you arrive at a solution. This solution is known as an algorithm.

Then you must express your solution, i.e., the algorithm, in the programming language of your choice. This is known as coding. Your choice of language may influence how you code your solution, but otherwise this is a fairly mechanical process.

People often mistake coding for programming. They think that if they learn a programming language (such as JavaScript, Python or Ruby), they’ve learned how to program. That’s nonsense, of course. Learning a programming language without understanding how to solve a programming problem is pretty much worthless. It’s like learning Mandarin and not knowing how to express your thoughts effectively or eloquently.

Make no mistake: problem-solving is difficult. Coding is relatively easy.

What kinds of programming tasks are these people thinking of when they say “coding is easy?” Whipping up a website? Writing a mortgage calculator?

When you get to the serious stuff in the enterprise, programming can become very gnarly. We’re talking about complex client/server applications, huge financial models, systems programming (device drivers, embedded software), critical real-time transaction systems, etc.

The field of IT is vast and continually growing. The number of unsolved programming problems and challenges is endless…A.I., robotics, Big Data, cloud computing, Internet of Things, and so on. These are not easy problems to solve.

Moreover, programming also involves testing, debugging and maintaining the application code base. No software is ever defect-free. You are constantly fixing bugs and some of these bugs are extremely difficult to find and fix. Anyone who says this is easy is a fool.

Software needs to be maintained, as requirements change over time. Making changes to a large code base without breaking things or introducing new bugs is not easy. Understandably, if you don’t have experience doing this, you can’t possibly appreciate the scale of difficulty. You haven’t walked through the fire of software development.

This is the real source of ignorance. People who say coding is easy haven’t walked in our shoes. They haven’t tackled real programming problems. They haven’t looked under the hood of most of the software they rely on every day to see how complex the software truly is.

And that’s why they’re talking out of their asses.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store