I’ve Switched to Darcs

I’ve converted 24 public projects from Subversion or Arch to Darcs, preserving full history, as I mentioned earlier. It all went very smoothly. I’m even maintaining my Arch utilities in darcs :-)

Some small observations:

  • Committing early and often is good.
  • When a commit is virtually instantaneous, it’s easy to commit early and often. A commit in darcs doesn’t require it to hit the network.
  • Branching is a frequent need and is done far to infrequently. But Darcs makes it even easier than Arch. Very nice.

I’m Switching to Darcs

I’ve been using Arch/tla/baz for quite awhile now; I switched from Subversion awhile back. But they’ve got a bunch of things that annoy me. Offline working is clumsy. Performace is bad, and to make it even approach decent, you have to dedicate a huge amount of space to a revision library cache. Commands, even with baz, are clumsy and require an inordinate amount of typing. It’s still better than CVS and SVN, with its merging and all, but still — it’s been annoying.

Enter darcs. I’ve been keeping an eye on it for awhile, and it looks like it’s become quite stable, useful, and fast recently. I tried it out awhile back, and it wasn’t really “there” yet. I tried it out again this week, and must say that darcs is great. I’m converting all my Arch and Subversion stuff to Darcs.

The thing that really impressed me is this Darcs mirror of the Linux kernel Bitkeeper repository. Darcs is fast over this, far nicer than Arch was (I did a similar project in Arch awhile back), and it uses less than 1GB of disk space for a complete mirror.

Oh, and I wrote a 100-line Haskell program to convert Arch stuff to Darcs: arch2darcs. You can see an example of a converted repository at here. There’s also a program called Tailor (I didn’t write this one) that does a bidirectional sync between Darcs and CVS or Subversion. Sweet.

I’m happily converting the rest of my Arch and SVN stuff to Darcs today. Woohoo.

Randomly-Generated CS Paper Accepted at Conference

Now this is absolutely hilarious. A randomly-generated computer science paper has been accepted to a conference. Not just that, but the grad students behind the program that generated it are raising money so they can attend and deliver a randomly-generated talk.

Read the paper and you’ll probably burst out laughing.

If you don’t know much about computer science, it may look shockingly real.

Adventures in Networking

So I’ve had this notion recently of running Ethernet from our basement utility room to several rooms throughout the house. This would let us use VOIP phones at several locations, among other things. My Grand Plan was to use the existing phone cabling as a rope. Tie one end to the shiny new CAT5e cabling, then go pull on the other one.

But it hit a big snag. Several, actually. Apparantly, the phone cables are stapled to the house’s support structure — INSIDE THE WALLS! I would have a punch multiple holes in the drywall to make this scheme work.

So plans must be re-hatched.

The shortest run is to the office, which is adjacent to the utility room. I’ve just been running Ethernet cables under the door for some time, and I’d like to put in proper jacks. The wall that the jacks should go on has — yes, a phone cord in it, and yes, it’s stapled. But to discover that, I had to enter the crawlspace above the basement ceiling and below the main floor — a space about 1.5 feet high and not much more wide, and infested with all sorts of sharp pointy things (mostly nails), pipes, wires, etc. I only had to crawl about 10 feet but it took quite a while.

So, what to do? My dad suggested using a weighted chain, dropping it down the hole, then fashioning a hook to catch it from the existing electrical box. (Which, BTW, can’t be removed because it ALSO is fastened to the supports in a manner that requires access to the wall interior) I that that could work, and might also try adding a magnet to the mix. But it will require another visit to the crawlspace, and I’m just not quite up for that kind of fun yet.

So I started work on problem : an ethernet run from the basement to the bedroom, which is a second-story location. I figure the total length of this run is still about 20 feet or so, not bad at all. But, not only are stapes involved, but this one is an outside wall. That means no crawlspace access, but also insulation to deal with. The main reason for this cable run is to enable the use of a VOIP phone.

I pondered the situation for a few days, then started checking out Ethernet cabling specs. It turns out that a 10Mb link requires only 4 conductors (2 pair). The not-quite-cat3 “mystery cable” (appears to be unshielded, untwisted) has 6 conductors. Phone associates at 10Mb anyway. Could it work???

YES! With some punch-down ends from cat5ecableguy, I’ve got it working. I still can’t quite believe it, but it works.

Here are some links I found useful:

Women in Computing/Linux

Hanna Wallach wrote recently about the article HOWTO encourage women in Linux. I had read that article some years back, maybe in 2002 when it was first written, but it is interesting to re-visit it. It is a good read, and a thought-provoking piece even if you disagree.

I find myself mostly agreeing. There are some truly appaling examples of sexism there, such as a conference inviting someone to speak on a “wives of hackers” panel instead of give a more technical talk that she was qualified for.

I also wonder how much has changed in the 2-3 years since the document was written. For instance, the “Computing perceived as non-social” section. I know this was the case not long ago, but is it still? With the proliferation of IM software, it seems that it is sometimes becoming the trendy social activity.

In general Linux or Debian lists, there are still people that act disrespectful towards women, just as there are in society at large. I have noticed that when this happens, the other people on the list — especially the men — are far more likely to take action today than they would have been a few years ago. Personally, sexism in either direction offends my sense of treating each human being as a person, and feel it reflects poorly on Debian/Linux/whatever context it’s in. I wonder if women feel that it’s getting better too, or am I just not reading the right lists? (Yes, there have been ugly incidents in Debian, but my point is that the instigators of these incidents were roundly criticized. Granted, this is not where things should be, but it’s an improvement.)

I would like to suggest expanding this howto to be “HOWTO encourage *people* in Linux”. A number of things mentioned there would apply equally well to most men.

I was particularly amused the authors thought that these tips applied specifically to women:

* The article complained about LUGs that have pizza all the time, or meet at 10PM in a warehouse downtown. I’d prefer fruit to pizza too, and would probably avoid the slimy warehouse at 10PM.

* “Try to schedule your meetings at family and school friendly times” — men can have families and kids, too, and we seem to be seeing more of that in the Linux community of late (though they are probably still a minority). Perhaps we also need to explore why there are so few older people in the community and why there are so few “family” types here. CS has been around longer than many people think and there are incredibly talented people in the (very broad) 50-80 range.

Small Town Voting

Yesterday was election day in Kansas, for a lot of local offices, plus a constitutional amendment. Here’s what you can expect if you live in my area:

First, you go to the park shelter house. It’s the only voting place in the area. They don’t bother with “vote here” signs out front because everybody knows where it is already. There was a small “vote here” sign on the front door, one that you could read when you were about 5 feet away.

When you enter, you discover three election workers and, probably, no other voters. Their first question is “city or township?” If you live within the city limits, you get a different ballot than if you live outside due to things like mayor races. I’m a township.

Next, they look up your name on the big printout, and you sign, and receive your ballot. The ballots are printed on paper around here.

Now it’s time to select a voting booth. Not very hard; all four of them are free.

Then comes the tough part: voting. There are two questions on the ballot this time. First, selecting 3 candidates from the 3 that are running for the school board. (I don’t know why that’s on the ballot.) Second, voting yes or no on the constitutional amendment. That’s it. Leave the pencil in the booth, put the ballot in the box, and don’t forget your “I voted” sticker.

Elapsed time: less than 5 minutes.

I think it was getting busy as I was leaving. There was one other voter in the building.

Right to Live and Right to Die

Thus far, I have avoided commenting on the Terry Shiavo case, but I feel that it is time to do so.

First, the media has done an astoundingly poor job of covering this. For a very interesting, and needed, backgrounder, look here. I am amazed at how often the media portrays the case as hinging on the word of the husband. It, in fact, never did; several more of Terry’s relatives had separate conversations with her that agreed with Michael’s interpretation. From the court’s findings of fact:

Also the statements she[Terri] made in the presence of Scott Schiavo at the funeral luncheon for his grandmother that “if I ever go like that just let go. Don’t leave me there. I don’t want to be kept alive on a machine,” and to Joan Schiavo following a television movie in which a man following an accident was in a coma to the effect that she wanted it stated in her will that she would want the tubes and everything taken out if that ever happened to her are likewise reflective of this intent. The court specifically finds that these statements are Terri Schiavo’s oral declarations concerning her intention as to what she would want done under the present circumstances and the testimony regarding such oral declarations is reliable, is creditable and rises to the level of clear and convincing evidence to this court.

So we have a case where three relatives recalled direct statements from Terri expressing her wishes.

We have heard plenty of comment from people saying that the judiciary is violating Terri’s right to life by ordering the feeding tube removed. I don’t think so; the evidence shows that she didn’t want to live with a feeding tube.

If the courts decided the case any other way, it would be violating her right to death. Or, put another way, the right to “life, liberty, and the pursuit of happiness” in the words of the founders of this nation. Terri apparently believed that living hooked up to a machine was no life at all, and if we deprive her of the ability to make these decisions about herself, we have also deprived her of her own personal liberty — made her a prisoner in her own body, subject to the will of others.

I am particularly dismayed that Jesse Jackson and other religious people once again found it necessary to intervene on the wrong side of freedom in this case. Perhaps they don’t agree with this sort of end-of-life decision. But plenty of people make these decisions and they should have the right to do so. The idea of not forcing one’s will upon others seems to be a core Christian one to me, at least. Depriving someone of their liberty is an act this society usually exercises only regarding criminals, not hospice patients.

For Terri’s parents, who tried so hard to override her will — even if they were motivated by their concern for her — this was a deeply selfish act for which they should not be proud.

I have no idea what her husband’s motives are, but even if they were evil, his motives alone don’t account for the other corroborating testimony given by Terri’s other relatives.