I have an urgent need for the Dilbert cartoon where Alice assaults a cow orker for having a prolonged loud conversation right outside myher cubicle. Either that, or I need help hiding the body. I think the cartoon ends with the person’s head being pounded down to his belt buckle and him yelling “melp”.
Category: Rant
Man I hate USB 1
Our software is installed/upgraded from CD. As part of the build process, we create .iso files and automatically burn that ISO to a CD in the build machine’s burner. When I want to upgrade the test complex on my desk, I can never find the master CD, so I usually burn a copy myself. But I don’t have any blanks at my desk, so I thought I’d try just copying to a USB “thumb drive”, and then mounting the .iso on the test machine using “mount … -o loop”.
So I started copying it to the thumb drive on my Linux box (which only has USB 1), and went away and did something else for 10 or 15 minutes. And I came back and it was still copying. So I did something else for 10 or 15 minutes. And it’s *still* copying. At this point, I suddenly realized my laptop has a USB 2 port free. So I copied the file over the network to my laptop, copied it from there to a different USB thumb drive, and took that over to the test complex and upgraded it. And having done all that, the Linux box is *still* copying the original .iso to the first thumb drive.
Update I just tried it again with “time cp” with a different thumb drive, and it only took 12 minutes and 30 seconds. I’m positive it was taking longer than that before, so I’m redoing the test with the thumb drive that was taking so long before. Maybe it’s the thumb drive that’s slow, or maybe it’s because it’s formatted ext3 instead of FAT32. I’ll report back when that one finishes. If it ever does.
Second Update: After arriving back to work, I find that the copy to the ext3 formatted thumb drive took 2:19:05. Yes, that’s nearly 2.5 HOURS! Dude, that’s fucked up.
On the other hand, maybe I *can* have too much screen real estate
Well, after working with the two screen setup for a couple of days, I’ve started to get a terribly sore neck. A bit of self-evaluation shows that when I’m looking at the laptop screen, I’m craning forward and down, which is ruining all the good effort that my chiropractor and the stretching exercises he gave me over the last three weeks have done.
So I’m now running with the laptop screen closed, using the KVM to use the big screen for both laptop and desktop use.
Unfortunately when I came in this morning, my desktop was totally unresponsive. I couldn’t get it to wake up when I switched to it on the KVM, and I couldn’t ssh to it from my laptop. So I power cycled it. That required manually fsck’ing the disk, and then when it did come up for real, the mouse went nuts and started opening programs and moving stuff around on my screen like it was being driven by a demented ghost. It had also booted the wrong kernel (one that didn’t support MVFS). So I booted it with the proper kernel and it was ok. Except that as always, vmplayer complains that I haven’t run /usr/bin/vmware-config.pl, so I ran it again. Don’t know why that never “sticks”.
WTF?
I’m busy re-writing vast swaths of my low-level code in order to support a new database schema. One of the classes that I wrote that got used all over the place is called “Playlist”, and its various subclasses. Playlist has an abstract clone() method. I almost never write clone() methods, so somebody must have asked for it. And I think I know who now.
As part of this re-write, I using Eclipse’s “Find References” function a lot to see if some method needs to be re-written or can just be deleted. While doing that, I found an interesting bit of code in an obscure part of the system that I’ve never looked at before:
private Playlist doClonePlaylist(Playlist playlist) {
Playlist clonePlaylist = null;
// need a special clone
// as the playlist cone function
// doesn't copy the playlist
// external id which we really need
if (playlist != null) {
clonePlaylist = (Playlist)playlist.clone();
clonePlaylist.setExternalID(playlist.getExternalID());
}
return clonePlaylist;
}
If the guy who’d written this bit of cruft still worked here, I’d want to ask him why the fuck he didn’t just tell me that I’d left one parameter out of my clone() method, or even better, fix it himself? Ideally, I’d want to ask him while dangling him over the edge of a multistory building, but that isn’t going to happen.
Hmm, still not working out well
I’m trying to find the optimal solution for doing my after-hours work at home, so that I don’t forget what my wife looks like.
Continue reading “Hmm, still not working out well”