People often confuse “coding” with “programming.” Coding is a very specific phase of the programming process, and it’s not a particularly difficult one. Programming is problem-solving, and this is hard.
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.