

Programming isn't fun — it's much more than that   - jamest
http://nop.xxx/ruminations/programming-isnt-fun.html

======
srikrishnan
Its also about ownership (of the end product) for some of us. I first thought
I like coding as I am solving problems. Then I realized its about writing neat
code and algorithms, about finding the best way to do things. Later I figured
it was about creation and ownership. At that stage, I figured there are a ton
of other things I would enjoy as much as coding - new consumer product
development of any form (not necessarily to do with computers or tech).

~~~
vikrum
Calling out ownership as a distinct trait from the creation and subsequent
usage is interesting. I think I touched on the incidental rewards associated
with ownership (seeing your product used, feeling compelled to fix bugs, pride
associated with the result, etc) but hadn't thought of it in particular.

I'm glad you brought up the leap you made into other things you might enjoy
doing as well. I'm sure I'll use that insight when starting on new endeavors!

------
dizzystar
I started programming via OCW about one year ago, so I'm really new at
programming. I did start with HTML/CSS a few years before that, but that's not
really programming.

I think that telling people that they should start programming because it is
fun is ultimately detrimental to the entire industry. Programming is fun in a
similar way that running a marathon is fun. A marathoner isn't going to
convince someone to run because running until your legs burn, you are out of
breath, and feeling like you are on the brink of fatal dehydration is "fun."
Marathoners believe the joy comes from seeing that time drop 3 seconds is fun:
that all the hard work amounts to self-improvement and self-actualization. I
used to be a long distance runner, and the reasoning is myriad and complex,
but ultimately, the word "fun" in the classical sense never entered my mind
and I doubt that it enters anyone's mind.

Similarly, programming isn't "fun," though it can be in a superficial way,
which I consider cheap glory: writing a for loop that displays the squares of
x to y, or creating a static webpage, but I don't consider this the real fun.
The problem with the real fun is the same problem one finds in running long-
distance: the initial accomplishments mean nothing at all. The minor piecemeal
achievements make it fun, but the ultimate fun doesn't start until you get
more advanced, similar to reaching a sub-five-minute mile is fun but only
after a certain level of endurance and speed is attained.

The ultimate fun of programming, IMO, is learning how to use cleverness to
turn a O(n^2) algorithm to a O(log n) algorithm, or seeing a pattern in a 1000
LOC program and creating the perfect abstraction that removes 300 lines, yet
adds clarity, or learning a new tool that allows you to do things that were
impossible one month earlier.

Another part that makes things fun for me is the amount of things I have
learned but never realized. There are many small items that I have learned
over the past year but only recently had the ability to implement and
understand. Sure, at the moment of initial learning, there is a bit of mind-
blow, but then there is another level were a correlation is made that I would
have never considered 3 months ago, but once using it, I am pleased with the
progress I've made in many areas, without realizing it!

The above is perhaps to esoteric for many people to understand at the
beginning stages, but I think that telling people upfront about the
intellectual journey, how their entire perspective on things they never
thought possible and that once in a while, their mind will be expanded into
idea and notions they never thought of, is the correct way to excite those
that should be beginning on the journey. "Fun," to those who never programmed
before, implies a non-intellectual challenge and little work to accomplish
these goals. Maybe brogramming is "fun," but real programming isn't "fun" by
the usual layman definition.

------
denzil_correa
An xxx domain and blog posts on programming messes up my mind.

~~~
tylermauthe
And the corporate porn filter @ my work...

~~~
dromidas
Yep I can't see it either. Microsoft IT doesn't often block websites, but when
they do, it's probably a site with .xxx extension.

~~~
keithnoizu
They don't like the bit torrent site articles either much.

------
bostonvaulter2
Programming isn't fun in the same way that having a child isn't fun. At least
I think the metaphor works having never had a child myself.

~~~
vikrum
True, indeed!

When writing this post, I kept coming up empty when trying to find something
to compare it to (I explored other things like writing a book, creating music,
painting, etc. but they never really matched up in the same way.)...

------
indiecore
Great now a .xxx is on my work browsing history. Can we stop this please?

~~~
JasonFruit
The writer says (in his "remote" section, which appears to mean "about" to
him, for some reason): "Also, I think it's splendid that the IETF finally got
around to giving pirates, coders, and hackers our own TLD—it's about time!"
I'm pretty sure that he simply isn't as clever as he thinks he's being.

~~~
vikrum
Previous discussion here: <http://news.ycombinator.com/item?id=4324755>

