Don't Always Normalize Your Database

Normalizing a database isn't always the right way to go. Basically, normalization guarantees certain kinds of data integrity. But all the JOINS you'll end up using are performance suicide. For read-heavy applications you de-normalize. That's something to keep in mind for sets of tables we use that are very large and mostly used for reporting (read only). For most of our financial data we need the data integrity so we normalize and deal with the penalty hit of using JOINS. One financial app I maintain is a good example.

Are you voting for McCain? Ask him these questions.

If you're supporting McCain, here are a few questions you should ask him. Forward this along to all your conservative or Republican friends and colleagues.


Boston rain can be hell

The last week of June, 2008, was aqua-hell. On a daily basis the evening commute was fraught with flooded streets. Getting home was an adventure and a gamble. "Should I plow through this deep puddle and risk a stalled engine? Or do I go through the detour and hope it's not just as terrifying."

Using Linux LVM with ZoneMinder Open Source Security Software


With Linux LVM, you can dynamically add or remove hard drives from a server as your ZoneMinder storage needs change.
ZoneMinder is a Linux, open sourced software system to record multiple camera streams. Unlike other server services, ZoneMinder (ZM) requires massive amounts of storage. Storage needs differ with various factors such as:

What NOT to write on your resume

We've been hiring here at Blue Cross as we tend to do. This time it's for a position on my team. Given the high volume of talented people out there, I was looking forward to reading their resumes. Being the naive guy I am, I forgot about one thing: bullshit. Yes, it's out there. It's out there on a lot of resumes. In fact, sometimes you can't even detect it until the candidate comes in for an interview. Then it takes on a more amusing verbal form and you're stuck there for the full hour until it's over.

The WRONG way to clear an Access table

I swear, I haven't seen something this stupid in a very long time (and I work with Access everyday).

DoCmd.OpenTable "TblOracleUploadAdjs", acViewNormal, acEdit
DoCmd.RunCommand acCmdSelectAllRecords
DoCmd.RunCommand acCmdDelete
DoCmd.Close acTable, "TblOracleUploadAdjs"

For the uninitiated, what this does is open a table up, select all the records, deletes them, then closes the table. The better way to do this would be to execute the following query:

A legacy system rebuild gone wrong

This is one of the better articles on the site. Basically, a large company took their successful, but aging mainframe system, hired some right-out-of-college hotshots to build a new system in the latest language (VB.NET? Seriously?), and failed miserably. Great exercise in bad software engineering. Reminds us to be more careful when we brazenly think we can replace an existing system. Also a good reminder that the language and syntax doesn't matter, the architecture matters more.

Sandisk Sansa View MTP Mode in Kubuntu 7.04 Linux

Update: I've since bought an iPhone 3G. Thanks for nothing Sandisk.

If you're trying to get your Sandisk Sansa View MP3 player to work in MTP mode in Linux, follow the instructions on this Ubuntu Forums thread:

Here's my addendum to those instructions and how well they worked for me.

My Setup

Ron Paul's Boston Tea Party 2007 Video from Faneuil Hall

This is a video from inside Faneuil Hall. There were guest speakers in support of Ron Paul including a family member of his. Please note, the camera is pointed at the audience about 15 minutes in the beginning due to an error.


Subscribe to RSS - blogs