Kind of a random bit of monologue from an IRC channel, but I thought it might be interesting to save and think about sometime in the future.

my very young dev coworker gave me an enourmous compliment today
he's all of 25, shithot developer, but also still young and naive
anyway, i had written a little script to do something we needed,
   and he said it was a masterwork and the best bit of code he's
   seen from our group
i was like "what? why?"
he said "these are the best comments in code i've ever seen. and
   the code is neat and clean"
i kind of had to struggle to take the compliment

i tell this not to say "oh tamara, you're so great"
i'm not
i'm probably better than mediocre
but i'm not great
i say this because, in his way, he gave a very depressing,
   but accurate account of our software
what's sort of funny about this, too, is that the majority
   of the script was repurposed from something he wrote,
   that i tore out of the rakefile to make a stand-alone
   script
what exactly did i do?
wrapped it in a class, connected database
   records to it, and added some defensiveness to it
and the comments i wrote were telling about the things i
   found while writing that and why i chose to do it the way
   i did

then tonite i was thinking about this

code is literature
(not literate programming, that's something else)
   [though related]

code is a message, a story
it's not really about telling the computer what to do
it's about telling *someone else* what the computer is *doing*
and i find this further deepens my understanding in the sense
   of software dev as a craft

not just syntax, variables, etc
not just algorithms and data
but a way of telling other people how to solve problems

i've been thinking about this a lot lately
it might be because of my elder status/position
and it's not just a little of the crap education i'm seeing
   people give themselves, and places that they go to for help
   only answering rather mudnane details about sytax errors
we learned because we taught ourselves
but we also learned because we were fascinated both by the
   technology itself, and not a little by learning itself

i was talking to someone, somewhere, about how people are
   picking up programming
like, it's the "hot new must-have skill for everyone"
a life-skill, if you will

i don't necessarily disagree with that?
and i think there's all sorts of levels, just like, say cooking

but imagine if you learned how to cook the way programming
   is being taught
you might be able to survive
but i don't think it would be very fun
and know it wouldn't be worthy, really, of being called a craft

your scrambled eggs don't work, so you send in a message
   with a photo of the results in your pan to a
   "eggs cooking mailing list"
and wow, you can't *eat* until you get it right
part of the problem, maybe a great deal of the problem, is
   that there aren't places really to learn the craft of it

and it is probably different now that it was for us
i mean, yeah, i went to uni, you didn't, but i think the
   learning for each of us was highly self-directed

i was writing basic code since 7th grade

i think for many people that i've come across that are
   learning, (maybe espcially php and html) is that
   they are looking at it sort of desperately
   as some way of making money?
and i think that this slams against my privilege hard
because i never went at this as a way to make money
i *do* make money at it
and i *ask* for money when i do things for someone
but it's not like i have to learn to do this so i can make money
and that puts me in a position of privilege, surely

yet i also see this as, again, a matter of craftsmanship
and that acquiring the ability to make money requires
   a sense of ownership of the skills, knowledge, and tools
   to solve problems, solve *other* people's problems,
   by writing software

and concomittant with that is the ability to *communicate*
   *effectively* what you are telling the computer to do,
   *to someone else*

idk

i think i've ended up at the beginning
or beginned up and the end

i *think* this is what has me so excited
so *interested* in continuing to learn,
to work, and to teach, software development.