Older blog entries for stevej (starting at number 22)

I (again) realized that just because I'm your peer doesn't mean that you are my peer. Therefore my commentary on circular paths of message distribution is bunk. I wish I had somebody to argue this stuff out with. I end up arguing myself from one corner to another.

Let me clarify; You are in my list of people to forward messages to. If I also happen to be on your list of people to forward messages to, then that's great. But it's merely coincidence if I am.

I'm starting to think that a static list of 5 peers is enough to scale me to a medium-sized network. I spent several hours tonight theorizing about self-growing lists based on various criteria, including fields in the wire protocol that tell you how many peers the person who forwarded you a message has. Unfortunately, everyone I could come up with would eventually force the user into a position of being peers with at least half the network on an elongated time-scale. That's no good.

Please mail me if this doesn't make sense.

17 Sep 2001 (updated 17 Sep 2001 at 23:14 UTC) »

I woke up to a nice present this morning. A new version of E!

Expect much whisper progress between now and when I find a new job.

15 Sep 2001 (updated 15 Sep 2001 at 08:12 UTC) »

Sometimes it takes drawing a picture to make certain things painfully obvious. For instance, I thought that having a peer of networks who only talked to two other peers was a good idea until I realized, after drawing a picture in Dia, that when sending a message to your two other peers, you would only have a network of depth 1... duh! You end up with a circle. Not good. Not at all. Here's the picture.

I've been watching a lot of TeeVee lately. Ms. Stacy noticed that Jeri Ryan on Star Trek Voyager has big jugs. I pulled my amazing skills of knowing stupid TV trivia tricks out of my bag. My pal Rosco noted when I lived back in Oregon that I could always place somebody in a TV show as having been on another show somewhere else at sometime. He used to laugh at me but I could consistently pull it off. Tonight I noticed Scott Thompson from Kids in the Hall and the guy who played Elaine's boss in Seinfeld. No alien foreheads could fool me!

And now we know why I don't watch TV anymore... I'd rather sic my obsessive-compulsive disorder on programming langauges and punk bands.

Even me, in my great media blackout, know every little detail about Tuesday terrorist attacks.

My uncle was in a meeting at the Pentagon on Tuesday, luckily he's fine.

In other news, I wrote a Python script to work as an introducer for Whisper

I'll post it tomorrow.

Enterprise JavaBeans are the muddiest, half-assed architecutre I've experienced in a long time. If I was one of the Sun engineers who built this crap, I'd be ashamed.

Going to finish my brainbench certification in it next week.

shoot me.

It dawned on me that the E promise architecture is basically multicast asynchronous callbacks masquerading as immediate return calls. It's the second kind of obvious, where it's obvious after you figure it out or somebody tells you.

I'll have to ask the list about their opinion on that.

They say that there are no dumb questions.

only stupid questioners.

Boy, ignatz has some teen angst left in him. Off to Fight Club for him. ;-)

In non-geek news, I saw Apocolypse Now Redux the other night. huzzah! Fuck the critics, I thought it was great. Yes, it was 3 1/2 hours. No, it didn't feel long or bloated.

Played with Process Algebra, made some breakthrough progress on my parser, playing with some MOM b2b tasty treats.

Oh, and I moved my desktop (again) to linux. Running redhate 7.0 with the nVidia binary drivers, (and locked up my machine good a few times overclocking my video card with nvclock). kernel 2.4.9 is on here. The documentation lies, my full gig of RAM is not seen without the BIGMEM patch.


more tomorrow (today) after sleep (coma).

You know what's weird? I installed Scheme on my desktop before I even installed a JDK and E. No, it means nothing.

Spent the weekend with my girl. Forgot my Go book with her today. :-( Just when I learning the intracacies of Kageme and Two Me.

28 Aug 2001 (updated 28 Aug 2001 at 07:24 UTC) »

Today I:

  • enjoyed my george foreman grill. I made some soy patties.
  • actually worked hard on my parser but didn't write more than a dozen lines of code.
  • watched a cheesy movie which could have been really good
  • thought about revamping my resume.
  • oh, my 13w3->svga converter showed up. goddamned irix won't let me in. At least linux has a nice single-user mode. I guess I'll have to either acquire IRIX media somewhere or just say fuck it and pass the indy off to somebody else. I can definitely see it being a major time-suck for me.
Oh yes. the Indy's hardware specs:
150Mhz R5000, 8bit graphics, 64M RAM, 500M HD.
27 Aug 2001 (updated 27 Aug 2001 at 09:24 UTC) »

I recently aquired an indy r5000. I have no idea of it's specs, as I'm still waiting for my 13w3->svga converter so I can fire up the bastard. FYI, Libnet compiles on irix 6.2

Also, I've been working on my Java version of a parser for Casper. It's recognizing variable declarations now! I'll put the code online soon. I'm building a non- deterministic recursive decent parser using Steve Metsker's framework for building such beasts.

This is the greatest thing since sliced bread.

Spent yesterday and today fighting with setting up Alexandria, which is the software SourceForge wrote to run their site.

Also working on my rd parser for OpenCSP.

20 Aug 2001 (updated 20 Aug 2001 at 03:58 UTC) »

I'm glad to see that news coverage is as bad in other countries as it is in ours.

In other news, I started adding all sorts of #define's in libnet-headers.h so that I could easily have access to all the packet flags (SYN, RST, PSH, URG, ACK) when calling libnet_build_tcp() but then I realized that it's just easier to add the existing constants together. Let me explain for people like me:

(in libnet-headers.h):

#ifndef TH_FIN
#define TH_FIN    0x01
#ifndef TH_SYN
#define TH_SYN    0x02
#ifndef TH_RST
#define TH_RST    0x04
#ifndef TH_PUSH
#define TH_PUSH   0x08
#ifndef TH_ACK
#define TH_ACK    0x10
#ifndef TH_URG
#define TH_URG    0x20

What was immediately obvious to me is that when you add any two or three values together, you'll have a new distinct value. What's funny is that instead of just realizing I should add them together while calling lib_build_tcp(), I thought it'd be easier (and more useful to others) if I added a shitload of new constants. like TH_SYN_FIN_RST_PUSH_URG, etc.

13 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!