#!#@$!@ XM Radio, !$!@$ Car Radios

Big problem with XM: Not user installable, dealers want you to drop off your car for half a day or schedule two weeks in advance to get it installed.

Big problem with cars: Not enough electrical sockets. I want to be able to plug anything into my car! I don’t want to have to jury rig a connection to the fuse box. The cigarette lighter doesn’t cut it. There aren’t enough of them and they are inelegant.

Big problem with car radios: To hard to hook up arbitrary device to the speakers. I just want to play my audible.com books from my Tungsten Palm, but right now if I wanted to do that I’d have to burn the audio book to half a dozen CD and either play them that way, or then encode the audio CD to mp3 format and put them on a single disk. That is a lot of work, maybe more than listening to the book!

Unions vs Outter Joins

If you have one table of things, say bills that need to linked to a large number of subsidiary tables that have a wide variety of structures, you can:

Do pairwise joins between your fact table and your subsidiary table then union all of these together. This runs the risk of losing rows or doubling rows if you have data quality problems (having a fact described in two subsidiary tables or in no subsidiary tables).

The better solution is to have the fact table link by an outter join to all of the subsidiary tables. This will result in a bunch of columns with either a null or the description of the row in the fact table. COALESCE can be used to pick the first non-null value. This way, you never lose fact rows, you get a description picked at random if there are more than 1 descriptions in the subsidiary tables and you get a null if the description can’t be found.

Its time for C#

Because it supports .NET better than Visual Basic and I can’t take the time to convert code which would be faster to write from scratch.

IDEs available:

Visual Studio: +Made by Microsoft so probably works with language better -Costs Money +Under $100 bucks
C# Builder: +Made by Borland, so they try harder + Free(personal edition)

Easy decision. Now we are off to download the personal edition!

Things DTS needs

1) STOP-GO A task that can be quickly set to always succeed, or always fail
2) Run Access ‘action queries’ in batches (10 or so access queries executed in a row, graphically)
3) Send table (turn an access or SQL view or table into an excel spreadsheet and send it)
4) Drop table (which always succeeds)
5) Execute Access ‘action queries’
6) Create Excel spreadsheet

Currently all these very common tasks require a big hassle.

DTS also needs to:
Make the graphical taks bigger and make them visably change when properties change, for example, the icon should have a big red circle with line through it if the task is disabled.