<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Advogato blog for kbob</title>
    <link>http://www.advogato.org/person/kbob/</link>
    <description>Advogato blog for kbob</description>
    <language>en-us</language>
    <generator>mod_virgule</generator>
    <pubDate>Sat, 25 May 2013 14:10:54 GMT</pubDate>
    <item>
      <pubDate>Tue, 17 Jul 2001 19:02:12 GMT</pubDate>
      <title>17 Jul 2001</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=6</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=6</guid>
      <description>&lt;b&gt;Timeliness&lt;/b&gt;
&lt;p&gt;
&lt;a href="http://www.advogato.org/person/sethcohn" &gt;Certain&lt;/a&gt;
&lt;a href="http://www.advogato.org/person/Kyrgan" &gt;people&lt;/a&gt;
have  been pestering me to update my diary. It's only
been 9 months... (-:
&lt;p&gt;
&lt;b&gt;Consulting&lt;/b&gt;
&lt;p&gt;
Well...  It turns out I'm a software consultant. Who knew?
&lt;p&gt;
&lt;a href="http://www.geocast.com/" &gt;Anne's company&lt;/a&gt;
needed some perl scripts, so I wrote them.  It started as a
two week contract, back last October and turned into two
months.  It was fun, because I had lots of friends at
Geocast,
and it was easy work, and the money was good.  So...
&lt;p&gt;
I formed my own company,
&lt;a href="http://kbobsoft.com/" &gt;kbobsoft&lt;/a&gt;, 
and started looking for more work.  Found it at TiVo.
Been working for TiVo since March.
&lt;p&gt;
I've never been sure whether "software contractor" or
"software consultant" is better.  I use the two terms
more or less interchangeably.  I think "consultant"
sounds snottier.
&lt;p&gt;
&lt;b&gt;TiVo:)&lt;/b&gt;
&lt;p&gt;
TiVo is an incredibly cool company.  They have the best
engineering organization I've ever seen.  Their product
is pretty cool, too.  I really hope they survive -- they
deserve to prosper.
&lt;p&gt;
&lt;b&gt;Oregon, Ho!&lt;/b&gt;
&lt;p&gt;
We finally did it.  Moved out of Silicon Valley, and into
beautiful Lane County, Oregon.  We're making new friends
pretty well.
Here are a few: &lt;a href="http://www.advogato.org/person/sethcohn/" &gt;sethcohn&lt;/a&gt;,
&lt;a href="http://www.advogato.org/person/rybolov/" &gt;rybolov&lt;/a&gt;,
&lt;a href="http://www.advogato.org/person/Kyrgan/" &gt;Kyrgan&lt;/a&gt;,
&lt;a href="http://www.advogato.org/person/naturedarren/" &gt;naturedarren&lt;/a&gt;.
&lt;p&gt;
We bought
&lt;a href="http://www.jogger-egg.com/photos/" &gt;a big-ass
house&lt;/a&gt;
15 miles outside Eugene, on 50 acres of forested hillside.
&lt;p&gt;
&lt;b&gt;QWest sucks&lt;/b&gt;
&lt;p&gt;
Yeah, they're an RBOC, so you expect them to suck.
But QWest exceeds expectations. Their slogan is,
&lt;blockquote&gt;QWest. We suck harder.&lt;/blockquote&gt;
&lt;p&gt;
The first three weeks
we were here, they turned our POTS lines off and on
randomly.  We scheduled appointments (with
a granularity of a whole day) to get
them turned on, and the dispatcher didn't bother to send
anyone
to our house that day.  Anne spent a total of six hours at a
phone
booth in town pleading with them to turn our phones back on.
&lt;p&gt;
Today I'm sitting at home (all day -- can't schedule
appointments
any closer than a whole day) waiting for them to install the
T1. We ordered it on May 15th. I bet they won't show today.
Another whole day wasted. I wish I could charge them my
usual
rate. (-:
&lt;p&gt;
&lt;b&gt;PC Training Center&lt;/b&gt;
&lt;p&gt;
Since we only have a modem at 24 KBps until QWest gets
off its ass, I rented a funky
little
room at the PC Training Center in Eugene. I don't know why
it's called that --
it's really a mom &amp;amp; pop computer store.  The owner, Stan,
refuses
to sell systems with Windows preinstalled.  You can order a
system with any
Linux distribution you want (probably BSD too), or you can
order
it with blank disks that you can install Windows on
yourself.
That's cool.
&lt;p&gt;
My office is 11x11, and it's full of the previous tenant's
stuff.
I pushed enough of it out of the way that I could set up two
TVs and two TiVos.  I'm subletting Stan's DSL.  He has an
E-Smith
gateway/firewall, and I have a coyote firewall, so all my
packets
are double-NATted.</description>
    </item>
    <item>
      <pubDate>Wed, 11 Oct 2000 06:43:42 GMT</pubDate>
      <title>11 Oct 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=5</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=5</guid>
      <description>&lt;b&gt;Autumn&lt;/b&gt;
&lt;p&gt;
I love the weather. The air is chill, the leaves are
starting to turn,
the sky is muted gray, the wind is feeling its new strength.
&lt;p&gt;
&lt;b&gt;Pizza!&lt;/b&gt;
&lt;p&gt;
Invited three friends from work over for pizza Saturday
night.
I like cooking, and pizza is impossible to screw up.
&lt;p&gt;
&lt;b&gt;&lt;a href="http://www.advogato.org/proj/Subversion/" &gt;Subversion&lt;/a&gt;&lt;/b&gt;
&lt;p&gt;
I have all the code for the next phase of &lt;b&gt;cvs2svn&lt;/b&gt; in
my
head, I just need some uninterrupted keyboard time to let it
out.
&lt;p&gt;
&lt;b&gt;Jury Duty&lt;/b&gt;
&lt;p&gt;
I am called. I will not be chosen.
&lt;p&gt;
&lt;b&gt;Unemployment.&lt;/b&gt;
&lt;p&gt;
&lt;a href="http://www.advogato.org/person/dsifry/" &gt;dsifry&lt;/a&gt; saw &lt;a
href="http://www.jogger-egg.com/kbob/resume/"&gt;my resume&lt;/a&gt;
in my last diary entry
and offered to forward it to the managers at Linuxcare. 
What a guy!
&lt;p&gt;
Meanwhile, back at the old job, my cow-orkers are being
ever so friendly.  (Note pizza above.) If they'd done that
in July, I wouldn't have resigned.
&lt;p&gt;
&lt;b&gt;Sleep.&lt;/b&gt;
&lt;p&gt;
Now.
</description>
    </item>
    <item>
      <pubDate>Tue, 10 Oct 2000 12:11:12 GMT</pubDate>
      <title>10 Oct 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=4</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=4</guid>
      <description>&lt;b&gt;Still installing Mandrake...&lt;/b&gt;
&lt;p&gt;
Actually, I'm cleaning up things that the upgrade broke. Got
through all the updates and tracked down a setenv command
in a bash script (?). Now I have to figure out who turned my
emacs window green.
&lt;p&gt;
&lt;b&gt;Unemployment.&lt;/b&gt;
&lt;p&gt;
It's official. It's public. I have quit my job. Friday is my
last day. My boss announced it at the staff meeting and
my group just stood around and looked at me like I was
the main attraction at the freak show. (-:
&lt;p&gt;
Going to have to find some more work now.
&lt;a href="http://www.jogger-egg.com/kbob/resume/" &gt;My
resume&lt;/a&gt; is up to date; I need to start sending it around.
My old boss wants me to come to &lt;a
href="http://www.geocast.com"&gt;Geocast&lt;/a&gt;. I want (a) some
time off and (b) to look around a little.  Last time, I took
a job after only one interview. I won't do that again.
&lt;p&gt;
So how do I get myself a job doing open source/free
software?
</description>
    </item>
    <item>
      <pubDate>Mon, 9 Oct 2000 07:37:48 GMT</pubDate>
      <title>9 Oct 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=3</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=3</guid>
      <description>&lt;b&gt;Installing Mandrake&lt;/b&gt;
&lt;p&gt;
I've been running Mandrake 6.1 on my laptop and on my main
desktop machine since it came out last December. I'm
supposed to give a presentation on Linux on laptops to the
&lt;a href="http://www.euglug.org/" &gt;eug-lug&lt;/a&gt; next month, so
I decided I should be running a less paleozoic release on
the laptop.
So I'm going to install Mandrake 7.1. It's a Sony Z505RX,
with
a USB floppy drive and a PCMCIA CD-ROM.
&lt;p&gt;
Went to bed last night while backing up the whole disk
across
the Ethernet to my desktop machine (which I just recently
upgraded to a whopping 46 Gb drive). This morning, I started
installing 7.1.
&lt;p&gt;
The install itself went pretty well.  I quickly figured out
that I can
boot the pcmcia install floppy from my unsupported-in-Linux
USB
floppy drive, then access the CD-ROM if (and only if) the CD
is loaded when the installer probes for the drive. (But not
at boot time, or
it'll boot off the CD, which can't see a PCMCIA CD-ROM
drive).
&lt;p&gt;
It failed the first time, not enough free disk space. Moved
a
couple
hundred Mb of photos onto the desktop machine's 46 Gb disk
and found an
old Mandrake 7.0 ISO image to delete.
&lt;p&gt;
Anyway, the installer ran for nearly four hours.  I don't
know why
it was so slow.
&lt;p&gt;
&lt;b&gt;Interlude: shopping, car maintenance, and digging a
hole&lt;/b&gt;
&lt;p&gt;
Several months ago, we had a plumber add a valve to the
front lawn's sprinkler system. He managed to start a fire
(comedy of errors) and torched one of the boxwood bushes in
the hedge. Anne has been hacking at the bush trying to get
it to recover, but we finally gave it up. She was working on
it,
and I went out to help. Dug up the
half-dead bush. Now we need a
live bush to replace it.
&lt;p&gt;
Car's been handling funny, the tires were low. Pumped
them up. added 5 PSI all around, but the right rear was at
12 PSI. (It's been leaking since late spring. I need to call
&lt;a href="http://www.tirerack.com/" &gt;the Tire Rack&lt;/a&gt;
tomorrow and get new tires anyway. (their web site says it
uses SSL, but it doesn't.
What's up with that?)  Anne pumped
her tires up too.
Then I jacked my car up and took off the right front wheel
to find out what the noise coming from that area is. The
plastic fender liner had come loose and was rubbing on the
wheel.  The plastic looked
sound, so I bolted it back in place. Anne noticed that the
bumper
was hanging down on the right, and bolting the fender liner
back
made the bumper look better.
&lt;p&gt;
Then, shower.  (It's about 2:30).
&lt;p&gt;
Then, off to Men's Wearhouse for a suit. My cousin back in
The Old Country (aka back east) is getting married. He's
only
25; what's a guy doing getting married at that age? Spent
about an hour trying suits and ties and stuff. Now I have a
suit like men wear in The Old Country.
I doubt I will wear this suit five times in the next five
years.
&lt;p&gt;
Late lunch/early dinner at Willow Street Pizza.  Excellent
food
and good beer, too.
&lt;p&gt;
Then to OSH for plants. Bought six (6) boxwoods and Anne got
a Mandarin tree. I think the Mandarin was an impulse
purchase.
&lt;p&gt;
Then back home. It's getting dark, so Anne hooks up some
lights on extension cords while I dig the holes to plant two
of our new boxwoods.  Shortly the job is done.
&lt;p&gt;
&lt;b&gt;Still Installing...&lt;/b&gt;
&lt;p&gt;
Just before the shower, I booted Mandrake 7.1 and started
rsync'ing
the Mandrake updates from Sourceforge to my desktop machine.
(Did I mention that it has a 46 Gb disk now? (-: ) So now
I'm
trying to find out what all has broken and fix it.
&lt;p&gt;
First is xmodmap. For some reason, Mandrake disabled the
use of $HOME/.Xmodmap. Who knows why?
&lt;p&gt;
Second is PCMCIA card services. Mandrake 7.1 uses pcmcia-cs
3.14, which doesn't work reliably with my laptop. Gotta
build a new
kernel to get pcmcia-cs up to rev (and to install the
Wavelan driver).
&lt;p&gt;
So that's where I am now. Compiling a kernel. No CD-ROM or
wireless until that's done.
&lt;p&gt;
&lt;b&gt;Baking&lt;/b&gt;
&lt;p&gt;
About 9:30 pm, started baking a batch of blueberry muffins,
using
my mom's killer recipe.  Yummmm!
&lt;p&gt;
&lt;b&gt;Summary&lt;/b&gt;
&lt;p&gt;
Upgrading Linux is a big waste of time.  Er, I mean, you
waste a lot
of
time upgrading Linux.
&lt;p&gt;
Accomplished some good stuff today, but not on the computer.
&lt;p&gt;
Did more things with Anne than any other day in memory.
That was good.
</description>
    </item>
    <item>
      <pubDate>Sun, 1 Oct 2000 09:27:16 GMT</pubDate>
      <title>1 Oct 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=2</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=2</guid>
      <description>&lt;b&gt;Unit Testing in Perl&lt;/b&gt;
&lt;p&gt;
I read &lt;a
href="http://www.awl.com/product/0,2627,0201616416,00.html"&gt;the
eXtreme Programming book&lt;/a&gt;
(&lt;a href="http://c2.com/cgi/wiki?ExtremeProgrammingExplainedEmbraceChange" &gt;Wiki:ExtremeProgrammingExplainedEmbraceChange&lt;/a&gt;)
a while ago, and the
part of XP that interests me most has been the unit testing
stuff. But I couldn't get anybody else at work interested.
&lt;p&gt;
So now I'm working on a big, ugly Perl script (over 1,000
lines and still writing), and I decided to put unit tests
into
every class definition.  Then I wrote some truly ugly code
to
find all the methods named "self_test" and execute them when
the script starts up.
&lt;p&gt;
Well, hey, it works.  I've got over 1,000 lines of working
code, and I haven't had to debug anything that wasn't
trivially easy to find and fix.  In previous Perl projects,
I've always gotten ensnared in bugs where a variable
is supposed to be a ref, but it's actually a ref to a ref,
or it's a ref to the wrong thing, or, ...
&lt;p&gt;
Perl's lack of encapsulation makes isolating the class under
test
easy -- if
&lt;b&gt;Foo::method&lt;/b&gt; requires a Bar
as argument, I just pass in &lt;b&gt;bless { }, 'Bar'&lt;/b&gt;,
instead of creating a real Bar.
&lt;p&gt;
Each selftest uses &lt;b&gt;die&lt;/b&gt; to report errors. The "real"
code uses &lt;b&gt;Carp::croak&lt;/b&gt; pretty extensively.
&lt;p&gt;
Here's an example.
&lt;pre&gt;
sub CvsDirEntry::self_test {
    my $de0 = CvsDirEntry-&amp;gt;new(NAME =&amp;gt; 'slug');
    die unless $de0-&amp;gt;name eq 'slug';
    die unless $de0-&amp;gt;path eq 'slug';

&lt;p&gt;     my $de1 = CvsDirEntry-&amp;gt;new(NAME =&amp;gt; 'grub');
    $de1-&amp;gt;set_parent(bless $de0, 'CvsDir');
    die unless $de1-&amp;gt;name eq 'grub';
    die unless $de1-&amp;gt;path eq 'slug/grub';
}
&lt;/pre&gt;
&lt;p&gt;
I'm not consistently writing the tests first
(&lt;a href="http://c2.com/cgi/wiki?CodeUnitTestFirst" &gt;Wiki:CodeUnitTestFirst&lt;/a&gt;), but I'll get
there...
&lt;p&gt;
&lt;b&gt;eXtreme Programming and Windows&lt;/b&gt;
&lt;p&gt;
It seems like the vast majority of XP practitioners are
Windows sharecroppers.  Why is the intersection of XP
and open source so small?
&lt;p&gt;
&lt;b&gt;Netcraft&lt;/b&gt;
&lt;p&gt;
Apache is down again in this month's &lt;a
href="http://www.netcraft.com/survey/"&gt;Netcraft survey&lt;/a&gt;.
What gives?
&lt;p&gt;
</description>
    </item>
    <item>
      <pubDate>Fri, 22 Sep 2000 18:31:28 GMT</pubDate>
      <title>22 Sep 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=1</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=1</guid>
      <description>&lt;b&gt;Comp. Sci. vs. Just Programming:&lt;/b&gt;
&lt;p&gt;
I must be just a programmer. My only contribution to
computer science is the &lt;a
href="http://www.jogger-egg.com/kbob/deep-thought.html"&gt;deep
thought implementation&lt;/a&gt;.

&lt;p&gt;
&lt;b&gt;&lt;a href="http://www.advogato.org/proj/Subversion" &gt;Subversion&lt;/a&gt;&lt;/b&gt;

&lt;p&gt;
Talked to &lt;a href="http://www.advogato.org/person/kfogel" &gt;kfogel&lt;/a&gt; and Ben
Sussman yesterday on the phone for over an hour. Seemed like
nice guys. We concluded that I could make myself useful by
writing the
CVS to SVN conversion tool. (No comp. sci. there! (-: )

</description>
    </item>
    <item>
      <pubDate>Wed, 20 Sep 2000 06:30:56 GMT</pubDate>
      <title>20 Sep 2000</title>
      <link>http://www.advogato.org/person/kbob/diary.html?start=0</link>
      <guid>http://www.advogato.org/person/kbob/diary.html?start=0</guid>
      <description>&lt;p&gt;
Made my first contribution to &lt;a
href="http://subversion.tigris.org/"&gt;subversion&lt;/a&gt; tonight.
Nothing significant, just some cleanup. I hope it's
appreciated.
&lt;p&gt;
I'm going on vacation Thursday through next Friday. I'm
going to spend the time
hacking, because I never get to hack at work. (It's what
they pay me for, but they'd rather have me sit in meetings
and organize crap.)
&lt;pre&gt;
                                        K&amp;lt;bob&amp;gt;
&lt;/pre&gt;</description>
    </item>
  </channel>
</rss>
