The life and times of Zack Weinberg.
Tuesday, 10 January 2006
# 8:30 PM
As many of you may already have guessed, this blog is basically dead. I've been keeping a secondary blog over on Livejournal, as zwol for some time now; please go there for further updates on my personal life.
For those of you more interested in my current research or my mostly-former career as a free software hacker, I plan to create a research blog hosted at hci.ucsd.edu Real Soon Now.
Monday, 5 September 2005
# 3:50 PM
As previously mentioned, I am taking up a new life as a graduate student in the cognitive science department of the University of California, San Diego. They want me there by the 15th September, so much of my time for the past few weeks has been tied up with packing. Today, the movers came; they have just finished taking away all of my stuff. Tomorrow I get in my car and drive to Bakersfield, where I crash at a motel. Wednesday I have breakfast with my great-uncle Don, then I get back in the car and keep driving, all the way to San Diego. Hopefully, my stuff does not beat me there, nor does it fail to show up for weeks after I get there.
I'll not be reading email for the next several days. Just for the record.
Sunday, 17 July 2005
# 11:55 PM
I have just had an idea. I'm not quite prepared to talk about the idea itself yet. One thing is clear, though: in order to build it, I need a Wiki engine. And all the Wiki engines I currently know about, don't do what I want. To work, the engine has got to do the following things:
So, before I go out and write an entire wiki engine myself, does anyone know of an existing system that does all the above things? Failing that, does anyone know an existing system that satisfies at least (1) and (4)? [I have skimmed WikiEngines; none of the options is obviously what I want, and I'm not feeling up to reading all the project pages in hope of finding the right one.]
Friday, 8 July 2005
# 10:15 AM
end of an era
Last week I ended my tenure as an active GCC developer. Yesterday I completed my last outstanding obligation to CodeSourcery. It has been something like eight years since I first subscribed to the EGCS project mailing lists. I now have two months' vacation and then I begin graduate studies in UC San Diego's cognitive science department.
I'm not sure how I feel about this. I used to get about a thousand emails a day — GCC wasn't the only free software project I kept tabs on — now it's down to a handful, from friends and relations. I don't plan on going back anytime soon, if only because I've tried to do grad school once before and I know I don't need the distraction. Still, GCC's been an important part of my life for nearly a decade and I'm sorry to leave.
Mind, I haven't been doing much in GCC development for a good year now. This is because CodeSourcery was paying me to do other stuff, which soaked up all of the time I was willing to spend programming. Sadly, this means I leave GCC with an awful lot of my personal projects unfinished. (The little imp in the back of my head that says 'you could do them now, you're not being paid to program anymore, it would be fun again' can just shut up ... see above about distraction.)
Tuesday, 7 June 2005
# 10:20 PM
See all the little circles etched onto the surface? They weren't there before the CD was burned. Somehow the laser did that. Does anyone know how that could have happened? They're not on the data layer, they're on the surface of the polycarbonate, and there's an odd sort of a pattern to them.
Monday, 30 May 2005
# 3:50 PM
Don't miss the photos of our friends Adam, Amanda, Dave, Fiona, Nicole, and Robynne, performing at the Masquerade Ball as the Uncanny X-Cabaret.
Friday, 11 March 2005
# 11:55 PM
a couple of links
I used to live in New York City, and I regret that I wasn't able to go see Christo's "The Gates" installation while it was there, last month. But! I can live vicariously through people on the Internet! Ben "Mako" Hill and Mika Matsuzaki went and photographed people photographing the installation. Delightfully metareferential; more importantly, captures what it was like to be there rather better than any other photoset I've seen.
In other news, Patrick Nielsen Hayden recently pointed out a 2001 essay entitled Science Fiction without the Science, which is about how modern science fiction is no longer nearly so goshwow enthusiastic about the future as it used to be. Ken Macleod has a good counterpoint, discussing how it's probably a good thing that the shine has worn off the notion that Science! Will! Cure! All! Man's! Ills! And then there's the Vingean singularity lurking in the closet; whether or not you buy the notion that superhuman AI is around the corner, I don't think it's a stretch to say that people aren't predicting the future so much these days because it's become deuced difficult to tell what the future's going to be like.
Saturday, 19 February 2005
# 5:15 PM
reflections after shredding three months' junk mail
# 12:25 AM
So ends the extended project of the past several weeks, to listen to my entire music collection in ascending order of track length. The longest is of course Jethro Tull's forty-five-minute, one-song concept album Thick as a Brick. The next longest three tracks are all orchestral - a Tchaikovsky piece and two by Aaron Copland. After that we have a whole bunch of jazz, some other orchestral numbers, a mysterious probably-live 18-minute version of Where The Streets Have No Name (which normally clocks in at 5:38), and some of Pink Floyd's longer conceptual stuff (notably Shine On You Crazy Diamond). The longest piece of straight-up studio rock is Genesis' Domino, which is really two songs mashed together.
On the other end, eighteen of the shortest twenty tracks in my collection are individual segments of They Might Be Giants' Fingertips collage piece. All of these are shorter than 30 seconds. (The longest segment of Fingertips is just over a minute.) After that, we get lots of the interstitial spoken-word bits from Blind Guardian's Nightfall in Middle Earth (a concept heavy-metal album based directly on the Silmarillion. No, I am not making this up), a bunch of other humorous bits by TMBG, Moxy Fruvous, and similar personages, and a couple of electronica tracks by the Art of Noise. The shortest piece of straight-up studio rock (which is a nasty judgement call) appears to be the title track off Declaration by the Alarm.
The really interesting thing about this project has been the way it reveals the natural working lengths of various musicians. They Might Be Giants appear to be most comfortable at three minutes or shorter, as do other "humor rock" acts like Moxy Fruvous and Tom Lehrer. Interestingly, the Ramones and a handful of Queensrÿche tracks also show up down here, and some Beatles. The three-to-five minute range is the most diverse, with bands as far apart as Suzanne Vega, Rammstein, the Art of Noise, the Alarm, Paul Simon, and Garmarna all rubbing elbows. Up above five minutes, things thin out a bit (it should be mentioned that by track count, more than three-quarters of my music is shorter than five minutes). The bands that like to do complicated instrumental stuff - Brother, Alice in Chains, Counting Crows, Cats Laughing, U2 - are heavily represented up beyond five minutes, and there's lots of electronica (Art of Noise, Juno Reactor, etc) and jazz in the seven to nine minute slot.
Oh, and the band with the widest variance? Jethro Tull. The shortest track of theirs that I have is 1m09.
Saturday, 5 February 2005
# 12:40 AM
drums in the dark
Today V and I went to see Kodo perform at Zellerbach Auditorium (on the Berkeley campus). Kodo are best known as taiko drummers, but they also do other sorts of traditional Japanese music, and have picked up little things from all over the world.
What really blew me away was not so much the music itself as the showmanship. For three guys to play an elaborate rhythm on three huge drums is "merely" a matter of technique, but to do it while jumping around the stage, swapping off drums, etc. — that made that particular bit as far as I was concerned. Other really impressive acts included the one with five drummers on ten drums, passing the rhythm back and forth between them; and the interlude for vocal and flute that they did in the middle of the second act.
Interestingly, the larger the drum is, the less painful it is to one's one's ears. Well, to my ears anyway. The largest drum they have is about six feet in diameter, at least that long, and weighs over a thousand pounds. They wheel it on stage on this platform thing surrounded by paper lanterns. It has a drumhead on each end, and they play both ends simultaneously. When they're not playing very fast, you can hear each drumbeat echo off the other end of the drum a few milliseconds after it's played.
In case anyone is still wondering, I should mention that the day after the previous post I took the twenty-seven-point-two-millimeter seat post back to the bike shop, with the bike in tow, and they were happy to exchange it for one that fits. My bike is fully operational again.
Wednesday, 26 January 2005
# 10:20 PM
On Sunday I went to Lafayette to see my mother and my grandmother, and I did this by bicycling to 24th and Mission and then taking BART the rest of the way, leaving my bicycle locked up at 24th and Mission. We had lunch and I showed them my hiking photos and tourist photos and party photos and we had a lovely time. But when I got back to 24th and Mission I discovered that some kind of a gonif had come by and removed the seat from my bicycle.
Well, there being not much to do about this but go and get a new one, on Tuesday I took my car to the mechanic, which has needed doing for some time, and then I walked back home stopping at one of the bike shops on Valencia Avenue. The salesman said, son, what do you need? and I said, I need this here seat and a tube to go with it, because some kind of a gonif walked off with my old one. The salesman said, do you have your bike with you? and I said, no, but I can tell you it is a two-year-old Marin Larkspur. He said, wait here, and he went in the back with the catalogues and the repair manuals and the spare parts, and he came out with a seat tube. He said, son, what you need is a twenty-seven-point-oh millimeter tube and here it is. And I thanked him kindly and I paid for the seat and the tube and I took them home.
Today I got out my bicycle and my Allen wrenches and the new seat and tube and I tried to put them all together but the tube would not fit in the hole. I called Michael over and the two of us applied brute force but the tube still would not fit. So we looked the tube over very carefully and what did we see but an engraving saying clearly this is a twenty-seven-point-two millimeter tube.
And I suppose there is not much to do about this but take it back to the store on Valencia Avenue and tell that salesman, chummer, you said this was a twenty-seven-point-oh millimeter tube but it isn't. Tomorrow.
Tuesday, 18 January 2005
# 6:30 PM
Panix has now gotten its domain name back. Mail to zackw (at) panix.com should work again. They ask that people stop using panix.net.
Sunday, 16 January 2005
# 11:55 AM
I'm not sure how much good this will do since it's affected too, but... Panix has had its domain name hijacked. Mail sent to zackw (at) panix.com will not reach me. Please use one of the following other addresses:
zackw (at) panix.net zack (at) icsi.berkeley.edu zack (at) codesourcery.com
Saturday, 27 November 2004
# 11:10 PM
I would like to know precisely what is the difference between normal Ghostscript and ESP Ghostscript.
To be somewhat more specific, I would like to know exactly what it is about normal Ghostscript that causes cupsd to emit the following error message:
E [27/Nov/2004:23:13:11 -0800] Unable to convert file 0 to printable format for job 1! I [27/Nov/2004:23:13:11 -0800] Hint: Do you have ESP Ghostscript installed? I [27/Nov/2004:23:13:11 -0800] Hint: Try setting the LogLevel to "debug".
I tried setting the LogLevel to "debug" and got no additional information. I also tried running the daemon under strace, which revealed that it makes no attempt to do anything with the print job before issuing the aforementioned error. I can only conclude that when the daemon started it somehow probed Ghostscript, determined that it was the wrong kind, and decided not to even bother trying to use it.
This is doubly silly because, as the daemon bloody well should be aware, my printer is perfectly capable of interpreting Postscript itself, so when I try to print a file which is already in that format, it should be able to do the moral equivalent of "cat > /dev/usb/lp0" and be done with it. I know very well that that works, because that's how I have to print stuff right now. Grrraaaaaah.
Sunday, 31 October 2004
# 1:20 PM
Yesterday evening I plugged my camera into my computer, preparing to go through the elaborate rigmarole that has always been required in order to get the photos off the camera.
A dialog box appeared on screen. "Hey, that's a camera," it said. "Would you like to download photos?" I pushed "yes" and got another dialog box asking for where to put them, and then it slurped all the photos off, erased the camera's memory card, and brought up a fairly spiffy thumbnail-gallery window. No fuss, no having to muck around in /proc/bus/usb as root. I'm impressed. I would be a lot more impressed if there were somewhere I could put in that it should not bother me with dialog boxes, it should just automatically download all the photos to a designated location and then give me the thumbnail window. It does not appear that this is possible.
Alas, still haven't found a Web-gallery program that I'm happy with, so I can't actually show you these photos, but allow me to assure y'all that the jack-o-lanterns this year are mighty with artistic creepiness.
Wednesday, 27 October 2004
# 8:20 PM
As I write this, there is a total eclipse of the Moon outdoors. I was watching it, but it's cold out, and nothing much happens over the duration of totality; I'll go back out around 8:45 and watch it emerge.
The last time I tried to watch a lunar eclipse was in fall 1996. I was in New York, and it was overcast. We could see the moon through the clouds before the eclipse started, then it dwindled and became invisible at totality. Today, the skies are clear, and I can see the red disk of the Moon reflecting the light that bends through Earth's atmosphere. It was a little brighter on the ascending limb when I started watching, just a smidge before maximum eclipse. Of course I had to convince myself that that's the right place for it to be brighter; it doesn't seem like the trailing edge of the Moon (as it orbits) should be on top, as seen from here on Earth. Except of course it is. There are two things going on there. One is that the Moon's apparent motion across the sky is primarily due to the rotation of the Earth; the "proper" motion (as the astronomers call it) is west to east, which is why the Moon rises a little later each evening. The other factor is of course that, if you're standing looking at the Moon which has just risen in the east, its north pole is not on top, but on the left side.
Contemplating such things invariably puts me in mind of the little blurb in the corner of one of the pages of my mother's copy of The Next Whole Earth Catalog (which I read at an impressionable age); which was about ways of thinking to remind yourself that you were not living on a flat Earth. Unfortunately, that's about all I remember.
Tuesday, 10 August 2004
# 1:20 PM
another math problem
Really an algorithmics problem, I suppose. Some definitions: for any set s with ns elements, which are totally ordered:
Given a base set S with n totally ordered elements, find an algorithm which emits a list of medians, of the following sets in order:
and so on until all elements of the original set S have been emitted. In other words, the set is organized into a binary tree, each of whose subtrees corresponds to a subset of the original set, and is headed by the median element of that set; and then the tree is walked in breadth-first order.
The preferred solution is a nonrecursive algorithm with O(1) space requirement.
Monday, 9 August 2004
# 11 PM
did you know ...
that recent GTK+ allows arbitrary rebinding of keyboard shortcuts? I sure didn't. It's yet another undocumented configuration toggle, and it doesn't work in xchat, which sucks because xchat is the program I use all the time which has a menu keybinding that I really, really wish I could get rid of (Ctrl/I "detach tab"). More details here.
As far as I can tell, the things you can put in
Sunday, 8 August 2004
# 11:50 AM
Last night V and I went to see the new Circus Contraption new show, Circus Contraption's Grand American Traveling Dime Museum. This is a lively mix of aerobatic feats, old-style burlesque, klezmer music, sketch comedy, and (at the very end) a musical number that completely blew me away with the ingenuity required to think of the gimmick, the musical skill required to pull it off, and the elegant beauty of the result. (Not saying what they did.) Also, there were penny-farthing bicycles! I'd never seen one of these in the flesh before, much less with someone riding it.
The show is at CELLspace, San Francisco, through the end of August. Y'all should go see it. (Obligatory content warning: contains much ribald humor, a small quantity of nudity, and a gunshot.)
In the math problem below, the correct formula for values of k is 2i+1s + p, not, er, whatever silly thing it was that I don't remember now that I've gone and changed it.
Monday, 2 August 2004
# 11:35 AM
math problem, solved
Let's restate the problem; the form I showed last time doesn't bear an obvious relation to the problem I actually wanted to solve. Given constants P and S (both of which are powers of two) we want to find all positive integers K (also a power of two) and N (not necessarily a power of two) which satisfy the equation
Let's make explicit which constants are powers of two.
Factoring out N,
Written this way, it is obvious that 2p must divide N evenly (since it cannot divide 2s + 1, and the right-hand side must be an integer). Let N = 2p ⋅ r. Then
All powers of two are even, so all values of r must cancel the 1 on the right-hand side. The simplest expression for r that does so is r = 2s - 1.
The second and subsequent terms on the right-hand side cancel, leaving us with
corresponding to N = 2p(2s - 1) = P (S - 1). This is the basis of a family of solutions of the form
where i = 0, 1, 2, 3, … Demonstrating that these solutions all work is a straightforward exercise in algebra. Obviously the i = 0 case (N = P (S - 1)) is the smallest. I have not been able to prove that this is the smallest possible solution, or that there are no solutions outside the above family. However, for the two cases I am specifically interested in - P = 4, S = 16; P = 8, S = 32 - I've enumerated values of the right-hand side of the original equation, for all values of N up to the predicted smallest solution, and found that it is indeed the smallest.