

Programming Has Been Difficult (But Rewarding) - Miller450
http://jamesjohnsona.tumblr.com/post/2088297700/programming-has-been-difficult
Inspired to jump into programming more after reading this.
======
beej71
I've been programming for 27 years, and IMHO, The Reward is what it's all
about. If you get a charge from that, you're in good shape no matter how far
"behind" in learning you are. (I put that word in quotes, because the field is
so vast now, we are all behind, no matter how much we know.)

"I think that it's extraordinarily important that we in computer science keep
fun in computing. When it started out, it was an awful lot of fun. Of course,
the paying customers got shafted every now and then, and after a while we
began to take their complaints seriously. We began to feel as if we really
were responsible for the successful, error-free perfect use of these machines.
I don't think we are. I think we're responsible for stretching them, setting
them off in new directions, and keeping fun in the house. I hope the field of
computer science never loses its sense of fun. Above all, I hope we don't
become missionaries. Don't feel as if you're Bible salesmen. The world has too
many of those already. What you know about computing other people will learn.
Don't feel as if the key to successful computing is only in your hands. What's
in your hands, I think and hope, is intelligence: the ability to see the
machine as more than when you were first led up to it, that you can make it
more." --Alan Perlis

~~~
aerique
I was thinking "27 years, jeez!" and then I realized I started with Basic when
I was 10. I'm 36 now.

I know so little yet :-(

------
reneighbor
I also work in a non-tech role at a startup (I run support at Twilio) and am
teaching myself to code. My sentiments are quite the same as James's; it's fun
and rewarding but there's so much to learn before you even know what you don't
know, before you know what to Google to get help. It's like being illiterate
and you don't even know enough to look up words in a dictionary.

I do think that knowing how to program and how computers work is a new form of
literacy. Teaching kids programming is certainly more useful and stimulating
than, say, long-division. One day people will (hopefully) say, "Wow, can you
believe that in the past, only a tiny percentage of people knew how to
program?"

Until then, I show my programmer friends my learning-to-program blog
(<http://reneecoding.blogspot.com>), and they say, "This is so cool! It
reminds me of what I did when I was twelve."

~~~
Timothee
I'm surprised that support at Twilio is a non-tech role. Considering it's
heavily targeted at developers, I would imagine most queries being fairly
technical, no?

Good for you though! As you say, there's a lot to learn :) (but the good news
is that you don't need to know everything to make something)

~~~
johns
The vast majority of questions are non-tech (telephony-related, account
issues, and other FAQ type stuff). The next largest set of questions is
technical and that's what we have the evangelists for who are all working
developers. reneighbor is also more technical than she gives herself credit
for :)

------
Timothee
The fact that he didn't know what a browser was and that the sidebar says
"director of operations" threw me off into thinking the author was "older" and
more advanced in his career before starting to learn programming last year.

It turns out that he finished college (Yale) last year and that this is his
first job. (source LinkedIn)

I admit it doesn't change his point about keeping pushing to learn programming
and that it can be done from scratch with perseverance. It's just that the
late career-change would have added some "spice" to the story to me. :)

~~~
alnayyir
>director of operations

How do you do that straight out of college?

>Yale

Please HN, soothe my charred black soul and tell me there's some other reason
he's the DoO straight outta compton.

~~~
rhl
Probably because the founders (Yalies just out of college as well) knew him
and trusted him, so they tapped him to be part of the team, which is just
around 10 people now (based on this:
[http://images.businessweek.com/ss/09/10/1009_entrepreneurs_2...](http://images.businessweek.com/ss/09/10/1009_entrepreneurs_25_and_under/25.htm)).

When I visited the Twitter HQ back in the summer of '08, the joke was that an
8 years old girl was the Director of Operations (she was actually the DoO's
young daughter) :)

You may give too much importance to the job title, all in all YouRenew is
still a small business -- and yet I salute the fact that he chose to join a
startup (with a commendable goal at that) rather than rushing to Wall Street
post graduation.

~~~
alnayyir
>startup

All I needed to know chief, I've already gone through one of those and I'm 22.

------
veb
Good on you for actually trying. :-)

------
encoderer
I found myself nodding in agreement as he described what it's like as a
beginner.

I hacked in basic lightly for years in Jr. High and High School but i didn't
seriously start picking up our craft until I was 18. Actually, it was January,
2001.

I started back-then with classic ASP and a (gasp!) Access database. I recently
went to an old messageboard I used frequently and looked through my first
questions:

I had a HECK of a time figuring out how to easily alternate row colors when I
iterated thru a result set. I can't comprihend why it was so hard for me, but
I remember for hours working on it before I posted the question. The answer I
liked best, the 2-liner using modulus, is still the way I prefer to do it.

Another was actually writing a Login system. Having to validate both username
and password, for some reason, boggled me. I said, in my question to the
group, "Does this have something to do with arrays?"

And oh man the THRILL I got when I finally got these things working. It was a
calling, no question about it.

One of the surprising things to me after doing that a couple months was that
it felt like the way I think, the way my mind works, changed in a big way. I
stopped being as interested in fiction books, I started thinking though things
in a more... linear way.. more logical, and I used my first programming
metaphor when my best friend had a baby, "congrats man, you forked your
process." Hard to believe it's been 10 years ago now and I still get my mind
blown sometimes. Now it's things like continuations instead of alternating row
colors but the rush i get when I master a technique hasn't changed at all.

------
Tichy
Only after months of trying to learn Django you run into a wall because you
didn't know Python? I think your style of learning is very different from mine
:-)

~~~
mynameishere
You missed the part where he took 6 hours to install MySql on Windows. It's
literally Next -> Next -> Next -> Finish. I guess he probably meant,
"Installed and working", ie, connected to it in a meaningful way, etc.

~~~
Tichy
When I first installed MySQL I also read some chapters in the user manual,
like how to administrate the thing, configure users and so on.

------
mmcdan
The project-based method of learning really appeals to me. It encourages goal
setting and taking action, in this case writing code, and doing whatever is
necessary to get stuff done. When you finally start dabbling on the academic
side, you have "hooks" in your mind to hang bits of knowledge that some might
gloss over. These are earned from past experiences.

Another benefit is that even when your earlier projects don't turn out the way
you want, you have a visible path of progression that you can show your
potential employers, potential co-founders, or even yourself just to reflect
on. In a way, my past projects are my programmers diary.

------
topcat31
Great read, I'm in a very similar boat - I started learning to code about 10
weeks ago from scratch (<http://www.7bks.com/blog/179001>).

It's immensely rewarding, but then I really enjoy learning new things
generally. I don't think programming is any different, all things are
challenging and frustrating to learn at first but once you get the hang of it
the feeling of being able to achieve things (coding, playing piano, solving
maths problems) is wonderful.

Never stop learning new things.

------
bjonathan
The webapp he built : <http://coffeespree.com/>

~~~
tsycho
Love the design.....if the original author is reading this, did you do the
design yourself, or hire someone?

------
rapind
I like your coffee maker affiliate idea. Simple yet clever. Best of luck with
it and future apps!

------
wallflower
Yes, finally remembered the blog of the sales guy who quit his job to learn
how to code a few months ago! And he is still going!!

<http://www.proudn00b.com/>

------
jrockway
Pretty honest, I like. Where can I read about said coffee makers?

------
dekz
Finding the solution is often easier than finding the problem to begin with.

