What do you like about coding?
Posted by Davy Brion on August 2nd, 2008
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
August 3rd, 2008 at 12:46 am
Cool, I totally agree with you.
Actually, I’m currently rewriting a layer in an application i wrote months back after i went through the projects and i found out, i can reduce some lines and increase performance.
I always find it difficult not to get my hands dirty with new stuffs, when am less busy.
August 3rd, 2008 at 6:37 am
Fully agree – the first three are especially true for me.
I do like the ongoing problem solving and learning new tools, techniques, and practices.
August 3rd, 2008 at 11:32 am
I fully agree with the list, coding is just fun and gaining knowledge at the same time.
The only thing that I miss here is: being in the zone (if you don’t knwo what this means: email me). But maybe it’s part of your “view into another world”?
August 3rd, 2008 at 11:54 am
if by ‘being in the zone’ you mean an intense coding session where you are extremely focused and you’re mind is going a mile a minute then yea
if not, please do explain
August 3rd, 2008 at 12:36 pm
Hi,
Good post and totally agree with you.
Thanks
Prashant
http://www.prashantjalasutram.blogspot.com/
August 3rd, 2008 at 2:30 pm
[...] What Do You Like About Coding? (Davy Brion) [...]
August 3rd, 2008 at 4:28 pm
For me coding is enjoyable because it gives you plenty of “breakthough” moments, where you come up against a problem, then break through it. The result of seeing something work, gives me a “yay!” moment.
August 3rd, 2008 at 5:15 pm
I like coding, because it pays me.
August 3rd, 2008 at 6:13 pm
Being ‘in the zone’ is great when you really get stuff done but getting off the zone is somehow frightening. It always takes a while to get a grip of reality again after an intense coding session
August 3rd, 2008 at 8:52 pm
@zoned:
it usually just takes a bit of fresh air for me
August 3rd, 2008 at 8:55 pm
@Paul Anthony:
yup, those are great moments
. It’s part of the whole “it’s challenging” thing… you come up against a problem, you try to figure it out and the eventual breakthrough is a very satisfying completion of the challenge
August 4th, 2008 at 12:43 am
I would like coding more if it paid better.
I dont know where all you guys live and how well you are paid compared to other occupations around you, but here in Australia, the pay is quite poor.
August 4th, 2008 at 10:30 am
I am not sure why I like coding, though I suspect it has something to do with control. When coding, you are in a world, where you are in control. You make the machine do what you want it to. This is also why it is frustrating, when ones coding (occasionally), seems to suck
Maybe this is why I like driving a car too
August 4th, 2008 at 7:00 pm
@Tech Per:
that kinda goes both ways… if you’re truelly free to choose which libraries/components you’ll use then yes, you define the rules and you really are in control. But if you have to comply with ignorant customer constraints it can sometimes be about as frustrating as driving your car through heavy, slow moving traffic
August 4th, 2008 at 10:55 pm
[...] Moo? « Posters! en uitgaan enzo. What do I dislike about coding. August 4, 2008 As reaction to a blogpost by Davy: [...]
August 5th, 2008 at 9:45 pm
@Davy:
My comment about control goes deeper than that of controlling the functionality in the application. It is about controlling the computer. Telling it what to do, and seeing it perform your commands. Kind of like a little S/M without the whipping
August 5th, 2008 at 11:27 pm
@Tech Per:
ahh owkey… not exactly what i was talking about, but to each his own
August 11th, 2008 at 2:21 pm
I agree with your list, especially on the existential merits. On the pragmatic side, programming is my second career. Although I’ve done lots of consulting, contracting, and various “perm” jobs in 14 years, it still seems more stable than my first career. I can always find work and the pay is better than my first career, aerospace engineering.