February 04, 2005
Buzzer Beater For basketball fans out there, the footage of Jordan Snipes hitting a
87 foot basket is a must see. A local news station then asked him give it another try with 16 basketballs, and he managed to get it again on the 11th shot (
footage).
Local news coverage. (via
HotLinks)
February 02, 2005
XMPP Intro podcasts Joe Hildebrand of
Jabber Inc, and Marshall Rose talk about XMPP in a series of podcasts. Here is the
first XMPP talk and
second XMPP talk podcasts. This is a good overview for people unfamiliar with XMPP, and who'd like to know more.
Gush 1.3 Gush 1.3. It's finally out. Yes, it's taken way too long, but that's what happens when you get distracted with side projects, moving servers, and finding wonderful, new TV shows like
24. The latest version of Gush has lots of changes under the hood, but most importantly it includes 's group chat functionality.
The performance improvements mentioned earlier are now complete. Gush will probably still not run well on a Pentium II, but on more "modern" machines it should be fine.
Now I just have to knuckle down and get the Linux version up to date as well.
css-discuss wiki css-discuss wiki. Another very good weapon in the battle to understand and use CSS. (via
Ned Batchelder: css-discuss wiki)
Apache2 w/ SSL/TLS SecurityFocus has a good introductory article about SSL/TLS and some of the first steps to configuring Apache 2 with SSL/TLS.
Apache 2 with SSL/TLS: Step-by-Step, Part 1
January 20, 2005
Python Propaganda Here's printable
Python Propaganda PDF (
from someone who has too much free time) for my favorite programming language,
Python. If you don't like Python, then you're unpatriotic and evil.
January 10, 2005
Mississippi leading the US in moral values So it seems that
Mississippi has banned Jon Stewart's book. It's a good thing that they did ban the book, because a book like Jon Stewart's could easily undo the delicate social and moral fabric of the great state of Mississippi. If they had not banned the book, the people of Mississippi may start reading, divorce their sisters, and stop listening to country music. The horror.
You almost have to feel bad for Mississippi. All you hear from there is news about books being banned, civil rights mishaps, a new swamp swimming record, and of course their colorful religious nut cases. Why can't they be more like California? Why can't they produce anything that the rest of the U.S. actually gives a damn about.
January 05, 2005
Strange bug A very nasty bug had been plaguing me for the last week. Initially, I ignored it because it only happen on Wes' machine. However, today my machine caught the same bug (it's the flu season), and so I finally had to get to the bottom of it. Initially my machine would only cough violently every 1 out of 15 executions. I finally put in some print debug statements, and the bugger started happening every single time. After that it was just matter of stomping around for a little while until this little bugger was squashed.
The problem was that I was relying on Python's
id function to generate unique ids, but I was accidentally throwing away the original object after I had made a deep copy of it. I technically didn't need the original object because I had the deep copy, but the ids weren't guaranteed to be unique anymore.
The reason why that can't be guaranteed to be unique is that Python uses the objects memory address for it's id. So, when the bug cropped up, what had happened was that the another object I was tracking had the same id as a previous object. The bug only showed up once in a while because the garbage collector had to reclaim and reuse that space for the bug to show up.
What's interesting is that inserting the print statements allowed the bug to reoccur every single time. I can only assume that by putting in the print statements, the garbage collector had enough time to reclaim the recently freed memory, and then give me another object that I was tracking at the exact same memory address.
I've got to make a unit test for this
bad boy. I won't be repeating this mistake.
New Year's Resolution I don't usually do new year's resolutions, but this year I've decided to blog less. I know, the bar is already pretty low. Two things can come of this, either I blog less and fulfill my new year's resolution, or I blog more breaking my resolution but possibly entertaining some hapless souls. It's really a win-win situation.
December 16, 2004
Off The Record Encryption Those guys at Slashdot are still good for
something.
Off-The-Record Messaging is an encryption protocol with some very nice properties for instant messaging. As per their website: 1) Encryption (thank goodness) 2) Authentication 3) Deniability, and 4) Perfect Forward Secrecy.
I'll have to read this in depth to understand what's going on here, but this is exactly what I want to add to Gush. I knew holding off implementing PGP for Gush would pay off. I hope this isn't too good to be true.
December 14, 2004
SMS for Coffee Ryan Freebern has a
great idea for improving service at Starbucks. Forget waiting in line, just order via SMS, pay via SMS, and get an SMS message when your coffee is ready. He's offering to sell the idea to Starbucks for a low price $10,000. Ryan, I think you left out a zero.
I've got an addition to the idea. How about sending your picture with your order (assuming you have a camera phone) so that the Starbucks flunkies can deliver your coffee to you where you're sitting. I guess the same thing could be done using GPS, but we're trying to be realistic.
December 13, 2004
Expediting packages Remember the good-old days when Outpost used to ship stuff overnight for free if the purchase was for more than $50? Those days are gone, and now I actually have to pay for shipping.
I'm cheap so I usually get ground shipping for stuff I order online. Sometimes I'll splurge on the shipping if I'm really impatient. Invariably after I order something to be shipped ground, I started checking the status of the package, and then wish that I had shipped it second day air.
I think FedEx and UPS ought to have an option on the package tracking so that you can pay more money to have it delivered sooner. Imagine the extra cash they could make around the holidays.
December 12, 2004
Request for new PubSub attribute My latest query is for anything to do with
FreeBSD. I'm getting lots of interesting results, but the problem is that a lot of posts mentioning FreeBSD are not in English. Even the posts that are in English aren't always easy to follow.
It would be nice to be able to specify the language in the query. For example:
FreeBSD AND LANG:en
I'm sure this is easier said than done. It's at this point that I wish that every RSS/Atom document specified the xml:lang attribute.
December 11, 2004
Update Blogging has become pretty sporadic around here. From time to time there's something that I come across in the newsreader that may be worth posting about but then I realize that someone else has already posted about it (that's why I'm reading about it in my newsreader). Also, the whole
photoblogging thing seems to be more interesting as well to me. I can take a picture, it can be absolutely
crappy, but it's still wholly
original.
However, there's hope for Going Nowhere. The plan is start blogging more about Gush development. I think it's good to let people see some of our thought process, and hopefully with some reader comments along the way, we could make adjustments to "features" before they become bugs in the next release.
So what's so great about the new release? First, tons of performance improvements in the UI. Wes found a hidden feature in Flash that makes the program
10x faster! Actually, that's not true. He's just re-written anything that's list-based like the roster, the news panel, and the newsreader. The new list code is at least an order of magnitude better than the old code. People will finally be able to load as many feeds into the news panel without having a Cray as their desktop machine. We did all of this because
we want Danny back!
The other thing that's finally done is Gush's (Text Conferencing) implementation. It's really a thing of beauty, if I do say so myself. It pretty much supports all the features as outlined in the MUC specification. Well, we haven't gotten the stuff working where a one-to-one conversation gets turned into a conference room. Then again, I'm not sure if any of the server implementations support it either. I've tested our MUC implementation against most of the servers that I can get my hands on, and I was surprised by the number of implementations that don't support list operations for editing owners, admins, etc.
Those are some of the exciting updates. At this point all I have to do is put up a screenshot, and then the next version officially becomes
vaporware.
Some things outlined in our
roadmap are not going to make it into the next release. We're kicking ourselves about it, but that's the reality of developing software. There's some other software realities that I want to rant and rave about, but not in this post and not today. Like my dad says, "Don't spill all your candy is the lobby."
November 26, 2004
FotoBuzz viewlet We've released a web utility called
FotoBuzz which allows you to annotate JPEGs using Flash on the client side and PHP/Python on the server-side. It's dirt easy to integrate into existing webpages. After including some CSS and JavaScript in the HTML head, all you have to do is add a single attribute to the image tag and it will do the rest for you.
The most obvious use for FotoBuzz is to label all the people in a family picture. However, there are much more practical uses for FotoBuzz. Here's a picture from
Anandtech's recent article about the upcoming
NVidia 6600 GT AGP card which has been marked up using FotoBuzz.

(People in RSS/Atom land: you'll have to visit
this webpage to see the viewlet in action)
One of the first things we decided to do with FotoBuzz is use it to annotate one of the screenshots for Gush.
Take a look for yourself.