« July 2004 | Main | September 2004 »

August 31, 2004

Customer feedback

We've probably been complaining about lack of customer feedback since tech writing became a profession.

I'll admit it's tough to tell how they did with your docs. I've been writing for years now, knowing that writers need this kind of feedback, and I don't even write back to thank people who've done a fine job, like Andreas Eckleder who wrote a GnomeToaster User's Guide that's never failed to answer my questions, or Bruce Eckel for his book on Thinking in Java.

I almost never think of sending email when I get stuck, or have a great idea. For example, I'll blog that Movable Type doesn't have good doc for handling comment spam, but I've not fed that back to the development team. (Maybe they already have too many requests for features and want to concentrate on paying customers first. But MT-Blacklist still seems to exist, and for 3.0, too.)

When we have quick customer contact, they often don't have too much to say that helps us write better product docs in general. The best situations seem to crop up during long betas, like the one we had for Directory Server 5.2, where we sort of got to know to some extent what customers were trying to accomplish, and could start real email conversations.

Posted by Mark at 09:32 PM

Intellectual property, part II

We had our first phone conf with the lawyers handling SUN041335. One of them said he didn't expect anyone in the patent office to look at it for 2-3 years, at which point the person having a look would reject the claims, and our lawyers would have to defend them. In other words, the entire process would take several years.

So this is not a way of supplementing my income. Oh, well.

Posted by Mark at 09:14 PM

August 30, 2004

Patching cognitive dissonance

Do those who handle high levels of cognitive dissonance survive more effectively? Does some level of cognitive dissonance lead to enlightenment?

Posted by Mark at 10:39 PM

Comment spam, part II

Another small rash of comment spam happened today. Somebody posting from two different IP addresses posted 16 ads for a Viagra substitute called Cialis, advertised as producing a 36-hour erection.

I've not tracked the IP addresses, but my guess is that the IP banning in Movable Type is not going to cut it. Like most of us, my IP address at home, for example, changes every time I get a connection. Movable Type lets you ban individual addresses.

Perhaps I should try MT-Blacklist?

Movable Type, by the way, has an editor for handling multiple entries at once, but I don't see one for selecting and deleting multiple comments. Were they waiting to put that in the paid license version?

Posted by Mark at 08:10 AM

August 29, 2004

Olink browser

An olink (outside link), is a hypertext link from one XML/SGML source document to another target document, based on meta-information in the target document, such as the public ID of the target and an attribute identifying the link end. Such links can be managed with a link broker to prevent broken links in published output.

Our customized version of ArborText's Epic editor includes a link browser presumably related to the broker apparatus. The particular implementation leaves something to be desired. It looks like the author was an afterthought in the process of building the broker. A small project for someone like me?

Posted by Mark at 07:01 AM

44:35:57

No, this has nothing to do with aerobic sports. It's the elapsed time to do a week's grocery shopping, from the moment I stop the car engine to the moment I start it again.

About 30 minutes of that is spent in the aisles putting groceries in the cart. The rest is waiting in line and getting myself and groceries to and from the car.

This time includes neither the drive to and from the supermarket, nor the time to compile the list. Add those, and the time definitely doubles. Some weeks it may take longer to make the list than to get the groceries.

Posted by Mark at 06:52 AM

August 28, 2004

Echec et mat

Another friend of mine, who knew that I was going to have a couple of weeks alone without interruptions, and knew me well enough to know the answer to her question was an almost unqualified yes, asked me if I was looking forward to the solitude.

Neither was my friend who wrote, "You've got to be alone to write," boxing herself intentionally into checkmate, nor was my other friend doing it to me. Or maybe the latter friend was.

Losing doesn't make you work harder to become a winner. It makes you want to change the rules.

Posted by Mark at 10:16 PM | Comments (2)

Designing interruptions

Ellen Isaacs and Alan Walendowski, authors of Designing from Both Sides of the Screen, convinced me that building a friendly application demands interactive development involving usage studies and the like. Ellen and Alan got many more design ideas for their Hubbub app from interaction with early users than they ever did thinking about it and developing it.

Maybe that's the message John Fowler wanted to convey by handing out copies of this book to so many of us who attended Sun's Software Technical Conference last spring. I hope he doesn't want us developing stuff like Hubbub.

In a nutshell, Ellen and Alan's app lets you stay in synchronized, instant messaging contact as you move from PC to Palm and around the world. It even plays noises at you to let you know when someone wants to interrupt you. I suppose people who work for the phone company would naturally expect people to appreciate even more interrupt-driven, synchronous communication. No intravert designed the telephone bell.

A friend of mine once wrote when we were together, "You've got to be alone to write." Paul Graham in On Lisp mentions, "As Montaigne found, nothing clarifies your ideas like trying to write them down." My friend could've written, "You've got to be alone to figure out what you think."

You won't think more clearly with "I'm still here. Are you still there?" messages and telephones ringing in your ears. But some of us nevertheless need an audience to think. Maybe the hubbub's for lazy people like me. Instead of revise, revise, revising our ideas into something worth reading, we blog, or IM chat.

Posted by Mark at 09:54 PM

August 27, 2004

L'Alpe d'Huez

Dad wanted to see l'Alpe d'Huez, site of one of the time trials for the Tour de France. We drove there this morning. The summit's about 95 minutes from here in the car.

Lots of cyclists were climbing the 1100 m over 13 km. We saw everything from a guy who looked about 70 on a recumbent bike to women on regular upright town bicycles to a couple of guys who looked lean and mean enough to have been in the Tour, standing up and cranking away.

When my leg heals, I'd kind of like to go out there and run the 13 km. As Dad said, I wouldn't be able to claim my diplôme, however, which you apparently can get if you go to the mairie or the tourist office or wherever it was after riding all the way to the finish line.

One nice thing about that ride: no potholes. It's like they came through before the Tour and had someone from Hollywood repave the road. Ready for prime time.

Posted by Mark at 10:22 PM

One less meeting

Taking a tip from Scott Adams, we've leveraged some synergies and eliminated one of our meetings.

We're replacing the meeting with status reports to our manager. Maybe we can replace the rest of work with emailed status reports. Sounds like a good "invention disclosure" is hiding in there somewhere.

Posted by Mark at 07:45 AM

August 26, 2004

Paul confirming Gilles

Paul Graham writes in his book On Lisp, "The plan-and-implement method may have been a good way of building dams or launching invasions, but experience has not shown it to be as good a way of writing programs."

Is failure to plan really planning to fail? Or is it something else? Something like growing, perhaps?

Posted by Mark at 06:44 PM

Learning Python, part II

My brother knows more Python than I do. He can probably still recite the entire cheese shop sketch.

Yet I know marginally more than I did. Learning Python went down more smoothly than K&R, for example. I wonder if I should try coding a schema repository in Python rather than Java.

Posted by Mark at 06:20 PM

Curdling

Dad wanted to visit a cheese dairy. Nathalie found a place in St. Marie du Mont where they let you strain the fromage blanc yourself.

The dairy belongs to a farm where 28 residents with mental disabilities and illnesses live and work. They have a few cows, some pigs, donkeys, a horse. 35 staff members help them handle the place and themselves. Looks more therapeutic than sitting in a hospital watching TV, though I prefer my own wage slavery situation for now.

The children ladled fromage blanc into clear plastic molds, then we went to see the animals. Diane tried screeching like a rooster. The pigs screeched and sneezed for their dinner, which according to the staff is mainly whey.

A couple of the more extraverted residents sat with us while we had a snack of fromage blanc, cream, and granulated sugar.

The folks who came to sit with us had me wondering where writer Will Self found raw material for Ward 9. One could tell the staff from the patients at 15 meters. I think. Those of us on the outside conform to some rules about physical and social presentation with which the other folks appear to have gotten out of sync.

But you don't have to sit there too long to start wondering how close you stand from the edge. As you drive up to the farm you can see the edge of the road. On the other side lies a beautiful, sheer cliff. The bearded guy (doctor, patient?) who showed us the cows and answered Dad's questions about volumes of milk and whether they had their own bull said you got used to the drive up. He's probably used to the other edges as well.

Posted by Mark at 06:07 PM

X-rays for stress fractures, part III

Dr. Rantz of Pontcharra says his best guess is that the bone's fine, but the calf muscle's torn or stretched. He prescribes a visit to a foot doctor who can prescribe shoe inserts for running, and an ultrasound of the calf muscle for further diagnosis.

Still haven't been able to remove the gear cog on the rear wheel of my bicycle, and have taken Nathalie's, which is too small. Also jumped rope, but there are two problems with that. First, it puts some of the same pressure on the muscle as running does. Second, after about 15 minutes jumping rope, I start losing my coordination.

Did ride to and from the park in La Rochette yesterday. In both directions, I was less than 5 minutes behind everyone else. They took the car.

Posted by Mark at 11:00 AM | Comments (2)

Beyond the limits

Rob had me read a short chapter on Discipline, Leadership from Beyond the Limits.

Sir Raluph Fiennes leads off talking about obedience and discipline in conditions of war. Blah, blah, blah later, he writes, "...it would seem sensible for a leader, in choosing his team, to seek out naturally loyal individuals rather than knowingly lay up trouble for himself or herself by taking self-avowed critics." I agree. What this planet needs is a few strong leaders, and blind obedience from the rest of you. Obviously most real life situations correspond closely to firefights. Decisions in this context are best made by those of us who think clearly and are always right, even when we're not.

Posted by Mark at 10:53 AM

August 25, 2004

La chute

In rereading La chute a few months ago, I missed most of the meaning. But now I wonder if Camus's death had something to do with life as an uphill battle against our own stupid failings.

You see motes in other people's eyes, then you notice the planks in your own. Same rules apply. No wonder PKD's God in VALIS was in pain.

Posted by Mark at 03:22 PM

August 24, 2004

Rain

The week's starting off badly.

Yesterday, I didn't get out, except to ride about 3 kilometers to and from the x-ray center.

Today, it started raining in the middle of the night and hasn't let up. Diane has clung to me since 5 am. Going to try jumping rope as an alternative.

Removed the rear wheel of my bicycle to replace a broken spoke. Whoever came up with the law that the bread falls butter side down knows that law also applies to broken spokes. First, they always break on the rear wheel, where you apply the weight. Second, they always break on the same side as the sprocket, so you have to take the sprocket off to replace the spoke.

Sprocket removal requires special tools. Nathalie picked up the removal tool needed on a trip to Chambery.

In rereading the instructions under the link above, I notice that, "It will typically require some force to turn the freewheel." Sounds like an understatement to me. Yesterday I was afraid that even if I did manage to turn something, the wheel would thereafter be unusable. Better workout than benchpressing.

Posted by Mark at 04:30 PM

X-rays for stress fractures, part II

My x-rays showed no fractures. The doctor suggested I get a special scan to be sure.

Perhaps the problem is not fractures, but a stretched ligament or something like that. Now the plan is to go see a regular sports doctor and take him the x-rays.

Posted by Mark at 04:19 PM

August 23, 2004

X-rays for stress fractures

Went today to have my shin x-rayed.

The guy doing the x-rays had to take 4 sets of images. He said stress fractures are difficult to capture on x-rays.

I'd have had to wait an hour in their waiting room to see them today. Guess they're not quite like polaroids.

Posted by Mark at 09:08 PM

August 22, 2004

Back to school

The children go back to school next week.

Dad asked me what I'd go to if I had to leave Sun at some point. His first suggestion was venture capitalist, but I don't think that one fits me.

I'd probably go back to school. But this time I'd go pay a bunch of money to teach myself without much help. First I need to research potential research topics. My research topic would probably involve researching better ways to survey topics and determine what we already know or have tried to know about them. Sort of researching part of research.

I read Larry Wall's State of the Onion yesterday. Finally understood that you could refer to what he calls laziness as elegance. Mind opening in a subtle sort of way.

Posted by Mark at 10:44 AM

August 21, 2004

Mischevious picture

The last of the reasonable poses before someone started getting silly.

tim20040820.jpg

All those of Emma ended up too underexposed.

Posted by Mark at 08:48 PM

August 20, 2004

View from Diane's window

On a clear day you can see the Mont Blanc.

montblanc20040820.jpg

Posted by Mark at 10:23 PM

Touching picture, part II

If you like baby pictures, here's a better one.

diane20040820.jpg

The pacifier is a nice touch... when you're 2 years old.

Posted by Mark at 10:17 PM

Touching picture

Just to prove I'm not totally hardhearted but only irrepressibly narcissistic, here's a photo of me with my grandfather, John Craig.

granddad20040820.jpg

I'll yet you guess which one is me and which one is Granddad.

Posted by Mark at 10:11 PM

Mushroom

Mom and Dana have an enormous mushroom growing in their yard.

mushroom.jpg

Looks like it's 9 inches in diameter and growing.

Posted by Mark at 09:21 AM

August 19, 2004

Homemade perl obfuscation

Dennis hasn't finished SolBook 3.0 support for the man command in Solaris 10, yet, but we do have support for SolBook 3.0 RefEntrys inside books. Before I realized that I'd written some RefEntrys in SB 3. Luckily, not much has changed. Olinks got all changed around. (SB 3 has gone to olinks for everything. Very cool.)

The Perl obfuscations you can come up with just processing this stuff are hilarious:

#!/bin/perl -w
# ---------------------------------------------------------
# SolBook 3 is not yet supported by the Solaris man command.
# This script converts the DSRK RefEntrys to SolBook 2.
# This script is *NOT* a general conversion tool.
# Dennis is working on bug 5088606 to fix this.
# ---------------------------------------------------------
 
use Getopt::Std;
getopts("d:");
unless (defined($opt_d)) { die "Usage: " . $0 . " -d <sman1-dir>\n"; }
if (!grep(/\/$/,$opt_d)) { $opt_d = $opt_d . "/"; }
 
opendir(DIR, "$opt_d") || die "Cannot open $opt_d: $!";
@pages = grep(/\.1$/,readdir(DIR));
closedir(DIR);
 
foreach $page (@pages) {
    open(CURR_MANPAGE, $opt_d . $page) || die "Cannot open $page: $!";
    @lines = <CURR_MANPAGE>;
    close(CURR_MANPAGE);
 
    $file = join("", @lines);
    $file =~ s/\n/#~#/g;                # Replace newlines with #~#
     
    # Handle comments, copyright, and processing instructions
    $wcwq = "Hold back the edges of your gowns, Ladies...";
    $file =~ s/<!--.*-->/<!-- $wcwq -->/g;
    $copyright = "Copyright 2005, Sun Microsystems, Inc. All Rights Reserved.";
    $file =~ s/(class\=\"copyright\">).*?(<\/refmiscinfo>)/$1$copyright$2/;
    $file =~ s/<\?.*?>//g; # Probably not necessary
     
    # Handle olinks, which differ significantly from 2 to 3...
    # ... mindless attribute translations...
    $file =~ s/(targetptr\=\")(.*?)(\">)/localinfo\=\"$2$3/g;
    $file =~ s/(targetdoc\=\")(.*?)(\">)/targetdocent\=\"$2$3/g;
    $file =~ s/(remap\=\")(.*?)(\")//g;
    $file =~ s/(type\=\"auto)(.*?)(\")//g;
    # ... $wcwq
    $target = "targetdocent\=\"SUNWDSRKTR\""; # Could we use "." as the value?
    $cite1 = "<citerefentry><refentrytitle>";
    $cite2 = "<\/refentrytitle><manvolnum>";
    $cite3 = "<\/manvolnum><\/citerefentry>";
    $file =~ s/(<olink)[ ]*(localinfo\=\")([-a-z]*?)-1(\">)(<\/olink>)/$1
$target $2$3-1$4$cite1$3$cite2 1 $cite3$5/g; # Dude, are you obfuscated yet?
    $file =~ s/> 1 </>1</g;              # Yes, I hardcoded section 1.
    $file =~ s/(<olink)[ #~]*(localinfo\=\")(.*?)(\">)(.*?)(<\/olink>)/$1
$target $2$3$4$5$6/g;
     
    $file =~ s/#~#/\n/g;                 # Replace #~# with newlines
     
    open(NEW_CONTENT, ">" . $opt_d . $page) || die "Cannot write $page: $!";
    # Fix the doctype declaration, using entities for hand-made .ent files
    print NEW_CONTENT<<HEAD;
<!DOCTYPE REFENTRY PUBLIC "-//Sun Microsystems//DTD DocBook V3.0-Based SolBook Subset V2.0//EN" [
<!ENTITY % commonents SYSTEM "smancommon.ent">
%commonents;
<!ENTITY % booktitles SYSTEM "booktitles.ent">
%booktitles;
]>
HEAD
    print NEW_CONTENT $file;
    close(NEW_CONTENT);
}

Makes even a tech writer's work look complex and secretly meaningful, doesn't it?

Posted by Mark at 02:26 PM

August 18, 2004

Cost reductions, part II

On the flipside of the telco cost reduction fire drill, we have some cost reductions possible about which a lot of us would just breathe a silent sigh of relief. Using Google boxes for intranet search for example.

Our execs don't even need to have a meeting or an offsite to come up with an ROI case. Google already posts one. So why don't we just get it?

Some ideas:

  1. Employees counselling management whether to build or buy search technology themselves work on competing (and losing) search technologies.
  2. Executives who'd decide about this don't search for stuff on our intranet.
  3. Everyone building intranet sites used by our executives makes sure they get the usability right for their key customer, the executive(s) in question. (Other people, the ones attemping to use the intranet to get their jobs done, do not rank as key customers.)
  4. Doesn't run on Sun.
  5. We don't really want employees to be able to Google our intranet. They might dig up something dangerous.
  6. Executives deciding on search technologies don't Google. (I sure hope that's not it.)
  7. We're searching (without Google) for cost savings in traditional places, and therefore don't look to save where it gives us competitive advantage.
  8. We just cannot get organized to make this type of decision.
  9. Executive decision makers just haven't thought about it. They're busy saving money on cheaper toilet paper and phone calls.
  10. We looked, but don't believe the ROI predictions.

Posted by Mark at 09:15 AM

Cost reductions

One of the messages in my inbox this morning came from our EMEA Finance VP, telling me I must complete web-based telco cost reduction training within 30 days. This sort of stuff reads like a subpoena, and consequently fires you up for the whole day. Admittedly, saving on calling costs looks like a good idea. The cost of creating, disseminating, and checking up people's progress on the training course must be outweighed by the ensuing savings or our finance VP would of course never impose such an irritation.

Since I work with the software development folks, it probably doesn't matter that this whole thing caught me off balance at the beginning of the day, when my head is most clear, to go spend the best of my energies on a fire drill. If I ever hesitate to pick up the phone, probability that Sun loses a sale must be quite low. We communicate so well with distant colleagues that it's unnecessary actually to talk with them, right?

What about salespeople? Do we really want every sales person in EMEA taking 45 minutes off from selling to customers so they'll hesitate to make calls they need to make. In some ways, this seems like telling marathon runners, "Careful with the water, folks. As a RunnersRUs employee, you are required to take web-based water conservation training within 30 days of receiving this message..."

Posted by Mark at 08:51 AM

August 17, 2004

1:02:45:22

The rain mostly spared me on the way in this morning, except for a symbolic storm starting at St. Ismier. French thunderstorms compare to midwestern hard rains, let alone plains states downpours, as demitasse coffee cups compare to US mugs. Granted I had a hard time keeping my eyes open on the hill down from St. Ismier to Montbonnot, but that had more to do with the angle of the rain than the quanity.

Nath had me buy a helmet. I paid more than I wanted to. But the helmet fits fairly well, and is not as much of a bother as I thought it would be.

The breeze that blew in my face last night and caused me to take about 1:09:35 to get home came from behind this morning. Had I not worried about my brakes on some downhills, I might have shaved off another minute.

Posted by Mark at 09:54 AM

August 16, 2004

The Corrections

As mentioned earlier, Stu lent me The Corrections by Jonathan Franzen. I found Franzen's book hard to read. It took me quite a while to finish.

Part of my reticence to get it over with must arise from jealously. Franzen clearly writes so much more effectively than I do that it hardly seems fair for me to use the word writer on my resume. That wouldn't feel so bad if Franzen lived as far away as Shakespear, or even Philip K. Dick. Unfortunately he hails from the same midwest as I, just seems to have observed it with infinitely more insight and perspicacity.

Beyond jealousy, my struggle with this book comes from the sheer cringing embarrassment Franzen produces page after agonizing page. Somehow Franzen shows without telling you exactly how you look down your nose at the rest of humanity, only to burn with the sting of your own abject, petty inadequacy. Every character's every act opens a new window onto your despair of rising even to the level of the cynics.

Highly recommended, nevertheless. ("The food's terrible." "Yes, and such small portions.")

Posted by Mark at 08:57 AM

Learning Python

Cannot remember why I bought Learning Python from Mark Lutz & David Ascher. Last time I stopped reading unfortunately right before the interesting stuff began. Matt, by indirect means, brought me back to this book after he got me to read Paul Graham's essay on great hackers. If programming interests you, I'd recommend both the book and the essay.

By stopping right before the interesting stuff, I mean stopping before the second half of the chapter on functions in Learning Python, especially the exercises, which demonstrate how to call functions with arbitrary lists or dictionaries of parameters, and how you can handle the typing dynamically to have these sorts of polymorphic functions where Python does all the work and you just do the logic.

That was the first time I ever got excited about a programming language. (The rest of my life must be pretty bleak by comparison with yours, which you probably already knew from reading this blog, unless your life is so bleak that you regularly read this blog.)

Let me know about any good books or tutorials that helped you learn Lisp.

Posted by Mark at 08:34 AM

August 15, 2004

Bit torrents and big brother

I've come to the party very late, but have started to use Azureus to get and send bit torrents. I haven't tried to figure out how it works, but seems to function peer-to-peer for exchange of large downloadables.

There's a lot of shareable bits out there that people seem to want to diffuse more than they want to copyright and prevent you from checking out until you pay. For example, I've downloaded a Grateful Dead and Trey Anastasio shows from torrents found at nugs.net, which says it distributes only free music. I'm downloading a couple of VCD files of a talk by Chomsky last year concerning the world after after the invasion of Iraq. You can probably get GPL-ware this way, though I haven't looked too hard.

Trouble is, if you go Googling for a bit torrent, it's not necessarily clear what's shared legitimately and what's shared illegally. The University of California at Riverside has posted guidelines for example explaining to students how to comply with the DMCA:

Very simply, do not download or distribute copyrighted materials without appropriate permissions.

In other words, it's up to you to know. Furthermore, Chuck Rowley reacted in what seems like a very normal way for a sys admin to react to something like the DMCA:

In compliance with the 1998 Digital Millennium Copyright Act (DMCA) and the University of California Guidelines for Compliance with the Online Service Provider Provisions of the Digital Millennium Copyright Act, UCR expeditiously takes action when notified of potential DMCA violations from sites located on the campus network. All of these incidents are referred to various campus officials and appropriate actions are taken to stop unauthorized downloading or distribution of copyrighted materials.

What other choice do you have if you want to keep your job?

So these "various campus officials" probably have overflowing inboxes, because all file sharing potentially violates copyright. It's a shame that instead of DMCA there's not just an RFC or two on labelling downloads cheaply as copyright protected, copyleft or whatever. Download and upload apps could then verify for themselves whether the material is protected, and could ask for confirmation before performing operations whenever it looks like the material is not marked as freely sharable. You could even have a protocol for handling it, which the military probably already has, anyway.

Chuck Rowley at UCR has the right idea when he writes:

Of course, there are legitimate applications of file-sharing software, and discussion as well as research on such peer-to-peer software is expanding rapidly in the academic community. We will ensure that such inquiry, as well as the legal use of peer-to-peer software, remains unimpeded at UCR.

It's a shame that our overburdened and probably for the most part underconcernced elected officials did not find a way to make it a snap for everyone to do the right thing, rather than vote in the DMCA, a 94-page legal document that covers both downloads and vessel hull designs, and includes such dubious provisions as the one disallowing you to "reverse engineer" software (whatever that means) for any other purpose than figuring out how to interoperate with closed software. Presumably any documentation I do without asking beforehand is therefore in violation of DMCA. Good grief!

Posted by Mark at 01:51 PM

August 14, 2004

Listen carefully

Friday I had an errand to run during lunch, and ended up listening to BFM, where the person hosting the lunchtime program had Marc Blondel, ex head honcho of Force Ouvrière as the guest.

M. Blondel strikes me as a sort of grand patron type who decided he'd do better as a union leader than a conservative politician. The interview sort of slipped off into his involvement with freemasonry. I felt my interest drifting. Then he said something very close to, "Toutes mes réactions sont collectivistes. Moi, je..." It reminded me of an image on that right-wingish, reportage show with Thomas Hughes and Laurence Ferrari that comes on TF1 Sunday nights around 7. They did what I thought at the time was a slanderous interview with M. Blondel.

At one point he was seated watching a demonstration, smoking a fat cigar, with a big black colleague holiding a huge umbrella over his head while he talked, apparently not noticing the irony. They also filmed M. Blondel in his giant office that might have gone to a PDG for some industrial business. If they all project that image, no wonder the unions in France can no longer sign anybody up.

Posted by Mark at 09:14 PM

Comment spam

This blog, as anonymous as it is, gets hit with spam comments every other day or so.

Today brought a bumper crop of Viagra advertisements, however. Maybe you'll never know about that cheap, special low price offer ;-)

Posted by Mark at 08:51 PM

August 13, 2004

Sarcasm in the ranks, part II

JIS even blogged about it already! Though I notice he didn't mention the back of the mug.

Wonder if that "enterprising Sun employee" will now become the cible of a carefully targetted reduction in force...

Posted by Mark at 02:28 PM

Sarcasm in the ranks

Tim Bray's been gently reminding us to keep within the party lines when blogging.

Nobody said anything about mugs and t-shirts. Yet. Check out the rest of the writing on the mug. (No, I didn't do it. I'm as amused as the rest of you.)

Hope it didn't take an executive leadership offsite at Pebble Beach Golf Club to come up with goal #1, however.

Posted by Mark at 01:58 PM

1:05:19:64

The bike ride into work takes me downhill a bit overall, so I only had to get off the bicycle to move the chain twice. Once halfway up the hill in Biviers, once at the top of the hill just outside St. Nazaire.

Posted by Mark at 08:19 AM | Comments (3)

August 12, 2004

NameFinder, part II

Today I installed Solaris on an old PC, then installed Sun's Application Server and Web Server, then deployed NameFinder on both of them. This is all to update the documentation.

You can try all this software, downloading it from us at Sun. Get Solaris for your PC hardware, and get the Java Enterprise System for all our server software. Application Server's web-based administration interface suprised me with how easy it's become to deploy a web app. Just a few clicks and you're ready to go. I'm sure it can all be scripted as well.

One caveat: we don't seem to include the Java code for core NameFinder functionality. You probably do not need it, since you can adjust everything with the JSPs. But it would still be cool to be able to get it if you want to derive your own.

Posted by Mark at 08:19 PM

Prospectus supplement

AIM investments, under investigation by the SEC for market timing, sent Tim a prospectus update that arrrived today. The current Chairman and the current CEO claim, "we are working diligently to resolve all these issues," which no doubt they are. The issues themselves seem to revolve around the former CEO and Senior Vice President of their interlocking directorate, who appears to have taken the hit with the SEC complaint that the "independent directors ... had entered into certain arrangements permitting market timing" of the funds they were directing. Get the full, correct version of the story at http://www.aiminvestments.com/litigationsummary.pdf.

Good grief! Don't these fat cats do well enough already in a system organized entirely for their benefit? Why do they also need to cheat so egregiously that even the administration in charge of keeping their party going full steam finds itself obligated to investigate them?

Posted by Mark at 08:08 PM

1:07:19:12

Although the front derailleur for my bike is sitting in the trunk of my car, I was able to shave almost 5 minutes of my time riding home today. I attribute this to Rob and Matt's help and suggestions about how to get the breaks to work, and to chopping part of the ride off by taking a different road from Montbonnot to St. Ismier.

Had to get of the bike on 5-6 times to change sprockets in front, but it's enough to see why people want derailleurs. I tried to repair a malfunctioning cable by removing the wires in the casing, but this made the derailleur useless, when I couldn't find a way to maintain appropriate tension in the cable.

Posted by Mark at 07:57 PM

Faith

Losing faith in authority is like losing your virginity.

Not something you can get back. Would you want it back if you could get it?

Posted by Mark at 07:46 AM

August 11, 2004

Childlike understanding

A child-like man is not a man whose development has been arrested; on the contrary, he is a man who has given himself a chance of continuing to develop long after most adults have muffled themselves in the cocoon of middle-aged habit and convention. (Aldous Huxley)

What if you were already a nearly middle-aged, nailbiting, creatively nonconformist wannabe navelgazer as a child?

Posted by Mark at 09:39 PM

VNC, part II

In fiddling further with VNC over our VPN, I changed the depth setting in my vncserver script to 8, restarted the server. Then I ran vncviewer from home with piètre quality and 8 colors (I thought):

$ vncviewer -depth 8 -quality 0 server:1
VNC server supports protocol version 3.3 (viewer 3.3)
Password:
VNC authentication succeeded
Desktop name "login's X desktop (server:1)"
Connected to VNC server, using protocol version 3.3
VNC server default format:
  8 bits per pixel.
  True colour: max red 7 green 7 blue 3, shift red 0 green 3 blue 6
Using default colormap which is TrueColor.  Pixel format:
  32 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
Using shared memory PutImage

What the heck is the TrueColor thing at the end? Am I really using only 8 bits per pixel?

Strangely, Epic came out looking better... but it's still almost too slow to use.

Posted by Mark at 05:33 PM

Converting bricks to a house

Following the big reorg, we're moving to convert all our docs to SolBook. This represents a fairly big move, converting tens of thousands of pages worth of documentation from semi-structured Frame documentation to something conforming to an SGML DTD.

Looking forward to relearning Perl and XSLT again. (Hope I don't have to learn WebWorks transform language.)

Posted by Mark at 05:24 PM

Installing software

I just spent an hour trying to install some beta software using a very heavyweight GUI. The first point at which the installer provided feedback about what happened was at the end of the hour. At that point, the installer told me nothing had worked.

Moralité : If you're going to apply a flamethrower to the user's goodwill capital, do it up front during installation. You'll never have a better chance to make him hate you forever.

Posted by Mark at 04:51 PM

August 10, 2004

John Edward Craig

My paternal grandfather, John Edward Craig, passed away yesterday evening. Dad said Granddad had been unusually tired, napping in mid morning at the end of last week.

Granddad at my age was in the US Army. He, my grandmother and my dad moved often, living in places like the Philippines and also in Germany. He and Grandmother used to tell stories about those days, stories like inside jokes where the context never seemed rich enough for anyone to remember except those who'd been there. We inherited our storytelling abilities from them.

Although Granddad fit the definition of curmudgeon especially as he got older but before Grandmother died, Granddad also seemed like one of the last of the people I knew who had real faith in his way of life, his country, a sort of outlook maybe disappearing from our family with his generation.

Sounds like Granddad died in his sleep, relatively peacefully. As Dad says, if you must go, that's probably the way to do it. The funeral is set for 1 pm on Friday.

Posted by Mark at 10:01 PM | Comments (1)

More borrowed biking

Rob lent me his bike this noon. Made me feel like a teenager again, where you get going fast enough that the potholes in the road seem like a big obstacle to progress and the bike just disappears underneath you. Definitely need to win the lottery.

Posted by Mark at 07:08 PM

August 09, 2004

VNC

Running the SGML editor we use at work, a customized version of Epic from Arbortext, through VNC over the VPN appears to work well for everyone but me.

Maybe I'm just running the VPN server with too many colors, but I certainly haven't figured it out yet.

Posted by Mark at 10:22 PM

Borrowed bike

Luke let me borrow his bicycle this noon for a ride. His seems about twice as light as mine, with really low granny gears and lots in between. And the brakes work!

So I rode up to Corenc and came down the other side into La Tronche. The exhilarating part came after that however on the ride back from Grenoble out to Montbonnot. Down in La Tronche where the tramway splits the road out to the hospital, I could almost keep up with the cars. It felt great.

All I need to do is when the lottery and I'll go get myself a new bike...

Posted by Mark at 10:12 PM

August 08, 2004

LDAP schema repository

After thinking a little longer about what I'm trying to do, implementing everything suggested at The Schema Registry project at http://www.daasi.de/services/SchemaReg/ looks like:

Besides, ignorance is bliss. So at least I'll be happy while reinventing badly historical artifacts other people have done well. Only if I'm too lazy to read all their docs, however.

Their schema registry service confirms my feeling about the second item in my list, namely that they don't include the kind of reference documentation I want to generate from the schema respository.

Posted by Mark at 03:32 PM | Comments (2)

August 06, 2004

Too mechanical

Biking brings you down into the mechanics of things, worse than setting up a new system on a computer. At least on the computer, once you have everything configured, it stays configured. When hardware breaks, you don't get greasy.

After climbing the long hill from down at the roundabout in front of the Montbonnot side of the autoroute up to St. Ismier, I was looking forward to picking up speed. Then part of the cable to my front derailleur pulled out of its clip, so I couldn't get any traction to move the cage over to the high gear. Nor would the cage stay over once I got off the bike and moved the chain manually. People at bus stops were wondering about the guy riding a chainsaw along the national road ;-)

Posted by Mark at 01:53 PM

Spelling mistakes

I must shamefacedly admit my capacity to spell correctly laisse à désirer both in French and in English.

Dana pointed out one mistake in No breaks, breaks for brakes, demonstrating my ineptitude handling even the lowest form of humor.

Humorlessness looks okay (OK?, O.K.?) to me. Inability to spell does not. I earn a living attempting to write non-fiction.

Life eventually wears down hubris, demonstrating total incompetence until you admit it through your tears and both of you look at your shoes. Too bad Larry Wall's right -- "The three chief virtues of a programmer are: Laziness, Impatience and Hubris." We need hubris to get something done.

Posted by Mark at 08:16 AM

August 05, 2004

Run Linux apps on Solaris

At work, we're advertising that "Solaris Operating System runs Linux applications easily." Looks like the idea is to get them where you can run DTrace on them. We claim, "The feature has a nominal (5 percent or less) impact on performance."

Posted by Mark at 08:57 AM

Faster on the way in

Riding back in this morning, I left at just after 7:00 and arrived at the door just before 8:08. Didn't time it with the stopwatch. From atop a bicycle, Bernin becomes a long painful hill, but not nearly the heartbreaker behind La Buissiere up to Barraux. Scorched my breaks on the way down from Montbonnot.

Posted by Mark at 08:53 AM

August 04, 2004

1:12:11:14

That's how long it took me to bike home today. Slight headwind, and Barraux must sit at a higher elevation than the ZIRST in Montbonnot. Wonder how far it is.

A few hours later...
Turns out Barraux is at 360 m. Montbonnot is apparently at 300 m, but the Mairie is at least 50 m higher than the ZIRST. Grenoble's at 212 m, and the ZIRST couldn't be much higher than that.

According to mappy.com, it's about 33 k from work to our house.

Posted by Mark at 04:53 PM

Post code, trash export license

Someone blogging for Sun wrote to an internal alias to ask about posting a Perl script written to HTMLize results of a SQL query. It turns out Sun employees put Sun's US export license at risk if they carelessly post even trivial code that somehow legally threatens whatever it is that puts a company's US export license at risk. As an employee, "Any code you write is subject to US export restrictions and Sun's export license hangs in the balance."

Not only does my employer own the thoughts occurring in my head, but my employer also has to review those thoughts before I share them, lest it lose the right to do international business. If I hadn't worked in software for the last few years, I'd be surprised at how much of a mess we've gotten ourselves into.

Posted by Mark at 09:19 AM

Them's fightin' ideas

About the same time I wrote about the notion of intellectual property, Slashdot ran another article covering Evan Brown's legally enforced forfeiture of his ideas to the kindly lawyers at Alcatel.

Property leads to fighting. Anyone surprised? (Not if you've ever watched young kids play with a toy everyone wants at once.)

Posted by Mark at 08:36 AM

August 03, 2004

Intellectual property

The second line on my pay slip for last month says SUN041335. The number comes from Sun's invention disclosure tool, a web-based internal app for filing patents.

So why would a guy who finds intellectual property an unecessary monopoly file patent applications his employer contractually gets to keep? The answer has something to do with why he works at all: He has not yet found the gumption to follow Henry David Thoreau to Walden.

That my work contract says roughly that all my useful thoughts belong to Sun hardly bothers me. What might constitute an alternative? Should I aim to negotiate the rights to ideas occurring inside my head?

Why should I label them as my thoughts in the first place? How many useful thoughts did I have prior to learning to speak, write, interact with other folks and with my environment? None. Thoughts become useful when shared, when they spark other thoughts and actions in ourselves and in others that lead to useful events and artifacts. If we cannot separate the usefulness from the sharing, why should we designate an owner separate from the sharing?

Without intellectual property, capitalism cannot survive.

Posted by Mark at 09:21 PM

August 02, 2004

Too warm

Another 35 degree (Centigrade) day. It's still about 28-29 upstairs at the house at 10:32 pm.

At Crolles the speed limit on the Autoroute was down to 70 km/h due to another spike in air pollution.

We need someone to pray for a storm around here.

Posted by Mark at 10:32 PM

No breaks

Today marks the second time I've ridden rather than run to give my right shin a break.

The first half generated gobs of lactic acid in my thighs. I rode from work up to the intersection in Corenc where the road continues uphill. At the top my legs shook from exertion.

My heart may have been beating harder on the way down, however. I'm starting to wonder how much it would cost to get a bicycle with functioning brakes. The exhilaration produced by wind in your hair and sense of speed as you glide downhill appears proportional to the control you have over that speed. I even got off to walk a couple of times.

Not sure terror can really replace exercise.

(Thanks to my editor for correcting spelling mistakes.)

Posted by Mark at 01:37 PM | Comments (2)

August 01, 2004

Vacation

store20040804.jpg tim20040804.jpg

diane20040804.jpg emma20040804.jpg

car220040804.jpg float20040804.jpg

They had good weather up north this year, going to the beach, visiting an outdoor museum, watching the floats go by.

Posted by Mark at 10:17 PM