Deployment Made Simple

Deploying software doesn’t have to be that complicated! I’ve seen and built many software building and deployment solutions over my career, and I have come to find that most software deployment can be boiled down to a simple process. I’m not trying to give you a solution for your software deployment automation, nor am I trying to perfectly model your …

Add APPLY to Your TSQL Tool Belt

Every once in a while I stumble across some SQL keyword that I didn’t really know about, but is extremely useful. The other day I came across APPLY, or rather CROSS APPLY. After reading through documentation on how it works and articles about it, I had a bit of trouble understanding it because I couldn’t really find a simple explanation. …

lg_cocacola_zero_can.jpg

Zero Configuration Development Environments

I have been working on getting set up this week to develop for my new, awesome employer, TrackAbout. In doing so, I have once again felt the pain of getting a development environment configured.  I forgot how painful it can be.  This is in no way a reflection of TrackAbout, the truth is most development environments are a pain to …

database columns

Naming Database Columns, When to Violate DRY

DRY = Don’t Repeat Yourself. For the most part this is a good principle to follow.  But, there is one particular instance where I feel repeating myself makes things more clear. It is very important for us to remember that principles are important, but ultimately they are very strong guidelines, not absolutes.  (It is hard to imagine that I just …

apollo 13 image to show why complicated sql should be checked

Using SQL to Check Complicated SQL

Complicated Queries I frequently find myself in the position of having to write fairly complex SQL queries in order to get a list of data that matches a certain criteria.  One problem with complicated SQL queries is that it is very hard to know if the result you have is correct, especially when your query involves multi-table joins and sub-selects. …