See previous 50 entries

APR 14
2008

If you ever find yourself locked out of your Windows XP box due to a forgotten password, and if you haven't enabled EFS, and if you have physical access to the machine, then Offline NT Password Editor will let you edit or clear away that pesky Administrator password in no time flat. I burned the CD, rebooted, and within 2 minutes I was logged in to the box.

I always knew this was possible, but I was surprised by just how easy it was.

This is probably a good time to extol the virtues of encrypting your data...


permalink | comments | technorati
APR 10
2008

Next *** : Great job by Nicholas Cage (as usual), fun action movie, strange ending.


tags: movie-reviews
permalink | comments | technorati
APR 7
2008

Lost World *** : Jurassic Park Part 2. Standard Chrichton, well written, nothing extraordinary, good read.


tags: book-reviews fiction
permalink | comments | technorati
MAR 22
2008

Pastebin - collaborative debugging tool. Cool idea for sharing source code and other whitespace-sensitive files.


permalink | comments | technorati
MAR 15
2008

This is a pretty good ad from the London city government on bicycle safety: Awareness Test


tags: links
permalink | comments | technorati
MAR 15
2008

Stranger Than Fiction *** : Great concept, but something didn't quite connect for me in this love story.


tags: movie-reviews
permalink | comments | technorati
MAR 4
2008

I've decided to go for Seattle to Portland in one day this year. It's 202 miles. That's about 60 miles more than I've ever biked in a day. But hopefully with a lot of drafting from the pace line, I should be able to make it!

Unfortunately, I'm already falling behind the recommended training schedule...


tags: cycling
permalink | comments | technorati
MAR 2
2008

Golden Compass ***** : Well written, inventive, engaging, and bound to annoy a lot of people!


tags: book-reviews fiction fantasy
permalink | comments | technorati
MAR 2
2008

Ultraviolet ** : Nicely filmed scifi but cardboard plot. See Equilibrium instead.


tags: movie-reviews
permalink | comments | technorati
FEB 26
2008

Norton Fighter vs. Botlas - part one and part two. Great example of viral marketing from Norton... Definitely check out part two: "Akihabara nerd attack! Akihabara maid attack!" Priceless!!


tags: humor viral-marketing youtube
permalink | comments | technorati
FEB 24
2008

Recently, to save money and conserve natural resources, our condo association decided to stop sending paper statements for monthly dues. Most people in our association use bill pay to automatically pay their monthly dues, but a few people still wanted a monthly reminder to send in their payment.

We use Yahoo Groups for our condo messages, so I checked there to see if it had something that could do the job. Yahoo Groups does offer a "monthly periodic e-mail feature", but it is fatally flawed in two ways. First, it doesn't appear to work. Second, it doesn't let you specify when the message will be sent.

Fearing that I might have to write something up myself to solve this problem, I first started searching around for a solution. I was pleasantly surprised to find Letter Me Later. It's great! Perfect solution, very configurable, yet still easy to use. Check it out if you ever find yourself needing an automated e-mail scheduling service!


tags: links cool-sites
permalink | comments | technorati
FEB 20
2008

Indexing a Career: A Career Path in Pictures: Dilbert meets 3x5 index cards. Very creative.


tags: humor
permalink | comments | technorati
FEB 20
2008

Sushi Economy ***** : Fascinating tale of Japan, sushi, economics, global trade, and one of the world's most expensive and shortest-shelf-lived commodities, bluefin tuna.


tags: book-reviews nonfiction economics japan fishing
permalink | comments | technorati
FEB 14
2008

Dell's DisplayPort Folly: Good PCWorld article that pretty much sums up my own thoughts on DisplayPort, which can be pithily summarized as: Why?!


tags: prognostications technology
permalink | comments | technorati
FEB 12
2008

I have to tip my hat to United for their customer service system. My travel agent (American Express) screwed up my seat assignments and I had to call United to get them fixed. I called United's customer support number and after picking up, an automated voice immediately said, "Is this Preston or somebody calling on behalf of Preston?" Obviously they've added some sort of caller ID capability to their system. It was great. Within 15 seconds I was speaking with a customer service representative without having to punch in any personal information. Great job, United! This is how it should be done.


tags: united
permalink | comments | technorati
FEB 10
2008

I spent a lot of time in 2006 and 2007 working on the WiMedia Logical Link Layer Control Protocol specification (WLP spec for short). Publishing a specification like WLP is a lot like filing a patent. You do a lot of the work early on, and then the actual publishing process takes a really long time. It's almost anti-climatic when it does finally get published.

In any event, it's available on the WiMedia web site if you're interested (unfortunately there is a click-through license agreement that you must fill out to read the spec). I worked on the security sections, sections 6.6 and 7.2 and annexes A and C.


tags: me-on-the-web wireless specifications
permalink | comments | technorati
FEB 1
2008

A Thousand Splendid Suns ***** : Important book about the plight of women in Afghanistan before, during, and after the Taliban. Same excellent writing and style as the Kite Runner, but while that book had hope to balance its sadness, this book has much less and is thus that much grimmer.


tags: book-reviews
permalink | comments | technorati
FEB 1
2008

The Quiet Earth * : Man wakes up, discovers he is the last human on earth. Starts out cool, bombs out pretty fast. I can't believe all of the people on IMDB who gave it a 7.1 average rating!

The Prestige ***** : Highly confusing but ultimately very rewarding film. Told in reverse, Memento-style. A second viewing is revealing and enjoyable.


tags: movie-reviews
permalink | comments | technorati
JAN 23
2008

My various web sites, such as prestonhunt.com, Trainster, and Nagbot, have gone through many distinct phases with respect to Javascript:

Phase 1, the original sites: Static content only.

Phase 2, not long after phase 1: Script-generated (usually Perl) static content on my home machine, pushed by cron job to my web host. Still no Javascript.

Phase 3, about five years ago: As little Javascript as possible, but heavy reliance on server-side scripting such as CGI, Perl, and PHP. I used to feel that Javascript support in browsers was too inconsistent to be used effectively. Then Google Mail and Google Maps came along and showed everybody how things should be done.

Phase 4, about two years ago: Not wanting to become locked in to a particular toolset, I eschewed Javascript frameworks like Prototype. I coded all Javascript myself. This was often a laborious task given the lack of good debugging tools and also the infuriating inconsistencies between browsers (of which IE6 is far and away the worst offender).

Phase 5, about one year ago: Finally bit the bullet and adopted the Prototype framework. Life got a lot easier, but Prototype itself doesn't do all of the Ajaxy things that I like to do (like auto-complete-as-you-type, light boxes, fade effects, and so on). So I started layering different libraries, including Scriptaculous and MooTools.

Phase 6, about two months ago: I've found religion, and its name is JQuery. JQuery's elegance is so beautiful that it almost makes me want to cry. The documentation is outstanding. And it encourages community support through plugins, which quickly become indispensable -- stuff like auto completion, rounded corners, table sorters, tooltips, calendars, etc. And because the plugins are all based on the common JQuery foundation, they usually play nicely with each other. I'll be posting soon about how JQuery has made life much easier for me. In the meantime, I'm busily migrating all of my sites to it.

Related links: Why JQuery's Philosophy is Better, JQuery - Javascript that doesn't suck!


tags: webdesign programming
permalink | comments | technorati
JAN 21
2008

The Chamber ** : Reads fine, Grisham is a competent writer, but no fireworks. Flawed by too many 180 degree shifts in character personality throughout the story.


tags: book-reviews fiction vacation-reads
permalink | comments | technorati
JAN 20
2008

Better ***** : From one of my favorite New Yorker authors, Atul Gawande. Excellent essays on health care, including malpractice, cystic fibrosis, obstetrics, third world health care, and more.


tags: book-reviews nonfiction medicine
permalink | comments | technorati
JAN 16
2008

Continuing the tradition from the last two years:

My 2007 in cities (in approximate chronological order):

  • Las Vegas
  • Jackson Hole, Wyoming
  • Palo Alto, California
  • Barcelona, Spain
  • Brussels, Belgium
  • Hannover, Germany
  • Beijing
  • Waterloo, Canada
  • Toronto
  • Montreal
  • Los Angeles
  • Bend, Oregon
  • Government Camp, Oregon
  • Smith Rock, Oregon
  • San Francisco
  • Amsterdam
  • Scottsdale, Arizona
  • San Jose, Costa Rica (*)
  • Agujitas, Costa Rica
  • Monteverde, Costa Rica
  • Fortuna, Costa Rica
  • Montezuma, Costa Rica
  • Howey-in-the-Hills, Florida
  • Palm Beach, Florida
  • Jacksonville, Florida

One or more nights spent in each place. Cities marked with * were visited multiple times on non-consecutive days.


tags: year-in-cities
permalink | comments | technorati
JAN 12
2008

Stardust ***** : I loved the movie, and the book is even better! Beautiful, mellifluous writing and gorgeous accompanying illustrations. One of Neal Gaiman's best works.


tags: book-reviews fantasy fiction vacation-reads
permalink | comments | technorati
JAN 12
2008

I've finally gotten with the times and ditched CVS in favor of Mercurial for many of my active projects. I have to say, it's pretty nice.

One feature I really like is the ability to make local commits to a repository and then ship out all of the changes at once to other users (or to a central repository) in a single changeset.

Another cool feature is being able to rollback mistakes. And having an automatic repository wide id with each commit eliminates the need to tag all the time like in CVS.

This presentation at Google from a Mercurial developer is very good. Also, this talk from Linus on his revision control software, git, is good at explaining why you should upgrade if you are still using CVS or SVN. I wish I had switched a lot sooner.

Here's another good piece on git vs. Mercurial vs. SVN.


tags: programming source-control
permalink | comments | technorati
JAN 7
2008

Venus Prime 1 *** : Better than I expected and an enjoyable end to my sci-fi reading blitzkrieg while on vacation in Costa Rica.

To Sail Beyond the Sunset ** : Heinlein is either a genius provocateur or just a dirty old man. Either way, this book didn't take for me.

Revolt in 2100 *** : Classic Heinlein space opera pulp fiction. Overly simplistic and unrealistic solutions to social problems, but it's fun reading.


tags: book-reviews science-fiction vacation-reads
permalink | comments | technorati
JAN 4
2008

A Scanner Darkly ***** : Awesomely crazy movie. Could it have been filmed as anything but a cartoon?

Boondock Saints **** : Willem Dafoe shines in this zany retribution movie.

Man on Fire *** : Denzel does a nice job in this kidnap-thriller-whodunit based in Mexico City.


tags: movie-reviews
permalink | comments | technorati
JAN 3
2008

I wanted to write a script to find out everybody who emailed me last year (by accessing my IMAP server). Since I am on a Python binge lately, I decided to write it in Python. Unfortunately, Python's imaplib documentation is a little short on examples.

After much experimentation, I finally figured it out:

import getpass, imaplib

M = imaplib.IMAP4_SSL( 'localhost' ) M.login(getpass.getuser(), getpass.getpass()) M.select( "INBOX.GmailMirror" )

typ, data = M.search( None, '(SENTSINCE "1-Jan-2007")' ) for num in data[0].split(): typ, data = M.uid( 'FETCH', num, '(BODY[HEADER.FIELDS(FROM)])' ) try: print data[0][1].strip() except TypeError: print data

M.close() M.logout()


tags: python code imap email
permalink | comments | technorati
DEC 28
2007

Google Chart API: It's incredible. Great example of a web service that fills a very useful need, is really simple to use (but would be hard to implement yourself), and produces beautiful results. Does Google have to single-handedly do everything to make the web a better place?!


tags: google
permalink | comments | technorati
DEC 24
2007

The web site koenvangorp.be has some sweet pictures of star trails. I especially like the first one, Orion in Grand Champ. It's great to see empirical verification of the "theoretical" cosmological facts we are taught, such as the earth's tilt, the elliptical nature of the solar system, our position in the Milky Way, and polar versus equatorial orbit of satellites.

Speaking of astronomy, Mars is in opposition right now, which means that it is as bright as it is going to get for 26 months. Go outside on a clear night and take a look!


tags: astronomy photography
permalink | comments | technorati
DEC 15
2007

Last month, I had a debate with my friend J.S. about China's increasing role in polluting the world. For the purposes of this discussion, we focused solely on electric power consumption. Since most electric power is generated by coal plants, the consumption of electricity is directly proportional to greenhouse gas emissions. And regardless of your position on whether humans are responsible for the current greenhouse gas levels, hopefully we can all agree that we should try to reduce our emissions as much as possible so that we don't aggravate the problem.

My position is that the future of global pollution control lies solely in China and India. In order to fuel their economic ascendency, these countries are trashing the environment. A New York Times article entitled Pollution From Chinese Coal Casts a Global Shadow is over a year old but still provides a good summary of the situation.

J.S.'s position is that it's hypocritical to judge China and India when we in the United States are flagrant abusers of electricity. Further, we are tacitly implicated since our addiction to low-cost imports from China provides the demand that fuels their consumption.

Recent numbers on global electricity generation from the Energy Information Administration do support J.S.'s claim. In 2004, the United States produced 3.979 trillion kWh of energy for 303 million people, or 13,405 kWh annually per capita. Europe's population of 492 million people consumed 3.443 trillion kWh, or 7,089 kWh annually per capita. Which means that Europeans use about half the power of Americans per capita. And at 1,795 kWh annually per capita (2.080 trillion kWh for 1.320 billion people), China uses about one-seventh the power that the U.S. does per capita.

But none of this math really matters. In the US and Europe, both the population and manufacturing base are well established, stable, and slow-growing. This means that power consumption won't grow much either. And while it may be hypocritical to tell others that they need to curtail their power consumption while not following that same advice, it doesn't change the calculus. If China and India don't change their plans, then what the US and Europe do is irrelevant.

So what do we do about it? The NY Times article makes some suggestions. Subsidizing coal scrubbers and more efficient power plants in China and India is a good place to start. Nuclear power is an oft-overlooked but balanced solution that unfortunately will probably fall victim to politics. A tariff on imports from countries with poor energy generation practices would certainly be controversial. Certainly reducing our own per capita energy consumption in the US as a symbolic gesture wouldn't hurt.

But we do need to start the conversation... soon!


tags: environment politics
permalink | comments | technorati
DEC 13
2007

Two sweet Vim plugins: The NERD Commenter and xmledit.


tags: coding vi
permalink | comments | technorati
DEC 10
2007

I went to Costco today for lunch with some friends. While walking around looking for free food samples, we came across a $2000 machine that has hundreds of classic video games. I found an old favorite in the list, Qix. I used to play a lot of Qix. Like all great games of the eighties, it's simple in concept but brilliantly executed. It's available in all the usual places (like MAME) if you want to play. I also found a fun Java-based modern adaptation, XiQ.


tags: games
permalink | comments | technorati
DEC 9
2007

Children of Men ** : Though-provoking and good filmography but slow, lacking too many details, and, ultimately, disappointing.

Collateral *** : Decent enough movie, but it's no "Leon". I just can't see an assassin even accepting a job like this.

911 In Plane Site * : Wish I could give it a lower score, but one star is the lowest in my system. What's most scary about this movie is its incredibly high IMDB rating.


tags: movie-reviews
permalink | comments | technorati
DEC 9
2007

Futurama is getting a fifth season. Oooooh yeah!


tags: television
permalink | comments | technorati
DEC 8
2007

Last month's New Yorker had a great article by Elizabeth Kolbert on Canada's tar sands. Unfortunately the full article isn't available online, but the abstract of Unconventional Crude has a decent summary. If you can find the original, give it a read. Very enlightening. And potentially terrifying!


tags: environment new-yorker
permalink | comments | technorati
DEC 7
2007

Jott Links: This is cool. Call a toll free phone number, say something like "Google Calendar: lunch tomorrow with Joe 12:30pm", and it appears on your Google Calendar. I just tried it out, works great!


tags: jott google
permalink | comments | technorati
NOV 12
2007

He has broken the hearts, minds, and spirits of countless followers, some of whom have banded together with a common goal: to once, and for all, Stop Ben Cornett.


permalink | comments | technorati
NOV 9
2007

My favorite network traffic monitor has been updated: DU Meter 4.0. There are plenty of free or shareware network monitor tools, but I still like DU Meter the best. The new version has a great sidebar gadget for Vista and a new unobtrusive window that sits at the top of the screen showing total megabits per second up or down from your box.


tags: software
permalink | comments | technorati
NOV 9
2007

Mimic ** : Not Guillermo del Toro's best work.

8-Mile **** : Eminem's early days.

Derailed *** : Ransom movie with a twist, watchable if you can cope with highly unrealistic behavior.


tags: movie-reviews
permalink | comments | technorati
NOV 4
2007

Javascript is a very powerful language. I continue to be amazed by what can be accomplished using its prototypes and associative arrays. But its loose typing and reliance on external interpreters means that any non-trivial program will eventually require hours of testing and debugging on each platform that you want it to run on (Firefox, Internet Explorer, Opera, Safari, ...).

In an attempt to minimize this debugging time, I set out a while back to find a lint program that would check for bad coding practices. I found JSLint, but quickly learned that it is far too picky on what it reports as problems. For example, it will report the instantiation of a class if it hasn't been assigned to a variable: new Ajax.Updater( ... ); instead of var j = new Ajax.updater( ... );

This is perfectly legal Javascript and often a good idea. For example, when using Prototype, the Ajax.Updater class doesn't return anything useful. There were numerous other bogus warnings from JSLint.

I also wanted to integrate Javascript checking into my local build environment. Since JSLint appears to be online only, this was not convenient.

Recently I found JavaScript Lint, a command-line tool that does exactly what I need. It comes with an extensive configuration file that lets you control exactly which warnings you want to suppress. So, for example, I don't like warnings complaining about missing semicolons at the end of lines as this is perfectly legal in Javascript! But I do want warnings about variables that are used without being declared first.

Check it out if you program Javascript!


tags: javascript programming
permalink | comments | technorati
NOV 4
2007

The Good Shepherd ***** : Early history of the CIA. Complex, intense, thought provoking.


tags: movie-reviews
permalink | comments | technorati
NOV 2
2007

I received a letter in the mail last week concerning a class action lawsuit against Seagate for misrepresenting hard drive size.

This is a classic example of a bad class action law suit. I feel bad for Seagate. They are no different than every other hard drive manufacturer in representing 1 GB as 1000^3 bytes instead of 1024^3 bytes. Using the SI prefix instead of the historical computer system increases the size over what's reported in Windows and other operating systems by about 7 percent. And I think it's the right thing to do.

At one time in computing history, it may have made sense to stick with 1K=1024. Back then, memory and storage were scarce. And people did very low level programming where they needed to know about every last byte. But nowadays, most of that is abstracted away from us. And given the ever increasing role of the metric system in the world, we really need to stop this archaic practice.

I've written previously about how 1 kbps continues to be misrepresented as 1024 bits per second, when it is really 1000 bits per second. Google still hasn't fixed this. Nevertheless, in the networking world, 1K=1000. The IEEE agrees as well.

We also have the new KiB, MiB, etc., units, which provides a solution for people who want to stick with power-of-two based units.

For the rest of us, let's get with the SI system and make 1 KB = 1000 bytes, 1 MB = 1,000,000 bytes, etc.

Getting back to the lawsuit, I find it hard to believe that the lead plaintiff was in any way hurt or negatively impacted by Seagate's representation of GB as 1000^3 instead of 1024^3.

Sadly, after reading the class action lawsuit web site, it seems that Seagate has already settled. I'm sure this makes sense for them as litigation is costly. Nevertheless, I would have liked to have seen them fight the good fight.

The lead plaintiff gets $5,000. The lawyers get $1,792,000. Since I have purchased five or six Seagate hard drives during the period in question, I am eligible to receive about $100 back if I wanted to. But I'm not going to file a claim. It just seems wrong.


tags: seagate lawsuits kbps
permalink | comments | technorati
NOV 1
2007

Sigh. I came home tonight and discovered that the yellow tang in our aquarium had nipped to death a beautiful hard coral, most likely a bird's nest. Where once there was brilliant pink, now there is only bone white. I had thought that tangs were reef safe. A quick consult with the fish book says "may nip at corals if underfed". I had been starving this guy to force him to eat some of the nuisance algae in the tank... d'oh! Another expensive aquarium lesson learned...


permalink | comments | technorati
OCT 31
2007

Farecast is my new favorite air travel booking web site. Using Farecast's advice, we waited to buy some tickets for Christmastime travel and saved almost $100 per ticket! They have a really nice feature that will send you daily emails with the price trend for specific flights you're interested in, along with the advice on what to do (buy or wait).


tags: travel online commerce
permalink | comments | technorati
OCT 31
2007

Butterfly Effect **** : Crazy movie, Donny Darko meets Memento.

The Holiday *** : Lots of big names in this light romance.


tags: movie-reviews
permalink | comments | technorati
OCT 22
2007

Russ sent this to me, and I love it! Great delivery, gets the point across with very little text: one week's worth of food around our planet.


tags: links
permalink | comments | technorati
OCT 22
2007

Constant Gardener **** : Corruption strikes in Africa once again. Stars guy from the English Patient.

Fast Food Nation **** : Fictionalized adaptation of the book. Lots of cameos. Good.

Borat ** : Disappointing. The original HBO series was so good!


tags: movie-reviews
permalink | comments | technorati
OCT 20
2007

Over the past three years, I've had a half dozen requests from various people asking for permission to use this shingles picture from my cancer blog. Requests have come from professors writing medical text books, nurses preparing journal submissions, and, mostly, from television stations running pieces on the virus that causes shingles, herpes zoster.

When the requests come from regular ole' people, things are easy. When they're from companies (old world media like television stations), things get complicated because they want me to sign legal paperwork giving them rights to the picture. Since I'm giving away the pictures for free, it really annoys me to have to parse the legalese, fill out paperwork, mail it to them, etc.

So I decided to make my first contribution to Wikimedia Commons: Shingles on the chest, released under the GNU Free Documentation License or Creative Commons 3.0 (share or remix allowed with attribution). Hopefully this will satisfy and future comers so I don't need to sign any more contracts!


permalink | comments | technorati
OCT 13
2007

tags: cycling
permalink | comments | technorati
SEP 25
2007

Google Checkout just gets better and better... I just ordered something and when I went to check out on the merchant's site, I was quoted a shipping rate of $14. Not wanting to create an account on their system, I was happy to see the Google Checkout button. Upon arriving at the Google Checkout page, the order details listed "Shipping & Handling (Google Checkout FedEx Rates) - $9.75". Sweet!


tags: google
permalink | comments | technorati

See next 50 entries