Google Maps update
I just noticed that Google Maps introduced the ability to show historical "average traffic" for any given time on particular day of the week. I just used it to confirm my commuting schedule, and it seems to correlate well with my experiences and validate that the times I drive are pretty reasonable.
There are definitely some systemic traffic slowdowns in the Portland area. For example, 26 west bound between Murray and Bethany is nearly always a problem from 4PM-7PM, probably stemming from the fact that the road moves from 3 lanes down to 2 just after the Bethany exit. This is especially unfortunate since the third lane was just added...although I do admit that there are much more serious traffic concerns in the area to focus our resources on.
It would be nice to know that those that plan road improvements take a look at this type of data to prioritize their efforts.
Calendar sync bliss (finally)

Finally, a calendar sync solution that works. After my experiment with gSyncIT, I just couldn't quite get past some of its limitations. Once multiple calendars get involved, things get a bit ugly.
A coworker recommended SyncMyCal as a way past those issues, and I'm pretty happy. You'll see my calendaring setup to the right.
Google Calendar is pretty much my primary calendar, and I have several calendars loaded. Some calendars, like US, UK, Indian Holidays and the Winterhawks game schedule are information only. However, I have my own calendar, a family calendar for events the whole family is attending, and two TripIt calendars (one for my wife, one for me) that do a great job representing any travel I'm doing.
I'd like to make sure that these calendars are available (at least in free/busy form) to other Exchange users at work, and that the calendars get posted to my cell phone using Windows Mobile. The Outlook 2007 Internet Calendars feature doesn't allow this, so I needed a solution that would allow my Google calendars to merge into my single Outlook calendar. I was also looking for my work calendar to post out to Google so I could have visibility there as well.
SyncMyCal had the answer through the use of category synchronization. Each Google calendar has their events assigned to a specific category, and only those events are sync'd with that calendar. Anything not assigned to a category (work stuff) gets sync'd to Google under a new "Work" calendar. I didn't need full synchronization here, but it's nice to know I have it if I need it.
What's missing? I can't find a way to have SyncMyCal make all Google-sourced events private on the Outlook side (although it does sync the private flag). I have to remember to mark anything truly private as such. Not a big deal, but it's worth mentioning.
There is definitely whitespace for an entrepreneur to simplify calendaring...I can't believe that my needs are *THAT* special...
C# Covariant Generics
Sorry for the highly technical posts...lighter stuff to come!
This has really been bugging me on my current project. In an object oriented system, if one class inherits from another (e.g. "Cat" inherits from "Animal"), and a method expects to receive the base class as a parameter, it is safe to send in a subtype. In my example, a method operating on "Animal" can take "Cat" safely. This is sometimes called "downcasting".
This behavior should extend to generic types. Again, in my example, if a method expects a List of Animals, I should be able to pass in a List of Cats. However, C# does not allow this behavior (but the CLR does). Bah!
Here is some more background I've dug up on the issue:
Labels: C# |