Data Model Changes and Replication

March 13th, 2010

Replicating Data Model ChangesJust a little reminder note today on the simplest way to make data-model changes in SQL Server 2005 when the database is replicated via transactional replication. This is from my own personal experience of replication and very-much muddling my way through learning how to use it effectively. Otherwise, this posts presumes you are familiar with Replication Monitor and so on.

Read the rest of this entry »

Boolean Expressions

March 5th, 2010

The C# code-base I work on has hundreds of places where I have felt a boolean expression could have been used to simplify the code substantially.

Read the rest of this entry »

Achieving Faster ADSL Speeds…

February 7th, 2010

Faster ADSL…or “How to improve your appalling ADSL speeds to what they told you you’d get speeds”
…or “How I split my ADSL and telephone signals and shoved them down a Cat5e cable”.

Read the rest of this entry »

Phantom Code

February 6th, 2010

Phantom LimbI’ve just worked on a little support problem that was quite interesting - although not in a good way - as unfortunately it demonstrates failures at so many stages of the specification and development process that I am quite disappointed to be associated with it. Associated, but not the cause of it, to be clear :)

Read the rest of this entry »

Why’s Ruby Guide Update

August 31st, 2009

I’ve just updated Why’s Ruby Guide pdf to include Chapter 7’s images; go to the specific page with updates. Thanks to Andy Matuschak for pointing this out to me, and giving me a link to where the documents are still available on the internet :)

The Rounding Race - Rounding DateTimes to Dates at Midnight

August 31st, 2009

CalendarYesterday I covered the implementation details of DateTime and SmallDateTime datatypes in SQL Server 2005. I approached the issue of testing dates to see if they fell on a particular date… but then stopped-short of some fairly useful (but arcane) stuff about rounding dates.

Read the rest of this entry »

One Second to Midnight - DateTimes in Sql Server 2005

August 30th, 2009

One Second to MidnightToday I am enthused to write about the DateTime and SmallDateTime datatypes in SQL Server 2005 (and possibly this also applies to 2008, although that has additional date and time types). I am driven to write this because I have seen a number of issues relating to their use in queries and one in particular that is a real annoyance to me - even if I have to admit that it is completely and utterly pedantic (most of the time).

Read the rest of this entry »

Hello I’d Like to Change my Mother’s Name

May 31st, 2009

An image showing an imaginary signature showing a changing maiden-name; a theoretical impossibilityA few months ago, our client had a ‘Compliance’ team visit. It was a nightmare. Worse than the general guff Marketing / Sales Departments come up with… or those nasty little changes that are all designed to improve the user experience (you know the ones; where you have to turn some design or code on its head, just because the users are apparently totally unable to understand ‘X’ or ‘Y’*). Anyway, I’m not exactly sure what we were meant to be complying to, but some of the changes were so arbitrary that we could not think of a single justification for them.

Read the rest of this entry »

Big Release Week

May 26th, 2009

A shopping list tells us what we have yet to buy

A very personal note this time. Last week I released a project that was pretty-much the largest single release that I’ve worked on for my current employer.

Like many systems, the history of this one is that as customer applications made their way through the relevant processes, the system recorded various information about the processes that happened and how they worked out. The system then used the presence or absence of those success / fail records to decide what needed to be done next.

Read the rest of this entry »

Empowering Your Lookup Tables

May 16th, 2009

Recently, I’ve noticed that some developers, while fully understanding what a lookup table is for in terms of normalising data, miss opportunities to use them in additional ways. This post is therefore about those further uses for lookup tables that will really give you an opportunity to streamline your code.

Read the rest of this entry »