[thelist] Professional Philosopy

Ray Hill ray at opengrid.com
Fri Aug 31 18:44:42 CDT 2001


> I sure would like to know about your own, personal work philosophy. 

And kudos to you for your curiosity!  This has been one of the most
fascinating threads I've read yet.



> Why do you do what you do?  What's important about that?

I got into web development simultaneously by accident and because it was
seemingly unavoidable.  Having been conditioned from a very young age
(primarily though Legos and Tertis) to enjoy the art of building new things
and solving complex puzzles, the mindset of an engineer came to me pretty
easily.  And having studied architecture (in the pre-AutoCad days), English,
and psychology prepped me pretty well in the areas of thinking for the long
term on projects, communicating my ideas effectively, and taking into
account the way users think and react.

But when I finished my AA degree in 1996 and realized I needed to get a job
and save some money if I wanted to go back for a Bachelors, I had very
little experience with computer, had never surfed the web, and had never
even sent an email before.  Luckily, I happened to stumble into a job
working customer service for a startup company no one had ever heard of at
the time: WebTV.

It was those first few months at WebTV that made me fall head over heals in
love with the internet.  Every single day I was talking to dozens and dozens
of people (most of whom were way over the average age of internet users)
whose lives were being seriously changed for the better by this silly little
product and its ability to connect them simply and effectively to the
internet.  $300 phone bills to family and lovers  on other coasts and over
seas were being replaced by daily emails, pictures of new babies were being
shared through user-made web sites (you'd be surprised how many 70+ year old
users have their own web sites!), and people in remote locations who would
otherwise have been quite lonely were now finding lots of friends with
similar interests in newsgroups and chat rooms.  I was hooked!!

As the company started to outsource their customer service agents, I became
more and more aware of how my earlier architectural skills might be
applicable to web development, so I picked up Laura Lemay's "Teach Yourself
HTML" book and before I knew it I was maintaining two internal intranets, an
extranet for each outsourcer, and a few sites for friends.  The larger the
sites got, the more I wanted to automate the repetitive parts, so ASP and
(especially) PHP became my passions.

So the basic answer is that I do what I do because I love the thrill of
making an idea into a reality and bringing something new into the world.
But more than that, I thrive on building things that will actually make a
difference in people's lives!

At my current post, for example, we're building something that's pretty
cool, but will make zero difference in most people's lives.  So while I get
some small satisfaction out of it, I'd jump at the chance to go back to
building things that actually make a difference again.  *sigh*  But that's
another issue all together...



> What are the values that you reach for? 

Since I got my start on the customer service end of things, my driving
passions in building web apps are to make things as simple and intuitive as
possible for a user to use (so they don't have to bother me with
calls/emails) and to make the thing as stable and expandable as possible (so
tech writers and QA folk don't have to bang their heads against the wall
trying to figure out why some wacky error message is popping up, or a fellow
engineer threaten physical harm because they can't read my code enough to
fix that funky error message).

I also have a bizarre sense of mortality in my work ethic.  The way I see
it, I'm always going to be learning and growing throughout my career, until
I die.  So that means I'm going to be leaving a lot of projects behind for
other people to maintain, as I move from stage to stage.  And as I've
learned in the process of maintaining my friend Jos Claerbout's WebScissors
tool since he died, that can be incredibly difficult if the project is
poorly commented or haphazardly built.  So I'm always trying to cover my
tracks with documentation and thorough comments, while consistently
attempting to automate my current position out of existence so I can move on
to something more interesting and challenging on the horizon.

Lately, I have been getting more and more into the whole open source
concept, and have begun to realize that many of these principles apply even
more to that arena, since other people *will* be sifting through your code
on a regular basis.  So don't be surprised to see the "Ethos Web Publisher"
project showing up on SourceForge some time in the coming year (oh what I
wouldn't give for a job that would let me work on open source stuff at
work!).



> How do you measure whether you've fulfilled [those values] or not? 

When people who take over my old projects hardly ever have to call me with
questions on what the hell my code means, I know I've fulfilled my
documentation/commenting goals.

When tools I've built get 40,000 users/month and less than a dozen a month
have to send help emails (and those usually beginners who don't understand
the basics), I know my efficient code goals have been met.

But more than anything, my fulfillment comes from waking up in the morning
and looking forward to going to work instead of dreading it like I used to.
As anyone who's read Randy Komisar's "The Monk and the Riddle" will
understand, it's the journey that's the important thing, not the
destination.

...Although I have to admit that I sometimes fantasize about getting out of
the web dev business and getting a warehouse job.  I may have a lot more fun
at work in this industry, but I was in *much* better physical shape when I
was lugging boxes around in the college bookstore...  :)



> Who are mentors or peers for whom you have a great respect, and why?

Laura Lemay has to get first props here, since the majority of my base
knowledge came from her "Teach Yourself HTML" book.

Jeff Allen and Kevin Fox get *huge* tips of the hat, not only for being
kick-ass hackers, but also for having the patience to explain complex
concepts in simple terms to those of us who wanted to learn.

Andy McFadden's "Greater Scroll of Dialing Wisdom" is the document that I've
tried to emulate in all of my documentation since.  It's a 50+ page document
that explains how a WebTV unit connects to the internet and to the service,
that *doesn't* put you to sleep (and actually makes you laugh occasionally).
Very well done!

And, of course, my current virtual mentor is Eric Steven Raymond, through
his open source and hacker documents feeding the fire of my transition into
an open source developer.



--ray





More information about the thelist mailing list