# Monday, November 07, 2005

I got in some more geocaching this weekend.  I had a bunch of free time on Saturday, but unfortunately it started to rain really hard just as I found the first cache of the day, so I decided to call it quits.  So instead I went home and started reading up on navigation, which inspired me to get a snazzy new compass and start boning up on my wilderness navigation and mapreading skills.  I’ve wanted to try orienteering for ever, so this might get me towards that goal too. 

I had better luck yesterday since the weather was way better, although caching with both kids and the dog is an additional challenge.  They all hung in like troopers though, and we found 3 caches in Lacamas Park, up in Camas, WA.  It’s a lovely park, even this time of year.  It’s even better in the early spring when the camas lillies are in bloom. 

Monday, November 07, 2005 9:53:25 AM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, November 01, 2005

I found 4 geocaches around Sisters this weekend, and had a blast doing it.  I’m totally down with this sport!  Of course, I need another hobby like the proverbial whole in the head, but at least it’s an outdoor activity. 

The part that was the most fun was looking for caches that were in places I otherwise never would have visited.  We saw the remains of the first ski area in Central Oregon, the view from 4–Mile Butte, and some other great sights in the high desert.  I’m hoping the rain lets up a bit this weekend so I can go after some of the local caches in Hillsboro.

Tuesday, November 01, 2005 4:36:14 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [0]  | 

I’ve been working on a project that required me to turn some CLR types into a set of XML Schema element definitions so that they can be included in another file.  It stumped me for a while, and I envisioned having to reflect over all my types and build schema myself, which would be a total drag. 

Then I remembered that this is exactly what xsd.exe does.  Thank the heavens for Reflector!  It turns out to be really simple, just undocumented…

            XmlReflectionImporter importer1 = new XmlReflectionImporter();

            XmlSchemas schemas = new XmlSchemas();

            XmlSchemaExporter exporter1 = new XmlSchemaExporter(schemas);

            Type type = typeof(MyTypeToConvert);

            XmlTypeMapping map = importer1.ImportTypeMapping(type);

            exporter1.ExportTypeMapping(map);

It’s that easy!  The XmlSchemaExporter will do all the right things, and you can do this with a bunch of types in a loop, then check your XmlSchemas collection.  It will contain one XmlSchema per namespace, with all the right types, just as if you’d run xsd.exe over your assembly.

Even better, if there’s stuff in your CLR types that isn’t quite right, you can use XmlAttributeOverrides just like you can with the XmlSerializer.  So if you want to exclude a property called “IgnoreMe” from your MyTypeToConvert type…

            // Create the XmlAttributeOverrides and XmlAttributes objects.

            XmlAttributeOverrides xOver = new XmlAttributeOverrides();

            XmlAttributes attrs = new XmlAttributes();

 

            /* Use the XmlIgnore to instruct the XmlSerializer to ignore

               the IgnoreMe prop  */

            attrs = new XmlAttributes();

            attrs.XmlIgnore = true;

            xOver.Add(typeof(MyTypeToConvert), "IgnoreMe", attrs);

 

            XmlReflectionImporter importer1 = new XmlReflectionImporter(xOver);

            XmlSchemas schemas = new XmlSchemas();

            XmlSchemaExporter exporter1 = new XmlSchemaExporter(schemas);

            Type type = typeof(MyTypeToConvert);

            XmlTypeMapping map = importer1.ImportTypeMapping(type);

            exporter1.ExportTypeMapping(map);

That’ll get rid of the IgnoreMe element in the final schema.  It took a bit of Reflectoring, but this saves me a ton of time.

Work | XML
Tuesday, November 01, 2005 4:32:41 PM (Pacific Standard Time, UTC-08:00)  #    Disclaimer  |  Comments [2]  | 
# Friday, October 28, 2005
I found my first geocache at lunch yesterday.  Vikki and Carter (my wife, and our dog) came over to help.  Pretty fun stuff.  It was actually a “multi-cache” meaning that the initial coordinates get you a piece in a puzzle, which leads to the next set of coordinates, etc.  Bascially it’s a treasure hunt for technologically enabled grown ups.  I can see it getting to be a habit forming kind of hobby.  From looking at the maps, there are plenty more caches near both work and my house to keep my busy for a good while.
Friday, October 28, 2005 9:48:03 AM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Wednesday, October 26, 2005

I did a little geocaching with some friends this summer, and really want to do some more.  To that end, I just got my first GPS, a Garmin GPSMAP 60C.  So far I’m totally digging it.  It gets great reception, even in the car, and the color screen is super easy to read.  It’s even got some nice built-in geocaching features, like the ability to mark a cache as found, and recording when you found it. 

The USB interface is super easy, and I was able to upload/download waypoints in no time.  I have yet to try downloading a route, but that will be next.  I haven’t shelled out for the mapping software yet, so I have to content myself with the basemap, which isn’t much to go on, but should be enough for highways at least.

I’m hoping to get in some ‘caching this weekend, so we’ll see how well it works in the field.

Wednesday, October 26, 2005 10:07:12 AM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

While I’d consider this more of a “survival kit” than a “72–hour kit”, it’s still a neat idea.  I really like the way the saw blade is mounted on the tin.  Plus it’s always fun to see what people make out of Altoids tins…

Wednesday, October 26, 2005 9:59:55 AM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, October 18, 2005

As I mentioned last week, we had our first city-wide emergency comm drill in Hillsboro this past Saturday.  Overall, it went pretty well, but I definitely came away with some key learnings:

  • Get your Amateur license.  If you want to be able to reasonably expect to contact an Emergency Operations Center, or something similar in your area, ham radio is the way to go.  In case you haven’t heard, you don’t have to learn Morse code any more to get your technician’s license, and the test isn’t hard.  Check out Gordon West’s test prep materials.
  • If you don’t have an Amateur license, and you only have an FRS radio, you’d better get up someplace high.  While talking on your radio from a tree may be inconvenient, it’s about the only way you stand any chance or reaching someone more than a few blocks away.  I was stationed on top of a parking garage, and I only heard people on FRS radios if they were up someplace high, like a roof or a hill.  On the other hand, I had no problem hearing hams from all over town.
  • Check your equipment.  Several people found that their equipment didn’t work the way they thought when they went to use it.  Particularly a problem with fixed installations, where things tend to work loose eventually, get out of whack, etc.

Hopefully this won’t be our last drill, and we’ll learn more then next time.  Again, though, the one big takeaway from this and from everything post-Katrina is that when all else fails, ham radio works.

CERT | Radio
Tuesday, October 18, 2005 12:54:30 PM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

TokyoFlash has a new Morse code watch that tells time either audibly or in LEDs using Morse code.  Very cool, and good practice to boot.

[via Gizmodo]

Tuesday, October 18, 2005 9:57:51 AM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  | 
# Wednesday, October 12, 2005

We’ll be running an emergency communications drill in Hillsboro this Saturday morning, October 15th.  Details are here.  Basically the idea is to see how many people can reach the county EOC (Emergency Operations Center) from their homes via radio.  Any radio will do.  The EOC will be monitoring amateur (147.4) FRS (channel 9) and CB (channel 9).  Some of us hams will also be monitoring the FRS channels in an attemp to relay messages to the EOC from FRS users.  I’m hoping that when people see how far they can actually reach with their FRS radios, they might be encouraged to get their amateur licenses. 

If you have a radio, and you live in Hillsboro, get on the air at 10:00.  We’ll be listening.

CERT | Radio
Wednesday, October 12, 2005 9:51:05 AM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Monday, October 10, 2005

After seeing Serenity, I was really jonesing to watch the Firefly series again, but alas, my copy was lent to a friend and thence disappeared into oblivion.  So…

I ordered a new copy, and it showed up on Friday.  Pure goodness.  I’ve gotten through the first 4–5 episodes already.  What’s not to like?  The dialog is fantastic, the future both well crafted and highly plausible, and the acting was quite good for what it was.

It’s always a joy to watch Joss Whedon’s shows.  It’s nice to know that there’s someone out there who doesn’t assume their audience is composed entirely of knuckle draggers.

Monday, October 10, 2005 2:54:14 PM (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |