I not only like to code, i simply love it. Here's my list of reasons why:
- It's challenging.
It can be challenging in many ways, both positive and negative. My favorite kinds of challenges are trying to understand a complex problem and then trying to find an elegant solution to it, and trying to improve performance bottlenecks when it's necessary to do so. These are definitely my favorite ways of spending the workday

- It enables me to be creative.
Creativity is cool and i've always wanted to be creative. Unfortunately i don't have too many creative outlets. I always wanted to be able to draw or paint, or write, or create music, but all of my attempts proved that i sucked. Badly, i might add. When i started coding i noticed i could get creative with code. That was definitely one of the biggest reasons why i started spending more and more time on writing code.
- It stimulates you to keep learning and improving.
I'm always looking for ways to improve and interesting new things to learn. No matter how good you think a piece of code is, or a certain approach, or whatever, there's always something that can still be improved. Every time i look at code that i wrote a few months before that, i often think "ugh, i should've done that differently". Which is a good thing because it means you've improved in those months. If i don't see any room for improvement, i'm disappointed because it means i probably haven't improved that much since writing that code.
- It can give you a view into another world.
If you're working on applications with an interesting problem domain, you can get a very interesting view into a world that you don't really know anything about. It allows you to pick up some interesting knowledge about a domain of which you otherwise wouldn't have known a lot (or anything) about.
- It can make your life (or others) easier.
Who doesn't want to see repetitive tasks automated? Everything you can automate should (in theory) make your life a bit easier and everything that makes your life easier is good

- Creating value can be very fulfilling.
When you're coding, you're actually creating something that has some kind of value. If you're writing application code, you're creating value for your users. Each feature you implement will mean something to someone. And if you do a good job, those users might like or even love that feature. I don't know about you, but it always makes me feel good when people like to use something i wrote. Same thing goes for writing code for other developers. If you do a good job, they will enjoy using the code you wrote because it should make their jobs easier. Again, that is something that makes me feel good about the code i wrote

- It's an easy way to make a living.
Coding is not always easy, but let's be honest here... it's a pretty easy way to make a comfortable living compared to what a lot of other people have to do for money. For me, it means making a good living by doing something i actually enjoy most of the time. It also means i can completely minimize the amount of physical labor that i have to do, which is definitely a good thing. For everyone involved actually

Are there any reasons why you like coding that i haven't listed? Go ahead and share your reasons ![]()
Pingback: Dew Drop - August 3, 2008 | Alvin Ashcraft's Morning Dew
Pingback: What do I dislike about coding. « Moo?