enjoying salad since 1978.

Monday, March 31, 2003

Congrats to Bram on the redhat 9 iso distribution. It seems to be going really well, just like he keeps saying it would. Here are some fun graphs showing BitTorrent network traffic. Speaking of Bram, I was reading his advogato blog when I ran across the following: "An architecture is a set of libraries which are so poorly encapsulated that if you want to use one of them you have to use all of them." I really have nothing to add or detract, I just thought it was a good quote that would probably get too little airtime.

I discovered today that Chandler is going to be demo'd at ETCON. I'm finally starting to get excited by Chandler. Now, if only I could mirror their wiki so I could read the documentation on the train.

Sunday, March 30, 2003

As a young'un, I thought the bigger computer must be the faster computer. It seems I never got over that because my new thinkpad is a freaking monster. But it's worth every pound; a really bright display with a 1600x1200 resolution was my main reason for picking it up and it's turned out to be quite excellent. Nevermind that I had to buy another bag just so I could lug it around.

Linux as a desktop has grown up a lot in the year since I left. Anti-aliased fonts and a font-server that understands them are now part of the standard redhat 8 distribution which means that Mozilla finally looks nice under X. 'Neat' makes swiching between wireless networks a breeze and Redhat Network Update is as convenient as Apple's Software Update. I've updated my kernel and system libraries via it without a hitch. If you were to turn the console boot messages into a twirling fruity logo, I'd hardly remember I was using linux.

Bluecurve was nice but WindowMaker is still my preference.

Goldman would be interested in this dockapp:

[Wow, life must've been so boring before WindowMaker]
wmSpaceWeather provides a monitor on a 64x64 mini window that displays the two relativistic electron and 3 relativistic proton flux levels at geosynchronous orbit, currently from the NOAA GOES spacecraft, current Solar Flare X-ray flux, and the last 8 3-hour Kp index values.
Heck, I'm interested in it too. I'm running it right now.

Wednesday, March 19, 2003

Oh yeah, we had a great party the other day.

Tuesday, March 18, 2003

The days have just been flying past me lately. Work's great, I've moved into my new office with a window view of a tree bunch. Very pleasant. My body adjusted pretty quickly to the 2 hour morning commute on the Muni/Caltrain double-team. Last week I mowed through a book and this week I'm mowing through a review of number systems. I felt stupid the other week when I couldn't remember how to convert between number systems; it was something I did every single day when I was 15 and now I'm nearly 25 and am so far away from the hardware that when somebody mentions endian-ness, I think Tandoori.

Comedy Central must've picked up Gerhard Reinke's Wanderlust but it's really buried deep in their schedule. I saw it for the first time last week and it floored me. Scheduled for saturday at 11:30: Eager German tourist Gerhard Reinke tries to tackle the Andes, but is taken hostage by the local Marxist guerillas.. I'd give you a link but Comedy Central's website is awful and sends me to a page that's basically a fancy 404. ugh. Some of you are too cool to watch tv on saturday night but I'm not. see you then!

Thursday, March 13, 2003

Kevin made a nice looking NewsMonster badge but it's a GIF! I used ImageMagick to turn it into a PNG, making it 1/4th of the size. I still maintain that NewsMonster is the first aggregator that you should care about.

Chris Pirillo has some great captions for his photos from last night's party.

Wednesday, March 12, 2003

Nice article on increasing productivity. I've been trying to follow that general principle for a while now and it's darn tough.

While I'm here, dnm pointed out a small paper on making REBOL tail recursive.

At the end you'll notice Marshall says that the main problem with implementing tail recursion in REBOL was that he was the only person in the whole company who completely understood the process and could extend the interpreter since it involved studying the denotational semantics of REBOL and making evaluation to be explicitly CPS so you can eta-reduce all the continutations and remove any identity combinators.

I figured more people at a company that makes and sells a programming language would be familiar with the arcanity of programming language implementation.

Saturday, March 08, 2003

I've been really having a good laugh at Dave Winer's expense. I'd been watching him shamelessly suck up to Google for the past 4 months only to predict exactly what would happen once the Pyra acquisition was announced. I concluded that he'd act like a baby, kick his feet, scream a little, say he's been personally injured, and then immediately start sucking up to our "competitors" (I use the term loosely since we're all pretty friendly) while posting inane articles lambasting Google. The guy's more transparent than a bottle of Evian.

Of the recent Google backlash blog entries that I've seen; almost all of them seem to fall into a few categories full of logical fallcies:
I do like the entries that ask for clarification and plan to keep the pressure on. That makes sense to me.

Stacy weighs in on why she doesn't like the recent SF protests:
They talk about organizing as if that were an end into itself. Let's talk and communicate and get together with only people that agree with us! Let's fight this international conflict with an intranational conflict! Let's "mobilize" and use the same militant rhetoric and posturing we're opposing!

Tuesday, March 04, 2003

My multi-hour commute has given me lots of time to read on Caltrain and Muni. This undisturbed study time has allowed me to rediscover the wonders of Standard ML. Man, what a great little language. Now I just need to get a laptop that I can use to run sml-nj. I'm thinking a member of the Vaio SRX family or some other tiny machine.

More than most, what impresses me about ML is that it isn't a Pie in the Sky language but rather a Down and Dirty language designed to be heavily used. Using Patterns in your function definitions as a shortcut feels much natural than I thought it would at first. In fact, it was the first thing I remarked about the language. Last year I noted to my good friend dnm that function definition in ML looked a lot like a theorem proof. Dan informed that it's because ML was first designed to prove theorems.

Although, I'm still a little confused as to how to tell the difference between a tuple and a simple parenthesed type. Let me explain: In ML, as in a lot (most?) of functional languages, the type of a tuple changes with it's number of elements. (This might be pretty tough to grasp if you've only had experience with procedural and/or object-oriented languages) Here I'm going to take a tuple and request the first element from it (that's what #1 does when applied to a tuple):

#1(1,2,3);
val it = 1 : int

#1(1,2);
val it = 1 : int
Simple so far. Now to get that first element.

#1(1);
stdIn:29.1-29.6 Error: operator and operand don't agree [literal]
  operator domain: {1:'Y; 'Z}
  operand:         int
  in expression:
    (fn {1=1,...} => 1) 1

D'oh! So how am I supposed to get the first element of this faux tuple? I actually agonized over this for about 2 whole minutes on the train last week.(I'm waking up really early now, cut me some slack. Not to mention the fact that I don't have an ML interpreter with me on the train, I only have a faulty simulation of a ML interpreter; my brain). Aha! Just evaluate it!

 (1);
val it = 1 : int

ta da. Next time: Strong Type Systems have met their match; type inference in ML is as smooth as a sex-ay lad-ay.

Monday, March 03, 2003

I think this is a good tagline for the new sugar-caffeine-nicotine-crack infused dairy drink 'Raging Cow: STUFF IT IN YOUR FACE HOLE!!!!!'

I'm like totally famous!