Remember Y2K? Here’s an interesting story looking back on it: The Surprising Legacy of Y2K.
Category Archives: Technology
Form Bookmarklets
Found a great collection of little utilities: Form Bookmarklets. These are little things you can drag to your Firefox bookmark toolbar and give you one-click access to various little utilities.
My two favorites can toggle the state of all checkboxes on a page, or convert a POST form into a (bookmarkable) GET one.
Darcs use case
Here is a simple example illustrating the coolness of Darcs over, say, Arch or anything else.
Trying out XFS
I’ve used most of the different filesystems in Linux. My most recent favorite has been JFS, but things like starvation with find have really been annoying me lately. To summarize, here is my experience with filesystems:
- ext2: very slow, moderately unreliable
- ext3: somewhat slow but reliable
- reiserfs: fast, unreliable (cross-linked data after crash issues)
- jfs: usually fast, somewhat unreliable (similar issues after crash, plus weird charset issues)
The one major Linux FS not in that list is XFS. So I decided to give it a whirl, switching my 40GB /home on one machine to XFS. So far, it’s been good.
There are two articles at IBM developerworks about XFS that were useful. There’s also a useful filesystems comparison from Novell.
A darcs that can pull from git
Sweet.
Juliusz Chroboczek has announced a working prototype of a darcs that can pull from git. This follows a long discussion on darcs-devel about how darcs could interoperate with git.
Benefits from a real world switch from CVS to darcs
I found this article while surfing today. Looks like a good read:
Benefits from a real world switch from CVS to darcs
One thing the author didn’t mention, since everything is presumably on a LAN in their environment, is the substantial performance benefits in darcs from not having to hit the net for so many activities.
darcs-buildpackage
Finally, I’ve released darcs-buildpackage, a system for using Darcs to track the history of Debian packages. Now I can convert the last of my Arch repositories to Darcs.
I wrote darcs-buildpackage in Haskell. It took about half the number of lines of code that tla-buildpackage required in Python.
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.