Re: Is Programming Boring?




JShrager@xxxxxxxxx wrote:
In another thread Tim Bradshaw repeatedly claims: "programming is
*hard* and
*boring*" I'm okay with "Hard" because it's relative to your skill
level, so I know that he's wrong from the outset. But I've never ever
heard anyone (at least not a programmer) say that programming is
boring!

The vast majority of industrial programming is boring. "Industrial
prorgramming" is a never ending ritual of looking up stuff in some API
that some bonehead got paid to make you suffer through. It's piles of
stuff that doesn't work because it hasn't been tested. So you get to
do the hard work of making it work and getting it tested. There is
generally no elegance or aesthetic satisfaction in any of this. It's
just reams and reams of "ad hoc" engineering problems.

I get through that crap by focusing on what my strategic goals are,
setting milestones, and attacking the slog problems micro-incrementally
using source control. When I check something in, I have a small
satisfaction that the morass isn't as bad now, that I've made an
improvement. Done persistently over a long period of time, large, very
boring problems can be overcome.

I'd like to start getting paid for my skill at this, however. The
support burdens of open source have gotten old.

Because industrial programming is so boring, I have a strong resistance
to technologies that don't solve any of my problems. That's a lot of
the Microsoft and Java universes, for instance. Actually if someone
wanted to pay me to learn that stuff and bother with it, I'd do it for
a time. I have plenty of value add to offer, I think it's a fair
trade. But what I'm not willing to do, is front an exceedingly
time-consuming learning curve on my own nickel, for industrial
programming paradigms which suck + don't solve my own problems. So if
a job says Java or C# on it, I just have to let it go. I put enough
into C++ over the years and I Won't Get Fooled Again.

There are aspects of programming I actually like. I always liked
assembly language because it's simple and performance oriented. It's
possible to engineer an aesthetically / mathematically pleasing result
in a small loop kernel. Generally when I like programming, it is
because I can design something elegantly. I think my CMake build for
Chicken Scheme is a likeable build, to the extent that anyone is going
to like a build. Builds are really not very likeable compared to other
things people can do with software. But, they are important for
actually getting anyone to use your stuff.

My hope is that I'll eventually create a codebase where I'm no longer
working with external ad hoc dependencies, and where my coding
expressions will have some ongoing elegance. As well as being useful
and powerful.

Programming is, at least for me, the most exciting thing that there is!

Well, you're probably not doing "real work" then. By that I mean, the
sheer grunt stuff that is required to make the software work for
thousands of people. If you don't have to be responsible for the
results of your engineering, yeah programming is fun. Try this
childhood favorite:

10 PRINT "SHIT"
20 GOTO 10

"Real work" in programming is like your pipettes in chemistry. Deadly
boring.

I get to make the highest tech machines there are do my will;

Oh really now?? You're definitely not a build engineer.

I get to create new things that no one has ever created before

Industrial programming is usually creating something that the Nth slob
has already made for the Pth time. Only this time it has to be owned
by Microsoft. And it has to be the new API rather than the old API, so
that Microsoft can force people to fork over for upgrades. "Churn" is
the most boring thing in programming of all. It keeps people stuck at
the ad hoc engineering level indefinitely.

-- even if
they're spread sheets! -- I get to amaze my colleagues and lab mates,
and save them hours, days, years of what would be REALLY boring work
for them, and I get to live inside a real detective story (with bugs,
not killers).

There's a lot to be said for problems that are at the difficulty of a
mere scripting language. One gets a lot of new functionality for not
much work. This has been part of what has enabled me to cough out a
CMake build over the past 10 months. It's scripting; if it had been
some kind of arcanely painful C++ interface, I wouldn't have done it.

So, does ANYONE (aside from Tim) actually think that programming is
boring?!?!?

Yep. You have a very skewed perspective on programming. Judging from
your examples, I would say that you have done no real systems
engineering.


Cheers,
Brandon Van Every

.