Match, T1, but no programming in sight

2002 October 10
by darkness

Not much work done on programming today. Tasks with clients busied me for a while. Then I had to mirror http://www.ratemykitten.com/. Oddly, www.ratemykitten.com has many pictures of shit secreted away. There’s some bunnies and boobies in there too. I’m not going to post my (tiny little Perl) script for downloading all the pictures from ratemykitten.com, since I’m not real sure they like me doing this, let alone more than one person doing it at a time.

I was installing Win2k and Office 2k on a laptop last night and it took forever. I was highly disappointed, especially by the speed of downloading and installing Office service releases. Gaim/Win32 doesn’t work too well yet, either; automatic sign-on and copy/paste don’t work so hot, for starters. Trillian is way too… froofy looking, too.

Read about refactoring some this morning. I’ve got a Producer class which handles the I/O for an incoming audio stream. It uses a circular buffer to hold the data for programs. This circular buffer is just a ByteBuffer. On one hand I really think I should apply ExtractClass since (a) the function of a circular ByteBuffer isn’t a responsibility of Producer, but instead a component of Producer; and (b) the code could be reused, especially by another Producer implementation for example (which I may or may not have). On the other hand, the code isn’t too big and unruly, there is only one class that uses it, and it’s already in Producer, so why take it out? Remember YAGNI? Or SimplestThing? Plus I wouldn’t necessarily want to subclass ByteBuffer; the operations like put (ByteBuffer) would suddenly become weird, as would the positions and their invariants — weird or useless. (Why aren’t buffers in java.nio broken up into interfaces? Maybe they thought no one would ever need to extend/implement them?) Instead, I’d have to make a class that uses a ByteBuffer and can copy data to a ByteBuffer. The more I talk about this, the more I think I should try to go ahead and extract the methods into their own class.

Also, I’m having trouble with naming. Right now I’m passing around an int that holds a number of bytes read, or seen, for example. I might call this bytesRead (which is fine) or in a method parameter lastByteSeen (which I’m unhappy with, I think; code smell?). Of course, the fact that I can’t really feel comfortable with names I come up for this might indicate that I’m doing it wrong. I could make some sort of object that attaches to a producer and is made just to feed data to a consumer, but I’m not sure that would be the “simplest thing.”

Oh, also: we had a TFC match tonight and won a decisive victory. Go team (you know who you are).

I wonder if Google will ever index this site? I’ve got a few things here that some would probably consider useful. I saw Googlebot or some such visited it, presumably having found it on weblogs.com, but I didn’t see anything last time I looked for it. I understand woefully little about how search engines on the Internet actually operate today, as far as their schedules, policies, and to some extent the way they “rank” results and such.

We should be getting our Internap T1 installed at work soon. Right now Internap guy is saying the latency between them and the Smart Jack is too high, so I had to run into work and hook an Ascend T1 router we had lying around to the line. Hopefully I set the damn thing up right; I think the Ascend configuration interface is absolutely miserable, especially compared to Cisco. When I had never used a scrap of Cisco equipment I was able to sit down and pound on it a bit and figure out basic configuration just by guessing the right commands and using their on-line help. With Ascend it’s still a fucking mystery what all the different addresses mean on differnet interfaces, what groups go where, etc. We’ll see tomorrow.

I anticipate getting woken up by Internap guy now. Grr.

No Comments

Leave A Comment

Note: You can use basic XHTML in your comments. Your email address will never be published.

Subscribe to this comment feed via RSS