Wednesday, May 21, 2014

What is programming?

I am currently reading this article and one of the first questions that is put forth is 'what is programming'. I want to express here some of my thoughts before continuing to read, and see what some of you might think as well.

Over the years my thought of what programming is has drastically changed, from a mechanical exercise in solving puzzles to what I hope is a more mature definition. In essence I think that programming is the art of unambiguously expressing a set of problems along with a subset of the solution space to them. Our solutions are generally encoded within a programming language so that they can be exercised against real world instances of the problem.

As a beginning programmer I often missed the first part (and am still guilty of it sometimes), and I believe this is partly because of how programming is initially taught. We are often given well defined problems to solve, and this continues for a while while we learn the mechanics of writing code, however it might be the most critical part of development. If you aren't solving a specific well defined problem then the code is going to be all over the place and not very good. Maybe we need to find more ways to work this into the early stages of educating developers?

No comments:

Post a Comment