Older blog entries for tony (starting at number 29)

CVS-friendly Document Format
Suppose, just suppose, there was a document-storage API that was friendly with a CVS-like versioning system. Imagine this API would do merges, diffs, and versioning, and that conflicts were reported such that they could be resolved in whatever WYSIWYG-type app you happened to be using.

I mention this because the current spate of word processing apps do not handle merging of different versions very well. In many apps, you can't merge at all. This kinda sucks. Document writers deserve the same kind of concurrent versioning as software engineers, yes? The it occurred to me: all documents deserve that kind of multi-author flexibility.

This means applications must be written to take advantage of a multiuser document store. But if there were a common document storage API, it would make life very, very easy, don't you think?

Anyway, just more rambling. I'm tired, and burned out. Can't you tell?

New Job
Looks like I'm leaving SEARHC, and going to work for a place in Cleveland. Top secret stuff, you know.

File System improvements
I think I'd like to see a filesystem with callbacks. That is, there should be a config file (similar to crontab, perhaps?) that lists a file or directory, and when that file or directory is accessed, unlinked, written to, or created, (configured for each event), a program is run with the name of the file or directory. So, I might have a configuration line like this:


Perhaps you could even do pre-write and post-write filters.

Granted, if the filesystem were database-driven, this would all be automagic. But that presents performance and security issues. I know, there are security issues here, as well, but it could Play Nice with the filesystem.

Anyway, just some rambling.

Y'know, cable modems kick ass.

Yeah, they are just bigger, faster modems. Nothing fundamentally new. Broadband is, essentially, just another method of connecting to the internet.

But it's like going from a Ford Pinto to a Ferrari. Definitely an improvement.

I know. Chances are, *you* already have DSL, or cable. But this is Sitka, Alaska. Pop. 8500. Isolated-- there are no roads off the island. There are no other communities connected at all; it's just Sitka. Worse, it's on the outside of the Alexander Archepelago, which means we are isolated, even for Southeast Alaska.

So the fact that we have both DSL and cable is remarkable. It means the internet is truly coming of age, even if everyone who can use a freakin' web browser is a computer expert.

Fun Things
Just got back from Cleveland. I spent two weeks working with my brother at the company for which he works. Note I did this last year, as well. I don't feel as if I really earned my pay, this year. But it was a blast, planning big software projects, staying up late playing Marvel Super Hero vs. Street Fighter, drinking beer, and hanging out with Jeff and Dan and Zubin and Len. Very fun.

New Article
Looks like Sys Admin has published an article of mine. Pretty boring stuff, I'm afraid.

Privacy and Open Source
This whole "Smart Tags" thing has got me riled up. Even here on Advogato, seems there are quite a few MS apologists who think it's a good idea.

Maybe I am brimming with hypocricy. But doesn't it seem strange: some think it right to give up the one true power of the Internet-- the power of a single voice whispering to whomever wishes to listen-- to a corporation? Any corporation would be bad, but they wish to give up this power to the corporation that has shown time and again they are willing to ignore privacy issues and the rights of individuals simply for profit.

Okay, not simply for profit-- for the power over communication. For the right to substitute individual communication for Microsoft's communication.

The power of the Internet is the ability of one person to communicate to the world. Now Microsoft gets to step in and control that communication.

Yes, I'm stating this as a worse-than-reality scenario. But perhaps I value even the smallest of my rights; and I see this as yet another Microsoft gambit to control communication.

Free software programmers have, in my experience, valued privacy and freedom. With smart tags, Microsoft has effectively stated they control our communication (and thus, one major aspect of our privacy) by default. I will not allow Microsoft to control the definitions and values associated with the ideas I express to the world.

Now, all you apologists out there: Go ahead and give Microsoft control of the definitions of the words you use. But do it explicitly; don't let Microsoft claim birthright to our thoughts, which is essentially what they are doing, like a maggot whispering in your ear during every conversation you have, twisting the words in ways that suit only the maggot.

Force them to create a new tag to turn this "feature" on, not off. We can do it; we are powerful in our whispering, if we whisper together.

We live in an amazing universe, don't we?

Building Gnome Redux
Okay, I'm better now. After a good weekend of working on my motorcycle, and a little bit of riding (not much, as I spent the sunshine replacing the starter relay-- it started raining once the bike was fixed, of course), I feel refreshed, and ready to take on the world. Or, at least, the maze of gnome dependencies.

It's really not that bad, after all. popt had problems on Solaris, but I found a precompiled version on sunfreeware.com, sidestepping that issue. I found the ORBit-martin-forked repository, just like it tells me in the oaf README file. So the operator headspace was mine, in this instance. I reckon that means I should take it easier when a user has some headspace issues.

I just don't want to contribute to Gnome's undeserved bad rep.

18 May 2001 (updated 18 May 2001 at 23:56 UTC) »
Building gnome
Okay, this is getting frustrating. Before I go off on this rant, I'd like to admit that, yes, I shouldn't try to compile Gnome out of CVS, and yes, I should simply download the source packages and compile from there.

Why compile? Well, there are no packages for Solaris yet. Ximian promises packages soon; but I can't wait.

Why can't I wait? Because, after 8 years of Unix desktop at SEARHC, my boss is about to cave to user pressure. The users want PCs to run MS-Office. The users want PCs because they are prettier.

Some of you are going to say, "Let the users get what they need to do their jobs." Sure, fine. But they don't need PCs!!!!! Some people do, yes. But they already have PCs. Out of 450 desktops, only about 30 are PCs. And because of this, our IS department has an operating budget of less than 3% of the total of the consortium's budget. Most users do quite well with X terminals and (now) SunRays.

So, I figured I'd install Gnome and KDE, and show everyone a nice, pretty, easy-to-use desktop, with Nautilus and Evolution. Get them excited, you know?

But Gnome is so Goddamned hard to compile, from CVS. There are so many conflicting dependencies; some core modules require ORBit, and some require ORBit2. Fine, but ORBit2 doesn't even compile. So I can't compile bonobo, which requires oaf, which requires ORBit2.

Yeah. I know. I should just go back to source tarballs. I will. But Gnome desperately needs some sort of build manager, something that can keep all the packages in sync with the latest possible source from CVS. I like to test Gnome, to play with new features, to see what it does. A need to fill-- something I should write code for, yes? In my copious free time perhaps?

*sigh* Back to tarballs with me. I'm not looking forward to it; but what the hell. As long as I can get Evolution and Nautilus to compile. They don't even have to compile on the same box. I have more than enough computing power-- part of that 3% went to buying a couple of additional E450s, and a bunch of Sun Fire 280Rs. I have horsepower out the wazoo. (Whatever the hell that means.)

Rant mode off. I've just had a bad day; spent hours working on Crisis Problems, and *all* of them turned out to be operator headspace-- and not mine.

Oh, well. Such is life.

Bike Stuff
I think this weekend I will work on my bike, and not touch the computer at all. I have a BMW R90/6. The starter relay went out, and I found a great link pointing to using alternate relays (as opposed to the Bosch stock relay). So I will try that. Should be fun, don'tcha think? I'm really excited about getting my bike back on the road.

Then I can ride the full 14 miles of road available to me. So far, that's the only drawback to living on an island. Not much space for road trips.

I accidentally posted a reply to the Micrsoft's new tactics article. Sorry about that. I hit the submit button, realized I'd stupidly misspelled "proselytizing," and tried to stop the connection before it submitted. (This usually works, since our connection is so slow.)

Again, sorry. Didn't mean to post twice, though I took that chance when I did it, understanding the possible repurcussions

I worked around the WindowMaker menu/docking problems. I wrote some menu management scripts that create stub scripts to launch applications from the appropriate server. Now we can install the same menu on any of our machines, adjust a file specifying the location of the stubs and the servers from which the apps are run, and then run an install script. It's much easier than it sounds, and it works well.

This is a problem with X11, and not with WindowMaker, per se. X11 apps report the binary invocation, and not the shell script used to launch the binary. Since we use a lot of shell script wrappers to set up environment variables, log events, etc, this makes it difficult to inform the window manager how to properly re-launch the application.

My solution is definitely sub-optimal, but works well.

13 Jan 2001 (updated 13 Jan 2001 at 04:02 UTC) »
WindowMaker has one distinct flaw in its icon-docking behavior. If you create a menu pick that rsh's to another server to run a program, and you then dock the icon on the wharf, the docked icon will try to launch the program as if it were local. So, if the WMRootMenu item is like this:

SHEXEC "rsh denali /usr/local/bin/netscape -display

and then you dock the netscape icon, the docked icon will try to launch netscape with this command:

/usr/local/bin/netscape -display sunray:2

for instance.

This is an undesireable behavior, in a lot of cases.

Anyway, I have a work-around that works fairly well, but it's non-optimal.

Long Live Casbah
I hopped on over to #casbah at the casbah.org irc server, but noone was home. Sigh. I first saw this project almost 2 years ago, and thought it worthy. I finally have a use for it, and an excuse to dedicate some time, and I find it is dead. Another worthy project, dead and unremarked.

The road to software freedom is strewn with the husks of dead and desicated projects. Some are nothing (such as my own Gnome Filer project), killed by worthier projects (have I mentioned entity yet?); others died too young.

Such is Casbah.

Casbah promised to be a great and cohesive Java-based object-oriented buzzword-compliant object-service behemoth. It coulda been a contenda. It shoulda been a contenda.

Now it is dead.

Again, *sigh*.

I haven't contributed anything to Entity yet. I have started an HTML renderer similar to the GTK+ renderer; the idea being the same entity code that creates Gtk+ widgets on the screen can create an HTTP stream of HTML/JS widgets; that is, a web server that serves up Entity applications, and the applications can be designed and built using Stembuilder.

I haven't gotten very far.

It has nothing to do with Entity, which is well-designed (IMHO). I just don't have time for outside activities these days, it seems. Work takes a lot of time, as does the house (though I must say I am now proficient at drywalling).

Sounds like a cop-out, doesn't it? It's not, really. I can devote some time from work to coding, once I've knocked out a few of my current projects.

One of my current projects is the deployment of Sunrays across the consortium. We currently use NCD X terminals on most of the desktops (with a few PCs for the diehards), and Sun hardware in the back room. This has worked very well for us, but since NCD has stopped development on their X terminals, we've not had a good idea for their replacement. We tried Netwinders (which were OK, but expensive), iPAQs (ditto), and Sunrays. Of the bunch, the Sunrays look the most promising. Although they have their own drawbacks (they are true thin-clients, and every client has an X server running on a Sun box), they have a lot of potential, as well.

What I like: the Sunrays have a card slot. Each user is given a card. If you log in with the card in the slot, your session is tied to the card; you can remove your card from one Sunray, walk across the room (or across the hospital) and insert your card, and viola! your session appears at the new Sunray. And securing your session is as easy as removing the card and placing it in your pocket-- true physical security.

And, it allows us to use the Sunrays and X terminals in the same environment.

Also, I convinced my boss to use Windowmaker as the standard desktop. Cool.

What I dislike: I hate that it is tied to Sun hardware. I like Sun machines for the most part, but I dislike proprietary protocols.

20 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!