Because it is fun! No really. I do enjoy the ability to create something from basically nothing. That is an oversimplification to be sure. All the hard work has already been done. The physical computer, operating system, programming language, and programming tools have all been previously created and made to work together. I just get to use them to create! Be it a application, website, plug-in, or simple script.
The Wikipedia article on Computer programming starts as follows: “Computer programming (often shortened to programming) is a process that leads from an original formulation of a computing problem to executable programs.”
Wow. About a dry as most people probably think programming is. If you described the art of painting in the same terms, “a process that leads from an original formulation of an art problem to rendered art”, I think becoming an artist would be less desirable. I am not critiquing the Wikipedia article as it is accurate, just makes it sound so dry and boring. I find programming exciting, frustrating, fun, confusing, complex, and fulfilling. The last one is only when the project is near completion and everything is finally starting to work correctly.
I am often asked why I am so good with computers. My answer is the same as you might get from an artist. I live for programming. I study programming. I keep current on programming. I learn new programming languages and frameworks. I read through the code of other programmers. And, most importantly, I practice programming. I say “practice” because it is a continuous learning process.
One that I enjoy very much.