Click here to monitor SSC

Phil Factor

Phil Factor

SQL Server Table Smells


Table smells in SQL Server are just like code smells. They are just an indication that something may need to be checked or investigated. They are easy to check as well, because you can generally ferret through the object catalog metadata views to flush out the aspects that just don’t smell right. In this blog, […]

7 March 2016 5:07 pm by
Phil Factor

The Luhn Algorithm in SQL


/* The Luhn test is used by most credit card companies to check the basic validity of a credit card number. It is not an anti-fraud measure but a quick check on data corruption. It still allows any digits that are odd or even to be switched in the sequence. Most credit cards are compatible […]

16 February 2016 3:18 pm by
Phil Factor

De-duplicating Delimited Lists in SQL Server


/* In a recent article 'Removing Duplicates from Strings in SQL Server', Aaron Bertrand comes up with the interesting problem of removing duplicates from lists of strings. The example he gives is … 'Bravo/Alpha/Bravo/Tango/Delta/Bravo/Alpha/Delta'… and you want to make each word unique in the list… ‘Alpha/Bravo/Delta/Tango’. … You want just one occurrence of Bravo, for […]

19 January 2016 6:24 pm by
Phil Factor

The SQL of the Feast Days of Western Christendom


I've been intrigued for a long time by the Christian feasts. Nowadays, we start getting excited about Christmas around July, and it is considered by commerce to be fair-game as a de-walletizing activity from Halloween onwards. I would like far more feast days to get excited about. Our ancestors had so many feast days that […]

24 November 2015 12:30 pm by
Phil Factor

Late in the Day for a DBA


I first met Joe when I went to Woodworking evening classes several years ago. I saw him from across the room. He was at the lathe, turning a bowl. There was something about the careful, diligent way he was working that activated my DBA-dar. I approached him. “You’re a DBA, aren’t you?” I asked. He […]

5 November 2015 1:53 pm by
Phil Factor

Soft Skills for the Developer


(Guest Editorial for the Simple-Talk newsletter) In the rush to recruit a developer to fill a gaping void in a development project, it is sometimes easy to forget the relative importance of the skills you need. We were building a complex middleware architecture based on SOA principles with distributed transactions. The task was daunting, and […]

11 September 2015 10:54 am by
Phil Factor

Typoglycemia: The PowerShell and the SQL


Typoglycemia is the ironic name, (derived from Hypoglycemia) given to the phenomenon that many readers can understand the meaning of words in a sentence even when the interior letters of each word are scrambled. They appear to recognize words by the outermost letters, the length, the letters used and the context.  As long as all […]

30 August 2015 9:37 am by
Phil Factor

SQL Server: The Neglected Features


Have you ever experienced that moment in an exam, frantically scribbling your answer to the final question, when the invigilator looks sternly across the room and says “time’s up, now cease writing and put down your pens”? I sometimes imagine this happening to the developers in the server division of Microsoft. SQL Server has several […]

28 August 2015 11:23 am by
Phil Factor

Can Code Review Be Automated?


I was scanning the API of DacFx, the ‘engine’ of SSDT, and became interested in the facility it contains for automating SQL code reviews. DacFx allows you to parse the SQL code sufficiently to do static code analysis, to scan for heresies, deprecated code and code that doesn’t ‘conform to corporate policy’. Dave Ballantyne has […]

17 July 2015 11:38 am by
Phil Factor

UWP: The Platform Formerly Known as Metro


Three years ago, I listened to a keynote at a developer conference. The man from Microsoft beamed confidently at the vast auditorium and said “I can tell you confidently that in a year’s time, you will all be writing Metro applications for a huge marketplace”. We clapped, but as the keynote proceeded and we saw […]

21 May 2015 12:46 pm by
Older posts

Blog archive