Yes, I agree that children should be taught programming. It is a fact that some children have the potential to learn even complex things and programming is one of them. Although not every child would be able to learn programming but those with high IQ levels could be taught such kind of programs.
Yes, programming should be taught to students at a young age, especially the basics. As the world becomes increasingly immersed in computer driven technology, the ability to manipulate, innovate, and troubleshoot computers will become increasingly important for average users to have. A basic understanding of the structure of code will allow young students to intuitively know why the devices that they use every day work the way they do, and this understanding will allow them to first, solve problems when they arise, and second innovate for new solutions that will help progress the world forward.
Programming is a useful skill to teach children. Beyond the actual ability to create a workable program, teaching various coding language imparts logic, attention to detail and an appreciation of technology to youth. Further, the challenge of assembling a fully-functional program and fixing all bugs and errors imparts the importance of seeing projects though to completion. Overall, teaching programming to children has many excellent results.
Making programming mandatory in schools just adds more stress to the students who already have to manage 5 or 6 classes, plus homework. There is already a vibrant online community for learning how to program. There is nothing stopping the students who want to learn from learning. Also, teachers would most likely be under qualified to teach and many of the students would be uninterested in learning how to program. People already have more than adequate ways to learn to code including college courses, online instructional websites, YouTube videos, etc.
With the world far into the age of computers and electronics, they have worked their way into every aspect of our lives. I can see how it may benefit future generations to have the ability to program learned very early in childhood, at this time it is unnecessary. There are plenty of amazing colleges and technical schools that teach this optionally.