Older blog entries for AustinBlues (starting at number 9)

Put CPIA Milestone 6 pre-release up on my Web site. If Ricoh's happy, it is going to be a project on Source Forge. Then we can add some more developers.

doc++ is nice, but trying to force it to generate C++/Java style docs for O-O C is a bit of a hack and not a clever one. I may have to hack doc++ to get what I want.

Yesterday I pushed a review of "Apache Desktop Reference" out the door via e-mail. Received a acknowledgement back and note not to worry about getting a cover image. Both nice.

Today I pushed a bit of documentation out. It required pushing myself. I promised I'd finish this. I just want to be finished with that project. I figure I have a couple of days before I will get enough responses back that I have to do the rest of it. There should be a day or two to work on some of the fun pieces.

I hooked up the new 17" LCD flat panel display. I shifted from 1024x768 to 1280x1024 resolution. Now I have to get all the fonts resized in all the apps to something I can read all day long without going blind.

The flat panel display sat on the floor overnight. SuSE 7.1 has been sitting on the floor for almost a week, waiting for some time to install it, and fiddle with it, and rebuild or download the things it breaks, and time to play with the new features, and built a firewall with IPtables, and try out XFree86 4.0, and try the 2.4 kernel, and then put it all back together so I can get some paying work done. Wish I had money, space, time, and air conditioning for a work machine and a play machine to try some cutting edge stuff, and another play machine for games.

To quote the sage Pogo: "We are faced with insurmountable opportunities."

14 Feb 2001 (updated 14 Feb 2001 at 03:19 UTC) »

I have been thinking about Extreme Programming and Bazaar style development. It seems to me that both are development models for extraverts - people who get energy from being with other people. Extraverts like to think out loud, i.e., the bazaar. Introverts prefer to work it all out privately before presenting publically, i.e., the cathedral. I have done some of the two person, one terminal work for debugging sysadmin problems. We called it "getting the intersection of our blindspots". It is effective, intense, and draining. I think three hours a day is about I could stand without wearing out. I'm not terribly introverted as programmers go, so I wonder how this works for the general programmer population. With the adoption of these two models, I expect to see more extraverts in programming.

My dayjob's office is going distributed and virtual. Somebody dropped the ball and the new office won't be built-out until a month or two after the old lease runs out. Now we have to tease apart years of cruft, and stacks of shared two gig drives. Wasabi has a new 30GB drive and I have one more day to get all the imported filesystems moved onto the new drive. Either we are hammering it too hard and it is dying, overheating, take your pick, or it is bad. I copy and I get I/O errors. I've tried tarring and untarring, similar results. Lots of permissions denied as root (the other Solaris boxes don't necessarily extend root priviledges)! I end up with directories with no contents, not even . and .. and I can't delete them. I've run fsck 3-4 times cleaning up the mess and then creating another one. I have successfully tarred onto the original drive with no problems. I can move it to the new drive and it compares. Now to try expanding the tarball from either the old drive or the new drive on to the new drive with no NFS volumes involved. The new drive is noisy too. Just two screws holding it the skids. I like solid equipment that doesn't rattle. I sleep better at night.

So somebody does read my blathering. Terje Bless <link@tss.no> pointed out the Internet host names are case-insensitive. Not everything is the Internet, but maybe it is time to re-examine this for LANs. I tried my home LAN and on the SuSE 6.1 Linux box - ping and nmap don't care about the case. Same for the RedHat 6.1 Linux and Solaris 7 boxes at work. I'll see if I can con one of the Windows NT users to check it out. Same for the Windows 95 and 98 boxes at home when I can reach the power switches.

Now I wonder what system I was using when I concluded that hostnames are case sensitive. Probably not something in the personal computer world.

Maybe time for an old dog to learn some new tricks.

All our computers at work and at home are spelled all lowercase, the usual practice. However, proper nouns in English are initial caps. Who's right? They are definitely proper nouns. It also causes some awkwardness, especially as the first word in a sentence. If the poor user enters the name with initial cap, "host not found". Either the grammar/language usage needs to change or naming practice changes. Is this speciesism (sp?) carbon based lifeforms get "real", proper names with initial caps, computers don't. Or is Erwin in User Friendly cutting edge?

Got telephone SPAM yesterday from a tech recruiter. He was looking to help a client with unstated requirements, yada, yada, yada. I gave him nothing: no hope, no leads, no names, etc. Couple of minutes later the other phone in my office rings, a familar voice says "Oh, wrong number." I suspect he was war-dialing all the extensions in the office. If so, man tech recruiting in Austin is getting really agressive.

I'm still amazed at the comapny that bought out the premiere of X-Men and you could get in for no money and a techie resume.

Weird

I'm using my OSS project as the NULL task for my day job. With 20-40 minute run times, it gets a fair amount of time. If I leave a rxvt terminal running SSH to my home machine idle at the shell prompt, it will often drop the connection. However, if I am running emacs -nw in the terminal, it will stay up all day. Wierd.

Wrote some macros to sit at the end of the virtual function tables and complain at compile-time (best) or run-time (okay) if not all entries are initialized. This is the biggest single source of bugs. The first half-dozen classes were clean and I began to wonder if I was closing the barn after all the horses were gone. However, they weren't all gone. Caught a couple of other errors too. Also updated most of the classes to use the new inheritence conventions and mechanisms. It took all day and probably saved 3-5 days of catching them by hand.

Maybe I should have spent more time up front on the inheritence and virtual function table mechanisms. Don't think I could have anticipated all the problems. Even hindsight isn't perfect.

I need to figure out how to get the regression tests into the distribution. Probably imitate some package like libxml that is already doing it. Also need to figure out how to make --with-z and --without-z really work, even if libxml doesn't. Wish there were more docs, examples, and tutorials for the GNU build tools, including the standard/usual M4 macros.

Next time I go looking for a job, I am going to interview the code too. I am getting too old to struggle years to find my way around 200KLOC of undocumented code. It takes too long to start becoming effective. Of course, getting on a new project is another possibility.

It is a nice contrast, I have a day job with no documentation and few comments, and a side project translating Java to C. The Java code has fairly complete JavaDoc comments, good additional comments, and some additional HTML docs. Finding my way around it is straightforward.

The day job code probably will take 2-3 years to really know my way around. Of course, if I split, that knowledge goes with me. This product is just hanging on and needs new features, bug fixes, and visible progress to stay alive. There will probably never be the time & money to really document it. I expect this is a description of a project that has already entered its death spiral.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!