Older blog entries for auspex (starting at number 56)

Unix crack

Before I went to bed last night, I decided I should leave myself a note to try something later. I don't use a sticky note program or anything like that, and I figured I would miss a file containing the note. I decided to touch a note:

touch "Try blahblah for the blahblahblah"

That way, when I run ls, as I'm sure to do, I see my message.

But 'M' comes before 'T', so I was dissatisfied with the result. I renamed the file with a numeric prefix.

Then, I thought, "Why restrict myself to one line?" Indeed, I could insert newline characters in the filename, so I did so. But ls just showed question marks instead of newlines. A check of the man page revealed the --show-control-chars option. It worked, except for scatterring all the other filenames about. A wildcard fixed that easily enough.

So now I have these two (surely not portable) shell scripts, note and notes. The first takes a string argument and touches it with a little modification. The second lists, "showing" control characters, files matching those made by the first. Neither checks input or anything like that; I was about to fall asleep.


touch ".^HNote from `date +"%-I:%M%P %A %e %B %Y"`
(That's '^H' the backspace character, not "^H" the string caret and 'H'.)


ls --show-control-chars .?Note*
(The '?' is a wildcard to catch the backspace.)

The backspace character rubs out the '.' which is there to keep normal ls clean. I sacrificed my initial purpose.

With a little modifcation, like using ui -in $USER, notes could include author information or whatever else. Of course, filename length is limited.

Well, for whatever reason, I only slept about two hours. I think I'll go back to bed now.


We need at least two new computers, so I went to CompUSA to see what sort of things they're selling. I have a feeling they're not selling much; either they were remodelling, as one small oddly placed sign said, or they decided they didn't need marketing. The store was a mess beyond just the bad floorplan.

One of the fuzzypiles of boxes was littered with signs about customized computers. The most obvious customization available was the shiney Jolly Roger power supply fan grill.

When we need 128-bit machines to store Unix time, there will be a museum featuring a display case of PDAs next to an SUV with a sign, "Life before the extraterrestrial overlords. Be happy, citizen."

I wandered over to the dismal laptop section. The laptop business must depend on ignorance, stupidity, and desperation. It should be obvious that a laptop will not be used in a clean room, yet every laptop had a multipart keyboard. The design requirements must have included "short lifespan." Standalone keyboards would also be better with fewer parts, but they're at least sturdier and easier to replace. To get a decent keyboard on a laptop, you have to buy a "ruggedized" laptop; I guess that somehow ties into the SUV philosophy.

The standalone keyboards were hilarious. Some of them had a warning like, "Some experts think prolonged use of any keyboard may cause injury." They didn't even need any markup to get across the sarcastic tone. These warnings were etched into the plastic, not stickers. They also stated that more information could be found on the bottom of the keyboard. I tried to look, but the keyboards were bolted onto the shelves. (So much for checking heft.) Of course, most of them featured Windows keys, arrays of buttons, and Windows shortcut engravings.

My depression is a medical condition?


Craftsman hand tools have always had an unlimited warranty. To this day, past the 1950's demise of durable goods, you can take a broken Craftsman hand tool to any Sears store and get a replacement at no cost. (Sometimes the clerk doesn't know this, so you have to ask for the manager.)


Just now trying the free standing GNOME Blog. I got lost. Instead of the blog entry window, it opened to the preferences page. At first I thought the entry window was somehow buried underneath something else. For the third time, I had to set it to Advogato and enter my username and password. The applet version never survive being removed from the panel; this seems to be a systemic applet bug. The password field is asterisked out, but the key value is stored unencrypted.

There are a few HIG violations and other UI errors.

  • The "Add Link" button opens a dialog which is correctly modal, but it doesn't have a trailing ellipsis.
  • The ellipsis on the "Preferences..." button indicate that a modal dialog will be opened and indeed the window which appears is modal, but it's missing the OK and Cancel buttons. Instead it has the Close button of preference windows which are not supposed to be modal.
  • The "Preferences..." button and the title field label (which didn't work for Advogato last I checked) lack access keys.
  • There are two buttons with the stock Bold and Italic icons, but no labels (hence, no access keys) and no tooltips; and, last I checked, they actually added the tags STRONG and EM, respectively.
  • Resizing the window shows that widgets are incorrectly packed. Though only the text area should grow taller, the whitespace above and below the title entry and the "Post Entry" button increases and the other buttons grow taller. The inconsistent heights of the bottom buttons indicate that more is wrong with packing than improper expand and fill properties. The secondary windows also exhibit packing problems.
  • The Bold and Italic buttons don't set or show state properly. An inconsistent selection should show the buttons in an inconsistent state. Absent a selection, the state of the buttons should indicate what will happen on typing; e.g., pressing bold with nothing selected should cause subsequent typing to be in bold. In other words, they should act like the same buttons in a word processor.
  • Added links can't be inspected. A tooltip should suffice for indicating where a link links, but doesn't allow editing. Removing the "Add Link" button (and dialog), and replacing it with an inspecting "Link" toggle button (like the Bold and Italic buttons) and entry would allow both inspecting and modeless linking.
  • The window title "Post Blog Entry" looks like the title you'd expect on a dialog after pressing the "Post Entry" button. A better title would be ("%s Blog Entry for %s", blogname, bloguser), or something along that line.
  • Not all blogs support titles, but the title entry is always there. Rather than conditionally showing the entry, it could be removed in favor of a "Title" button like the Bold and Italic buttons. What's sent to the blog would be whatever is appropriate as entry title.

As with most applications, GNOME Blog doesn't need preferences. It just needs a blog and some other data to post an entry. That this state is stored where various preferences are stored is an implementation detail. I can see two ways to eliminating the bogon:

  • Change "Post Entry" to "Post Entry..." and show a dialog asking for the necessary data. After the data is given once (the first time dialog appears), it should be remembered for the next time. This adds an extra step for each subsequent post, but also allows a check against accidently clicking the button. It's a poor solution, but if the button is usually close to the panel applet button, the check may be worthwhile.
  • Place the "Blog type" option menu in the main window with a disclosure button (perhaps "Details") next to it. Disclosed would be username and password fields, and whatever else is needed. This could replace the title field at the top of the window, or the "toolbar" could be at the top (maybe as a real toolbar) and the blog details at the bottom.

(I told Seth online that I'd just blog my complaints instead of adding to the email and bug reports he's already receiving. ;-) )


This is nifty. It works in Mozilla and friends, but not in the version of IE I have. It won't work in text-only browsers, of course. The page may go away soon; see RFC 2397.

Another Test

The bold 'A' button uses the STRONG tag, and the italic 'A' button uses the EM tag. They behave oddly - only working when something is selected. The "Add Link" button, on the other hand, doesn't work on the selection at all. And I keep pressing enter at the end of a visual line because I'm used to soft returns from other markup contexts.

Does the person tag work? I am auspex.

What about explicit anchors? Advogato

The title entry didn't do anything. Maybe it should be removed when the blog is advogato.

I've noticed the button states for STRONG, EM, and the panel applet button get confused. The tag buttons will stay down when focus is changed via keyboard. The panel applet button was pushing in on mouseover for a while.

Maybe the popup window should skip the window list? It seems odd to have a borderless window with two buttons on the panel.

Must remember to check the source of the posted entry.

This is bold.

This is italic.

This is a link.

This has been a test of GnomeBlog.

Have a nice day.


tk: according to http://keirsey.com/personality/nt.html, Rand would be an INTJ. (And you've a typo s/F/T/.)

tk, faassen: According to that same site, when depressed (like now) I'm either a "mastermind" (Eisenhower, Rand) or a "fieldmarshal" (Gates (!), Thatcher). And when not, add: "crafter", "promotor", "inspector", and "supervisor".

Oh, yeah, and I'm also an Aries and a Dragon. ;-)


I think personas [sic] are a gimmick. They're a way to get programmers to think about the things that, in my experience, in programming classes they're taught to think about and detest thinking about. They're a shortcut around rigorous design. I never met anyone who liked drafting a flowchart. I hope they'll be an effective gimmick for GNOME.

Part of the trouble I'm having with a design document is the persnicketiness of some people. You can ask, "Does the application allow the user to create something?" and get the response, "Yes. My application allows the user to create a device state." Try to narrow it down: "Does the application allow the user to create a document?" "Yes. The document which is the permanent storage of the device state." If you actually manage to get a precise question: "This document is too long. I'm not reading it."

Another thing bugging me is that people make a living off of this, or at least get a degree. I doubt I'll be doing either.

9 Jul 2003 (updated 10 Jul 2003 at 19:46 UTC) »


mibus mentions an article about introverts. In false one-upmanship, I declare that my group is more rare than introverts. Almost every time I've gone through a personality sorter (hmm, sounds painful), I've found myself split between introversion and extroversion. On rare occassion, I've been a point to one side or the other.

It gets worse. I'm not only split between introversion and extroversion, I'm also split between the pairs sensing/intuiting and judging/perceiving. Only in the pair thinking/feeling do I fall clearly to one side: thinking. However, depression is a wicked thing. I am not certain of this, but when depressed I seem to fall to intuiting and judging - slightly.

So, my normal type: XXTX; my depressed type: XNTJ.

(The one-upmanship is false because I'm really just bewildered. Most people I know fall heavy to one type.)


Minimal progress. I wrote my to-do list thinking that doing so would prevent a depressed lull. It didn't work.

[Edited to correct a spelling error.]

My GUP to-do list

  • 1st decent draft of notification area guidelines (I have one in a HIG bug, but I need to go over it, comments made on it, and Mark's proposal that seems to have slipped from view.)
  • 2nd draft of Notification Area Preferences proposal
  • 2nd draft of window list proposal
  • 3rd draft of Find and Replace dialogs proposal
  • Draft power management control panel proposal (The one on Windows really sucks. It's something to avoid.)
  • Draft language/input/keyboard control panel proposal
  • Check the HIG bugs and maybe do something about them.
  • Maybe knock off a few UI reviews. Maybe my hair is short enough now so that I can't pull it all out. (Mumble something about not being able to grab a scrap from a garbage can and say, "No. Like this.")
  • Finally take the time to write the big frickin' huge document describing a complete user model for the GNOME which I could present in person on a napkin. (Curse the lack of "Oh, I get it!"-cues. Bemoan the state of the non-(but should be)-obvious)
  • Think of more things to put on this list to make the point that even though I suffer from recurrent major depression and, at the moment, post traumatic stress disorder, I am doing something other than complaining and cursing the broken 'B' key on my laptop.

Other software to-do's

  • Think of a better name than "WordSense" for my WordNet interface. (It's better than the first name: gwordnet)
  • Write libgwn so I don't have to depend on libwn
  • Just pick one of the possible APIs to the X-selection-based remote control, and finish the damn thing.
  • Figure out how to auto-tool-ize it so people don't whine about my handwritten Makefile
  • Release the damn thing this time
  • Curse more in code comments so I don't do it on to-do lists

Did I tell you so?

I've noted many times that an X client that tries to reparent the window of another X client without the assistance of the other client or the window manager is inherently flawed. X doesn't work that way.

This is why the KDE system tray protocol often failed outside of KDE. It depended on the window manager, but just how was not known to many. (With WM support, it worked fine. It's another question whether it should depend on the window manager.) GNOME's status dock (the old one) was an acknowledged hack that failed more frequently as window managers improved but without support for KDE's protocol.

The "swallowing" feature of the GNOME panel exhibited the same error. Perhaps because this was finally realized, the feature was removed. It has been resurrected as an applet, but it is still doomed.

Now, prompting this entry, Mozplugger has failed as I expected. Although it certainly tries harder than the old GNOME status dock or any "swallowing" for which I've read the code, it too is ultimately doomed. Moments ago, a GhostView window created from a process launched by Mozplugger appeared in the bottom right corner of my screen and stayed there.

I wonder who will get the first bug report. It belongs to Mozplugger, but I won't be filing it. There's no point to filing a bug against a program for the basic concept of the program, is there? I imagine there will be reports to every program possibly involved: browsers; the browser engine; the to-be-reparented programs; window managers; the GNOME panel; the GNOME window list; libwnck (these last three because a button for the window appears in the window list in the panel); and, of course, the culprit, Mozplugger. Despite this entry, fingers will be pointed and tongues will be forked.

Providence, I should say nothing more.

47 older entries...

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!