A lot of diversity in the answers already posted, but I feel I have to add a couple of thoughts:
Coding (if you mean simply typing a little program that fits in one file) is very easy and anybody can do it once you know the syntax.
A simple loop, printing a few numbers on the screen and so on, very easy.
Then, what is hard:
Well, bigger problems need bigger solutions, and learning how to decompose a problem to build little pieces of solutions that will then all fit nicely together is the hard part. Only experience will make you better. Reading books or watching seminars online will help but you have to finish a project on your own many times over to start being able to solve bigger and bigger problems.
Last but not least, coding (I would say developing) is never easy in reality because:
Well, coding is the best job in the world regardless because we learn everyday, but starting that job nowadays is a real challenge compared to 10 years ago.
People will tell you that coding is both hard and easy (just browse the answers to this question), but I think it's only fair to give credit to both answers.
Programming is hard because it's different than normal life. Normal life is intuitive and emotional; programming is linear and logical. Because of this, you have to retrain your brain to think like a computer, and not as a human — the nuances of this are many, and only time, persistence, and experience will allow you to overcome the hurdles.
Programming is easy, because it's simply logical. The answers to the hard questions are concrete, predictable, and quantifiable. With that in mind, the more you learn, study, and grow in the art of programming (a task in itself, but a doable one), the easier it becomes to solve problems.
In short, programming is hard at first. But persistence will reward you with an increased ability to pick up new concepts faster and more accurately, thus making it "easy".
Shameless plug: you can get more programming awesome-sauce at frontend.cafe.
Given the right guidance and tools, nothing is hard. No matter what our line of work is, we are all solving problems.
Now, how does one solve a problem? By breaking into smaller problems and knock 'em all off one by one. So, nope. Coding is not hard
Not at all. It is all about starting from the basics. Human mind is analytical and so is coding. It is, however, true that learning how to code takes time. That way, you can be good at anything if you do that thing long enough.
The only thing I live by is that even if it takes me more time to learn something new, I have to keep learning. Tomorrow I will be better than today. :)
Simply: Yes
As in any craft, it requires intelligence in that field. Intelligence grows from the seed of practice and persistence.
You cannot just wake up, one morning and decide to be a footballer while becoming a pro that moment. You need to practice and practice hard.
Coding in itself is simple. But what comes before it is hard. The planning, decomposing, architecture, algorithms, etc. Without breaking those barriers, how do you find coding to be that simple.
Ernest Johnson
Programming is easy for me but unapproachable for other extremely intelligent people that I know. At the same time, it's impossible for me to look at sheet music and comprehend how it maps to the music I so enjoy. But musicians have a completely different experience. We all are capable of learning almost anything. We master what we are drawn to and ease becomes inconsequential.