Heard from Arnaud this morning. He says about two weeks to
something pre-alpha. I can hardly wait! I was so excited I
put up the project
page on SourceForge and gave a heads up to the gtk.org
webmaster.

It's not until now that I truly realized some of the very
extensive work put into SourceForge. Truly cool and very
appreciated.

Today's my last day here, the new project starts next
week. Almost a whole week off. Whee!

I worked more on CottonBale last night (when I
desperately needed sleep). I'm sure I'll have it done by
Weds next week. I signed up for a SourceForge account for it
too. I might even move ALL the projects I have there,
especially Poppy. I want to finish Poppy before starting the
next work project.

Got an email from a guy named Arnaud this morning saying he
too had been working on a Gtk+ for the MacOS project. He's
further along than I am. I sent him a note suggesting we
combine our efforts and post them to the SourceForge account
I'd set up, but I haven't heard back. I'm amazed and
encouraged; I still wasn't even sure how viable the project
was. I haven't even booted either of my Macs in two weeks.
::sniff::

CottonBale is coming along moderately well. I've got
two
different front ends for it so far (one shamelessly snarfed
in part from Bruce Perens because I think his
www.linuxvc.com site is pretty nice and clean). You can see
the prototypes at http://www.deirdre.org/events/bale.php3
(html snagged from http://linuxmafia.com/bale
-- which it will eventually replace) and the other prototype
is at http://www.sfknit.org/bale.php3.
(knitting = cotton and bay
area linux events = bale, thus CottonBale). Yes, I know all
the "knitting" events are the same events. When I'm ready to
go into production, I'll switch databases for sfknit; it's
easier to make changes in one database than in two.

I don't currently have many events in there as I'm
working on other aspects, but I do have a whole gaggle of
stuff to add when it's ready to go.

Off to Baypiggies. I'm not prepared and I hope they
don't
shoot me....

Stock prices are fickle things. The one really good
thing, which Seth didn't
consider, is that the low stock prices are a GOOD thing in
hiring new people. After all, their stock options will be
inexpensive. So, those people looking to move to a public
Linux company, now's the time.

Stress

Stress makes one tired. Rick had been quietly watching as
I'd been exhausted, weekend after weekend, this last one not
being much different. I think it's from being in "crisis
mode" on the job for several months. I'm not completely
convinced this is the cause though.

That said, there's good crisis and there's bad crisis.
Good crisis is the kind where something suddenly happens and
everyone pitches in and they become more of a team for
having done so.

Bad crisis, which this is, is never being able to be in
NON-crisis mode, so one is always responding to stressors.
Rather than building teams, it tears them apart. There's
never anything to be on top of. There's never action, only
reaction.

It gets really old really fast.

Weekend

Spent it decompressing mostly. I read all three of the
existing Harry Potter books, knit some, spun some, and did
no coding whatsoever, mostly because my eye was bothering me
again (another sign of stress?). Reading a hardback book
with large type was about as much eye activity as I could
muster.

I can't believe it's been so long since my last diary entry.
It's been one of those weeks.

PHP

I'm having a lot of fun learning PHP and getting
proficient with it. It has some quirks that make it not act
like I expect, but it was great getting an answer from Rasmus in 7
minutes that explained the philosophy behind include files.
Open source is so cool that way.

The syntax is enough like server-side Javascript and C
that it's mostly intuitive (to me), but there's a few things
here and there that I find jarring. Mostly, after a whole
bunch of Python coding, I forget a lot of semicolons. I
indent everything the same though. :)

CottonBale is coming along nicely, with only the quirk
that my box at home is having trouble installing MySql to
develop further with. I really really really need a third
box to plop stuff from my existing two so I can upgrade
Rockhopper. It's beginning to grate.

Books

Looks like my coauthor and I will get our next book deal
after all, and I may wind up doing chapters for another
book, also cool. This requires writing a sample chapter,
quickly. Argh!

Obviously, since the deals aren't signed, I
can't really say anything about what books or for whom. I
found my box of my author's copies of SuSE Linux
Unleashed the other day -- I received it right before I
moved and never unpacked the box. It was HEAVY. It wasn't
glorious writing, but I always seem to learn something, no
matter how much I think I know, when I'm doing some digging
to write a book.

The new stuff should be MUCH less dry to write and,
hopefully, to read.

Office Environments

What Elise said.
Except both she and Brett, probably because it's "not
corporate," missed what I find even more useful: a recliner
with a monitor suspended over the chair. Something that
supports the head. This eliminates a whole bunch of stress
of keeping the head in position, which is where huge chunks
of stress in shoulders and the neck come from. Fortunately,
I work in an office where there is a wonderful, wonderful
benefit: biweekly massages paid for by the company. I'm sure
it will save money in the long run.

Misc.

Martin's posting
about disemvowel.py
reminds me of the time I walked into a friend's house and
they were playing Wheel of Fortune -- in Welsh. I asked why
and my friend Joyce replied, "The Welsh were a poor people.
They couldn't afford any vowels."

Fscking NT mail server at work. ::rolls eyes:: It's been
hours and they still haven't "gotten it up."

Worked a bit on CottonBale last night and this afternoon.
Rick and I had a nice lunch at our local coffee shop,
walking into the middle of a crowded sidewalk sale by
mistake as we tried to approach the place.

Later, more work, including trying to set up MySql the same
on my home box. Grrr. Home is a SuSE box that's about four
different versions of SuSE. If I could find my 6.3, I'd redo
a fresh install. But I haven't found it since I moved two
months ago. And, naturally, 6.4 is out now.

MySql's really much easier to set up on a Red Hat box. But
it should be up and running again soon and then I can test
CottonBale with a faster connection while I'm home. It's
mostly done (except for the maintenance, which can wait a
bit), so it's nearly ready to deploy.

Seth made
comment about the levels of certification. One of the issues
I have is that it assumes that anyone who is starting out in
open source coding doesn't know how to code, an assumption I
find fundamentally flawed. There's also an inherent
assumption that their time is unlimited. There isn't a good
way of certifying master coders who, like myself, contribute
here and there. Sometimes in bug reports, sometimes in
design, sometimes in code.

Some of us have been coding for a living longer than the
average Advogato user has been alive. While I may not be
famous as a coder in the open source space (mostly because
I've written custom apps which, while necessary, are not
especially glorious), as a coder I'm easily Master level and
have been for years. Furthermore, not all my contributions
have been in the Unix space -- I wrote open source software
for the MacOS at least five years before I heard the term
"open source." I have code that's been continuously
running for more than 20 years[1]. Within this
community, I see myself as Journeyer mostly because I spend
time on community events at the expense of coding (which I
do all day, every day). But rating me as an apprentice is,
imho, insulting. I've contributed lots of little pieces to
lots of places, but never quite enough to "make a name" for
myself. I don't give a shit about the recognition, but I
find it amusing that some people have certified me who a)
don't know what I have done and b) don't know me very well.

Exercise: If you're in the US, open up the newspaper
to
the television listings section. There's more than a 50%
chance that the page you're looking at was generated by my
code.

SVLUG

Saw a lot of people at SVLUG, including Joey Hess, many
of whom did double takes on Rick wearing a suit. Well, we
didn't have time to change. The double-takes he got were
really hilarious. Prior to that, we'd spent time with his
large, boisterous Norwegian family. Coming from a small
family myself, I felt a bit cramped. I couldn't believe how
much food they had. Too bad we don't have stasis generators
to keep piles of food from going bad. Everyone coming in had
an ice chest it seemed.

Apparently ESR hadn't heard of advogato, so we told him
about it last night. In sad news, his father died yesterday
morning. :( ESR said it wasn't unexpected.

We skipped the SVLUG meeting proper, hanging out with ESR
and Karsten
Self. After the meeting, we spent time with our new
neighbor, Reg Charney, and Karen Shaeffer. Karen really has
a wonderful head on her shoulders and it was great spending
time with her.

As almost all my day yesterday was spent in social
events, no code. Today, it's work, an appointment and home,
so probably no coding as I'm being a sysadmin today.

Open Source Culture

Dria says:

It's becoming increasingly clear that the Open Source
community is mind-bendingly complex -- not just in terms of
creating technology, but also in terms of social interaction
and community and all the other squishy stuff that goes
along with it.

Heck, go for a Ph.D. from The Union Institute. In fact,
this very area had fascinated me also. My undergrad studies
were strong on just about every social science except
sociology.

[1] The concept of "code uptime" has really become
more
appealing to me over time as a measure of software quality.
By that measure, some of the so-called illuminaries of open
source would be ranked apprentice. I have spent a good chunk
of my career as a "reimplementer" -- when someone else
screws up and the code crashes, freezes, is outgrown or
whatever, I redesign and reimplement
from scratch. Thus, code quality is far more
important to me than the glory of being a "frontier"
programmer and getting my name in lights. To me, the craft
is about coding correctly. I'm not going to point
fingers, but there's an awful lot of atrocious design and
implementation out there, and if we ever GET the cloning
process perfected, I'm going to sic my clones on getting it
all fixed.

Tonight I worked on CottonBale and got it about 1/4 done
(as far as the critical stuff to get it really useable). It
has the groups' stuff pretty much right, though I need to
update the schema.

Rick and I were going to talk about it over dinner, but
the Dutch Goose was packed and very, very loud. After
dinner, we talked about it briefly, but he's on a really
godawful morning shift these days, so he's asleep already.

Seth David
Schoen asks about procedures, specifically stored
procedures. When I was coding in immunohematology, the FDA
had to certify our code after it was compiled and before it
could be deployed. Thus, we took extra pains to see that
ANYTHING that would otherwise be in code wasn't. None of our
sql statements were (they were stored in text files or
stored procedures). Stored procedures were relatively easy
to change, but difficult to maintain across databases.

While I've been a DBA, I didn't use them overmuch. I
think the reasons DBAs like them is that they spend a lot of
their time in sqlplus (or the non-Oracle equivalent thereof)
and therefore aren't accessing a database through code 99%
of the time. Thus, stored procedures are a convenient means
of access for them.

I didn't do much coding over the weekend, giving my eyes
a rest. Rick and I went to see Terry Pratchett. While we
planned to go on Saturday to Future Fantasy, we found we had
more access at Kepler's. We listened to him prattle off for
a while then went to the cafe.

It's people like that who make you realize how little you've
accomplished. It is a sobering thought, for example, that
when Mozart was my age, he had been dead for two years!

It's from the intro to Alma, one of Lehrer's more amusing
songs. And, in my personal case, five years. Bleah, it's not
just sobering, it's downright depressing.

Sloppiness is a bad coding technique.

Speaking on Kelly's
entry
from last night, the most extreme example I can come up with
personally was spending three weeks to fix ONE line of code
when I was working on some MacOS voodoo project. The bug
would only show up, sometimes, after my app had quit. It
took a week to find a way to reproduce it reliably, two
weeks to muck about and figure out what was going wrong, and
two minutes to fix it when I found it. It was a real data
mining expedition.

Early in my career, when compilers were abysmal and fast
RAM was still measured in milliseconds, I
coded power plant control software in Pascal. Because it
took two hours to do a full compile, we typically did it
once a day, sometimes only twice a week. Thus, we sometimes
had a LOT of errors that needed to be fixed. Once, I got the
error, "Pass 1 errors detected, pass 2 not run." It turns
out that a semicolon at the end of a line was replaced by a
colon instead. With an utter lack of things like diff and
lint, I think that one was 14 hours. We didn't have enough
space at the time to be able to keep a revision back.
Remember 8" floppies? We had those. Hard drives were not yet
available to mere mortals, so diff wouldn't have helped a
lot.

3500 people have viewed the 10 minute
total idiot's guide and the only comment I've heard that
was specific was that it really DID take one guy 3 hours and
52 minutes to compile all the requisite components. Others
have wanted more expansion, but I really wanted a KISS
approach as a lot of people were having trouble just getting
on the runway. The number of hits are kind of amazing
considering that it was unlinked from the front page of the
site until yesterday (doh!) when I revamped the pages. It
also comprises about 35% of all hits to the baypiggies site.

Rick and I did some log-grepping on Linuxmafia last night. He's
serving about 100k pages a week, and his BALE page (Bay Area
Linux Events) page gets about 10k hits a month. The most
amusing part is that the host is an 8-year-old 486. Go
Linux!