Software Development

What do you find most satisfying about programming?

Justin James says that what he enjoys most about programming work is overcoming a challenge. Take this quick poll to let us know what you find most satisfying about your work.

People initially get into programming for many reasons, but they need to be satisfied with the work or else they turn to other careers. I have heard many people express different reasons why they feel good about the work they do. Personally, I enjoy overcoming a challenge (I enjoy many non-programming tasks for this reason too).

Let me know what you enjoy most about your work by taking the following poll.

J.Ja

About

Justin James is the Lead Architect for Conigent.

70 comments
mikelcooper
mikelcooper

The satisfaction of coding a solution for the problem that is streamlined and efficient.

robemtzg
robemtzg

i enjoy programming...imaging the solutions..create... and see your work helps others is my satisfaction!!!

dominic.diamante
dominic.diamante

Not just the joy of creating software systems, but the joy of creating efficient and high-quality software systems.

PJfromOttawa
PJfromOttawa

The creation aspect is good. But how many times do we get frustrated because we can't seemingly make something work. The satisfaction that I was able to make it through that maze with most of my sanity is what drives me. Oh, and the programming groupie babes, of course.

alaniane
alaniane

What got me into programming was wanting to know how things worked behind the scenes. Maybe, that's also why I enjoy Assembly programming. Knowing how the registers are used and the CPU ticks is what I like about programming. Of course, if I had the time and youth I would go a step further and figure out how the chips themselves work. I use to spend hours on electronic projects when I was kid learning about NAND gates and such. Other aspects I like about programming is designing and creating an app based on a customer's request. When I take a snapshot of something they want and then turn it into an actual working program that gives me a great deal of satisfaction. The third aspect I like deals with debugging (it's like a game of hide-n-seek or cops and robbers).

IT-b
IT-b

For me, the magic is in that moment when it finally works! The next best thing is when an end-user says "thanks".

CodeCurmudgeon
CodeCurmudgeon

Triumphing over the steel and silicon dragon in the computer room.

KAM999
KAM999

Creativity. Challenges. To make others work easy. Keep up to date with technology and trend. (Updating your knowledge and skills.)

bfpower
bfpower

I have fairly diverse interests, and I've always been interested in a combination of the creative and the analytical (i.e. I enjoy writing music and producing recordings of music, combining the artistry of music with the logic and analysis of composing/producing). For the same reason, I enjoy programming. It is a creative application of technical skills (or a technical application of creative ability).

luenib
luenib

It's the moment when I say "It's alive!"

aikimark
aikimark

Justin I've listen to your recent TR interview several times and still can't understand some of your responses. * What is your favorite language? * What is the most promising tech few people know? * With whom would you like to talk tech?

stephenlposey
stephenlposey

I guess maybe it's a form of the creative aspect some others have mentioned, but for me creating software is like working on a grand logic puzzle mixed with a highly versatile construction toy. There's elaborate complex problems to solve and a toolset with which to do it. Coming up with clean elegant solution (and sometimes finding a hack for an otherwise intractable problem) is very satisfying. Stephen Posey stephenlposey@earthlink.net

MikeZane
MikeZane

I always thought of software development as an art form, and of myself as an artist. Only downside is it truly takes a fellow artist to appreciate it. Most users will only see the form on top, and not the thought or elegance of the code structure underneath. And of course, the problem with that is art can't be rushed, but software development frequently IS rushed. Yes, I sound eccentric, but that is why I love software development.

jslarochelle
jslarochelle

My list would include: a) Creating something b) Solving a problem c) The discipline of programming This last point is particularly important for me. I really enjoy the almost zen-like discipline of formally specifying a solution and building-up from small, well tested components. Unfortunatly this discipline can break down under pressure (schedule) and then much of the fun (and quality) goes away. JS

Vladas Saulis
Vladas Saulis

And I like taking on this mental challenge. Also this is the only game through which you can create a plenty of other games. :)

Tony Hopkinson
Tony Hopkinson

That does something well. Whether it's just for my own personal satisfaction, solving a problem, or for others to get satisfaction from using (a different class of problem solving), is simply a different audience. Some of my most effective solutions for users/clients have been the least rewarding from a technical point of view. So generally I get my enjoyment from my input as opposed to my output.

BALTHOR
BALTHOR

And say:"How'd you do that?"If you've seen Internet porn then you know that the Internet spans the planets,galaxies and universes!

Zehra Nasif
Zehra Nasif

Form post only worked for me with Chrome and hanged witt IE and Firefox...

Justin James
Justin James

Is it the sense of accomplishment? The feeling that you are helping out others? Something else? Let us know! J.Ja

Justin James
Justin James

The closest thing tha tI have found to groupies in this industry are recruiters... :) They hover around like mosquitoes at a BBQ sometimes... J.Ja

Sterling chip Camden
Sterling chip Camden

... when done well. When done poorly, it's where Scientology meets Jackson Pollack.

Justin James
Justin James

Sorry about that! I know that when I heard it, some of it did sound a bit muffled. * Favorite language? Perl. * Good question... I am almost tempted to be snide and say "HTML", so many people write it, so few people write it *right* let alone *well*. A more legitimate answer is multithreading and parallel processing. The fact is, we are at a point where we haven't done anything truly new in about 10 years; the only real hardware breakthough have been multi core processors and the falling price and increased availability of multiple socket motherboards. In the last 5 years, we went from a model where all but the most expensive of "big iron" servers has more than one CPU core and timeslicing ruled the roost, to one where you would be hard pressed to buy a system with a screen larger than a few inches that did not have at least a dual core CPU in it. So really, the only hardware advance in 10 years (other than the expected speed increases and price drops), and it requires development techniques that few people know! The quesiton that was asked was a programming "secret", and my answer to that was "go learn a non-mainstream language and use it for a few months". I've found great value is using less popular languages, even if you don't write actual business apps in them, simply because they often contain some good ideas, or focus on techniques that other languages support but don't emphasize. * Talk tech? Paul Graham or John McCarthy, both Lisp guys - they seem like they put a lot of thinking into their work, and Lisp has a lot of fascinating ideas in it that have heavily influenced so many other things. J.Ja

ByteBin-20472379147970077837000261110898
ByteBin-20472379147970077837000261110898

When I first get into a project, it's with the idea of creating something that will solve a problem, to make things work. Or just to create something. Then when the inevitable happens and I get stuck on an algorithm for hours trying to find out why it won't work even though the logic looks right, as someone said it's the "YES!" factor. I call it the moment of 'w00t!'. ;) The realization that I conquered the computer's resistance and got it to finally work. I also like learning something new. What I don't like about it is the long hours and no sleep leading my health downhill to the point I nearly ended up in the ER a few times. I've since started using comments in the code more so I don't lose my train of thought, and to take frequent breaks, go for a walk. And also to get to sleep at the same time every night and get plenty of rest. I do better when rested up and my mind cleared of the coding spaghetti that was swirling around in there. LOL!

DukeCylk
DukeCylk

I don't program games, but my work is like doin puzzles for a living.

boxfiddler
boxfiddler

Too much honor, not enough syntax. Good one BALTHOR. :^0

PackMule64
PackMule64

Coding, just sitting down and writing the code without the guis to do it for you.

Kruger.henning
Kruger.henning

I love building useful things (started with Lego and Mecano) that fulfill a need, so programming is the ultimate ?free range? tool.

frankharty
frankharty

It is the solitude of being away from others, even just for a while. Sure we can claim it is ?creative? but more and more we let the software do the programming. We can pretend it is an ?art form? but if that is the way you program I pity the guy coming along behind you to ?fix? your ?ART?. Helping others I can buy but let it not be exactly what they want and they are never ?helped? for long or let it break and see how much they think you helped, all is forgotten.

jeanne
jeanne

Writing, testing, correcting, designing, gathering requirements, etc. are all pieces of the puzzle. Each piece has its own challenges, frustrations and enjoyments. I happen to enjoy all of them. Any puzzle will keep me occupied until someone tells me we're done. As we all know, it's never really done. Software is a constantly changing, morphing object. Which is why it's allure and fascination will never fade for me.

CRK / Members United Corp
CRK / Members United Corp

If you had asked what I enjoyed most about software development or design/architecture, then I would lean more toward the creativity than anything else. But as far as just the activity of programming itself goes, then I have to confess to being addicted to the "control" thing. Even if I have to implement someone else's design, doing something that won't really help make anyone more efficient or effective, or to accomplish something that isn't really all that difficult to me, when it comes right down to it what makes me want to actually write code is the sense the the machine will (hopefully) do anything and exactly what I want it to do (with the emphasis on "I"). Of course, I don't enjoy programming as much as design/architecture because I get a greater satisfaction from the creativity, challenge, and value-provision of doing that activity than from the sense of control in doing programming work - so that's my caveat.

jmolina03
jmolina03

Explaining to Project Managers the thought process behind exposing business processes as web services. :) Not technically, just conceptually!

djl4fzw
djl4fzw

What do managers find most satisfying about managing a team of artisans? No matter how much mgmt wants it, a developer can't say, "Today I will be brilliant!"

jck
jck

Hm...maybe when i got to toy around with things and make them do what they weren't supposed to do...it was satisfying. Now writing webapps for data entry purposes makes me feel like i'm accomplishing nothing. Hence, I am going to probably move jobs in 2-3 weeks. I am tired of feeling like I am accomplishing nothing, and being run over and pushed around and treated like a lesser (even though I'm older than my boss and have more experience).

Snak
Snak

When you struggle over an algorithm, or a function, or even a single line of code that, for some convoluted logic or other, just wont do what you want, when you get a blinding flash of insight, realise what a dork you've been and, hey presto - it works! The YES!! factor (punch fist in air) totally drowns the potential sheepishness of just why it took you so long :o)

mattohare
mattohare

When I see a user of my application with this smile that says their days will be a bit better, easier from that moment on. Sometimes I get that with a major version update. Sometimes just adding a hotkey to something that was mouse-only.

Sterling chip Camden
Sterling chip Camden

Sprinkle your conversation with "closures" and "continuations" -- the ladies won't be able to keep their hands off of you.

jslarochelle
jslarochelle

Adding a few well placed comments before quitting is a good idea. If your environment supports it TODO are great for that. Eclipse will allow me to track those and get back on track quickly the next day (remove most of the TODO items with code and sometimes convert those to permanent code documentation). JS

jk2001
jk2001

What about using RoR or Cake, or write your own code generator to templatize this boring task? That's what I did a few years ago, and it was lots of fun (and very creative too).

kgunnIT
kgunnIT

I agree here too...it's the struggling over line(s) of code trying to find what is causing the issue...why the program is not working correctly, then of course!!! The epiphany, the bright lighty coming on, and now the code works. Knowing that I found the solution to a problem and solved it.

earmsby
earmsby

Couldn't agree more - I love that feeling of not quite getting something and then suddenly you come up with the solution and it works. It's the same feeling as solving a tricky puzzle.

kyhog2001
kyhog2001

Can't agree more. Power of Creation

Mark Miller
Mark Miller

The act of creation is great, but I voted for "Helping others work more efficiently and effectively", because once I got out into the work world I really came to value that. If people didn't find that what I had created was useful, they'd toss it aside. That was a real downer. I would celebrate when I got it to work, but if the target users didn't like it the "woo hoo!" feeling quickly dissipated and I'd feel bad. Nowadays I really feel like celebrating if others thank me for my creation. That's a bigger high.

cecilphillip
cecilphillip

it is such a powerful feeling being able to watch something you design or implemented come to life

yourilima
yourilima

creating stuff is just amazing

ross.linfoot
ross.linfoot

Its cool, challenging, exciting, exploratory and most of all fun - and to top it off I get paid to do it :) . Yes there are often tight deadlines and ?gah?.? the documentation, but at the end of the day just to have a blast and keep the brain cells working.

johja
johja

I like being able to create something. I like being able to analyze and logically come up with a solution and find a creative way to make it a reality.

Ceespace
Ceespace

"I love it when a program comes together" - to misquote the A-Team but the feeling is the same, it is very satisfying when it is all there working and doing what it is supposed to.

DnlCY
DnlCY

I love programming as little ones loves to build sand castles. Just for fun of building things. Be constructive in every aspect of your life.

rob_o
rob_o

A while ago there was a post on these forums, can't remember who by. His comment was 'I like making things but I'm really crap at carpentry' - that sums it up perfectly for me. And I'm also really crap at carpentry :)

tcoyne
tcoyne

I love to bring things to life. Programming helps my Creative side.

DualWolf
DualWolf

Definitely the feeling of creating something. And with programming there are no limits of physical materials, so you're literally taking your thoughts and making them into reality. I saw a post saying they initially wanted to be an architect, same here. I wonder how many other programmers initially had that goal.

fortysomething
fortysomething

My first career choice was becoming an architect (buildings), but I fell in love with computers and the ability to make pictures with them. Now I'm a web/database developer and I still love creating things with software. It's very much the same process of design...

ahmed.barradah
ahmed.barradah

I have to agree with you this is one of things that attracts me to programming and Database modeling.

Kirk W.
Kirk W.

While some compare writing software to art, I prefer to think of it as inventing. Creating something that others can use; art is to be admired, but I like to create things that do something.

pat.keller
pat.keller

Yes - The joy of Creation is my answer too and I love that others feel the same way. I love helping others with efficiency and making their lives easier, but the creative process is what keeps me motivated.

ddemoya
ddemoya

Programming is an artform.

jreddy
jreddy

I second this. On the survey I chose "To help others work more efficiently, etc." However, it seemed closest to my real answer that I am compelled to create things. Aside from music and film, programming and the computer make for a great medium.

Sterling chip Camden
Sterling chip Camden

It's the same as writing a poem or a piece of music. Creating something that's balanced and beautiful.

Justin James
Justin James

I missed this one entirely! Quite a funny site, I'm now a reader, Thanks! J.Ja

Justin James
Justin James

That explains what I've been doing wrong! All of this time, I've been trying to downplay the "Dilbert Halo" when I should have been leveraging that! Dang! :) J.Ja

jck
jck

if i did something out of scope or how my boss wants it to look and feel in regards to a project, i'd be even more overlooked now. funny thing is...we were supposed to review my project or completion this afternoon...45 mins til I go home, he still hasn't come down for it yet. if he asks me to wait for him to come in late, i'm saying no and walking out the door. 10 hours a day is enough for me. i have things i have to do in the evenings, and i don't have a wife to run my errands for me.

jck
jck

deleted because of duplication

Justin James
Justin James

I used to love that feeling of creation, but over the last few years, I have had it increasingly less often. The last time I had it on a regular basis was 2001 or so, when I was writing my own online shopping cart system in Perl, and wrote the templating system and flat file DB backend too. I learned so many new things and did so many neat things on that project... and since then, that's less and less frequent. But that is an indication of my reduced time to do "goof off" programming projects. J.Ja

anirbank2000
anirbank2000

Its creativity definitely. But sometimes, it might not be related to creating something. It might be how to solve a problem , a puzzle or a error. The ability to exercise the intelligence counts the most. I have seen a programmer accomplish in few lines of code, what others will do in pages. Thats it. Thanks

alex.kashko
alex.kashko

I find it hard to think of private projects hard enough to stretch me, easy enough for one person to d0 - in a reasonable time, that can be done on a laptop and have not been done already. But when I do find such a project it is good fun for a while

alex.kashko
alex.kashko

I like to create an innovative solution to a problem. Sometimes deadline pressures do not let me do this. That is when the joy of just completing the job takes over

clareburrows
clareburrows

I spent some time as a professional musician and have a music degree. Now I am back in college and just love the web design program that I am in! Programming satisfies my left brain needs, as well.