Friday, April 30, 2004

Lysenkoism

Lysenkoism refers to an episode in Russian science where a non-scientific peasant plant-breeder named Trofim Lysenko came to prominence during the Lenin/Stalin years of the Soviet Union. Lysenko and his followers rejected Darwinism. Lysenko's views found favor with Soviet leadership. Scientists who refused to accept Lysenko's ideas were killed or sent to the gulags. The results were predictable: the steady deterioration of Soviet biology for more than three decades. The broad scope and impact of Lysenko's bad science is unusual and incredibly tragic. But this sort of influence is not unique. The promotion of bad or flawed ideas by edict can happen in any society or organization.

Robotic traffic cones swarm onto highways

This article in New Scientist describes how robotic traffic cones could soon be swarming onto highways, closing down lanes and slowing the traffic. This will be more efficient for controlling traffic and less hazardous to people. I hope they're programmed to obey Asimov's Three Laws of Robotics, otherwise we could be in for trouble.

Speaking of Asimov, I saw the trailer for I, Robot last night. From the trailer, and from what I've heard, it doesn't follow the story line of any of Asimov's work, just from concept of the three laws.

borekut

Borekut is an parody online community that connects boring people through a network of boring friends.

Wednesday, April 28, 2004

Microsoft Passport 101

Passport is a single sign-on system developed and hosted by Microsoft. It provides a shared authentication service. Want to know how it works? Dumky has the answers.

Priorities

A software development project can sometimes be a lot like a movie production. There are lots of people working together to create something that's never existed before. On schedule. Within budget constraints. To do this successfully and repeatedly you have to keep your priorities straight.

I just got an email from my manager on this. He included a quote from filmmaker John Sayles's book Thinking in Pictures: The Making of the Movie Matewan.
It's 1:45 in the afternoon and lunch is scheduled for 2:00. You're three shots behind what was planned for the morning. You're in the middle of an exterior shot and it looks like it might start raining in an hour or so. The actress is in the next shot scheduled as well, but she'll need a change of hair and clothes that will take 45 minutes. The one you're in now is very emotional, and it's taking quite a while to get her face back in shape after each take. The crew went into overtime last night, it's late in the week and they're tired and hungry. The only cover set if it does rain is an interior that needs an hour or more prep by the art and props people, but you need them here for the next two shots. Another actor supposed to shoot in the afternoon has a plane to catch at 7:00, taking him to another movie commitment that will keep him away for a full two weeks. The leaves on the trees in the background, acres and acres of them, are supposed to all change color in the next day or so. The first shot tomorrow needs to be at sunrise and if you go into overtime tonight there won't be enough turnaround time to make it. The last take convinced you the shot would be better with a wider lens, but a wider lens will reveal the production trucks and craft services table set up at the other end of town, and the unit manager's walkie talkie is on the blink, and a decision has to be made in the next ten minutes whether to rent a crane for the that dawn shot tomorrow or not.

[...]

The number of variables and pressures that figure into a shooting day are like those word problems in math, only there is no correct answer. Each decision you make brings a whole new set of variables into play. This makes it doubly important to have your priorities set before you start shooting. Which sequences, which shots, are the most important? How far behind schedule can you afford to get? What comes next and how does what you're doing now affect it?
Individually as software developers we probably aren't ever under the same level of pressure as a movie director but I think this passage really nails the importance of keeping your priorities straight. Focus. Where are we now? What needs to be done? Make decisions.

small world

Funny commentary on online communities like Friendster. (Via Sylvain)

Tuesday, April 27, 2004

Holding Pattern Screensaver

This Holding Pattern screensaver is pretty slick. It turns your computer screen into an airplane window, complete with a moving aerial view. Each time the screensaver runs, it plays a unique sequence.

GetMail

GetMail is a mail forwarding program for Windows that can forward mail from a Hotmail/MSN account to any other account that you like.

CD-Argh

Have we put too much faith in recordable CDs? According to this article they may not last as long as we've been told. CD-R disks may become unreadble in as short as two years. The problem is that the light-sensitive dyes in the CD-R's recording layer can fade. DVD-R uses dyes as well and are likely to be suseptible as well. CD-RW use metallic materials that change the phase of the light, rather than dyes so they should have a longer life.

Monday, April 26, 2004

Sharp Smalltalk

#Smalltalk (Sharp Smalltalk) implements Smalltalk to run natively on the .NET framework. There's a compiler, class library and debugger.

Sunday, April 25, 2004

HP 33s scientific calculator

HP has a new scientific calculator, the 33s. It even does RPN. I'm a little surprised that there's still a market for scientific calculators but when all of the computers in your lab have been disabled by the latest variant of the W32/Bugbear@mm or whatever, at least you'll still have your trusty virus-free calculator.

Identity Card Security

This article is an assessment of the security risks of MIT' student cards which are used for identification, building access, charging meals, etc. This article was written a while ago but I would imagine that a lot of the problems still exist. The main problem is that such cards are easy to duplicate and hack. Also, using a single card for diverse requirements makes them even more vulnerable. MIT's student card isn't unique in this regard. It's likely that any card using similar broadly-available technology is vulnerable to duplication and hacking.

RSS irritation

If you're reading my blog via the original RSS feed in Bloglines you might see a few incomplete entries. I posted a few entries before they were done. I went back and finished them a short time later. Before I posted the updates, Bloglines polled my RSS feed and grabbed these entries. With RSS 0.92 there's no way to identify items with unique IDs so the incomplete entries appear as well as the updates. With my RSS 2.0 feed each item has a unique ID (guid) so the updated items replace the old ones. At least that's what I see in Bloglines. I've noticed multiple versions of the same item with other feeds (such as Doc Searls Weblog) so it seems like Bloglines must use the item guid when it's available and compare timestamps or content when it's missing. Doc Searl's feed is RSS 2,0 but doesn't contain guid tags for items.

SpamAssassin Rules Explained

Someone has exhaustively gone through all the rules in Spam Assassin and explained each one. All this work for $200 on Google Answers.

Saturday, April 24, 2004

Vending machines that offer more than snacks

According to this article, vending machines in the United States will start offering more than just snacks and drinks. For example, Staples recently tested several machines selling traditional office supplies and technology products, such as universal cellphone chargers, laptop cords and headphones. Interesting concept but I doubt that the contents of vending machines here will ever get as varied as vending machines in Japan

Using a GPS watch, XML, and satellite photos to make maps of the places you jog

This article on Engadget explains how to use a Garmin GPS watch, XML, and satellite photos to make high-resolution maps of your jogging route. Interesting geeky idea.

FILExt

FILExt contains a detailed database of file extensions and programs that use them. Seems reasonably complete -- they even list Lotus Improv .IMP files. FILExt also lists MIME types as well as "identifier characters" for files, similar to what's used by the Unix file command as defined in the magic number file. The site even has discussion forums and a blog.

Googleplex

A few good articles on Google: Simpson Garfinkel has an article in Technology Review comparing Google and Akamai. He contrasts Google's secrecy about their technology with Akamai's relative openness. But he acknowledges that they're in different businesses:
Both companies have developed infrastructure for running massively parallel systems, but the applications that they are running on top of those systems are different. Google's primary application is a search engine. Akamai, by contrast, has developed a system for delivering Web pages, streaming media, and a variety of other standard Internet protocols.
Google deals directly with end users whereas Akamai provides infrastructure for other companies. But Google is taking search technology into other areas. Here's a very interesting interview with Google co-founder Sergey Brin on the future of Gmail. Also read Topix.net's blog entry on The Secret Source of Google's Power

Movies That Inspired Kill Bill

Kill Bill is a movie-geek's movie made by the ultimate movie geek, Quentin Tarantino. They're enjoyable even when you don't know the references but it's interesting to know more about the movie references in the films. Not all of the films on this list were direct inspriations but they're in the same genre or related in some way or another.

Jvmstat

The Jvmstat tools provide access to light-weight performance and configuration instrumentation exported by the Sun HotSpot JVM and displays the information in various formats. Tools include a general purpose command line tool called jvmstat, a java process list tool called jvmps, and a generational heap visualization tool called visualgc.

We've used in-house tools and JProfiler for similar work but if you're using Sun's 1.4.1.x JVM then jvmstat may be worth a look.

UW Calendar Project

The UW Calendar project is building an open-source calendaring system for higher education in Java. UW Calendar will support personal, public and group events, use existing open standards such as iCalendar, and support web-based and other forms of access, including uPortal integration.

Friday, April 23, 2004

Floats

A new game on Orisinal called Floats. Addictive.

Total Tarantino

Entertainment Weekly interviews Quentin Tarantino. Lots of interesting background on Kill Bill. Apparently Warren Beatty was the original choice for Bill. I can't picture that. Also Tarantino has some plans for making a Kill Bill sequel in the distant future with Vernita Green's daughter, Nikki when she's grown up.

Wi-Fi Internet radio tuners

The Register has an article on Wi-Fi Internet radio tuners. A Wi-Fi radio could tie into a home Wi-Fi network with a broadband connection to pull Internet radio content. Linksys is building a unit that does this and can also stream music and photos from a PC. Wi-Fi technology is getting pretty inexpensive, what other devices around the house could take advantage of wireless Internet access?

Gmail Gems

Gmail Gems is a blog with tips and tricks on using Gmail. There's an Atom feed as well.

Mark Fletcher of Bloglines

Here's an interview with Mark Fletcher the guy behind Bloglines. Mark also has a blog

Thursday, April 22, 2004

Kill Bill Volume 2

I saw Kill Bill Volume 2 on Thursday evening. It's a terrific film. Now I want to see Volume 1 again. Uma Thurman, David Carradine, Michael Madsden and Darly Hannah are all great. Uma Thurman's part in both film requires such a mix of talents, it's hard to imagine anyone else in this role. Michael Madsden's Budd comes across as a washed up loser but first impressions can be deceiving. Budd has more in common with Madsden's character from Tarantino's Reservoir Dogs than first appears. Daryl Hannah is terrific too Her fight scenes reminded me that she played the killer replicant Pris in Blade Runner twenty-two years ago. David Carradine is great as Bill. He has many of the best lines in the film. For example: "I'm a killer, a murderous bastard. You know that. And there are consequences to breaking the heart of a murdereous bastard". And there's this early exchange between Bill and Budd:
Budd: So you're telling me that she cut through eighty eight yakuza before she got to O-Ren?
Bill: Well there weren't actually eighty eight of them they just called the selves the Crazy 88s.
Budd: So then why did they call themselves the Crazy 88s?
Bill: I guess they thought it sounded cool.
IMDB has collected a bunch of memorable quotes from the film -- Don't read until after you've seen the movie.

A couple other things I noticed while reading the credits: Michael Parks appears in both Kill Bill films as different characters. His character in Volume 2 (Esteban Vihaio) is a real hoot. Also, Gordon Liu (aka Chia Hui Liu) appears as a different character in both films. First as Johnny Mo in Volume 1 (the head yakuza with the mask). He plays Pai Mei in Volume 2, the ruthless teacher of Bill and his assassination squad.

Embedding Scripting Engines Into Java Code

Here's an excellent overview of how to embed scripting language engines into Java code. The overview covers Jacl, BeanShell, Jython, Rhino, Groovy, and Pnuts. There are examples from basics to more complex for each scripting language.

Search Me

The April 2004 issue of ACM Queue is focused on Enterprise Search. There are few good articles on search technology:
  • Searching Vs. Finding by William A. Woods, Sun Microsystems Laboratories
  • .
  • An interview with Matt Wells, the designer of the Gigablast search engine
  • An interview with Wayne Rosing, the VP of Engineering at Google.
All good stuff if you have interest in the technologies and challenges of enterprise-scale searching.

Wrap Rage

For every rant there's a word. According to Word Spy my rant was an example of wrap rage. Note: Calling it "rage" is hyperbole. At best I was irritated, certainly not in rage.

Saddam's Interrogation Logs

How did McSweeney's get their hands on the logs from Saddam's interrogation? Amazing stuff.

Wednesday, April 21, 2004

2004: A Workspace Odyssey

A bit of geek humor here. A dialogue between a developer and WSAD 5.0 imagined as a conversation between Dave and HAL from 2001: A Space Odyssey. Clever. (Via TheServerSide)

Now That's a Thinkpad of a Different Color

According to DigiTimes, IBM is going start selling Thinkpads in a range of colors. Choice is good but I'd accept my next Thinkpad in basic black with a larger screen, better battery life or more memory over a Lime-colored one.(Via Engadget)

Microsoft Visual C++ Toolkit 2003

Microsoft is providing a free download of the Microsoft Visual C++ Toolkit 2003. It includes the same optimizing compiler and standard libraries that ship in Visual Studio .NET 2003 Professional. No IDE of course, but you can always use some other editor or IDE. You can download free debugging tools including WinDbg from Microsoft as well.

Pottery Barn Rule

Bob Woodward's new book Plan of Attack claims that Colin Powell warned President Bush that if he sent troops to Iraq, "you're going to be owning this place." That was based on what Powell and his deputy Richard Armitage called the Pottery Barn Rule of "you break it, you own it". Pottery Barn has taken offense with the analogy and claims that no such rule exists in their stores. That may be true for a large chain like Pottery Barn but when I was a kid I recall going to stores with signs that said that. Stores where my parents would whisper loudly "Don't touch anything!"

I think Pottery Barn Rule could become a handy term to use in software development. If you check in code that breaks something, including code that you didn't write, the "Pottery Barn Rule" kicks in. You own the issue until it's resolved.

Optimization: Your worst enemy

The title of Joseph Newcomer's article is intended to grab your attention. He has some good advice on optimization:
Optimization matters only when it matters. When it matters, it matters a lot, but until you know that it matters, don't waste a lot of time doing it. Even if you know it matters, you need to know where it matters. Without performance data, you won't know what to optimize, and you'll probably optimize the wrong thing.

The result will be obscure, hard to write, hard to debug, and hard to maintain code that doesn't solve your problem. Thus it has the dual disadvantage of (a) increasing software development and software maintenance costs, and (b) having no performance effect at all.
The only valid path to optimization is to instrument and measure performance under typical workloads. Some things that you think are "obviously" slow may not matter. Worse yet, blind attempts to improve performance without measurement may actually make performance worse. In my experience, performance work is almost always full of surprises. Performance gains often come from unexpected places.

Gee-Mail

I use Blogger to organize my blog. Blogger is owned by Google. I just got an invitation to try out Gmail, another Google venture. There's been a lot of discussion of Gmail in the press and on other blogs. Gmail is free, search-based webmail that includes 1 gigabyte of storage. (That's 200x more space than other services). Gmail automatically groups an email and its replies as a conversation. What's in it for Google? Advertising revenue. Gmail users will see text ads on the right side of the page just like with Google. I'm not sure if I'll use this account heavily but it'll be interesting to see how this evolves.

Update: Looks like Google is offering Gmail to active Blogger users. Not clear how they define "active" but just setting up a Blogger account or having an inactive one probably won't get you a Gmail account. Even Evan doesn't know how they decide when to offer Gmail.

Tuesday, April 20, 2004

Kill Bill: The Game

I haven't had a chance to see Kill Bill, Volume 2 yet -- hopefully this week. In the meantime, I was playing this Kill Bill game where "The Bride" takes on the "Crazy 88". The instructions are in Czech but click around a bit and you'll do just fine.

After the game action starts to wear on you, you can read this amusing Quentin Tarantino story. If the article is true, he actually drives around in this car from Kill Bill. Wild. (Via BoingBoing)

The world's largest unexploded bomb

A farmhouse in France has 22 tons of high explosives lying 80 feet below it. The massive landmine was put there by the British during World War I under German trenches but never used.

Blogging drought

Sorry for the dearth of recent postings. I have a few entries queued up but haven't found the time to finish them. I had also planned to attend BloggerCon II this past weekend but had to skip it. Ned was there and even got quoted in the New York Times. Cool.

I was quoted in the Times once as well. I was attending a debate on the Strategic Defense Initiative (aka Star Wars) at MIT. (Yeah, this happened a while ago). The focus of the debate was on the daunting issues of developing software for such a complex system. Given the state of software development technology, could we ever develop, test, deploy and trust such a complex system? David Parnas was one of the featured speakers. After the debate was over, I was chatting with a friend. Someone overheard our conversation and introduced himself as a reporter with the New York Times and asked if I'd be willing to answer a few questions. The article appeared the next day. I got a one line quote. It was accurate and I didn't sound like an idiot. I've got a copy of the article somewhere. Was that my 15 minutes of fame? Maybe but that's not a problem for me. Fame is overrated.

Monday, April 19, 2004

Sony's Paper Blu-Ray Discs

This new Sony Paper Blu-Ray media can store 25GB but is based on paper substrate. Sounds like a great idea for backups. You can just get rid of your old backups by tossing them into a paper shredder. On the other hand, what happens if you spill coffee on one? Oops! (Via Gizmodo)

Friday, April 16, 2004

Oh Heck

I saw Hellboy last night. It's a comic book movie; based on the Dark Horse comic series. Hellboy (played by Ron Perlman) is rescued from Satan and the Nazis during World War II. Fast-forward sixty years and he's been trained to fight against evil monsters "from the other side" for the Bureau for Paranormal Research and Defense. Overall Hellboy was moderately entertaining. It's supposed to be a good translation of the comic book to film but to me the characters and storyline seem to be a mishmash of other films: X-Men, Raiders of the Lost Ark and even Ghostbusters.

Thursday, April 15, 2004

Subservient Chicken

Subservient Chicken is pretty funny even if it is sponsored by a fast food company. Funny and more than a little creepy. See what you can get the bird to do (and what it won't do).

Note: If you want to look under the covers to see how this works look here. (Via BoingBoing)

History of Street Names in America

In an older American city such as Boston, many of the major streets are named after early landmarks such Church, Dock, Market, etc. or local geography (e.g. Cambridge Street is the street that takes you to Cambridge). This article documents the evolution of street names in America from old-fashioned names like "Church Street" to names you find in the typical American subdivison such as "Eagles Nest Drive".