February 22, 2002

Programming a 'delicious experience' for Jenn Vesperman

Author: JT Smith

- by Tina Gasperson -
Jenn Vesperman is a programmer and writer whose accomplishments are a
testament both to her strength of will in the face of debilitating chronic
illness and to the fact that women can experience great success in
traditionally male-dominated fields of endeavor.

Vesperman and her husband,
Dancer, live and work in Victoria, Australia. She's been a writer all her life,
she says, but she enveloped herself in the geek community in her late teens and
fell in love with programming. Her technical articles are published regularly at
O'Reilly.net
, who approached her to write for the Web site after reading
some articles she'd put up on her employer-provided site.

In recent months, Vesperman has taken over the coordination of Linuxchix, a busy community of female Linux
people that is open to all interested parties. She codes the Web site,
administers the mailing lists, fields inquiries and puts out fires, along with a
team of volunteers including Dancer. I was able to interrupt her schedule long
enough to get her to answer a few questions.

NewsForge: Tell me about your
early experiences with computers, and
how you got hooked.

Vesperman: When I was in high school, my parents bought a Commodore
Vic20. I fiddled with coding a little bit, but never could get excited by
copying a basic program that acted like a calculator. I could do the arithmetic
faster myself.
Mostly, I played games on it.

I recall that the computer club at school was limited to the seniors --
years 11 and 12 -- and was dominated by boys. All of them were boys, and
when I was a senior they were the same boys who were doing math 1, math
2, physics and chemistry with me. I knew they didn't like me. Why should
I volunteer to spend even more time with them?
For the same reason, I didn't go to the chess club. Mind you, I didn't
(and still don't) like chess.
So by the time I went to university, my computing experience was still limited
to the Vic20.

My first year at university, I did "Human Movement Studies." It was a complete
mismatch for me, but 17-year-olds can make mistakes.
I met Dancer through a mutual friend. Dancer introduced me to
computers, and to other computer geeks.

The old "search" game got me hooked. Watching people program, and
realising that you could write "search" and "nethack" -- that people had
done it -- that was a BIG difference from little Basic arithmetic
programs....

I fell in love with mainframes and networked computers. Standalone vic
20s? Bah. You can have 'em.
Vax mainframes with VT200 terminals? Gimme more.

And that there was a community of computer geeks. That helped too.

Jenn VespermanNF: Your bachelor's degree isn't finished
yet. Do you feel that has had any effect
on your "employability?" Do you think
most programmers "need" a college
degree?

JV: Yes and no.

I have trouble getting past HR. Any time the job is on the other side of
an HR or agency barrier, my lack of a degree can cause problems.
As soon as I hit the techs, I can prove my knowledge and worth.

Programmers don't "need" a college degree to program. It helps a lot
when trying to get past HR.

However, the degree course I did has biased me towards programmers
studying. If you're not going to do a degree, you *should* study the
theory.
Read Knuth. Read the dragon book on compiler design. Study predicate and
propositional logic.

A programmer should be able to draw up a truth table for every logic
operation, and for statements consisting of various logic operators
combined in interesting ways.

A programmer should know why gotos are considered harmful in most cases,
and when the exceptions are -- or should be able to derive it from
programming philosophy.

A programmer should, for that matter, know programming philosophy.

A programmer should understand bigendian versus littleendian and why
it's an issue.

A programmer should understand usability, and why its an issue, even if
they never intend to write a UI. (Sorry. Sooner or later you will.)

... There's a whole lot of stuff which it irritates me that a lot of
programmers don't know. What's worse, is some of them are coming out of
the universities not knowing this stuff!

A programmer needs the knowledge I gained from my studies. And a degree
helps a lot when getting past HR. So yes. And no.

NF: You can program in 15 different
languages! How did you get so proficient
at such a wide range?

JV: That's surprising? Why?

Computer languages come in families. If you can program in one language
in the family, and know the general structure of that family, you can
learn others in it.
If you know something of computer linguistics, you become a polyglot.

It's much the same as human linguistics. Once you understand the
structure, everything else is vocabulary and variation.

Informatics (the degree course) taught computer linguistics, rather than
trying to teach individual languages. Their philosophy was that we could
specialise later -- they wanted to train up generalists.

NF: What's your favorite programming
language? Which one is the least favorite?

JV: I don't particularly have favorite or least favorite languages.
Languages are more or less appropriate to a particular situation.

For example, C/C++ is one of the most flexible languages.
Python is particularly useful for scripts that don't require the power
of C.
Perl is difficult to understand when you've been away from that
particular program for a couple of months -- I always have to plough
through it painfully with a reference beside me, and always wish I had
commented even more thoroughly. But I'll turn to it for string
manipulation.
Java programs tend to have a professional-looking GUI, without having to
have someone do the art for it.

NF: Are you a "hard core" Open Source
advocate, or are you in the "use what
suits the situation" camp?

JV: Use what suits the situation.

I believe that the author of a thing should have the right to state what
can be done with it, at least within reasonable limits and reasonable
tradition.

"Work for hire" covers a common situation, where the author hands rights
over to the client. This makes sense to me -- the client pays for the
work and for the rights in the work. It analogises nicely to more
physical world arrangements, such as making a chair for the boss, and
the boss gets the chair.

But if the worker makes a chair at home, using his own tools, he gets to
decide whether to sell the chair, use it himself, or donate it to a
local charity.

I want the same range of rights for the programs I make and
books/articles I write. Copyright and copyleft -- both of them -- make
sense to me.

NF: You wrote on your web page that you
contracted Chronic Fatigue Syndrome and it kept you from
programming much. How frustrating was
that experience? Are you better now?

JV: Ever had one of those flus where you're lying in bed, and you think, "y'know, I'm feeling sort of ok, just really sore. I think I'll get up
and make myself a coffee, maybe wash the dishes, and I think I could
manage to put some soup on." Then you try to get up, and you can't even
manage to sit up.

Imagine that for 10 years. That's CFS. Some days you can wander around
the house and do things, some days you can even go out -- but you pay for
that activity with a day, a week, or a month of time when it's all you
can do to breathe.

It clouds your thought, as well -- I used to sit down to program, and
sometimes even sit down to write, and then discover that my brain was as
nonfunctional as my body.

CFS is an incredibly frustrating illness. You *can* force yourself to do
things, but only at a cost of pain and further disability. And if you
do, the energy you spend doing things isn't available to your body,
which needs it to heal.

I'm mostly well -- I'm officially over the CFS, but I have PCOS (polycystic
ovarian syndrome) as well, and anecdotal evidence suggests that you never regain
full health after CFS. The PCOS is managed, and I think I'm as over the CFS as I
ever will be.

NF: In your bio, you talk about how you've been
writing since you were a child. You
freelance for O'Reilly and write
fiction. Do you consider yourself a
writer first and a coder second?

JV: I am both writer and programmer. I hate it if I'm away from either
for too long.

NF: What is
Sime~Gen
and what is your role in the creation of the Web site?

JV: Sime~Gen is a series of science fiction books. I supplied the server
for the Sime~Gen website and mailing lists -- it helped me re-learn
sysadminning and programming. The authors of the books teach people how
to write, and put the polish on my writing that makes it professional
grade. It worked out fairly well.

Sime~Gen is now hosted over in the States, so I'm no longer responsible
for anything simegen.com. (And I still cringe at some of the web pages.)

NF: How much of your time these days is
spent coding? Do you contribute to any
Open Source projects?

JV: I'm still recovering from the CFS -- I'm technically physically well,
but it's only been a year since I was named "ok," and I'm still convalescent.
Linuxchix takes an awful lot of my free time, and the various exercises
(and rest) required to complete my recovery also takes a lot of time.

Most of my coding and writing right now is paying work -- and it's been
years since I could do paying work, so that suits me.

NF: How did you come to be the LinuxChix
coordinator? What happened to Deb
Richardson?

JV: Deb burned out, and asked for people to take over Linuxchix. If no
one was willing and able, she was going to drop the project. I believed
Linuxchix would be a worthwhile use of my time. Dancer also thought so
(important, he's my husband, co-owner of the server, and would be picking up the
slack if I relapsed).

So we, among others, applied to pick up the project. All of the others
dropped out for one reason or another, so I got it by default.

NF: What has surprised you the most about
Linuxchix since you took over the
coordinator responsibilities?

JV: How much having an active coordinator has revitalised it, and how
much work the various volunteers do once given the appropriate permissions on
the server. They really believe in Linuxchix, and that humbles and
pleases me.

I pretty much just have to give them the structure to work in and a goal
to achieve, and stand back. A fair way back, to keep from being hit in
the head by falling construction materials.

NF: Have you experienced any difficulties
related to the fact that you are a woman
in a male-dominated field?

JV: As I mentioned earlier, when I didn't join the computer club because
it was all boys. I started late, compared to most of my peers.
I've also encountered the odd bit of discrimination -- being taken for a
secretary, being asked "can I speak to a tech please?"

There are also much subtler discriminations -- like the time a friend
complained that he'd not had any female applicants to a job he posted,
and I asked what list he'd posted it on ... and then asked how many women he
knew of on that list. (None) And why he'd not also posted it to Linuxchix
(he hadn't thought of it).

NF: Some programmers say that the act of
coding can be likened to the creative
act of writing poetry or creating
artwork. Do you agree?

JV: I'm a professional-grade programmer and writer, amateur artist and
bad musician. So I think I'm fairly well placed to answer that.

Programming is a creative act. It uses the logical side of the
brain more than art or music do, at least in me. It's very similar to
writing, but uses a different pattern of thought.

If I'm both programming and writing for the same job, I tend to try to
do one before lunch and one after -- trying to do both without a break
between is rather like trying to eat sushi and chocolate ice cream at
the same time. Both are delicious experiences, but they just do not
belong together.

Category:

  • Linux
Click Here!