200 caches and counting

Passed the 200 mark last night with a run of 6 easy caches along the San Francisco bay with Paul.  The first hundred took about 6 months, the second hundred took nearly two years.  Guess I’ll have to step up the pace!

Hybrid++

Some people just aren’t satisfied with going weeks between fill-ups in their Priuses. Some want to go months!  In the Christian Science Montior article Plug-in hybrids: a here-and-now alternative, Mark Clayton reports on homebrew efforts, to add batteries and a charger to your Prius and get a 50-60 mile charge each night:

One auto critic who tested a plug-in Prius recently reported that in normal driving, not trying to go easy on the throttle, he would still have to fill up the tank just once in 5-1/2 months.

This doesn’t seem like low-hanging environmental fruit to me, but clearly it appeals to some!  Where there’s a market, a vendor will emerge:

Edrive Systems, a private Los Angeles company, plans to offer by early next year an aftermarket kit that converts a Toyota Prius into a PHEV. Target price for the under-the-hood makeover: About $12,000.

But this seems to represent the extreme of a more broadly-based level of interest that is leading other manufacturers (such as Volkswagen), to follow suit.  ‘Bout time!

The Marshes have a new monitor!

Ordered a new Dell UltraSharp 2005FP Wide Flat Panel display at near midnight on Wed (that’s when the sales promotion ended), and it arrived today (I didn’t order even overnight!)  It’s pretty amazing what’s happened in monitors since we made our last big investments back in the early nineties (20 in Apple monitors).  This new monitor takes a small fraction of the space the old one did, and has a greater visible area.  At last we can fully open the cabinets above the computer desk!

I did a bit of research, and still ordered with a bit of worry, and though everything has worked out wonderfully I thought I’d pass along some of my learning.

The widescreen was appealing because of the low height (trying to avoid those cabinets was a main motivator for the purchase), but the monitor works in a rather odd native resolution: 1680×1050.  The Dell site has a very useful warning that some video cards can’t drive this resolution, and points to lots of updates.  Well, my computer is the Gateway 901X Media Center, with a RADEON 9800 series video adapter, and I went to "List All Modes…" in the adapter to see if that was a supported option.  It wasn’t listed!  I was unable to find a driver update that would support that resolution.  Would I end up using only part of the screen?  Or would it be stretched and have pixel alias marks across it?

I played with a Dell 2005FP non-widescreen I had access to to see what the effect of a non-optimal resolution would be.  I found that you generally will set the resolution well below the max resolution of the screen anyway, and the aliasing effects are generally pretty subtle.  So I went ahead and ordered it, with the prompt delivery mentioned above.

It turns out I am able to drive the monitor at 1680×1050 after all.  Either luser error in "List All Modes…" or it adjusts based on the type of display it’s attached to.  The screen is amazingly clear! But the lower resolutions weren’t unacceptable either.

I didn’t have as much luck hooking up the DVI cable instead of the VGA.  DVI is supposed to be better for high resolutions like this, but for some reason there is about 1/2 inch of black all around the screen.  I couldn’t really see any different in clarity - so I went back to VGA.

Biggest problem is that with the update in my ability to view photos, some of my recent postings need some significant readjustment - especially in the yellow/greens.  I’ve updated a couple already. And I updated my firmware in my Casio to tone down the saturation at the source. 

I really like the widescreen format - if you’re used to working full screen at 1024×768, all of a sudden you have extra real estate where you don’t expect it (off the side), and there are always good ways to fill screen real estate!

Crooked Lakes Basin

10 miles, 14 lakes.  The Crooked Lakes Basin in the Tahoe National Forest a great place for a child’s first backpacking trip.  And so my daughter (almost 9) and I did a three days/two nights backpacking trip last week.

I took over 250 pictures (teaser at left), of which about a third are now posted in the flickr set Crooked Lakes Basin.  Three of them required some sectional adjustment in Photoshop, the rest are quickly tuned in Picasa.  More on my experience with panorama stitching later.

Details of our route: park at the Carr Lake trailhead, and ramble along it’s shores, and gently upward past Feely, Delhany, and Island Lakes.  I’d come this far on day hikes with the kids before, but didn’t realize the beautiful 7000-foot alpine-granite ecosystem really doesn’t start until Island Lake.  We continued on the Crooked Lakes trail, camping at a small marshy lake which seems to be known only as one of the Crooked Lakes.  We found a great spot on a peninsula, surrounded on three sides by marsh grasses.  Despite this, we had zero mosquitoes at any of the lakes, and only a couple during snack breaks in rather unlikely spots.  Both sunrise and sunset provided incredible lighting for my photographs.

The second day we left our tent and set out cross-country, following the dry outflows of each of the Crooked Lakes, which are strung out every few hundred yards, making it pretty hard to get lost!  Each of these lakes is a lush alpine oasis of grasses, alpine lily pads, and dragonflys, surrounded by granite, manzanita clumps, and the late summer wild flowers.  In between are mixed stands of lodgepole pines, various firs, ponderosa pines, and junipers (bristlecones?), many in shapes indicating the stress of snow pack on the saplings, and the force of storms on the adults.  Many dead snags bleaching and gradually turning to powder in the high altitude sun.

Leaving the final Crooked Lake, we struck out due east to catch the Grouse Ridge trail (for another cool outing, check out the scale series of geocaches centered on the Grouse Ridge Lookout and arranged as a scale model of the solar system.)  We descended past Middle Lake (which we somehow missed completely - it must be farther off the trail than the maps would indicate - and down past Shotgun Lake, which really isn’t much of a lake at all - simply a grassy marsh on it’s way to being a meadow (still attractive though!).

From there we descended further to the Lindsay Lakes trail, back up to Penner Lake.  This was the greatest elevation gain of our trip (1000 feet?) but reaching Penner Lake at the top made it all worth it!  It’s a beautiful lake hemmed in by granite walls all around, just warm enough to plunge into (though the breeze which dries you off is pretty brisk!)  We sat in the sun on a rock in the shallows enjoying the warm sun and I even got a thorough hair combing from my little hairdressing apprentice.  What luxury!

The descent back down to Crooked Lakes affords awesome views, and is just about my favorite part of the trail.  We moved our camp from the first Crooked Lake to the second (or third, depending on how you count) - which is the biggest of the series.  The dawn on the granite hill opposite was spectacular.

The hike out is short, sweet, and slightly downhill (500 feet or less).  We stopped for a long time on the shores of Feely lake to construct fairy mansions out of the shore gravel.

I learned a few things about packing this trip, like: no matter what you pack for lunch the last day, you’re better off saving the weight because you end up picking an eatery on the way home that sounds way better than whatever you’ve packed in, and out again.  Tuna fish in foil packages is the greatest invention ever.  Vienna sausages don’t taste all that great when you grow up.  Leaking DEET (air pressure from the elevation gain?) is pretty nasty stuff - double bag it if it’s near your toothbrush.  And, girls require way more toiled paper than guys, pack a generous amount ;-).  I look forward to putting this newfound wisdom into practice again very soon.

Resources: A snippet of the map at the trailhead is at left.  I found a partial scan of a topo here.  I chose the hike based on 100 Classic Hikes in Northern California; you can read an excerpt of an overlapping hike here.

[Sorry this is a week late, I had to upgrade Flickr to a pro account to get them all up there and organized into a set, and using paypal it took days and days...]

The Land of Hybrid Opportunity

This from a story Toyota hopes to cut hybrid premium in half as reported in USA Today:

"The mind-set has changed. Used to be somebody would pay $2,000, $3,000 more for a big V-8 and the macho and muscle and squealing tires that went with it," said Jim Press, president of Toyota Motor Sales USA. "Now, at least in some places, people pay the premium for the (hybrid’s) image of being concerned about a clean environment, contributing to their children’s future health and depending less on foreign oil."

It continues to baffle me why our domestic auto manufacturers continue to extrapolate the demand by some for big mondo cars to everyone in the market.  I still think our industry is on it’s way toward another clock-cleaning ala Japanese imports in the 1970s.  Toyota considering how to double their Prius sales points this way.

My previous hybrid posts: Prius-buzz; 1397 miles, one tank - must be a hybrid.

Bill Moyers on Christian Fundamentalism

Last time I heard Bill Moyers speak, I was ready to draft Moyers for high elective office.  His ability to explain progressive ideals as emerging from a deep moral background is unsurpassed.  His latest address, 9/11 and the Sport of God, is a must read, addressing some of the same questions I asked in Bad Muslims, or Bad Islam? - only this time directed at Christian fundamentalists.

An excerpt:

In his last book, the late Marvin Harris, a prominent anthropologist of the time, wrote that "the attack against reason and objectivity is fast reaching the proportions of a crusade." To save the American Dream, "we desperately need to reaffirm the principle that it is possible to carry out an analysis of social life which rational human beings will recognize as being true, regardless of whether they happen to be women or men, whites or black, straights or gays, employers or employees, Jews or born-again Christians. The alternative is to stand by helplessly as special interest groups tear the United States apart in the name of their ’separate realities’ or to wait until one of them grows strong enough to force its irrational and subjective brand of reality on all the rest."

That was written 25 years ago, just as the radical Christian right was setting out on their long march to political supremacy. The forces he warned against have gained strength ever since and now control much of the United States government and are on the verge of having it all.

It has to be said that their success has come in no small part because of our acquiescence and timidity. Our democratic values are imperiled because too many people of reason are willing to appease irrational people just because they are pious.

As I look back on the conflicts and clamor of our boisterous past, one lesson about democracy stands above all others: Bullies - political bullies, economic bullies and religious bullies - cannot be appeased; they have to be opposed with a stubbornness to match their own.

Well.  I say again: Moyers for President!!

Googlegraphs

If you liked my Googlecaching post, see Paul Downey: Flickr into Google Earth.  He’s gone one further and turned his geotagged photos into Google Earth annotations.  Fun!

Happy birthday xml:id!

At long last, the W3C has completed its process and put the "Recommendation" imprimatur on xml:id Version 1.0.  xml:id addresses a long-standing problem in XML - that identification of elements (subresources) within an XML document requires a separate description (DTD, XML Schema, at least fragmentary) of the content model.  While description is often useful, one of the primary advantages of XML over its predecessors is that no description is necessary to parse an XML document, and consequently few processes do.

As a result, the common case of pointing into an XML document (see XPointer) has required the uncommon step of finding and processing the documents description.  People have been working around this problem for years in various hacky ways.  xml:id provides a convention, and associated processing semantics, which solves this problem.

It will take a while for xml:id to be adopted widely, but getting its "Rec" stamp is an important milestone in that journey, and should give confidence to users that this mechanism is worth considering, and to vendors that this mechanism is stable and thoroughly peer reviewed.

My part in the xml:id story is rather modest, despite my credit as an author - I was part of the XML Core Working Group when xml:id was conceived, helping write the requirements and an initial draft.  As Microsoft dropped its membership in the group I wasn’t active in the long and tedious process of moving the specification to its conclusion, and full credit must go to Norm Walsh and Paul Grosso (co-chairs) and the rest of the Working Group in their patience and diligence.

Here’s hoping for a long and bright future for xml:id!

GoogleBorg? 2

Nothing exposes underlying concern like a good satire.  Don’t miss the Onion on GooglePurge.

Geocaching the Google Earth 2

More fun tricks for combining geocaching with Google Earth!

I snooped around and discovered that Google Earth keeps track of place markers in XML format, under the .kml extension.  That’s pretty cool, since you can download waypoints from Geocaching.com in XML format too, under the .loc extension. For a long time it was my day job to define a language (XSL Transformations) for transforming one form of XML to the other.  So I wrote a short XSLT (so short, I’ll reproduce it here in it’s entirety).

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <kml xmlns="http://earth.google.com/kml/2.0">
   <Folder>
    <name>Downloaded caches</name>
    <open>1</open>
    <xsl:apply-templates select="loc/waypoint[last()]"/>
   </Folder>
  </kml>
</xsl:template>
<xsl:template match="waypoint">
  <Placemark xmlns="http://earth.google.com/kml/2.0">
   <name>
    <xsl:value-of select="name"/>
   </name>
   <description>
    <xsl:value-of select="link"/>
   </description>
   <LookAt>
    <longitude>
     <xsl:value-of select="coord/@lon"/>
    </longitude>
    <latitude>
     <xsl:value-of select="coord/@lat"/>
    </latitude>
    <range>999.9999999999999</range>
    <tilt>0</tilt>
    <heading>0</heading>
   </LookAt>
   <styleUrl>root://styles#default+icon=0×307</styleUrl>
   <Point>
    <coordinates>
     <xsl:value-of select="coord/@lon"/>,<xsl:value-of select="coord/@lat"/>,0</coordinates>
   </Point>
  </Placemark>
  <xsl:apply-templates select="preceding-sibling::waypoint[1]"/>
</xsl:template>
</xsl:stylesheet>

All this does is reverse the list of waypoints, and copy the latitude and longitude from one format to the other.  Simple, but effective - you load the result (appropriately named .kml) into Google Earth and you can take a tour of the caches you’ve downloaded.

My sample was the last 20 caches I’ve visited.  It’s a pretty fun sample, as it jumps between California, Washington, Berlin, and Melbourne Australia.  (Pathetic though that I’ve only done 20 caches since last December…)  Try it out here, or get the XSLT above here.

Geocaching the Google Earth

I’ve been flying around the Google Earth for fun.  It’s not clear to me what the killer app is yet, but it really is pretty cool to visualize spaces and distances, and some of the imagery (like the salt flats in the south bay) is just awesome.

But I also found a cool visualization application.  Here’s the story:

Almost 2 years ago I dropped a horseshoe in our neighborhood geocache, with a travelbug dogtag.  A travelbug is an object that hitches rides with geocachers to move from place to place.  This horseshoe, named Hufi, was destined for a cache in Germany.  Every few weeks, somebody moves it, logs its progress on the web, and I get a mail notifying me of the event.  Pretty cool way to track an object around the globe!

Well, each cache has latitude and longitude coordinates, and Google Earth has markers that can be set by latitude and longitude.  So I went through and put the history of Hufi’s journey in.  Now you can fly along with Hufi as he bounces around California, the UK, and Denmark.  Hopefully spiraling in on his final destination in Germany.

Try it out, install Google Earth, and load up this file.  Hufi’s journey is pretty interesting!