Here are our articles in order of popularity as at 07 Mar 2016

SQL Server Index BasicsGiven the fundamental importance of indexes in databases, it always comes as a surprise how often the proper design of indexes is neglected. It often turns out that the programmer understands detail, but not the broad picture of what indexes do. Bob Sheldon comes to the rescue with a simple guide that serves either to remind or educate us all! ( 25 Nov 2008 ) by Robert Sheldon

Ten Common Database Design MistakesIf database design is done right, then the development, deployment and subsequent performance in production will give little trouble. A well-designed database 'just works'. There are a small number of mistakes in database design that causes subsequent misery to developers, managewrs, and DBAs alike. Here are the ten worst mistakes ( 26 Feb 2007 ) by Louis Davidson

10 Reasons Why Visual Basic is Better Than C#After having converted a whole lot of training materials based on VB.NET into C#, Andy 'Wise Owl' Brown decided to write a tongue-in-cheek rant whilst he could still remember the pain-points. 'Convert to VB.NET! You have nothing to lose but your semi-colons! ' ( 07 Mar 2012 ) by Andy Brown

Beginning SQL Server 2005 Reporting Services Part 1Steve Joubert begins an in-depth tour of SQL Server 2005 Reporting Services with a step-by-step guide to building and deploying basic reports. ( 24 Aug 2006 ) by Steve Joubert

Introduction to Change Data Capture (CDC) in SQL Server 2008Change Data Capture records INSERTs, UPDATEs, and DELETEs applied to SQL Server tables, and makes a record available of what changed, where, and when, in simple relational 'change tables' rather than in an esoteric chopped salad of XML. These change tables contain columns that reflect the column structure of the source table you have chosen to track, along with the metadata needed to understand the changes that have been made. Pinal Dave explains all, with plenty of examples in a simple introduction. ( 03 Aug 2009 ) by Pinal Dave

.NET Application Architecture: the Data Access LayerFind out how to design a robust data access layer for your .NET applications. ( 11 Jul 2006 ) by Damon Armstrong

SQL Server CTE BasicsThe CTE was introduced into standard SQL in order to simplify various classes of SQL Queries for which a derived table just wasn't suitable. For some reason, it can be difficult to grasp the techniques of using it. Well, that's before Rob Sheldon explained it all so clearly for us. ( 29 Apr 2010 ) by Robert Sheldon

Using the FOR XML Clause to Return Query Results as XMLThe FOR XML clause in SQL Server causes a lot of difficulty, mainly because it is rather poorly explained in Books-on-Line. We challenged Bob Sheldon to make it seem simple. Here is his sublime response. ( 27 May 2009 ) by Robert Sheldon

Beginning SQL Server 2005 Reporting Services Part 2Continuing his in-depth tour of SQL Server 2005 Reporting Services, Steve Joubert demonstrates the most common features and functions used to develop effective and dynamic reports. ( 20 Sep 2006 ) by Steve Joubert

A Complete URL Rewriting Solution for ASP.NET 2.0Ever wondered whether it's possible to create neater URLS, free of bulky Query String parameters? Gaidar Magdanurov shows you how with a step-by-step guide to his rewriting solution for ASP.NET 2.0. ( 01 Mar 2007 ) by Gaidar Magdanurov

Understanding Full-Text Indexing in SQL ServerMicrosoft has quietly been improving full-text indexing in SQL Server. It is time to take a good look at what it offers. Who better to give us that look than Robert Sheldon, in the first of a series. ( 29 Dec 2008 ) by Robert Sheldon

.NET 3.5 Language EnhancementsLINQ may be getting the most attention in the forthcoming .NET 3.5, but there are also several new language features that add functionality and make life easier for the programmer. John Papa explains more... ( 25 Jul 2007 ) by John Papa

Subqueries in SQL ServerSubqueries and derived tables can add great versatility to SQL statements, cut down complexity, but can occasionally be a curse when their effect on performance is poorly understood. Surely everyone understands the various types of subqueries and how they are used? If you felt a twinge of doubt, here is Rob Sheldon's easy guide to the subject. ( 26 May 2011 ) by Robert Sheldon

Linus Torvalds, Geek of the WeekLinus Torvalds is remarkable, not only for being the technical genius who wrote Linux, but for then being able to inspire and lead an enormous team of people to devote their free time to work on the operating system and bring it to maturity. We sent Richard Morris off to interview Linus, and find out more. ( 17 Jul 2008 ) by Richard Morris

Concatenating Row Values in Transact-SQLIt is an interesting problem in Transact SQL, for which there are a number of solutions and considerable debate. How do you go about producing a summary result in which a distinguishing column from each row in each particular category is listed in a 'aggregate' column? A simple, and intuitive way of displaying data is surprisingly difficult to achieve. Anith Sen gives a summary of different ways, and offers words of caution over the one you choose. ( 31 Jul 2008 ) by Anith Sen

Execution Plan BasicsEvery day, out in the various discussion boards devoted to Microsoft SQL Server, the same types of questions come up again and again: Why is this query running slow? Is my index getting used? Why isn't my index getting used? Why does this query run faster than this query?. The correct response is probably different in each case, but in order to arrive at the answer you have to ask the same return question in each case: have you looked at the execution plan? ( 11 May 2008 ) by Grant Fritchey

The MERGE Statement in SQL Server 2008When the SQL MERGE statement was introduced in SQL Server 2008, it allowed database programmers to replace reams of messy code with something quick, simple and maintainable. The MERGE syntax just takes a bit of explaining, and Rob Sheldon is, as always, on hand to explain with plenty of examples. ( 27 Aug 2010 ) by Robert Sheldon

Understanding and Using Parallelism in SQL ServerSQL Server is able to make implicit use of parallelism to speed SQL queries. Quite how it does it, and how you can be sure that it is doing so, isn't entirely obvious to most of us. Paul White begins a series that makes it all seem simple, starting at the gentle level of counting Jelly Beans ( 03 Mar 2011 ) by Paul White

Using Covering Indexes to Improve Query PerformanceDesigners of database systems will often assume that the use of a clustered index is always the best approach. However the nonclustered Covering index will usually provide the optimum performance of a query. ( 29 Sep 2008 ) by Joe Webb

Ten Common SQL Programming MistakesIt is not always easy to spot "antipatterns" in your SQL, especially in more complex queries. In this article, Plamen demonstrates some of the most common SQL coding errors that he encounters, explains their root cause, and illustrates potential solutions. ( 20 Aug 2009 ) by Plamen Ratchev

ASP.NET 4.0 FeaturesASP.NET v4 is released with Visual studio 2010. Web developers are presented with a bewildering range of new features and so Ludmal De Silva has described what he considers to be the most important new features in ASP.NET V4 ( 22 Apr 2010 ) by Ludmal De Silva

Beginning SQL Server 2005 Reporting Services Part 3: The Chart ControlPart 3 of the series takes us through the chart control and some of Steve's favourite features that ship with SSRS. ( 24 Oct 2006 ) by Steve Joubert

An Introduction to SQL Server FileStreamFilestream allows us to store and manage unstructured datain SQL Server more easily. Initially, the accounts of FILESTREAM assumed prodigious powers of concentration and cognition, and we mortals all recoiled numbly. However, it became clear that we were missing out on some extraordinarily useful functionality, so we asked Jacob Sebastian to come up with a simple and clear-cut account of the FILESTREAM feature in SQL Server 2008. You'll agree he has managed the feat superbly. ( 03 Aug 2009 ) by Jacob Sebastian

Effective Clustered IndexesAs a guideline, clustered Indexes should be Narrow, Unique, Static and Ever Increasing (NUSE). Michelle Ufford Explains why. ( 06 Jan 2011 ) by Michelle Ufford

SQL Server Data Warehouse CribsheetIt is time to shed light on Data Warehousing and to explain how SSAS, SSRS and Business Intelligence fit into the puzzle. Who better to explain it all then Robert Sheldon. ( 03 Nov 2008 ) by Robert Sheldon

Finding the Causes of Poor Performance in SQL Server, Part 1To tackle performance problems with applications, you first find the queries that constitute a typical workload, using SQL Profiler: Then, from the trace, you find the queries or stored procedures that are having the most impact. After that, it is down to examining the execution plans and query statistics to identify queries that need tuning and indexes that need creating. You then See what effects you've had and maybe repeat the process. Gail explains all, in a two-part article. ( 09 Mar 2009 ) by Gail Shaw

SQL Server 2005 BackupsIf business today is data, then the entire enterprise is in the capable hands of you, the SQL Server DBA. Before you panic, check out Grant's detailed dissection of SQL 2005 backup and recovery regimes. ( 20 Dec 2006 ) by Grant Fritchey

SQL Server 2005 Common Table ExpressionsCommon Table Expressions (CTEs) are one of the most exciting features to be introduced with SQL Server 2005. Nigel Rivett explains what they are and how they can be used. ( 02 Aug 2006 ) by Nigel Rivett

Brad's Sure DBA ChecklistSometimes, all a DBA needs, to help with day-to-day work, is a checklist of best-practices and dos and don'ts. It provides a handy reminder. Brad has come up with a new update to his famous checklist ( 20 Jan 2010 ) by Brad McGehee

Ten Common SQL Server Reporting Services Challenges and SolutionsMany of us who have to develop a Reporting Services (SSRS) application come across various problems, hurdles or 'gotchas' that cause much head-scratching. We've never seen, elsewhere, the ten most common SSRS problems ever listed, let alone their solution, but then along came Ryan with both. Help is now at hand for anyone wrestling with Reporting Services. Indispensable reading for any SSRS beginner. ( 08 Oct 2009 ) by Ryan Duclos

Removing Duplicates from a Table in SQL ServerSometimes, in SQL, it is the routine operations that turn out to be the trickiest for a DBA or developer. The cleaning up, or de-duplication, of data is one of those. Andr s runs through a whole range of methods and tricks, and ends with a a fascinating technique using CTE, ROW_NUMBER() and DELETE ( 11 Feb 2009 ) by Andr s Belokosztolszki

Moving Data From Excel to SQL Server - 10 Steps to FollowSQL Server Integration Services provide a versatile way of reading Excel files into SQL Server. A task like this illustrates the advantages of the graphical approach of SSIS. Andy Brown explains. ( 21 May 2013 ) by Andy Brown

The Seven Sins against TSQL PerformanceThere are seven common antipatterns in TSQL coding that make code perform badly, and three good habits which will generally ensure that your code runs fast. If you learn nothing else from this list of great advice from Grant, just keep in mind that you should 'write for the optimizer'. ( 31 Jul 2012 ) by Grant Fritchey

Designing C# Software With InterfacesThe best way to understand how interfaces improve software design is to see a familiar problem solved using interfaces. First, take a tightly-coupled system design without interfaces, spot its deficiencies and then walk-through a solution of the problem with a design using interfaces. ( 24 Aug 2011 ) by David Berry

Bad CaRMaFrom hope and euphoria, to desperation, firings and the ultimate demise of a company. Tim Gorman charts the rise and fall of a "visionary" IT project. ( 16 Oct 2006 ) by Tim Gorman

Take Row-Level Control of Your GridViewThe ASP.NET GridView is great for very simple tables, but the real world is not always as straightforward as we would like it to be. Sometimes we need to specify the format of the data from the database, and the way it is rendered in the table, more exactly. ( 27 Sep 2007 ) by Jonas Stawski

How to Track Down Deadlocks Using SQL Server 2005 ProfilerIt is irritating, sometimes alarming, for the user to be confronted by the 'deadlock message' when a deadlock happens. It can be a tiresome business to prevent them from occurring in applications. Fortunately, the profiler can be used to help DBAs identify how deadlocking problems happen, and indicate the best way of minimising the likelihood of their reappearance. ( 20 Jun 2008 ) by Brad McGehee

Creating CSV Files Using BCP and Stored ProceduresNigel Rivett demonstrates some core techniques for extracting SQL Server data into CSV files, focussing on a stored procedure approach that gives complete control of the format of the extracted data. ( 20 Nov 2006 ) by Nigel Rivett

The DBA as Detective: Troubleshooting Locking and BlockingIn this article, taken from Chapter 5 of his great new book, SQL Server Tacklebox, Rodney describes in his own unique style how he, as a working DBA, goes about troubleshooting problem queries, and investigating various types of locking and blocking problems. In the process, he  passes on valuable tips learned from practical, and sometimes stressful, experience. ( 31 Jul 2009 ) by Rodney Landrum

Beginning SQL Server 2005 XML ProgrammingXML has been used to represent semi-structured (as well as unstructured) data such as documents and emails. If information in these models has to be queried, then XML is probably the simplest way to represent such information. ( 21 Feb 2006 ) by Srinivas Sampath

Introduction to Exchange Server 2010What's new in Exchange Server 2010 and what features from Exchange Server 2007 have been deprecated? What has been done to further integrate Exchange with Active Directory? In an extract from his new book, Jaap gives a rooftop view of Exchange's new features and their significance, and spells out the main reasons why it is worth upgrading. ( 22 Oct 2009 ) by Jaap Wesselius

Understanding Garbage Collection in .NETOnce you understand how .NET's garbage collector works, then the reasons for some of the more mysterious problems that can hit a .NET application become much clearer. NET may have promised the end to explicit memory management, but it is still necessary to profile the usage of memory when you're developing .NET applications if you wish to avoid memory-related errors and some performance issues. ( 17 Jun 2009 ) by Andrew Hunter

SQL Server Reporting Services Basics: Building SSRS ReportsSQL Server Reporting Services is one of the most popular components of SQL Server, but it has always been surprisingly difficult to get from one place all the basic facts you need to get up and running from scratch, to the point of producing reports. Here Kathi Kellenberger quickly describes the basics of SSRS before showing how to build quick, simple reports. ( 25 Apr 2014 ) by Kathi Kellenberger

SSIS Basics: Setting Up Your Initial PackageWhen working with databases, the use of SQL Server Integration Services (SSIS) is a skill that often needs to be acquired quickly, from scratch. Up until now, it has been a curiously frustrating search to find out the basics, fast, in order to get up and running quickly. No longer, as Annette comes up with a simple introduction for the rest of us. ( 21 May 2012 ) by Annette Allen

Entity Framework 4.0 - Learn to Create Databases from the ModelFor application developers focusing on the needs of their code, rather than worrying about the complexities of data representation, the Entity Framework's abstractions are essential. But eventually a database needs to be created, and Hima is here to show us how it's done. ( 14 Jul 2011 ) by Hima Bindu Vejella

A Complete Guide to Writing Timer Jobs in SharePoint 2010Sharepoint allows you to run recurring processes in background on a schedule. These are Timer Jobs. It is easy to get confused by the process of writing, scheduling, administering and updating timer jobs. Luckily, Damon has made it his mission to produce a complete guide for the Sharepoint developer. ( 20 Feb 2012 ) by Damon Armstrong

The Dangers of the Large Object HeapYou'd have thought that memory leaks were a thing of the past now that we use .NET. True, but we can still hit problems. We can, for example, prevent memory from being recycled if we inadvertently hold references to objects that we are no longer using. However, there is another serious memory problem in .NET that can happen out of the blue, especially if you are using large object arrays. Andrew Hunter explains... ( 19 Mar 2009 ) by Andrew Hunter

Window Functions in SQL ServerWhen SQL Server introduced Window Functions in SQL Server 2005, it was done in a rather tentative way, with only a handful of functions being introduced. This was frustrating, as they remove the last excuse for cursor-based operations by providing aggregations over a partition of the result set, and imposing an ordered sequence over a partition. Now, with SQL Server 2012, we are soon to enjoy a full range of Window Functions. They are going to make for some much simpler SQL queries. ( 27 Oct 2011 ) by Fabiano Amorim

Web Parts in ASP.NET 2.0Most Web Parts implementations allow users to create a single portal page where they can personalize the look, feel, functionality, and experience of their "My Home" page in an application. But what if you want to take Web Parts a step further and allow users to define a personalized interface that applies to a series of pages in an application? ( 05 May 2006 ) by Damon Armstrong

Advanced Matrix Reporting TechniquesIn SQL Reporting Services, the native Matrix control provides a crosstab view of data, similar in behavior to a PivotTable in MS Excel. Rows and columns will have intersecting points of data which is often useful in time based reporting . David Liebowitz shows you how... ( 25 Nov 2007 ) by David Leibowitz

Enhance your Website with ASP.NET AJAX ExtensionsMicrosoft's ASP.NET AJAX Extensions provide developers with a quick and simple way to add AJAX functionality into any ASP.NET Website. In this article, Dan Wahlin demonstrates how to use the UpdatePanel control, which performs asynchronous postback operations that update a portion of a page rather than the entire page itself. ( 01 May 2007 ) by Dan Wahlin

Robyn Page's SQL Server DATE/TIME WorkbenchTo celebrate the seventh anniversary of Robyn Page's classic workbench, Phil brings it right up to date. What starts as a gentle introduction to the use of dates in SQL Server ends up with some unusual tricks in creating calendars and calculating Mardi Gras. ( 16 Aug 2006 ) by Robyn Page

Chuck Moore: Geek of the WeekCharles Moore is one of the greatest ever programmers. The 'Forth' language he invented is still in use today, particularly by NASA, and has never been bettered for instrumentation and process control. He still argues persuasively that the only way we can develop effective software quickly is to embrace simplicity. Like Niklaus Wirth, he remains a radical whose views have become increasingly relevant to current software development ( 05 Aug 2009 ) by Richard Morris

Managing Transaction Logs in SQL ServerThe Transaction Log provides the means by which either the complete set of tasks of a database transaction are performed or none of them are. It ensures that , via rollback, only valid data is written out to the database, and it allows transactions to be played back to recreate the system state right before a failure. Robert Sheldon explains the various basic tasks involved in managing the transaction log. ( 12 Nov 2009 ) by Robert Sheldon

SSIS BASICS: Introducing the Foreach Loop ContainerThe Control flow components of SSIS can cause a great deal of puzzlement to anyone learning SSIS, especially the Foreach Loop. Annette continues her popular 'Basics' series by showing how to use the Foreach Loop container for copying files. ( 27 Nov 2012 ) by Annette Allen

Upgrade Exchange 2003 to Exchange 2010 In this article, the first of two in which Jaap describes how to move from Exchange Server 2003 straight to Exchange Server 2010, he shows what is required before moving mailboxes from Exchange Server 2003 to Exchange Server 2010. He shows how to upgrade Active Directory, install both Exchange Server 2010 and certificates, and set up the Public Folder replication. ( 11 Dec 2009 ) by Jaap Wesselius

Updates to setup projectsThis article explains how to install a new version of your setup project using the Windows Installer update mechanism. ( 18 Jul 2005 ) by Phil Wilson

How to Identify Slow Running Queries with SQL ProfilerWith SQL Server Profiler, it is easy to discover all those queries that are running slowly. Once poorly performing queries are identified, there comes the harder task of speeding them up. Once again, the Profiler can provide a lot of information that can help diagnose and resolve these performance problems. Brad describes this essential part of the process of performance-tuning in an article taken from a chapter to his new book, Mastering SQL Server Profiler. ( 03 Feb 2009 ) by Brad McGehee

Adding a KPI to an SQL Server Analysis Services CubeKey Performance Indicators, which vary according to the application, are widely used as a measure of the performance of parts of an organisation. Analysis Services makes this KPI data easily available to your cube. All you have to do is to follow Rob Sheldon's simple instructions. ( 02 Mar 2010 ) by Robert Sheldon

Implementing Foreach Looping Logic in SSIS With SSIS, it is possible to implement looping logic into SSIS's control flow in order to define a repeating workflow in a package for each member of a collection of objects. Rob Sheldon explains how to use this valuable feature of SSIS ( 27 Mar 2012 ) by Robert Sheldon

Getting Started With Setup ProjectsThis article describes the basics of Visual Studio setup and deployment projects. Subsequent articles will cover more on custom actions, .NET installer classes, and an upgrade for the product. ( 25 Apr 2005 ) by Phil Wilson

The DELETE statement in SQL ServerOf the big four DML statements in SQL Server, the DELETE is the one least written about. This is odd considering the extra power conferred on the statement by the addition of the WITH common_table_expression; and the OUTPUT clause that essentially allows you to move data from one table to another in one statement. ( 25 Nov 2010 ) by Robert Sheldon

Passing Variables to and from an SSIS taskIn which Patrick Index casts a jaundiced eye on SSIS, and decides that, for all its faults, it has a number of uses as an ETL tool. In the first of a series of articles 'from the trenches', Patrick describes how to pass variables to, and from, an SSIS task. ( 20 Aug 2008 ) by Patrick Index

Working with Precedence Constraints in SQL Server Integration ServicesIn SSIS, tasks are linked by precedence constraints. A task will only execute if the condition that is set by the precedence constraint˙preceding the task is met. By using these constraints, it is possible to ensure different execution paths depending on the success or failure of other tasks. This means that you can use tasks with precedence constraints to determine the workflow of an SSIS package. We challenged Rob Sheldon to provide a straightforward practical example of how to do it. ( 07 Jul 2009 ) by Robert Sheldon

Calling Cross Domain Web Services in AJAXThe latest craze for mashups involves making cross-domain calls to Web Services from APIs made publicly available by companies such as Google, Flickr and so on. Unfortunately, the XMLHttpRequest object doesn't allow calls made in one domain to a web service in another. The article surveys the current, somewhat unsatisfactory, solutions and then assesses future directions. ( 29 Dec 2006 ) by Chris Ullman

Exploring Your SQL Server Databases with T-SQLMost DBAs hoard their own favourite T-SQL scripts to help them with their work, often on a USB 'thumbdrive', but it is rare that one of them offers us a glimpse of the sort of scripts that they find useful. It is our good fortune that Scott Swanberg shows us those scripts he uses for discovering more about database objects. ( 09 Oct 2014 ) by Scott Swanberg

XPath, CSS, DOM and Selenium: The Rosetta StoneSome programming conventions are best represented in a chart. Nobody will claim that XPath or CSS are entirely intuitive, as they are terse, economical ways of identifying elements in a hierarchy. However, a chart with recipes and examples is a different matter. Suddenly, apps like Selenium IDE are made easier. ( 04 Apr 2011 ) by Michael Sorens

Free ebook download availableRed Gate Software is offering free downloads of the book, Best of, Vol. 2, a collection of the best articles from ( 28 Apr 2005 ) by Simon Galbraith

The EXCEPT and INTERSECT Operators in SQL ServerThe UNION, EXCEPT and INTERSECT operators of SQL enable you to combine more than one SELECT statement to form a single result set. The UNION operator returns all rows. The INTERSECT operator returns all rows that are in both result sets. The EXCEPT operator returns the rows that are only in the first result set but not in the second. Simple? Rob Sheldon explains all, with plenty of examples ( 28 Feb 2011 ) by Robert Sheldon

.NET 2.0 transaction model.NET 2.0 introduces a new System.Transactions namespace that brings in a lightweight, simplified transaction model. ( 22 Jun 2005 ) by Amirthalingam Prasanna

SSIS Basics: Adding Data Flow to Your PackageAnnette continues her popular series for SSIS beginners by showing how a data flow task can be used in a package to move data from a SQL Server database to an Excel file and insert an additional column into the Excel file that's based on derived data. ( 12 Jun 2012 ) by Annette Allen

Performance tuning tips for database developersPerformance tuning is not easy and there aren't any silver bullets, but you can go a surprisingly long way with a few basic guidelines. ( 17 May 2005 ) by Andy Warren

Build and Deploy a .NET COM AssemblyPhil Wilson demonstrates how to build and deploy a .NET COM assembly using best practices, and how to access it from early and late binding clients. ( 15 May 2006 ) by Phil Wilson

The SQL Server Query OptimizerTo understand how to write SQL code for SQL Server that performs well, it is important to appreciate how the query optimizer works. Ben Nevarez explains the essentials, in a broad sweep through a complex subject, in an article taken from his new book 'Inside the SQL Server Query Optimizer'. ( 03 Aug 2011 ) by Benjamin Nevarez

Five Simple Database Design Errors You Should AvoidAnith follows up his highly successful article Facts and Fallacies about First Normal Form with a fascinating discussion of five common database design errors which persist in spite of the fact that the unfortunate consequences of their use is so widely known. It is a needy reminder to anyone who has to design databases. ( 16 Oct 2009 ) by Anith Sen

14 SQL Server Indexing Questions You Were Too Shy To AskOne of the first things one needs to understand well about SQL Server is indexes, but somehow many of the basic questions don't often get asked or answered much on forums. Rob Sheldon answers some of these shy-making questions about SQL Server Indexes and indexing: the ones we somehow feel silly asking in public, and think twice about doing so. ( 25 Mar 2014 ) by Robert Sheldon

Identity ColumnsWhen Nigel Rivett takes us on a tour of the apparently innocuous subject of Identity Columns in TSQL, even the seasoned programmer is due for one or two surprises. ( 12 May 2008 ) by Nigel Rivett

Graphical Execution Plans for Simple SQL QueriesLearning how to read and analyze execution plans takes time and effort. But once you gain some experience, you will find them an essential skill for getting to grips with performance issues in SQL Server Queries. Grant here describes the range of execution plans for different simple SQL Queries. ( 16 Dec 2008 ) by Grant Fritchey

SQL Server Full Text Search Language FeaturesSQL Full-text Search (SQL FTS) is an optional component of SQL Server 7 and later, which allows fast and efficient querying when you have large amounts of unstructured data. ( 21 Apr 2006 ) by Hilary Cotter

The default trace in SQL Server - the power of performance and security auditingSince the introduction of SQL Server 2005, there is a simple lightweight trace that is left running by default on every SQL Server. This provides some very valuable information for the DBA about the running server, but it isn't well-documented. Feodor reveals many of the secrets of this facility and shows how to get reports from it. ( 14 Mar 2011 ) by Feodor Georgiev

Working with the INSERT statement in SQL ServerThe INSERT statement in SQL Server is versatile. It now allows the insertion of multiple rows of literal values. It also provides the output clause that solves a number of common problems such as ascertaining the value of identity fields, and other calculated fields in tables, or for auditing the rows that are added to tables. Robert, once again, gives a clear introduction. ( 27 Sep 2010 ) by Robert Sheldon

Different Approaches of Entity FrameworkEntity Framework provides three different approaches to deal with the model, and each one has its own pros and cons. Ambily Kavumkal Kamalasanan discusses the advantages of the Model, Database, and Code First approaches to modeling in Entity Framework 5.0. Entity Framework still has its share of issues and is not widely accepted yet - but through contributing to its ongoing development the community can make it more stable and increase its adoption. ( 20 Jun 2013 ) by Ambily Kavumkal Kamalasanan

Implementing Lookup Logic in SQL Server Integration ServicesWith SSIS, you can perform a lookup on data in the course of a task, using referenced data from any OLE DB source. It is a useful feature that enables you to check on the validity of data, or interpret it before proceeding. Robert Sheldon explains. ( 26 Apr 2012 ) by Robert Sheldon

Reading and Writing Files in SQL Server using T-SQLSQL Server provides several "standard" techniques by which to read and write to files but, just occasionally, they aren't quite up to the task at hand - especially when dealing with large strings or relatively unstructured data. Phil Factor provides some T-SQL stored procedures, based on use of the FileSystem Object (FSO), that may just get you out of a tight corner. ( 10 Apr 2007 ) by Phil Factor

Parameter SniffingIf a SQL query has parameters, SQL Server creates an execution plan tailored to them to improve performance, via a process called 'parameter sniffing'. This plan is stored and reused since it is usually the best execution plan. Just occasionally, it isn't, and you can then hit performance problems, as Greg Larsen explains. ( 20 Sep 2010 ) by Greg Larsen

Driving up software quality - the role of the testerHave you ever wondered what a software tester does? Helen Joyce, test engineer at Red Gate software gives us an insight. ( 20 Apr 2006 ) by Helen Joyce

Five Basic Steps for Implementing an Analysis Services DatabaseTo learn an application, nothing beats getting it up and running. Getting started with Analysis Services can be frustrating unless you have a clear and simple guide that gets you started quickly. In this article, the first in a quick-start series on SSAS, BI and Data Warehousing, Rob Sheldon gets you off the runway, and flying. ( 05 Jan 2010 ) by Robert Sheldon

A Performance Troubleshooting Methodology for SQL ServerWhen healing a sick SQL Server, you must forget the idea that there could ever be a simple correspondence between symptom and disease: The art of troubleshooting is much more the art of discovering, and assembling, the various pieces of the puzzle so that you have a complete understanding of what is going on inside of a server ( 28 Sep 2011 ) by Jonathan Kehayias

SQL Server 2005 SnapshotsFind out about Database Snapshots, new to SQL 2005 Enterprise Edition, which provide a read-only, "virtual" copy of a database, at a given point in time. ( 03 Apr 2006 ) by Andrew Calvett

Management Studio Improvements in SQL Server 2008Not everybody who had to use Management Studio when it first appeared in SQL Server 2005 liked it. The paint was still wet and there was still scaffolding around. To give Microsoft its' credit, it has succeeded in transforming it into a much more useful product, in its SQL Server 2008 reincarnation ( 14 Aug 2008 ) by Brad McGehee

SQL Server Excel WorkbenchThe need to produce Excel reports from SQL Server is very common. Here, Robyn Page and Phil Factor present practical techniques for creating and manipulating Excel spreadsheets from SQL Server, using linked servers and T-SQL. The piŠce de r‚sistance is a stored procedure that uses OLE Automation to allow you full control over the formatting of your Excel report, and the ability to include sums, ranges, pivot tables and so on. ( 06 Feb 2007 ) by Robyn Page and Phil Factor

SSIS Basics: Introducing VariablesIn the third of her SSIS Basics articles, Annette Allen shows you how to use Variables in your SSIS Packages, and explains the functions of the system-defined variables. ( 08 Aug 2012 ) by Annette Allen

Fine Tuning your Database Design in SQL 2005Sanchan Saxena gets to grips with the new index-tuning tools and features in SQL 2005. ( 10 Oct 2006 ) by Sanchan Sahai Saxena

SSIS Event Handlers BasicsSSIS event handlers are the simplest means of turning an SSIS script into a reliable system that is auditable, reacts appropriately to error conditions, reports progress and allows instrumentation and monitoring your SSIS packages. They are easy to implement, and provide a great deal of flexibility. Rob Sheldon once again provides the easy, clear introduction. ( 26 Apr 2011 ) by Robert Sheldon

Configuring Forms Authentication in SharePoint 2007Damon Armstrong provides a step-by-step guide to the processes, quirks and pitfalls of setting up Windows Forms Authentication in SharePoint 2007. ( 08 May 2007 ) by Damon Armstrong

Finding the causes of poor performance in SQL Server, Part 2In the first part of this series of articles, Gail showed how to find the procedures that contributed most to performance problems. In this final part, she shows how to use query statistics to pinpoint the queries that are causing the biggest problems, and then use the query execution plans to find out which operations are the root cause. With this information one can select and modify the indexes that can optimize the plans and therefore performance of the query. ( 03 Apr 2009 ) by Gail Shaw

Temporary Tables in SQL ServerTemporary tables are used by every DB developer, but they're not likely to be too adventurous with their use, or exploit all their advantages. They can improve your code's performance and maintainability, but can be the source of grief to both developer and DBA if things go wrong and a process grinds away inexorably slowly. We asked Phil for advice, thinking that it would be a simple explanation. ( 01 Sep 2011 ) by Phil Factor

Should you use ADO.NET DataReader or DataSet?In the beginning, there was the recordset, a central feature of classic ADO. In ADO.NET it was gone. ( 10 Jun 2005 ) by Douglas Reilly

The New Features in C#4.0The co-evolution of Visual Basic and C# is increasingly going to bring the feature-set of those languages closer together. So, having walked us through the new language enhancements available in VB 2010, Hima Vejella now completes the picture by walking us through the new features in C#4.0. ( 04 Nov 2010 ) by Hima Bindu Vejella

Partitioned Tables in SQL Server 2005Nigel Rivett provides an in-depth, practical examination of how to create and manipulate partitioned tables and indexes in SQL 2005. ( 16 Apr 2007 ) by Nigel Rivett

Adding the Script Task to Your SSIS PackagesScript tasks are a great way of extending SSIS functionality, when the buit-in functionality isn't quite Script tasks are a great way of extending SSIS functionality, when none of the buit-in components are quite right for the task you need to perform. But how to go about creating a script task? No worries, once again Robert Sheldon is on hand to provide easy instructions on how to do it. ( 21 Jul 2011 ) by Robert Sheldon

Report Builder 3.0: Creating a Basic ReportReport Builder is underrated as a BI and report-authoring tool. It is a free stand-alone application from Microsoft that provides an intuitive way for anybody to create reports from data. It uses an interface that is similar to Microsoft Office, and supports the full capabilities of SQL Server 2012 Reporting Services. Rob Sheldon starts a short course in how to use it. ( 24 Aug 2012 ) by Robert Sheldon

Working with the bcp Command-line UtilityEven though there are many other ways to get data into a database, nothing works quite as fast as BCP, once it is set up with the right parameters and format file. Despite its usefulness, the art of using the command-line utility has always seemed more magic than method; but now along comes Robert Sheldon to shed light on the murky details. ( 10 Dec 2009 ) by Robert Sheldon

Fired With EnthusiasmAfter years working his fingers to the bone on his own IT business, Phil was enjoying the relative tranquillity of work at a City of London bank. However, he was shocked by the number of "light arms" in the IT department, who didn't do a stroke of useful work all day, and became animated only when the magical hour of 5PM approached... ( 30 Apr 2007 ) by Phil Factor

SQL Server APPLY BasicsOne of the most interesting additions to SQL Server syntax in SQL Server 2005 was the APPLY operator. It allows several queries that were previously impossible. It is surprisingly difficult to find a simple explanation of what APPLY actually does. Rob Sheldon is the specialist in simple explanations, so we asked him. ( 24 May 2010 ) by Robert Sheldon

Back to Basics: Structuring a Web Page with CSS and ASP.NETNick explains why such habits as using nested HTML Tables to position content in the right place on the browser page is bad practice and, nowadays, avoidable. This is just one 'Markup smell' that he discusses on the way to demonstrating the benefits of CSS Style-sheets and ASP.NET Master Pages. ( 28 Jan 2010 ) by Nick Harrison

Visual Studio Setup - projects and custom actionsThis article describes the kinds of custom actions that can be used in your Visual Studio setup project. ( 07 Jun 2005 ) by Phil Wilson

SQL Server Database Growth and Autogrowth SettingsIt's easy to create a database nowadays with point-'n-click, but if you've left your database's autogrowth settings at their default, you may hit problems in the future. Why? What do I do about it? Read on! ( 23 Nov 2011 ) by Greg Larsen

Executing SSIS Packages Nigel Rivett demonstrates how to execute all SSIS packages in a given folder using either an SSIS control package, a stored procedure or a DOS batch file. ( 30 Aug 2006 ) by Nigel Rivett

An Introduction to ASP.NET MVC ExtensibilityBecause ASP.NET MVC has been designed with extensibility as its design principle; almost every logical step of the processing pipeline can be replaced with your own implementation. In fact, the best way to develop applications with ASP.NET MVC is to extend the system, Simone starts a series that explains how to implement extensions to ASP.NET MVC, starting with the ones at the beginning of the pipeline (routing extensions) and finishing with the view extensions points. ( 21 Sep 2011 ) by Simone Chiaretta

Upgrade Exchange 2003 to Exchange 2010 - Part IIIn Jaap's second article on upgrading straight from Exchange Server 2003 to 2010, he explains how to move the various services from Exchange Server 2003 to Exchange Server 2010 and fully decommission the Exchange Server 2003 servers. ( 15 Jan 2010 ) by Jaap Wesselius

Brad's Sure Guide to IndexesIn order to best appreciate the reasons for, or importance of, the various administrative tasks that are needed for indexes, it is a good idea to take a look at how the various types of indexes work. Who better to help with a clear expanation for this than Brad McGehee? ( 11 Jun 2009 ) by Brad McGehee

Creating cross tab queries and pivot tables in SQLFor those times when you absolutely, positively got to perform a cross tab query in SQL, Keith Fletcher's T-SQL stored procedure will allow you to do it "on the fly". You can add it to your database and start cross tabbing immediately, without any further setup or changes to your SQL code. Check it out, and then take the cross tab challenge. If you can compile a cross tab report that displays the order value by customer, by quarter, using the stored procedure, you may win a much-coveted prize! ( 27 Mar 2007 ) by Keith Fletcher

UPDATE Basics in SQL ServerSQL Server's UPDATE statement is apparently simple, but complications such as the FROM clause can cause puzzlement. Bob Sheldon starts simply, and introduces the more complex forms painlessly. ( 21 Jun 2010 ) by Robert Sheldon

SQL Server Error Handling WorkbenchGrant Fritchey steps into the workbench arena, with an example-fuelled examination of catching and gracefully handling errors in SQL 2000 and 2005, including worked examples of the new TRY..CATCH capabilities. ( 20 Feb 2007 ) by Grant Fritchey

Defragmenting Indexes in SQL Server 2005 and 2008Rob Sheldon tackles the subject of Index Defragmentation in SQL Server 2005 and 2008, using the sys.dm_db_index_physical_stats system function. He shows how to analyze indexes and, if necessary, how to go about  reorganizing or rebuilding indexes. He makes the point that, by analyzing indexes effectively, you can save a lot of unnecessary  rebuilding of indexes. ( 31 Jul 2009 ) by Robert Sheldon

Columnstore Indexes in SQL Server 2012The columnstore index in SQL Server 2012 stores columns instead of rows, and is designed to speed up analytical processing and data-warehouse queries. Whilst columnstore indexes certainly do that effectively, they are not a universal panacea since there are a number of limitations on them. When used appropriately, they can reduce disk I/O and use memory more efficiently. ( 30 Jul 2013 ) by Robert Sheldon

Donald Knuth: Geek of the WeekDonald Knuth is an extraordinary man. As well as inventing 'Literate Programming' and writing the most important textbook on programming algorithms, he is also famous for designing and programming one of the most widely-used digital typesetting systems ever, even designing the fonts that went with it. He also pioneered the use of 'Open-source' software. Knuth is a man of engaging charm and enthusiasms who combines a knowledge of history, music, art and mathematics with a unique insight into the art of computer programming. ( 26 Nov 2009 ) by Richard Morris

Manipulating XML Data in SQL ServerWhen the average database developer is obliged to manipulate XML, either shredding it into relational format, or creating it from SQL, it is often done 'at arms length'. A shame, since effective use of techniques that go beyond the basics can save much code, and are likely to perform better. ( 23 Oct 2012 ) by Seth Delconte

The Framework MythIf ever there was an irresistible programmer's platitude, it is that code-reuse is invariably a good thing. Unfortunately, even the best of advice can be taken to a ludicrous extreme, the construction of generic frameworks within organisations. Mike Mooney gives a warning, based on painful experiences. ( 07 Apr 2011 ) by Mike Mooney

Database Design: A Point in Time ArchitectureIn most relational database implementations. Update and Delete commands destroy the data that was there prior to their issue. However, some systems require that no information is ever physically deleted from or updated in the database. In this article, Arthur Fuller presents a solution to this requirement in the form of a Point-in-Time architecture: a database design which allows a user to recreate an image of the database as it existed at any previous point in time, without destroying the current image. ( 22 Feb 2007 ) by Arthur Fuller

Custom Events in VB.NET 2005Visual Basic .NET is well known for its event-driven programming capabilities. VB.NET 2005 adds new functionality for custom events that provides flexibility in handling and controlling events. ( 26 Sep 2005 ) by Amirthalingam Prasanna

New Features in Reporting Services 2008 and 2008 R2Quietly, Microsoft has been making radical improvements to Reporting Services; but precisely what was introduced, and when? We asked Bill Pearson, the well-known BI expert, to come up with a definitive survey of the more recent changes and how they help the user of Reporting Services. ( 06 Jul 2010 ) by Bill Pearson

Exchange E-mail Addresses and the Outlook Address CacheBecause Exchange auto-complete cache uses X.500 addresses for e-mail sent to addresses within the Exchange organization, it will bounce back messages from a re-created mailbox even after you give the user account all the old SMTP addresses. This is because the old X.500 address in the auto-complete cache is missing, and this causes Exchange to reject the messages. Ben Lye explains how to solve this common problem. ( 12 Jan 2009 ) by Ben Lye

SQL Server Replication Crib SheetRobyn Page and Phil Factor delve into all the things you need to know, rather than want to know, about SQL Server replication. ( 14 May 2007 ) by Robyn Page and Phil Factor

SSIS Basics: Using the Conditional SplitThe Conditional Split can route data rows to different outputs depending on whatever criteria of the data that you wish. It works rather like the SWITCH block in a procedural language. Annette shows how to add a conditional split to your data flow. ( 28 Jan 2013 ) by Annette Allen

SQL Server 2005 SSIS: Tuning the Dataflow TaskLearn how to get maximum performance out of the dataflow task with an extract from Kirk Haselden's popular book on Microsoft SQL Server 2005 Integration Services. ( 23 Oct 2006 ) by Kirk Haselden

Great SQL Server Debates: Buffer Cache Hit RatioOne of the more popular counters used by DBAs to monitor the performance, the Buffer Cache Hit Ratio, is useless as a predictor of imminent performance problems. Worse, it can be misleading. Jonathan Kehayias demonstrates this convincingly with some simple tests. ( 18 Jan 2012 ) by Jonathan Kehayias

Professional Certification for DBAsIn this article, republished from Brad McGehee's book 'How to Become an Exceptional DBA', Brad explains why there are several advantages for DBAs in continuing to take exams throughout their careers. ( 16 Jun 2008 ) by Brad McGehee

SQL Server 2008 SSIS CribsheetSSIS has achieved several new and interesting features in SQL Server 2008. And who better to guide you through them and explain them but Robert Sheldon. ( 05 Aug 2008 ) by Robert Sheldon

Handling Errors in SQL Server 2012The error handling of SQL Server has always been somewhat mysterious. Now at last, the THROW statement has been included in SQL Server 2012 that, combined with the TRY ... CATCH block, makes error handling far easier. Robert Sheldon explains all. ( 03 Jan 2013 ) by Robert Sheldon

Transact-SQL Formatting Standards (Coding Styles)How should SQL code be formatted? What sort of indentation should you use? Should keywords be in upper case? How should lists be lined up? SQL is one of those languages that will execute anyway however you treat whitespace and capitalization. However, the way SQL is laid out will effect its readability and the time taken to review and understand it. Standardisation of code layout is an important issue, but what standard should you adopt? Rob avoids a direct answer, but tells you the sort of answers you'll need to decide upon when creating a strategy for formatting SQL code. ( 25 Aug 2009 ) by Robert Sheldon

Beginning SQL Server Reporting Services Part 4The long-awaited final instalment of Steve Joubert's popular 4-part "from the ground up" guide to SQL Server 2005 Reporting Services. Here, he dissects the Report Definition Language and provides a practical demonstration on the use of Report Builder, an ad-hoc reporting tool that allows end users to build and customize their own reports. ( 12 Feb 2007 ) by Steve Joubert

Implementing the OUTPUT Clause in SQL Server 2008In retrospect, it was probably the inclusion of the OUTPUT clause in the MERGE statement that gave SQL Server 2008 its most powerful SQL enhancement.. It isn't the easiest of features to explain, but Bob does it in his usual clear and careful way. ( 22 Jul 2010 ) by Robert Sheldon

13 Things You Should Know About Statistics and the Query OptimizerFabiano launches into a sound technical explanation of the way that the query optimiser works in SQL Server with a mention of Brazilian Soccer stars and young ladies on Copacabana beach. You'll never quite think of statistics, execution plans, and the query optimiser the same way again after reading this, but we think you'll understand them better. ( 07 Jan 2010 ) by Fabiano Amorim

TortoiseSVN and Subversion Cookbook Part 6: SnapshotsMoving backwards in time in Subversion is like time travel in science fiction. It's fine to look around, but If you change anything it can have unforseen consequences, and you always have to return to the present. Snapshots enable you to navigate in source control to examine or compile the code as it existed at a point in time; to access a particular build. ( 19 Mar 2012 ) by Michael Sorens

The Art of Dealing with PeopleTechnical people generally don't easily adapt to being good salespeople. When a technical person takes on a customer-facing role as a support engineer, there are a whole lot of new skills required. Dr Petrova relates how the experience of a change in job gave her a new respect for the skills of sales and marketing. ( 15 Dec 2009 ) by Dr. Masha Petrova

SQL Server Security CribsheetIf you've ever had brain meltdown trying to understand SQL Server users, roles, permissions, logins etc. then Robyn Page's security cribsheet might be just be your Panacea. ( 20 Feb 2007 ) by Robyn Page

Facts and Fallacies about First Normal FormWhen discussing the normalisation process, it is always the First Normal Form that causes the most grief and confusion. Anith Sen takes up the challenge to explain, in simple terms, exactly what the First Normal Form really is, and why it is so important for Database Design. Along the way, he dispels some of the myths that have grown up around 1NF. ( 07 May 2009 ) by Anith Sen

Get Started with Chart Development in Reporting Services 2008With Reporting Services 2008, it is now much easier to produce charts from data in SQL Server, and the variety of charts seems almost limitless. All you need to get started is a quick step-by-step guide that tells you the basics and gets you past the stage of creating the first chart. Well, here it is. ( 18 Jan 2011 ) by Michael Garrett

Unit Testing Myths and PracticesWe all understand the value of Unit Testing, but how come so few organisations maintain unit tests for their in-house applications? We can no longer pretend that unit testing is a universal panacea for ensuring less-buggy applications. Instead, we should be prepared to actively justify the use of unit tests, and be more savvy about where in the development cycle the unit test resources should be most effectively used. ( 05 Jan 2012 ) by Tom Fischer

Controls Based Security in a Windows Forms ApplicationJesse Liberty demonstrates a role-based security architecture for Windows Forms applications that will allow you to restrict access to any given control, on any form, so that it is either invisible or disabled, based on who is using the form. ( 22 Jan 2007 ) by Jesse Liberty

Simple Query tuning with STATISTICS IO and Execution plansA great deal can be gleaned from the use of the STATISTICS IO and the execution plan, when you are checking that a query is performing properly. Josef Richberg, the current holder of the 'Exceptional DBA' award, explains how an apparently draconian IT policy turns out to be a useful ways of ensuring that Stored Procedures are carefully checked for performance before they are released ( 04 Feb 2010 ) by Josef Richberg

Questions About Pivoting Data in SQL Server You Were Too Shy to AskOf all the basic SQL operations, the pivot seems to cause the most problems. We can tell from the way that old articles on Simple-Talk on the topic continue to be read. It turns out that there are several questions that come to mind while learning about pivoting, but which are seldom asked on forums. Once more, Robert Sheldon attempts to answer these unspoken questions. ( 01 Jan 2015 ) by Robert Sheldon

SQL Server Functions: The BasicsSQL Server's functions are a valuable addition to TSQL when used wisely. Jeremiah provides a complete and comprehensive guide to scalar functions and table-valued functions, and shows how and where they are best used. ( 10 Nov 2011 ) by Jeremiah Peschka

Designing A Data Access Layer in LINQ to SQLGayani provides the complete source code for a sample Data Access Layer for LINQ to SQL, using the Northwind Database, and explains how it all works and how to get good performance. She shows how easy it is to use stored procedure and views as well as queries to provide a robust run-time infrastructure for managing relational data as objects. ( 21 Feb 2009 ) by Gayani Devapriya

Dr Richard Hipp, Geek of the WeekSimple-Talk's Geek of the Week is Dr Richard Hipp. His code is probably running on your PC, and running completely reliably, for he almost single-handedly wrote SQLite, the most widely deployed SQL Database system in the world. Then he put it in the public domain for all of humanity to benefit from. We sent Richard Morris off to ask this remarkable man why he did it. ( 04 Jul 2008 ) by Richard Morris

SSIS Basics: Using the Execute SQL Task to Generate Result SetsThe Execute SQL Task of SSIS is extraordinarily useful, but it can cause a lot of difficulty for developers learning SSIS, or only using it occasionally. What it needed, we felt, was a clear step-by-step guide that showed the basics of how to use it effectively. Annette has once again cleared the fog of confusion ( 23 Oct 2012 ) by Annette Allen

Unteachable Disaster Recovery TechniquesThere are some skills which are extensions of your instincts, and which you can only learn though years of experience. Matt Simmons has this brought home by the fact that he was recently minutes away from a data-loss disaster, and he doesn't quite know how he prevented it. ( 11 Mar 2010 ) by Matt Simmons

Working with the XML Data Type in SQL ServerThe XML data type, introduced in SQL Server 2005, is a powerful construct. When used wisely, it can provide useful extensions to SQL Server. Robert Sheldon, in the first part of a series, describes how create and index a typed XML column in a table, and discusses when you should consider using an XML Datatype. ( 07 Nov 2011 ) by Robert Sheldon

Niklaus Wirth: Geek of the WeekIt is difficult to begin to estimate the huge extent of the contribution that Niklaus Wirth has made to IT as it exists today. Although now retired for ten years, he remains a abiding influence on the design of computer languages. It is likely that the first structured computer language you ever learned was written by him. He still has fascinating views on contemporary software trends, as Richard Morris found out when he spoke to him. ( 02 Jul 2009 ) by Richard Morris

.NET Collection ManagementThis article focuses on managing a collection of objects using generics, an important addition to the .NET Framework 2.0, and examines the capabilities provided by the generic list. ( 08 Dec 2005 ) by Amirthalingam Prasanna

Window Functions in SQL Server: Part 2-The FrameFabiano continues his introduction to SQL Server's implementation of the window functions by giving a history of what got implemented and when, and explaining the concept of the 'Frame' in a window function, with plenty of examples. ( 24 Nov 2011 ) by Fabiano Amorim

The SQL Server Instance That Will not StartEveryone's SQL Server nightmare: The instance will not start. If such a problem strikes you, keep calm, follow Gail's advice, and you'll soon be back up and running. In the meantime, practice these steps so as to be ready! ( 17 Jan 2013 ) by Gail Shaw

SQL Server 2012 AlwaysOnSQL Server AlwaysOn provides a high-availability and Disaster-recovery solution for SQL Server 2012. It makes use of existing SQL Server features, particularly Failover Clustering, and provides new capabilities such as availability groups. Warwick Rudd explains the basics and shows you how to implement it. ( 15 May 2012 ) by Warwick Rudd

Microsoft Hyper-V Networking and Configuration - Part 1In the first of a series of articles on Hyper-V Networking, Nirmal explains Hyper-V networking and VLAN tagging, and shows how to set up a Virtual Network switch. Once this is done, the Hyper-V Virtual Network Switches can be used to connect unlimited no. of Virtual Machines. ( 11 Dec 2009 ) by Nirmal Sharma

Beginning ASP.NET 2.0It seems that there is both excitement and confusion surrounding Master Pages and Themes. A big part of the problem is that they always seem to be mentioned in the same breath - like I just did. The reality is that they are two separate but equally important technologies. ( 27 Mar 2006 ) by Steve Joubert

SQL Server 2008: The New Data TypesBrad continues his helicopter-level view of the most interesting new features of SQL Server 2008 with a look at the new data types, their use and their significance. ( 11 Oct 2008 ) by Brad McGehee

Temporarily Changing an Unknown Password of the sa Account You are asked for the sa password for a SQL Server in order to perform a software upgrade. You, the DBA, don't know the password and it's not documented. Rodney Landrum provides a way out of this dilemma, demonstrating two techniques for temporarily changing the password, and then returning it to its previous unknown value. ( 10 Jul 2007 ) by Rodney Landrum

SQL Server Endpoints: Soup to NutsSQL Server Endpoints are database objects that define the ways and means that SQL Server 2005 communicates on the network. Any DBA working with SQL Server 2005 will soon need to become familiar with them, particularly if using SOAP, Service Broker or Database Mirroring. ( 06 Jul 2007 ) by William Brewer

Operator of the Week - Spools, Eager Spool For the fifth part of Fabiano's mission to describe the major Showplan Operators used by SQL Server's Query Optimiser, he introduces the spool operators and particularly the Eager Spool, explains blocking and non-blocking and then describes how the Halloween Problem is avoided. ( 20 May 2010 ) by Fabiano Amorim

SQL Server Indexed Views: The BasicsViews are a valuable tool for the SQL Server Developer, because they hide complexity and allow for a readable style of SQL expression. They aren't there for reasons of performance, and so indexed views are designed to remedy this shortcoming. They're great in certain circumstances but they represent a trade-off, and they come with considerable 'small print'. Jes Borland explains. ( 12 Feb 2014 ) by Jes Borland

AJAX basics with jQuery in ASP.NETASP.NET now has support for the jQuery JavaScript library. Although ASP.NET integrated AJAX technology by introducing the is the UpdatePanel server control, jQuery offers an alternative, and more versatile, way of doing it and a great deal more besides. Matteo shows how easy it is to get started with using jQuery. ( 19 May 2010 ) by Matteo Slaviero

Handling Deadlocks in SQL ServerIn this excerpt from his book Troubleshooting SQL Server: A Guide for the Accidental DBA, Jonathan Kehayias provides a guide to identifying the causes, reacting to, and ultimately preventing the dreaded deadlock. ( 10 May 2012 ) by Jonathan Kehayias

Introduction to SQL Server Filtered IndexesSQL Server filtered indexes can save space and improve performance if they are used properly. Under what circumstances can they be used? When are they most effective, and what sort of performance gain or space-saving is likely? How does a filtered index affect the choice of execution plan? Seth explores these questions with practical experiments ( 19 Apr 2013 ) by Seth Delconte

Bulk Inserts via TSQL in SQL ServerThe trouble with using BCP for reading data into SQL Server is that BCP is a command-line program. Fortunately, the same input functionality is available from TSQL within SQL Server. In fact there are two ways, and it is not always obvious which to use. ( 31 Jan 2011 ) by Robert Sheldon

Geek of the Week: Joe CelkoJoe Celko, the Database Developer and writer from Austin Texas, is not a man to mince his words. His encyclopedic grasp of SQL and relational Databases in general comes from a mix of academic knowledge and practical experience. In discussions he can be fascinating, cantankerous, amusing and satirical, but he is never ever dull, as Richard Morris found out when we sent him to interview the SQL language's most famous advocate. ( 16 Oct 2009 ) by Richard Morris

SQL Server Statistics Questions We Were Too Shy to AskIf you need to optimise SQL Server performance, it pays to understand SQL Server Statistics. Grant Fritchey answers some frequently-asked questions about SQL Server Statistics: the ones we somehow feel silly asking in public, and think twice about doing so. ( 12 Feb 2013 ) by Grant Fritchey

Implementing Waiting Pages in ASP.NETThe users of your application will be more likely to tolerate pauses in your application whilst processing goes on, if you provide a 'waiting' page. ( 16 Jul 2007 ) by Gaidar Magdanurov

What use is a Development DBA?"I can't help thinking that unless you have a good DBA on a development team and use him or her as a consultant on all database matters, we're all losing out. I end up having work thrown at me that I could teach a trainee to do, which is a waste of my talents, and the development team's database skills might be 'good enough' but could be so much better." Doug Burns assesses the role of the Development DBA and its increasing importance to the success of software projects. ( 12 Apr 2007 ) by Doug Burns

Simple-Talk SQL Server Backup Crib SheetRobyn Page's crib sheet was a Simple-Talk classic, providing a terse but thorough roadmap of all of the important SQL Server backup-related considerations. It returns, newly revised. ( 10 Aug 2006 ) by Robyn Page

Visual Studio VB 2010 EnhancementsThe latest evolution of VB in Visual Studio will bring with it a bundle of C# functionality, nudging the two languages even closer together. To ensure we're ready to make the most of these enhancements, Hima Vejella takes us through each new feature. ( 14 Jul 2010 ) by Hima Bindu Vejella

Using and Monitoring SQL 2005 Query NotificationQuery notification allows your applications to take advantage of caching, safe in the knowledge that the cache will be refreshed whenever any critical data in the underlying database is updated. Find out how it all works... ( 11 Aug 2006 ) by Sanchan Sahai Saxena

Service Broker Foundations WorkbenchSQL Service Broker, an asynchronous queuing and messaging system for SQL Server 2005, is set to change the way we design and run distributed applications. Adam Machanic makes it all seem so easy... ( 14 Aug 2007 ) by Adam Machanic

ADO.NET 2.0 Factory ClassesThis article explains how to use .NET 2.0's data provider factory classes to develop a pluggable data layer that is independent of database type and ADO.NET data provider. ( 25 Oct 2005 ) by Amirthalingam Prasanna

DTS to SSIS MigrationDetermining how you will upgrade your DTS packages to SQL Server Integration Services (SSIS) is the first step in creating a DTS-to-SSIS migration strategy. ( 18 Nov 2005 ) by Allan Mitchell

How to Kill a Company in One Step or Save it in ThreeThe majority of companies that suffer a major data loss subsequently go out of business. Wesley David remembers vividly the day when the organisation he worked for found that they couldn't restore their data, and the subsequent struggles that ensued. Shoulda-woulda-coulda. ( 07 Feb 2012 ) by Wesley David

Chuck Moore on the Lost Art of Keeping It SimpleChuck Moore is still the radical thinker of Information Technology, After an astonishing career designing languages (e.g. FORTH), browser-based computers, CAD systems and CPUs, he is now energetically designing extremely low-powered 'green' multi-processor chips for embedded systems. Behind everything he does is a radical message: 'Embrace the entire problem, Keep it simple'. ( 18 Jan 2012 ) by Richard Morris

Managing Data Growth in SQL Server 'Help, my database ate my disk drives!'. Many DBAs spend most of their time dealing with variations of the problem of database processes consuming too much disk space. This happens because of errors such as incorrect configurations for recovery models, data growth for large objects and queries that overtax TempDB resources. Rodney describes, with some feeling, the errors that can lead to this sort of crisis for the working DBA, and their solution. ( 21 Jan 2010 ) by Rodney Landrum

The identity crisis in replicationThis article discusses three common problems DBAs are likely to encounter when columns have an identity property that will auto-increment its value when data is inserted. These problems are humorously referred to as the identity crisis. ( 05 Jul 2005 ) by Hilary Cotter

SSIS Basics: Using the Merge Join TransformationSSIS is able to take sorted data from more than one OLE DB data source and merge them into one table which can then be sent to an OLE DB destination. This 'Merge Join' transformation works in a similar way to a SQL join by specifying a 'join key' relationship. This transformation can save a great deal of processing on the destination. Annette Allen, as usual, gives clear guidance on how to do it. ( 16 Oct 2013 ) by Annette Allen

SQL VIEW BasicsSQL Views are essential for the database developer. However, it is common to see them misued, or neglected. Joe Celko tackles an introduction to the subject, but there is something about the topic that makes it likely that even the experienced developer will find out something new from reading it. ( 10 May 2012 ) by Joe Celko

The XML Methods in SQL ServerThe XML Data type has definite uses, but the way of interrogating, retrieving, and manipulating the values of properties and attributes within XML have been so foreign to the SQL language as to be somewhat of a barrier to their use. Fortunately, Robert Sheldon has once more managed to make the subject accessible to those of us who just need to get the job done. ( 08 Dec 2011 ) by Robert Sheldon

Troubleshooting Windows Blue Screen ErrorsThe so-called 'Blue Screen of Death' has inspired fear in the hearts of mere mortals, but Systems Administrators are expected be capable of casually beating back this sinister beast. So imagine Ben Lye's distress when he discovered that many aspiring SysAdmins had no structured approach to tackling the root of the problem. Setting out to remedy the situation, Ben lays out a simple 3-step plan, and dispenses some good advice. ( 06 May 2010 ) by Ben Lye

Managing SQL Server StatisticsAccurate statistics about the data held in tables are used to provide the best execution strategy for SQL queries. but if the statistics don't accurately reflect the current contents of the table you'll get a poorly-performing query. How do you find out if statistics are correct, and what can you do if the automatic update of statistics isn't right for the way a table is used? ( 03 Apr 2013 ) by Erin Stellato

Great SQL Server Debates: Lock Pages in MemoryThere has been much debate over the need for the Lock Pages in Memory privilege, on 64-bit versions of SQL Server. Jonathan Kehayias presents a "warts and all" account of its history, the confusions surrounding its use, and why he believes it's still a good default configuration for 64-bit SQL Server instances, even when running Windows Server 2008 and Windows Server 2008R2. ( 12 Dec 2011 ) by Jonathan Kehayias

Collecting Performance Data into a SQL Server TableOccasionally, when tracking down a performance problem, you have to have information over time on the values of particular sets of performance counters. To track down the more insidious or sporadic problem, it is best to have the data in a SQL Server table, so you can query it. Feodor Georgiev explains the command-line way of doing this. ( 20 Jan 2011 ) by Feodor Georgiev

ASP.NET Master Pages Tips and TricksTake a look at how you can increase productivity and reduce maintenance with your ASP.NET 2.0 website, as Dan Wahlin shares his techniques for handling master pages. ( 14 Jun 2007 ) by Dan Wahlin

Consuming JSON Strings in SQL ServerIt has always seemed strange to Phil that SQL Server has such complete support for XML, yet is completely devoid of any support for JSON. In the end, he was forced, by a website project, into doing something about it. The result is this article, an iconoclastic romp around the representation of hierarchical structures, and some code to get you started. ( 15 Nov 2010 ) by Phil Factor

Tracing memory leaks in .NET applications with ANTS ProfilerWith only 24 hrs to go to the release of his brand new C# 2005 CRM application, Mike Bloise encountered severe memory leak issues. This case study describes how he solved them using ANTS Profiler. ( 29 Sep 2006 ) by Mike Bloise

Minesweeper in T-SQLWhatever happened to the idea that programming in TSQL can be fun? A Simple-Talk reader contributes an article to remind us all that there is more to TSQL than wrestling with DMVs and pumelling recalcitrant correlated subqueries. ( 02 Sep 2010 ) by Auke Teeninga

Gail Shaw's SQL Server HowlersFor the latest in our series of SQL Server Howlers, we asked Gail Shaw which common SQL Server mistakes and misunderstandings lead to tearful DBAs and plaintive cries for help on the forums. ( 14 Aug 2012 ) by Gail Shaw

Creating Tray Applications in .NET: A Practical GuideIt isn't widely known that you can use both WPF and Winforms with VS2010 to create a system tray application in .NET. Michael gives you a practical guide, illustrated by an example that is so effective it can be put to immediate practical use. HostSwitcher comes complete with source code and can be downloaded. ( 04 Nov 2010 ) by Michael Sorens

Responsive design using Foundation with ASP.Net MVCThere are several frameworks that take away the hard work of implementing a responsive design for a website, that will render pages appropriately according to the size of the window. Ed Charbeneau has pioneered the use of Zurb's Foundation Framework in ASP.NET MVC and describes how easy it is to install and use. ( 26 Jun 2012 ) by Edward Charbeneau

Using DAX to retrieve tabular dataData Analysis Expressions (DAX), originally the formula language for PowerPivot workbooks, can also be used within the MDX query window of SSMS to directly access data from a tabular SSAS database, an in-memory database that uses the xVelocity analytics engine and compression. Robert Sheldon shows how easy it is to retrieve data from a tabular database. ( 24 Jun 2013 ) by Robert Sheldon

Dynamic Data Templates in ASP.NET 3.5Gayani gives an introduction to Dynamic Data Templates in ASP.NET 3.5 and explains how one can save a great deal of time and effort when building data-driven web sites by using them ( 17 Nov 2008 ) by Gayani Devapriya

Robyn Page's SQL Server String Manipulation WorkbenchString searching and manipulation in SQL Server can be error-prone and tedious...unless you're armed with the techniques described in Robyn's string manipulation workbench... ( 19 Sep 2006 ) by Robyn Page

Robyn Page's SQL Server Cursor WorkbenchThe topic of cursors is the ultimate "hot potato" in the world of SQL Server. Everyone has a view on when they should and mainly should not be used. By example and testing Robyn Page proves that, when handled with care, cursors are not necessarily a "bad thing". This article coined a phrase, 'Quirky Update', that has since established itself as the industry-term. We now feature a new revised version of the old classic, with help from Phil Factor. ( 24 Jan 2007 ) by Robyn Page

XML Configuration files in SQL Server Integration ServicesPackage configuration files are a great way of providing the values of SSIS package properties so that packages can be used in a far more versatile way. They make the deployment of SSIS packages easier and can provide parameters that are based on the server configuration, or which change for each runtime. They're easy to understand, especially when explained by Rob Sheldon. ( 18 Aug 2011 ) by Robert Sheldon

Bjarne Stroustrup: Geek of the WeekWithout Bjarne Stroustrup, object-oriented programming would have taken much longer to gain mainstream acceptance. Bjarne wrote and popularised 'C with classes', later C++, which changed the way that mainstream computer languages worked. It is still the language of choice for system programmers. ( 12 Dec 2008 ) by Richard Morris

Intelligent Database Design Using Hash KeysYour application may require an index based on a lengthy string, or even worse, a concatenation of two strings, or of a string and one or two integers. In a small table, you might not notice the impact. But suppose the table of interest contains 50 million rows? Then you will notice the impact both in terms of storage requirements and search performance. ( 17 Feb 2006 ) by Arthur Fuller

The PoSh DBA: Grown-Up PowerShell FunctionsLaerte goes step-by-step through the process of tidying up and making more reusable an untidy collection of PowerShell routines, showing how pipelines and advanced functions can make PowerShell more effective in helping to automate many of the working DBA's chores. ( 10 May 2012 ) by Laerte Junior

Designing Efficient SQL: A Visual ApproachSometimes, it is a great idea to push away the keyboard when tackling the problems of an ill-performing, complex, query, and take up pencil and paper instead. By drawing a diagram to show of all the tables involved, the joins, the volume of data involved, and the indexes, you'll see more easily the relative efficiency of the possible paths that your query could take through the tables. ( 25 Feb 2010 ) by Jonathan Lewis

Exchange 2010 DAG Creation and Configuration Part 1If you're using Exchange 2010, then you're probably interested in using the new Database Availability Group feature for your High Availability needs. The DAG is superbly powerful technology, but you'd better make sure yours is 100% correctly configured. Neil Hobson walks us through what we need to know, using a two-node DAG as an example. ( 07 Jun 2010 ) by Neil Hobson

Working with Variables in SQL Server Integration ServicesThere are a number of ways that you can incorporated variables into your SSIS Scripts. Robert Sheldon demonstrates how. ( 01 Mar 2012 ) by Robert Sheldon

Foreign Keys and their StatesAndr s Belokosztolszki, Red Gate developer, shows how foreign key constraints can be disabled and re-enabled in order to simplify operations such as the bulk loading of data into related tables ( 22 Jun 2007 ) by Andr s Belokosztolszki

Data and Silverlight 2: Data BindingSilverlight 2 is far more versatile than Silverlight 1. It can handle data-sources with some subtlety. John Papa tackles the whole subject of data-binding with Silverlight. This article is a partial excerpt from John Papa's upcoming book Data Access with Silverlight 2 by O'Reilly, due to be released in December 2008. ( 05 Jun 2008 ) by John Papa

Implementing Checkpoints in an SSIS PackageLike any other application, an SSIS package can fail. Once the problem has been resolved, you'll usually restart the package, but if you implement SSIS checkpoints, then you have another option: you can restart from the point of failure. ( 10 Oct 2011 ) by Robert Sheldon

Oracle to SQL Server: Crossing the Great Divide, Part 1When a SQL expert moves from Oracle to SQL Server, he can spot obvious strengths and weaknesses in the product that are too familiar to be apparent to the SQL Server DBA. Jonathan Lewis is one such expert: In this article he records his train of thought whilst investigating the mechanics of the SQL Server database engine. The result makes interesting reading. ( 28 Apr 2010 ) by Jonathan Lewis

On Training Your IT ManagerA keen new manager, with ambitions to make his mark, can cause all sorts of unpleasantness in the workplace. Phil Factor explains how to train your new manager to the required standards... ( 23 Nov 2006 ) by Phil Factor

Entity Framework: The CribsheetPrasanna Amirthalingam provides an overview of Entity Framework and how it can be used. He shows that it can provide an excellent interface between the Object-oriented model and the relational. The Entity Framework allows developers to work with data in the form objects and properties without having to concern themselves directly with either the stored procedures or functions of the defined interface, or the the underlying database tables and columns where this data is stored. ( 26 May 2008 ) by Amirthalingam Prasanna

Customizing the Login Page in SharePoint 2007Damon shows how a few simple steps lead you to being able to include the login form in a consistent look and feel to your customer-facing Sharepoint applications ( 05 Jun 2007 ) by Damon Armstrong

Book Review: The Art of XSD - SQL Server XML schemasThe 14 chapters of "The Art of XSD", written by MVP Jacob Sebastian, will take the reader step-by-step all the way from the basics of XML Schema design all the way to advanced topics on SQL Server XML Schema Collections. Reviewer Hima Bindu Vejella gives it an 8/10 rating, and gives us an excellent distilled description of what the book has to offer. ( 10 Jun 2010 ) by Hima Bindu Vejella

VMware Lab setup - A virtualized lab for testing HA and DRSVMWare VSphere is a virtualisation technology that is best learned by setting up, on a single PC, a VSphere cluster as a virtualisation lab. Once you have it, it will then be a useful tool in many ways. This doesn't need to be an expensive exercise, but can be daunting if you don't have a simple guide to talk you through the process. Here, Sean provides that simple guide ( 12 Apr 2011 ) by Sean Duffy

Working with SSIS Data TypesIn order to be able to take data from a variety of sources, manipulate it, and then export it to one of several destinations, SSIS has to use its own data types. Generally, the conversions of data types is handled implicitly, but if you hit problems, then you may need to intervene in one of several ways to ensure an appropriate conversion. ( 02 Jul 2012 ) by Robert Sheldon

GIS and SQL Server 2008: Making Maps with your DataWhen Microsoft introduced GIS into SQL Server with SQL Server 2008, it opened up a whole range of new applications that were previously impossible to do with SQL Server. So what sort of things can you do with GIS Data? We asked an expert! ( 18 Oct 2008 ) by Susan Conway

Coming Out as a Cancer Survivor - A Guide for Software DevelopersA personal perspective on the responsibilities of a cancer-surviving software developer ( 06 Mar 2006 ) by Douglas Reilly

Beginning with Digital Signatures in .NET FrameworkDigital Signatures aren't the most intuitive software devices to explain, but Matteo boldly gives a quick-start account of Asymmetric Cryptography and Digital Signatures before demonstrating how simple it can be to perform a signature using an X509 certificate and .NET Framework base classes ( 07 Oct 2009 ) by Matteo Slaviero

.NET Memory Management Basics.NET memory management is designed so that the programmer is freed from the chore of consciously having to allocate and dispose of memory resources. It is optimized to work best with the most common patters of usage. However, the more conscious you become of scalability and performance, the more useful an understanding of NET memory management becomes. ( 11 Jul 2012 ) by Chris Farrell

The DBA Script ThumbLike many DBAs, Rodney has squirrelled away a large number of routines that he uses almost daily to check on his servers and databases. Of this large collection he chooses five that he wouldn't want to be without. and there is something for everyone in this DBA's Script collection which goes with him on his 'Script thumb' ( 10 Nov 2008 ) by Rodney Landrum

Manage Stress Before it Kills You The key to a long career in IT is in learning how to cope adaptively with stress. Matt Simmons, like many, didn't realise it applies to everyone until he was rushed to hospital with what looked to be a heart attack. It was a salutary experience. He then discovered that there are many effective ways of unwinding, and it pays to be aware of them before you get the warning-shot. ( 29 Jun 2009 ) by Matt Simmons

Solving Complex T-SQL Problems, Step-By-StepWhat should you do if your first, most intuitive solution to a problem ends up scanning the data more than is necessary, resulting in poor performance? Have you missed a new SQL Server feature that can remove inefficiency from your technique? Alternatively, do you need a little help, and some lateral thinking, to open the path to a different approach? Sometimes, the answer is "both". ( 18 Mar 2013 ) by Kathi Kellenberger

Working with Window Functions in SQL ServerWith SQL Server 2005, SQL Server introduced some of SQL's window functions, that apply, not to the full set, but a partitioned 'window'. Although the ROW_NUMBER, RANK, NTILE and DENSE_RANK bring great power to TSQL, the full versatility will not be available until SQL Server delivers the full implementation. As usual, Robert Sheldon explains all. ( 28 Oct 2010 ) by Robert Sheldon

Business Intelligence in SQL Server 2005, Part 1From ad-hoc queries through managed reports to report models, Dejan Sarka evaluates SQL Server 2005 reporting solutions. ( 18 Jul 2006 ) by Dejan Sarka

Provisioning a New SQL Server Instance - Part OneBefore you even install SQL Server, there a number of preparatory steps you need to take in order to get a new machine with a fresh copy of the operating system completely ready to install SQL Server properly. This is to maximize performance, reliability, and security. ( 21 Jun 2012 ) by Glenn Berry

How to get ETL Horribly WrongETL ( Extract, transform, load) doesn't have to be like a spell on hell. To make a success of ETL systems, you need the freedom and ability to make graceful U-turns when you detect a mistake in architecture or configuration: to fix the root problem rather than to merely tackle the symptoms. Feodor lists the eight most common root causes of failure in ETL systems, and how to fix them. ( 09 Jan 2015 ) by Feodor Georgiev

SQL Server Statistics: Problems and SolutionsSQL Server Statistics assist the query optimiser to calculate the best way of running the query. Holger describes every common way that things can go wrong with statistics, and how to put matters right. ( 27 Oct 2010 ) by Holger Schmeling

Building a Simple 3D Engine with SilverlightEven if you intend only to use existing 3D engines in your applications, it always helps to understand how they work. Vlad hopes that you 'take the red pill', and learn how to render three-dimensional objects with C# without the use of any pre-existing 3D engine. ( 09 Feb 2009 ) by Vladimir Bodurov

Faking Arrays in Transact SQLIt is a simple routine that we all need to use occasionally; parsing a delimited list of strings in TSQL. In a perfect relational world, it isn't necessary, but real-world data often comes in a form that requires one of the surprising variety of routines that Anith Sen describes, along with sage advice about their use. ( 16 Sep 2008 ) by Anith Sen

Why This SQL Server DBA is Learning PowershellRon describes how he decided to study Powershell as a single scripting system to automate all the common repetitive server tasks. He concludes that time spent learning PowerShell is time well spent, and that it can help a great deal in understanding the .NET Framework ( 30 Sep 2008 ) by Ron Dameron

SQL Server 2005 DDL Trigger WorkbenchRobun and Phil's latest workbench shows you how to track and log all database changes, including changes to tables, logins, users and queues, using SQL 2005 DDL triggers. ( 25 May 2007 ) by Robyn Page and Phil Factor

Reporting Services with StyleEven when Microsoft neglect a feature, there are always pioneers who find ways of getting around the problem. Such is true of Reporting Services, where there are surprising restrictions in the way that reports can be made to conform to a standard style. Barry King comes up with a surprisingly simple solution for SQL Server 2005 and 2008. ( 28 May 2009 ) by Barry King

Being Out at workJesse Liberty, MVP and President of Liberty Associates, Inc. discusses the often complex and life-changing decision to come out in the working environment. ( 08 Nov 2006 ) by Jesse Liberty

The Computer that SworeDatabase Developers occasionally get crazy ideas into their heads. Phil Factor should know; He confesses that he's had a few completely loopy notions that he pursued to destruction before realising his error. ( 13 Nov 2007 ) by Phil Factor

Anders Hejlsberg: Geek of the WeekAnders Hejlsberg, the creative genius behind C#, and much of the .NET framework, had already been famous for sixteen years as a compiler-writer before he joined Microsoft twelve years ago. His BLS Pascal, Turbo Pascal, and Delphi had revolutionized the way that we develop software. Today, he is still bubbling with new ideas and radical initiatives. ( 19 Mar 2009 ) by Richard Morris

Using Features and Solutions to Deploy your SharePoint CustomizationsWhen deploying any Sharepoint application, the way to do it is through 'Features and Solutions'. There are two recommended paths of deploying custom functionality into SharePoint: Sandboxed or Farm Solutions. Which should you choose, and in what circumstances? Dave McMahon talks us through a Sharepoint deployment with Sharepoint 2010 and VS 2010 and finds it pretty easy. ( 05 Apr 2011 ) by Dave McMahon

A Sudden Move: One developer's journey from C# to JavaScriptJavaScript is 'tragically important' because, although it is inherently flawed, it is used everywhere because it allows the developer to use the same language for a variety of platforms and purposes. At last, the uniformity of browser and Javascript standards give the promise of code that really is 'write once, run anywhere' ( 13 Dec 2012 ) by Joel Cochran

Questions About T-SQL Transaction Isolation Levels You Were Too Shy to AskEvery time you access a relational database to make a query, you have an important decision to make: What is the appropriate isolation level for your query? If you get this wrong, the consequences can be serious. Deadlocks, Dirty reads, Non-repeatable reads, or poor performance. We're in luck, because Robert Sheldon once more answers those questions that are awkward to ask in public. ( 04 Dec 2014 ) by Robert Sheldon

Questions about Primary and Foreign Keys You Were Too Shy to AskIt is strange that one can ask simple questions about extended events or Hekaton at professional events and conferences without feeling embarrassed, yet nobody likes to ask vital questions about SQL Server primary keys and foreign keys. Once more, Rob Sheldon is 'drawn to one side' to answer those questions about keys that one is too shy to ask. ( 06 Oct 2014 ) by Robert Sheldon

Look-up Tables in SQL Lookup tables can be a force for good in a relational database. Whereas the 'One True Lookup Table' remains a classic of bad database design, an auxiliary table that holds static data, and is used to lookup values, still has powerful magic. Joe Celko explains.... ( 01 Feb 2011 ) by Joe Celko

Implementing User-Defined Hierarchies in SQL Server Analysis ServicesTo be able to drill into multidimensional cube data at several levels, you must implement all of the hierarchies on the database dimensions. Then you'll create the attribute relationships necessary to optimize performance. Analysis Services hierarchies offer plenty of possibilities for displaying the data that your business requires. Rob Sheldon continues his series on SQL Server Analysis Services 2008. ( 02 Feb 2010 ) by Robert Sheldon

SQL Server 2012 Window Function BasicsFor some time, Microsoft had a few window functions, but not the full set specified in the SQL 2003 standard. Now, in SQL Server 2012 we have the whole range, and extremely useful they are too. There's no longer an excuse to avoid them, particularly now you have Rob's gentle introduction. ( 05 Mar 2013 ) by Robert Sheldon

How to Get NULLs Horribly Wrong in SQL ServerNULLs in SQL are a mixed blessing. The Three-Valued Logic of SQL has its uses but can cause difficulties to anyone who assumes that NULL has a 'value'. It can make reports go horribly wrong in a number of alarming ways, as Robert Sheldon explains. ( 25 Jun 2015 ) by Robert Sheldon

Mixing WPF and WinFormsYou can embed WPF controls in a WinForms application or WinForms controls in a WPF application, using a simple adapter. Because of this inherent symmetry, you can build hybrid applications, mixing controls from the other platform. Michael Sorens gives a practical guide to WPF / WinForms interoperability ( 10 Aug 2010 ) by Michael Sorens

Reducing I/O with the 'Missing Indexes' DMVsLaerte recently experienced an I/O nightmare, which, as a happy accident, gave him an opportunity to test out the 'Missing Indexes' DMVs and see if they were up to scratch. He solved his problems, ran a few tests to get a feel for how well the DMVs performed, and was very impressed. So much so, that he is sharing his findings with us. ( 09 Oct 2009 ) by Laerte Junior

The Salesforce Platform: The Return of the Citizen ProgrammerThe current popularity of the Salesforce software development platform has taken the industry by surprise. The current IT culture favours the esoteric, yet here is a development platform geared to the idea that anyone can use it: a populist language like BASIC. Does this threaten the careers of professional developers? Paradoxically, not at all, says Dan Appleman. ( 14 Nov 2014 ) by Dan Appleman

A Cynic's Top Ten Tips for IT ContractorsAs autumn approaches, Patrick Index produces ten hot chestnuts for IT Contractors like himself, with a jaundiced 'contractors-eye view'. ( 24 Aug 2007 ) by Patrick Index

An Introduction to Windows Azure BLOB Storage Azure BLOB storage is persistent Cloud data storage that serves a variety of purposes. Mike Wood shows the basics of how to use it, from start through to snapshots and metadata; both from .NET, and by using the free tool, Cerebrata Azure Explorer. ( 12 Jul 2013 ) by Mike Wood

RBAR: 'Row By Agonizing Row'Remi Gregoire describes the vice of RBAR Database Programming, 'Row By Agonising Row', and illustrates how the effect of RBAR can sometimes be felt only years after an application is released, when the database supporting the application grows. ( 26 Jul 2007 ) by Remi Gregoire

.NET Collection Management with C# 3.0Generics in C#, enable you to define classes, interfaces, delegates or methods with placeholders for parameterized types used within. This allows you to define classes that use a generic type, and define the type at the time of instantiation or method calls. This makes your code strongly typed, but makes maintenance easier. Prasanna describes the improvements in .NET v3.5 ( 25 Feb 2008 ) by Amirthalingam Prasanna

Pop Rivett's SQL Server FAQ No.5: Pop on the Audit TrailPop provides a cunning, trigger-based technique for auditing the activity on SQL Server tables ( 03 Nov 2006 ) by Pop Rivett

A Defense of Reflection in .NETThe trouble with making general rules about programming practices is that one can miss out on many benefits of of a framework by following them too literally in every context. Everyone knows that one should watch for performance problems and security issues with reflection. It doesn't mean you shouldn't it, it just means you must test carefully, monitor performance, and assess risks. Nick Harrison illustrates the theme with a practical example. ( 13 Aug 2009 ) by Nick Harrison

Entity Framework Performance and What You Can Do About ItWithout a doubt, Entity Framework is a quick and satisfactory way of producing a database-driven web application. As performance becomes more important, it does, however, require some knowledge of the traps that you need to avoid, and of the wrinkles that impact performance. Ben Emmett gives a practical guide. ( 16 Dec 2015 ) by Ben Emmett

Administrating SQL Server Reporting Services - Planning, Documenting and TroubleshootingDBAs are usually charged with the administration of Reporting Services, but are often short on guidance on how to go about such tasks as planning, documenting and troubleshooting those aspects that are specific to the SSRS service. Feodor gives some tips, custom SSMS reports, and useful TSQL queries, based on his experience. ( 22 Nov 2011 ) by Feodor Georgiev

Using SQL Server Integration Services to Bulk Load DataThe most flexible way to bulk-load data into SQL Server is to use SSIS. It can also be the fastest, and scaleable way of doing so. There are three different components that can be used to do this, using SSIS, so which do you choose? As always, Rob Sheldon is here to explain the basics. ( 29 Mar 2011 ) by Robert Sheldon

Troubleshooting Nonpaged and Paged Pool Errors in WindowsBen Lye uncovered a memory leak in the nonpaged pool which was crashing his servers with disquieting regularity. Luckily it was relatively easy to troubleshoot, and he's sharing the tools and techniques he used to get his servers back on track in double-quick time. ( 12 Mar 2010 ) by Ben Lye

If IT had been responsible for the CreationIn which Phil Factor takes the liberty of retelling the Creation story to make it 'relevant' to the modern IT professional. ( 09 Aug 2006 ) by Phil Factor

How to get Database Design Horribly WrongDatabase Design is one of those tasks where you have to carefully get all the major aspects right. If you mess-up just one of these, it can all go horribly wrong. So what are these aspects that can ruin database design, and how can you get them right? Robert Sheldon explains. ( 06 Mar 2015 ) by Robert Sheldon

Rich Hickey: Geek of the WeekWith Clojure soon to be ported to the .NET framework, as ClojureCLR, we felt that the time had come to see what the fuss was all about amongst the Java Geeks. We sent Richard Morris to find out from the creator of Clojure, Rich Hickey. ( 02 Mar 2010 ) by Richard Morris

The Top 5 .NET Memory Management Misconceptions.NET Memory management is an impressive and comprehensive system, but it's not flawless, and it's occasionally a little anti-intuitive. As a result, there are a few common misconceptions which need to be dispelled before you can really get the most out of the .NET framework. ( 27 Jul 2011 ) by Clive Tong

Taming Sandcastle: A .NET Programmer's Guide to Documenting Your CodeThe most effective way to document .NET code so that others can understand it and use it, is to use XML Documentation and SandCastle. It isn't that easy. Michael Sorens produces the easy guide to the process that Microsoft never managed, and introduces several applications that help. ( 13 Sep 2010 ) by Michael Sorens

Mapping Your Data with Bing Maps and SQL Server 2008Jonas Stawski takes you, step by step, through a sample project that demonstrates how to create an application that can get GeoSpatial coordinate data for addresses within a SQL Server database, and then use that data to locate those addresses on a Bing Map on a website as pushpins, either grouped or ungrouped: And there is full source-code too, in the speech-bubble. ( 23 Mar 2010 ) by Jonas Stawski

SQL Server Full Text Search Language Features, Part 2Extensive coverage of the query-time behaviour of SQL Server Full-text search, demonstrating how searches are expanded by the parser before hitting the full-text index. ( 04 Jul 2006 ) by Hilary Cotter

Using WebServices with ASP.NETWebservices without tears? Popup maps in your websites? Word-completion? Ajax-based Search-engines? No problems, with Daniel's sample application to guide you. ( 14 Dec 2007 ) by Daniel Penrod

Importing Excel Data into SQL Server Via SSIS: Questions You Were Too Shy to Ask The job of retrieving data from Excel, and importing it into SQL Server hasn't the same appeal or glamour as, for example, performing heroics with ill-performing queries. This could be why one hesitates before asking questions about how to do it. Rob Sheldon calms your private doubts and fears by answering those embarrassing questions. ( 11 Sep 2014 ) by Robert Sheldon

Building a Daily Systems Report Email With PowerShellA combination of PowerShell and HTML can provide the basis of an easily-scanned report on the basic state of a whole group of servers. Sean combined a range of routine health-checks to provide himself a useful range of information about his servers to his in-box. ( 16 Mar 2012 ) by Sean Duffy

I'm a SQL Server DBA, and I'm in Love with PowerShellTo learn PowerShell, Laerte suggests that you just start using it. To encourage you to start, he provides a series of tips on using PowerShell with SQL Server to solve various everyday problems. With a little patience, a good IDE, and a bit of help and advice, "the lion is dead". ( 28 May 2010 ) by Laerte Junior

Don Syme: Geek of the WeekIt came as a surprise to many of us when Microsoft pulled from it's hat a rabbit in the form of an exciting, radical, language that offers an effective alternative to the Object-oriented orthodoxy. The creative force behind this language, F#, turns out to be a brilliant Cambridge-based Australian called Don Syme, already well known for his work on generics in .NET. F# has taken the specialised power of ML and OCaml and developed a versatile general-purpose .NET language. We sent Richard Morris across the road to investigate. ( 19 Jan 2010 ) by Richard Morris

Creating a Business Intelligence Dashboard with R and ASP.NET MVC: Part 1It is possible to use the R statistical package to extract Business Intelligence from the data in a SQL Server database, and render graphs and tables in HTML to give you a BI Dashboard in an ASP.NET MVC website. Sergei gives you a step-by-step guide. ( 08 Jul 2013 ) by Sergei Dumnov

Backing up Exchange 2010 For FreeIt's hardly surprising that many SysAdmins are willing to pay over the odds for sophisticated backup solutions which they don't necessarily need, just to make sure their data is safe ASAP. Thankfully, Antoine Khater is here to give you a short and sweet walkthrough on how to keep your Exchange 2010 Server backed up for free. And the best news? You've already got everything you need. ( 26 May 2010 ) by Antoine Khater

Web Services TestingThis article aims to give an introduction to the challenges in testing web services, for those who do not have detailed technical knowledge about web services. ( 13 Mar 2003 ) by Neil Davidson

The Why and How of .NET ProfilingAmirthalingam Prasanna gives a simple and practical guide about why you need to profile your .NET applications and how you would go about doing it. ( 12 May 2008 ) by Amirthalingam Prasanna

Getting rid of SQL CodeJoe becomes intrigued by the way that experts make errors in any area of technology, and suggests that the problem is more that of mindsets than lack of knowledge. He illustrates the point with SQL Development by means of the "Britney Spears, Automobiles and Squids" table, and the tangled Stored procedure, and shows ways of getting rid of both procedural and non-procedural code by adopting a different programming mindset. ( 20 Aug 2009 ) by Joe Celko

What's the Point of Using VARCHAR(n) Anymore?The arrival of the (MAX) data types in SQL Server 2005 were one of the most popular feature for the database developer. At the time, there was a lot of discussion as to whether this freedom from having to specify string length came at a cost. Rob attempts to give a final answer as to any down-side. ( 30 Jan 2012 ) by Rob Garrison

Some "Laws" of Software DevelopmentDespite all the advances in software tools, there seem to be several enduring truths about software development. By understaning these 'laws', Ziv's law, Humphrey's Law and Conway's Law, for example, you can remove some of the mystery of the process. Al Noel discusses these and other laws that seem to apply generally to the art of programming. ( 17 May 2013 ) by Al Noel

An Overview of SharePoint 2013 App Development ModelMicrosoft have put a lot of resources into improving SharePoint. SharePoint 2013 introduces 'SharePoint Apps', which are executed within the browser. This provides a lot of opportunities for extending Sharepoint-based applications to make them fit the customers requirements more closely, and paves the way for cloud-based SharePoint services. ( 20 Sep 2012 ) by Damon Armstrong

Crosstab Pivot-table WorkbenchRobyn and Phil turn their attention to the bedrock of management reporting, the Pivot Table. Under Phil's 'wild man' influence, they end up with some rather radical ideas. ( 22 Jul 2007 ) by Robyn Page and Phil Factor

Find Missing Date Ranges in SQLOften, the quickest way to determine whether you have missing data in a table such a ledger or journal is to see if there are gaps in the dates where one wouldn't expect them. But how do you do that in an emergency, particularly in a large table, when every minute counts? ( 11 Oct 2007 ) by Alex Kozak

Interviewing Tips for a Database PositionInterviewing for a database position is a careful game of give and take. Knowing what to expect and how to prepare for your interview is important, but it's only half the battle. You'll also need to ask questions to see if the job, and the company, is a good fit for you. ( 22 Jan 2013 ) by Kat Hicks

SQL Server Backup Questions We Were Too Shy to AskDuring presentations about doing database backups and restores, there seem to be two types of questions that are commonly asked - those that come from the floor during the presentation, and those that are asked in private afterwards. These are sometimes more interesting, and challenging to answer well. ( 07 Dec 2012 ) by Grant Fritchey

Goodbye Exchange ExMerge, Hello Export-MailboxExMerge was a great way of exporting a mailbox to an Exchange PST file, or for removing all occurences of an email virus, but it has now been replaced by two new Exchange Management Shell cmdlets, Export-Mailbox and Import-Mailbox which are equally as useful to have at hand. ( 26 Feb 2009 ) by Ben Lye

Modal Input Forms in ASP.NET MVCForms in websites have, for a long time, languished in their classic clunky pattern of browser-led 'submit' of content, using the FORM tag. As websites grow nearer to applications in their user-experience, so better is required. Dino show how to get a more sophisticated modal input form based on Twitter Bootstrap, jQuery Validate, and XmlHttpRequest (XHR). ( 08 May 2013 ) by Dino Esposito

Optimizing tempdb configuration with SQL Server 2012 Extended EventsOne of the most obvious bottlenecks in the performance of tempdb is caused by PAGELATCH, in-memory latch contention on the allocation bitmap of each data file used. We can use one of the rules-of-thumb to choose what should be roughly the best number of files, but how then do you check to see whether you've got it right for your data and workload? ( 13 Jul 2012 ) by Jonathan Kehayias

Mixing Web Forms and ASP.NET MVCJust because you're using Web Forms, it doesn't mean that you are stuck in a technical time-warp. If you want to liven up a site with new features using Ajax and libraries such as jQuery, Bootstrap or Knockout.JS, then you can always integrate a Web API layer into a Web Forms application. Dino Esposito shows how to give your Web Forms application a new lease of life. ( 25 Feb 2014 ) by Dino Esposito

To Boldly Ask IT for Development WorkPhil has always been mystified by the way that, in Science-Fiction films, the crew of space-ships are able to reprogram their ships' computers in order to respond to emergencies, needing no more than a brief klip...klop...klip on the keyboard to effect a huge software change. A life in IT has seemed so different, and so he wonders if there a more realistic way that one might imagine IT's contribution to Space adventures ( 22 Jun 2009 ) by Phil Factor

Automate and Improve Your Database Maintenance Using Ola Hallengren's Free ScriptIf you ever feel uneasy when you set about handcrafting database maintenance jobs for SQL Server, it may be the voice of your conscience saying 'Ola, Ola!'. Follow your conscience. Ola Hallengren has already crafted a superb set of routines to do this for you. Why reinvent something that does it all, safely and well. Brad McGehee explains.... ( 20 Jul 2010 ) by Brad McGehee

Tune Your Indexing Strategy with SQL Server DMVsSQL Server Indexes need to be effective. It is wrong to have too few or too many. The ones you create must ensure that the workload reads the data quickly with a minimum of I/O. As well as a sound knowledge of the way that relational databases work, it helps to be familiar with the Dynamic Management Objects that are there to assist with your indexing strategy. ( 11 Oct 2012 ) by Louis Davidson and Tim Ford

SSIS 2012 Projects: Setup, Project Creation and DeploymentIt used to be that SQL Server Integration Services (SSIS) packages had to be deployed individually. Now, they can be all deployed together from a single file by means of the Project Deployment Model introduced in SSIS 2012. Where there are tens or even hundreds of SSIS packages to deploy, this system is essential. Feodor Georgiev talks us through the basics in the first of a three-part series. ( 04 Nov 2014 ) by Feodor Georgiev

Estimating Disk Space Requirements for DatabasesIn the first of a series of Database Maintenance Tips and Tricks, Alex Kozak discusses some general issues surrounding disk space requirements for SQL Server databases and shows how to estimate Disk space usage and requirements. He gives tips on using DBCC CHECKDB consistency check and for estimating the space required for replication. ( 16 Jan 2009 ) by Alex Kozak

Handling Constraint Violations and Errors in SQL ServerThe database developer can, of course, throw all errors back to the application developer to deal with, but this is neither kind nor necessary. How errors are dealt with is very dependent on the application, but the process itself isn't entirely obvious. Phil became gripped with a mission to explain... ( 29 Jun 2012 ) by Phil Factor

Writing Efficient SQL: Set-Based Speed PhreakeryPhil Factor's SQL Speed Phreak challenge is an event where coders battle to produce the fastest code to solve a common reporting problem on large data sets. It isn't that easy on the spectators, since the programmers don't score extra points for commenting their code. Mercifully, Kathi is on hand to explain some of the TSQL coding secrets that go to producing blistering performance. ( 04 Feb 2010 ) by Kathi Kellenberger

Identifying Exchange ActiveSync Users with PowerShellJust recently, a problem involving the iPhone/iPod's synchronisation process with Exchange 2007, made it necessary for Exchange Administrators to alert various mail users to upgrade to the latest version of Apple's iOS 4. Ben shows how easily he was able to do this for his organisation, using Exchange's Management Shell with PowerShell and some Exchange cmdlets. ( 26 Aug 2010 ) by Ben Lye

Divided We Stand: The SQL of Relational DivisionBusinesses often require reports that require more than the classic set operators. Surprisingly, a business requirement can often be expressed neatly in terms of the DIVISION relationship operator: How can this be done with SQL Server? Joe Celko opens up the 'Manga Guide to Databases', meets the Database Fairy, and is inspired to explain DIVISION. ( 17 Feb 2009 ) by Joe Celko

SQL Server Tables - 11 Questions You Were Too Shy to AskThere are some aspects of tables in SQL Server that a lot of people get wrong, purely because they seem so obvious that one feels embarrassed about asking questions. Robert Sheldon reckons that no questions about SQL Tables are off-limits, and deserve frank answers. ( 18 Jun 2014 ) by Robert Sheldon

TLS/SSL and .NET Framework 4.0The Secure Socket Layer is now essential for the secure exchange of digital data, and is most generally used within the HTTPS protocol. .NET now provides the Windows Communication Foundation (WCF) to implement secure communications directly. Matteo explains the TLS/SSL protocol, and takes a hands-on approach to investigate the SslStream class to show how to implement a secure communication channel ( 28 Sep 2011 ) by Matteo Slaviero

Transparent Data Encryption Transparent Data Encryption is designed to protect data by encrypting the physical files of the database, rather than the data itself. Its main purpose is to prevent unauthorized access to the data by restoring the files to another server. With Transparent Data Encryption in place, this requires the original encryption certificate and master key. It was introduced in the Enterprise edition of SQL Server 2008. John Magnabosco explains fully, and guides you through the process of setting it up. ( 16 Mar 2010 ) by John Magnabosco

Gathering Perfmon Data with PowershellWhen you have to routinely collect data from Performance Monitor Counters, it soon becomes easier and more convenient to use PowerShell. SQL Server MVP Laerte Junior was inspired to create a script, and guides us through its useful functions. ( 08 Jul 2010 ) by Laerte Junior

Data Conversion in SQL ServerMost of the time, you do not have to worry about implicit conversion in SQL expressions, or when assigning a value to a column. Just occasionally, though, you'll find that data gets truncated, queries run slowly, or comparisons just seem plain wrong. Robert explains why you sometimes need to be very careful if you mix data types when manipulating values. ( 06 Jan 2011 ) by Robert Sheldon

Debugging Data Flow in SQL Server Integration ServicesYou can save a lot of time by using the SSIS Troubleshooting tools. These enable you to work with reduced data samples, monitor row counts, use data viewers, configure error-handling and monitoring package execution. Although you can develop SSIS packages without them, it is so much easier once you're familiar with these tools. ( 13 Sep 2011 ) by Robert Sheldon

Don Knuth and the Art of Computer Programming: The InterviewFifty years after starting the 'Art of Computer Programming', (TAOCP), Don Knuth is still working hard at the project. He has almost completed the first five volumes. It is considered amongst the "hundred or so books that shaped a century of science". Richard Morris asks him how things are going, and to find out more about his many achievements. ( 11 Jun 2013 ) by Richard Morris

Interview with the Scary DBA - Grant FritcheyFor our first feature on working DBAs and their lives, we chose Grant Fritchey, the self-styled Scary DBA, who has been so successful in the past year with his books and presentations. How does he manage to pack so much into his life? we sent Richard Morris to find out. ( 30 Oct 2009 ) by Richard Morris

Dynamic LINQ Queries with Expression TreesIt's possible to build up dynamic LINQ queries or queries with several conditional criteria. In fact there are several options for doing this, including the use of expression trees. ( 25 Feb 2013 ) by Nick Harrison

An Introduction to PowerShell ModulesFor PowerShell to provide specialised scripting, especially for administering server technologies, it can have the range of Cmdlets available to it extended by means of Snapins. With version 2 there is an easier and better method of extending PowerShell: the Module. These can be distributed with the application to be administered, and a wide range of Cmdlets are now available to the PowerShell user. PowerShell has grown up. ( 11 Mar 2011 ) by Jonathan Medd

How to Create Custom Lists in Windows SharePoint Services 3.0In the first of a series of  articles about Sharepoint, Charles Lee shows how easy it is to create custom lists that can then be used with Workflows, custom columns, lookup columns, and calculated fields. He then demonstrates how several lists can be used together to create a custom SharePoint application by linking these lists through lookup columns ( 04 Aug 2009 ) by Charles Lee

SQL Server Performance Crib SheetGrant Fritchey provides an eagle-eye view of effective tools, strategies and techniques for SQL Server performance measurement, tuning and testing. ( 31 May 2007 ) by Grant Fritchey

SQL Server Reporting Services Basics: Customizing SSRS ReportsWhile the Reporting Wizard and basic report tables will do for prototyping, very soon we'll want to add some finesse to our reports, and allow our report users to create different views of the same data, dynamically. Kathi Kellenberger shows how to use expressions, functions, grouping, the matrix control, and other features, to add a degree of user control to the reports while maintaining visual clarity. ( 27 Aug 2014 ) by Kathi Kellenberger

SQL Server Deadlocks by ExampleWhen a SQL Server instance deadlocks, it can be anything from minor irritation to something far more severe. In this article, Gail Shaw looks at how you can identify common types of deadlock, the difference between a deadlock and severe blocking, and how to avoid and fix the most common deadlock types. ( 16 Jan 2014 ) by Gail Shaw

Adding Actions to a Cube in SQL Server Analysis Services 2008 Actions are powerful way of extending the value of SSAS cubes for the end user. They can click on a cube or portion of a cube to start an application with the selected item as a parameter, or to retrieve information about the selected item. Actions haven't been well-documented until now; Robert Sheldon once more makes everything clear. ( 29 Mar 2010 ) by Robert Sheldon

TSQL Regular Expression WorkbenchRobyn and Phil start by writing a gentle introduction to using Regular expressions for validation, data cleaning and data import in TSQL, and finally end up with a routine for doing google-style searches that show the context of hits. It's all done in the spirit of 'try it and see...' ( 27 Nov 2007 ) by Robyn Page and Phil Factor

Revisiting Partial View Rendering in ASP.NET MVCFor any browser-based application, it makes sense to load into the web page just the content that is immediately required and avoid whole-page refreshes whenever possible. Ajax technology and JSON makes this partial-rendering easy. It is, however, worth considering ASP.NET's own partial-rendering techniques, returning HTML. It requires less client-logic and is quicker to implement. ( 15 Jan 2015 ) by Dino Esposito

Setting Up Your SQL Server Agent CorrectlyIt is important to set up SQL Server Agent Security on the principles of 'executing with minimum privileges', and ensure that errors are properly logged and alerts are set up for a comprehensive range of errors. SQL Server Agent allows fine-grained control of every job step that should allow tasks to be run entirely safely even if they occasionally need special privileges. ( 28 May 2014 ) by Saurabh Dhoble

Switching rows and columns in SQLWhen they use SQL Server, one the commoner questions that Ms Access programmers ask is 'Where's the TRANSFORM/PIVOT command? So how do you swap colums and rows in an aggregate table? Do you really need to use a CLR routine for this? ( 04 Feb 2010 ) by Paul Nielsen

Implementing Windows Server 2008 File System QuotasFile system Quotas are used to restrict the amount of space users can consume or to report on the space consumed by them. They are useful for reporting on those users or folders that are consuming large amounts of disk space on a file server. Ben Lye shows that File system quotas are quick and easy to set up, with three different methods available for configuring them ( 19 Nov 2009 ) by Ben Lye

Object Overhead: The Hidden .NET Memory Allocation CostWhen developing a .NET application, one of the least visible sources of memory consumption is the overhead required by an object simply to exist. In applications that create a lot of small objects, this overhead can be a major or even a dominant factor in the total memory requirements for the application. ( 09 Sep 2009 ) by Andrew Hunter

Constraint Yourself!In his first article for Simple-Talk, Joe Celko demystifies the use of Constraints, and points out that they are an intrinsic part of SQL and are a great way of ensuring that a business rule is done one way, one place, one time. Almost all database programmers will find something new and useful in this article. ( 26 Oct 2008 ) by Joe Celko

SQL Server SEQUENCE BasicsThe SEQUENCE statement introduced in SQL Server 2012 brings the ANSI SQL 2003 standard method of generating IDs. This is a great relief to database professionals as it solves some problems what are awkward to solve with the IDENTITY property. Joe Celko explains the basics of using a SEQUENCE ( 06 Feb 2014 ) by Joe Celko

Exchange 2010 High AvailabilityIn April 2009 Microsoft released a public beta of Exchange 2010, the latest and greatest version of a part of its unified communications family of products. Recently in August 2009, a feature complete Release Candidate version was released for public download. In this article Neil Hobson takes a look at some of the high availability features of Exchange 2010. ( 18 Sep 2009 ) by Neil Hobson

The India Skills GapAs outsourcing demands continue to grow, Richard Morris investigates a worrying shortage in India's pool of IT talent, and its potential consequences for their burgeoning technology sector. ( 28 Dec 2006 ) by Richard Morris

Which of Your Stored Procedures are Using the Most Resources?Dynamic Management Views and Functions aren't always easy to understand. However, they are the easiest way of finding out which of your stored procedures are using up the most resources. Greg takes the time to explain how and why these DMVs and DMFs get their information. Suddenly, it all gets clearer. ( 11 Jan 2011 ) by Greg Larsen

Dynamic Language Integration in a C# World.NET 4.0 introduced the Dynamic keyword in C#4.0, making it simple to have your .NET code smoothly interact with dynamic languages. To find out just how easy it was, Zenon Ochal used C# and IronPython to build a very efficient mathematical expression plotter in double-quick time. ( 04 Dec 2010 ) by Zenon Ochal

SQL Server Reporting Services Advanced ChartingSQL Server Reporting Services (SSRS) has evolved over the years to incorporate many new data visualization capabilities. In this article, Scott Murray illustrates how DBAs can use these tools to produce reports that include Indicators, Embedded Charts, Sparklins, and Chart overlays. ( 08 Oct 2013 ) by Scott Murray

Index Selection and the Query OptimizerWhile we all know that the Query Optimizer uses Indexes to produce better execution plans, we don't all know exactly which indexes will give the best results. Benjamin Nevarez has done the research, and in this sample from his upcoming book, "Inside the SQL Server Query Optimizer", he helps us to understand how the Query Optimizer selects indexes to improve execution plans. ( 25 Nov 2010 ) by Benjamin Nevarez

Administrating SQL Server Integration Services - Planning, Documenting and TroubleshootingSQL Server Integration Services is an essential component of SQL Server, and designed to perform a variety of routine and occasional tasks. It majors on ETL tasks and for administrative jobs across servers. The DBA needs also to be aware of their role in optimising SSIS by planning, trouble-shooting, optimising performance, and in documenting installations. ( 12 Dec 2011 ) by Feodor Georgiev

Database Documentation - Lands of Trolls: Why and How?When database documentation is mentioned in an IT Department, everybody nods wisely, yet everyone does their best to avoid doing it. Attention to the database documentation can be the best invertment in time a development group can make. It is essential, and no system can be properly maintained without it. Feodor gives a sensible explanation and guideline for the unloved task of creating database documentation. ( 07 Apr 2011 ) by Feodor Georgiev

Increasing Email Size Limits for your High Profile Users in Exchange 2010If you ever need to set up fine-grained rules to control the maximum size of messages a subset of your picky users' can send or receive, Krishna Kumar has you covered. His step-by-step instructions will tell you everything you need to know to keep emails sizes under control. ( 26 Jul 2010 ) by Krishna Kumar

10 Steps to Kick-Start Your VMware Automation with PowerCLIVirtualization is a powerful technology, but it comes with its own host of monotonous and time-consuming tasks, no matter how big or small your organization is. Eliminating these mind-numbing tasks (and the potential for error which they bring with them) is a goal with striving for, and well within your reach. Jonathan Medd explains. ( 02 Jun 2010 ) by Jonathan Medd

Comparing multiple rows insert vs single row insert with three data load methodsThe performance of 'extract, transform, load' (ETL) processes for large quantities of data can always be improved by objective testing and experiment with alternative techniques. The cause of poor performance can sometimes be surprising. ( 21 Feb 2013 ) by Eugene Philipov

SQL Server Reporting Services Basics: Deploying ReportsHaving designed and tested our reports, it's time to deploy them to the Report Server, so that our users can access them. Kathi Kellenberger demonstrates how to configure reports for native-mode deployment using Report Manager, and then deploy them from within SSDT-BI. She also explains how to use the Report Builder to provide "self-service" reporting to end users, allowing them to build custom reports based on report parts and shared datasets. ( 06 Jan 2015 ) by Kathi Kellenberger

A Deep Dive into Transport Queues - Part 1Submission queues? Poison message queues? Johan Veldhuis unlocks the mysteries of MS Exchange's Transport queues that used to temporarily store messages waiting until they are passed through to the next stage, and explains how to manage these queues. ( 12 Jan 2010 ) by Johan Veldhuis

How come the Hourglass? Why database applications slow down. It is frustrating when you hit 'submit' and you get the hourglass big-time. Is it the database to blame? It could be, but there are other suspects that should be considered. Feodor describes where, in the long route, to and fro', that a data request makes before returning, that things can get snarled up. ( 28 Nov 2012 ) by Feodor Georgiev

Pop Rivett and the Suspect DatabaseWhen a 'torn page' error corrupts a SQL Server database, threatening the survival of some vital data and a mainly harmless colleague, our curmudgeonly hero jumps into action. ( 08 Jan 2007 ) by Pop Rivett

Towards the Self-Documenting SQL Server DatabaseWilliam Brewer investigates an unsung hero in SQL Server, extended properties, and shows how to use them to create self-documenting SQL Server databases. ( 01 Dec 2006 ) by William Brewer

Basic Defensive Database Programming Techniques We can all recognise good-quality database code: It doesn't break with every change in the server's configuration, or on upgrade. It isn't affected by concurrent usage, or high workload. In an extract from his forthcoming book, Alex explains just how to go about producing resilient TSQL code that works, and carries on working. ( 31 Mar 2010 ) by Alex Kuznetsov

SSIS 2012 Projects: Deployment Configurations and MonitoringThe Project Deployment Model introduced in SSIS 2012, which was explained in the first part of this series, speeds up the deployment of database projects in which there may be hundreds of SSIS packages per project. Not only that, but deployments can be configured differently for each environments such as test and staging, and there are now ways of monitoring the status and performance of packages and of versioning the SSIS Catalog. ( 14 Nov 2014 ) by Feodor Georgiev

How to Identify Blocking Problems with SQL ProfilerMany SQL Server developers and DBAs have, in the past, had their own favourite diagnostic Stored Procedures for investigating blocking issues, but since SQL Server 2005, it is a good idea to use the SQL Profiler for all but the most complex problems. This has a blocked process report which can tell you what the problem is, and give a good indication as to how to correct it. ( 13 Mar 2009 ) by Brad McGehee

Using Group Policy to Restrict the use of PST FilesOutlook PST files are a problem for Exchange users, and give no benefits over Exchange mailboxes. You have to use them on a local drive, they are difficult to back up, and tricky for the administrator to manage. It is possible to use Exchange Group Policy settings to limit the use of PST files, and thereby alleviate some of the difficulties they cause. ( 08 Oct 2009 ) by Ben Lye

Questions About Using TSQL to Import Excel Data You Were Too Shy to AskIt is easy to import Excel data into database tables via TSQL, using OLEDB, either by the OPENROWSET function or linking to the spreadsheet as a server. The problem is that there are certain things that aren't obvious that you need to know about, and you feel awkward about asking such simple questions. ( 05 Nov 2014 ) by Robert Sheldon

Questions about SQL Server Data Types You were Too Shy to Ask Although SQL Data Types seem to cause a lot of grief for database developers and can be tricky in their use, we seem to be expected to know all about them, and so it is embarrassing to ask questions about them in forums. Rob Sheldon continues in his mission to answer all those questions that we hesitate to ask. ( 14 Jul 2014 ) by Robert Sheldon

Top 10 Most Common Database ScriptsWhat are the scripts that a working DBA uses so often that they become part of the 'muscle memory'? Grant Fritchey asked the question on the forums of SQL Server Central. From the large response, Grant was able to pick out the ten most popular T-SQL commands, scripts, or fragments. It seems as if, despite the range of tasks we do, there are some common tools we use. ( 15 Oct 2015 ) by Grant Fritchey

Ross Anderson: Geek of the WeekProfessor Ross Anderson is one of the foremost experts in Computer Security in the world. He has published widely on the economics of security. cryptology, formal methods, hardware design, and the robustness of distributed systems in general. He is best known for his book 'Security Engineering: A Guide to Building Dependable Distributed Systems'. He has never been shy of controversy, and we were intrigued by the influence he wields at Cambridge University; so intrigued  were we that we sent the taciturn Richard Morris to find out more from him ( 31 Jul 2008 ) by Richard Morris

Lessons Learned from Six Years of Agile Database DevelopmentAlex Kuznetsov describes the agile principles, techniques and tools that allowed his development team to make frequent database refactoring a reality, without disrupting users. He explains how this allowed his team to apply an iterative, evolutionary approach to the design and development of their databases, as well as applications. ( 19 Nov 2013 ) by Alex Kuznetsov

Converting String Data to XML and XML to String DataWe all appreciate that, in general, XML documents or fragments are held in strings as text markup. In SQL Server, XML variables and columns are instead tokenised to allow rapid access to the data within. This is fine, but can cause some odd problems, auch as 'entitization'. What, also, do you do if you need to preserve the formatting? As usual Rob Sheldon comes to our aid. ( 01 Feb 2012 ) by Robert Sheldon

Let PowerShell do an Inventory of your ServersIf you run a regular and comprehensive inventory of all the servers you manage, you can solve problems more quickly and answer most questions from management. If you then repeat these reports over a time period, it helps to to track trends such as disk space usage so you can spot trouble before it becomes a problem. Allen describes a PowerShell script to do the inventory. ( 13 Feb 2009 ) by Allen White

How to Document and Configure SQL Server Instance SettingsOccasionally, when you install identical databases on two different SQL Server instances, they will behave in surprisingly different ways. Why? Most likely, it is down to different configuration settings. There are around seventy of these settings and the DBA needs to be aware of the effect that many of them have. Brad McGehee explains them all in enough detail to help with most common configuration problems, and suggests some best practices. ( 30 Jan 2012 ) by Brad McGehee

Tom LaRock's SQL Server HowlersIn this next article in our series where well-known SQL Server people write about their favorite SQL Server Howlers, we asked Tom Larock for his top five common misunderstandings about how SQL Server works that end in tears, and plaintive forum questions. ( 05 Jan 2012 ) by Thomas LaRock

Contract Coding: Ensuring your Client pays upDamon Armstrong learned the hard way that not having a clearly defined project scope or contract can come back to bite the contracting programmer. Here, he offers his tips and insights on how to avoid similar conflict with your own contracts and clients. ( 26 Sep 2006 ) by Damon Armstrong

Getting Started with the SSAS Tabular Model SSAS Tabular models are in-memory databases that model data with relational constructs such as tables and relationships, in order to provide a rapid and powerful way of providing self-service BI to client applications such as Microsoft Excel and Microsoft Power View. You've deployed SSAS in tabular mode, and deployed Adventureworks into it. What next? Rob Sheldon explains all. ( 22 May 2013 ) by Robert Sheldon

ASP.NET MVC Routing ExtensibilityYou develop an ASP.NET MVC application by extending it; customising any default logic that you wish to change with your own implementation. Simone starts a tour of the extensibility points of ASP.NET MVC, by looking at the beginning of the pipeline, the Routing Module, and gives a practical example of writing an extension, with source code: a way of 'watermaking' images 'on the fly'. ( 09 Dec 2011 ) by Simone Chiaretta

Obfuscating your SQL Server DataIf you are required to use real production data to test applications, any sensitive data should be "disguised" before loading it into the development environment. Although there are tools to generate convincing test data, it occasionally happens that the variances and frequencies within data cannot easily be simulated. In such cases, the DBA should apply one or more of the obfuscation techniques described in this article, extracted from John Magnabosco's excellent new book, Protecting SQL Server Data. ( 21 Oct 2009 ) by John Magnabosco

SharePoint 2010: Storing Documents on the File System with Remote Blob StorageRemote BLOB Storage (RBS) is a means of storing the large unstructured data outside of the SharePoint database, by using a BLOB provider. It can provide some very useful options if the size of your SharePoint database is becoming unmanageable, but shouldn't be seen as a general storage panacea. ( 19 Apr 2011 ) by Damon Armstrong

SQL Server 2008: Performance Data CollectorWith Performance Data Collector in SQL Server 2008, you can now store performance data from a number of SQL Servers in one central location. This data is collected by a collection set on each server and stored in a shareable management data warehouse (MDW). Reports can be generated from this data using the built-in reports or generating your own with reporting Services. Brad McGehee explains more. ( 29 Dec 2008 ) by Brad McGehee

Exchange Server Log File ReplayExchange Server stores information in a database and uses log files for transactional processing. To restore, defragment  or repair a database, the ESEUTIL tool is essential . It is always possible to recover data when the database is lost, if you have backed up the database.& ( 22 Sep 2008 ) by Jaap Wesselius

SQL Server CREATE TABLE syntax diagramsMany of us have seen, on MSDN, the heading 'Syntax', followed by a rash of nested brackets and keywords, enough to put off the most resolute of code-cutters. However, there is a goldmine of information there, and Phil had an ambition to get at it, and share the gold. The result is this article, full of railroad diagrams ( 06 Jun 2013 ) by Phil Factor

The Ten Commandments of SQL Server MonitoringIt is easy to get database monitoring wrong. There are several common-sense rules that can make all the difference between a monitoring system that works for you and helps to avoid database problems, and one that just creates a distraction. Adam Machanic spells out the rules, based on his considerable experience with database monitoring. ( 09 Apr 2013 ) by Adam Machanic

Showplan Operator of the Week - Lazy SpoolContinuing to illuminate the depths of SQL Server's Query Optimizer, Fabiano shines a light on the sixth major Showplan Operator on his list: the Lazy Spool. What does the Lazy Spool do that's so special, how does the Query Optimizer use it, and why is it so Lazy? Fabiano explains all... ( 10 Jun 2010 ) by Fabiano Amorim

Building my First SQL Server 2005 CLRGreg Larsen provides a step-by-step tour of the hurdles he had to jump in building and deploying his first serious CLR stored procedure. ( 06 Dec 2006 ) by Greg Larsen

Table Value Constructors in SQL Server 2008Table Value Constructors (TVCs) are a useful feature of 2008, allowing you to specify tables of values and expressions. This has all sorts of uses. Users who are stuck with previous versions of SQL Server can play along, since Rob demonstrates that there have, for a long time, been ways of doing this in SQL Server, though less elegantly. ( 22 Jun 2011 ) by Robert Sheldon

SSMS: The Query Window Keyboard ShortcutsSimple-Talk's free wallchart of the most important SSMS keyboard shortcuts aims to help find all those curiously forgettable key combinations within SQL Server Management Studio that unlock the hidden magic that is available for editing and executing queries. ( 10 Jun 2011 ) by Andrew Clarke

High Performance Storage Systems for SQL ServerRod Colledge turns his pessimistic mindset to storage systems, and describes the best way to configure the storage systems of SQL Servers for both performance and reliability. Even Rod gets a glint in his eye when he then goes on to describe the dazzling speed of solid-state storage, though he is quick to identify the risks. ( 29 Apr 2010 ) by Rod Colledge

Window Functions in SQLSQL's windowing functions are surprisingly versatile, and allow us to cut out all those self-joins and explicit cursors. Joe Celko explains how they are used, and shows a few tricks such as calculating deltas in a time series, and filling in gaps. ( 31 Oct 2013 ) by Joe Celko

Performance Implications of Parameterized QueriesWhy don't we emphasize the huge advantages of parameterized queries over ad-hoc queries in SQL Server? There is a severe impact on resources and performance from repeatedly using similar ad-hoc queries, instead of reusing the existing query plans. David Berry shows how you can measure this impact, and springs a surprise or two in the process ( 28 Apr 2011 ) by David Berry

Microsoft Small Basic for .NETMicrosoft Small Basic is intended to be fun to use. It is that, and more besides. It has a great potential as a way of flinging together quick and cheerful applications, just like those happy days of childhood. Tetris anyone? ( 25 Feb 2010 ) by Andrew Clarke

TSQL User-Defined Functions: Ten Questions You Were Too Shy To AskSQL Server User-Defined Functions are good to use in most circumstances, but there just a few questions that rarely get asked on the forums. It is a shame, because the answers to them tend to clear up some ingrained misconceptions about functions that can lead to problems, particularly with locking and performance ( 19 May 2014 ) by Robert Sheldon

Schema and metadata retrieval using ADO.NETHow to obtain different types of information from your SQL Server 2000 database using ADO.NET 2.0, part of VS.NET 2005 and .NET 2.0. ( 02 Aug 2005 ) by Amirthalingam Prasanna

Exploring your database schema with SQLIn the second part of Phil's series of articles on finding stuff (such as objects, scripts, entities, metadata) in SQL Server, he offers some scripts that should be handy for the developer faced with tracking down problem areas and potential weaknesses in a database. ( 02 Mar 2010 ) by Phil Factor

The TSQL of Text FilesPhil returns to the old subject of 'Getting text-based data in and out of SQL Server'. He shows various easy ways of getting a file listings of directories from the file system, shows how one can access the Shell automation Objects, and demonstrates several ways of reading or writing data between database and file ( 19 Jan 2009 ) by Phil Factor

SQL Server 2008- SSIS Data Profiling taskBy using SQL Server 2008's new Data Profiling task, you can do a lot to ensure that data being imported via SSIS is valid, and you can develop a system that can take the necessary steps to correct the commonest problems. Bob Sheldon shows you how to get started with it ( 10 Sep 2008 ) by Robert Sheldon

SQL Server Intellisense VS. Red Gate SQL PromptFabiano Amorim is hooked on today's Integrated Development Environments with built-in Intellisense, so he looked forward keenly to SQL Server 2008's native intellisense. He was disappointed at how it turned out, so turned instead to SQL Prompt. Fabiano explains why he prefers to SQL Prompt, why he reckons it fits in with the way that database developers work, and goes on to describe some of the features he'd like to see in it. ( 18 Mar 2010 ) by Fabiano Amorim

Writing Custom HTML Helpers for ASP.NET MVCSwitching from developing ASP.NET WebForms to MVC might seem awkward at first, but Ed demonstrates why the change needn't be painful, and how best to build a set of tools for rapid MVC development. This article is hosted on Github, so feel free to contribute suggestions, improvements or translations. ( 24 Oct 2012 ) by Edward Charbeneau

The Road to Professional Database Development: Set-Based ThinkingUnder the pseudonym of 'SwePeso', Peter Larsson is famous on SQL forums for the amazing performance he can get from SQL. How does he do it? In the first of a series of articles, Peter explains his secrets. ( 21 Feb 2012 ) by Peter Larsson

Finding Data CorruptionIn this article, taken from Chapter 8 of his new book, SQL Server Tacklebox, Rodney describes how a working DBA goes about troubleshooting data corruption. He demonstrates the tools and scripts required to seek out and fix data corruption in a timely manner, and so prevent it propagating into your backups. ( 29 Sep 2009 ) by Rodney Landrum

The New ManWorking in IT, one meets all sorts of people, but rarely quite so odd, or creepy, as a 'New Man'. Phil Factor relates how a brush with such a character got him the sack on the second day in a new job. ( 25 Mar 2008 ) by Phil Factor

SQL Code Layout and BeautificationWilliam Brewer takes a look at the whole topic of SQL Code layout and beautification, an important aspect to SQL programming style. He concludes that once you are tired of laying SQL out by hand, you had better choose a tool with plenty of knobs to twiddle, because nobody seems to agree on the best way of doing it ( 11 May 2008 ) by William Brewer

Disk Space Monitoring and Early Warning with PowerShellSean Duffy recently had an unwelcome encounter with Exchange Server Back Pressure, which cut off his message flow due to a lack of space on the server. To make sure it didn't happen again, he found a way to automatically monitor all his servers from afar, with a little PowerShell magic. ( 15 Aug 2011 ) by Sean Duffy

PowerShell Data Basics: XMLTo master PowerShell, you must know how to use XML. XML is an essential data interchange format because it remains the most reliable way of ensuring that an object's data is preserved. Fortunately, PowerShell makes it all easy, as Michael Sorens demonstrates. ( 03 Jan 2014 ) by Michael Sorens

What's New in Code Access Security in .NET Framework 4.0 - Part IThe Code Access Security model has been completely redesigned in the .NET Framework 4.0, to the point where CAS policies have been completely removed, and everything now works through Level2 Security Transparency. Confused? Not for long. Matteo Slaviero, a .NET security expert, brings us up to speed. ( 15 Jun 2010 ) by Matteo Slaviero

Visual Studio 2005 Web Application Projects and Web Deployment ProjectsRick Strahl discusses why you should check out Web Application Projects and Web Deployment Projects, the much needed add-ins for Visual Studio 2005. ( 04 Aug 2006 ) by Rick Strahl

Second Life: A Virtual World of Real MoneyAs more and more people invest in alter egos to live a pseudo life online in Linden Labs' latest creation, Richard Morris investigates the potential of Second Life's cyberspace and the motivations of many corporate brands to join the international virtual world. ( 29 Jan 2007 ) by Richard Morris

How to Confuse the SQL Server Query OptimizerGail Shaw examines three common forms of generic SQL that can and will confuse the SQL Server Optimizer to the point that it generates and reuses very inefficient execution plans. Want to 'trick' SQL Server into performing millions of logical reads to return the data, when only are few thousand were really required? Try writing catch-all queries, or using control flow statements to create general-purpose procedures, or switching parameter values within a procedure. Just don't expect the resulting queries and procedures to perform well, or consistently. The ideal solution to the problem of generic T-SQL is not to write it, but failing that Gail demonstrates techniques such as recompiling the query on each execution, using hints, dynamic SQL, or splitting generic procedures into sub-procedures. ( 09 Sep 2015 ) by Gail Shaw

The Active Directory Recycle Bin in Windows Server 2008 R2It has always been a curse as well as a blessing that Active Directory has allowed the rapid removal of whole branches. Until now, administrators have looked in vain for an 'undo' function after having accidentally deleted an entire division of their company. At last, with Windows Server 2008 R2, comes a way to rollback changes, as long as you are handy with Powershell. Jonathan Medd explains... ( 23 Sep 2009 ) by Jonathan Medd

Disaster Recovery for SQL Server Databases High-Availability depends on how quickly you can recover a production system after an incident that has caused a failure. This requires planning, and documentation. If you get a Disaster Recovery Plan wrong, it can make an incident into a catastrophe for the business. Hugo Shebbeare discusses some essentials, describes a typical system, and provides sample documentation. ( 28 Aug 2009 ) by Hugo Shebbeare

PowerShell One-Liners: Collections, Hashtables, Arrays and StringsThe way to learn PowerShell is to browse and nibble, rather than to sit down to a formal five-course meal. In his continuing series on Powershell one-liners, Michael Sorens provides Fast Food for busy professionals who want results quickly and aren't too faddy. Part 3 has, as its tasty confections, collections, hashtables, arrays and strings. ( 13 May 2014 ) by Michael Sorens

Logon TriggersLogin Triggers were quietly introduced in SP2 to tighten up the security features of SQL Server to comply with the latest industry standards for security. But you can meet a lot of the security requirements even without them! ( 10 Oct 2007 ) by Cristian Lefter

SQL Server XML Questions You Were Too Shy To AskSometimes, XML seems a bewildering convention that offers solutions to problems that the average database user doesn't have. To make things worse, XML experts generally lack the wherewithal to provide simple answers to even the simplest questions. Rob Sheldon, in contrast, can answer even those questions we somehow feel silly asking in public, and think twice about doing so. ( 22 Apr 2014 ) by Robert Sheldon

Why Developers Need to Understand Execution PlansAs a coder, the more you know about the business, the better code you're going to write. The more you know about the language in which you code regularly, the better code you're going to write. Similarly, if you're tasked with writing code against a relational database engine, you're going to need to know more about that engine. If you can examine and understand execution plans, you can achieve better understanding of the database system and you will write better database code. Grant Fritchey shows you how. ( 12 Jan 2015 ) by Grant Fritchey

Exploring SSIS Architecture and Execution History Through ScriptingWhen you are using SSIS, there soon comes a time when you are confronted with having to do a tricky task such as searching for particular connection strings in all your SSIS packages, or checking the execution history of scheduled SSIS jobs. You can do this type of work effectively in TSQL as Feodor explains. ( 16 Feb 2012 ) by Feodor Georgiev

Writing Maintainable CodeWriting maintainable code is hard. It must be understandable, testable and readable. Any one of these can be tricky, and together they seem pretty daunting. Thankfully, Michael Williamson makes it look easy to become a code craftsman. ( 06 Sep 2011 ) by Michael Williamson

Authentication and Authorization with Windows Accounts in ASP.NETIf you are providing web-based information for a closed group of users, such as a company or similar organisation with roles and membership, then Windows authentication make a great deal of sense for ASP.NET websites or even .NET applications. Why, and how do you implement it? Matteo explains all. ( 30 Mar 2011 ) by Matteo Slaviero

Configuring the Storage SubsystemThe storage subsystem for a SQL Server can prove to be a bottleneck if the best choices of hardware aren't made, but there are ways to relieve the I/O bottlenecks if the causes are well understood. This requires benchmarking. Glenn Berry gives expert advice on getting to grips with the disk subsystem. ( 20 Jul 2011 ) by Glenn Berry

The Whipping BoyTalented and highly-valued IT professional or convenient corporate whipping boy? Phil Factor walks the line... ( 21 Jul 2006 ) by Phil Factor

Database Properties Health CheckWithin an instance of SQL Server, the database settings can have a direct effect on the database's behavior, performance and availability. Sometimes, it is difficult to tie a symptom to a cause, so it is wise to routinely check and record these settings. Before you change the current setting, it pays to understand exactly what it means and the implications of any change. ( 13 Sep 2011 ) by Brad McGehee

Designing Databases for Rapid ResilienceAs the volume of data increases, DBAs need to plan more actively for rapid restores in the event of failure. For this, the intelligent use of filegroups is important, particularly when the Enterprise Edition of SQL Server offers the hope of online restores. How, though, should you arrange your data on the different filegroups? What happenens if the primary filegroup gets corrupted? Why backup and restore indexes? ( 15 Oct 2012 ) by Feodor Georgiev

From WinForm to WPF: A Quick Reference GuideMichael Sorens provides a handy wallchart to help migration between WinForm / WPF, VS 2008 / 2010, and .NET 3.5 / 4.0. this can be downloaded for free from the speech-bubble at the head of the article. He also describes the current weaknesses in WPF, and the most obvious differences between the two. ( 23 Mar 2010 ) by Michael Sorens

Tomorrow will be our Dancing DaySomeone recently told Phil that it was impossible to tell a good ghost story about IT Development. Great mistake. Noone of a nervous disposition should read this.... ( 13 Dec 2007 ) by Phil Factor

Asynchronous client script callbacksThis article provides an example of asynchronous client script callbacks in ASP.NET V2.0. ( 10 Aug 2005 ) by Paul Glavich

Exchange Database TechnologiesOne of the most misunderstood technologies in Exchange Server, regardless of its version, is the database technology. Most people, even Exchange administrators know it is something to do with ESE and tools like ESEUTIL, but once it's running they leave it that way for the rest of their lives. It's too difficult and you'd better not touch it in case it breaks.. ( 22 Aug 2008 ) by Jaap Wesselius

Working with Property Expressions in SQL Server Integration ServicesProperty Expressions in SSIS packages are assigned to a property at run time. This allows parameters to be passed to a package every time they are run, making them far more versatile. Despite their obvious usefulness, they are not well known. Hopefully, Bob's article puts things right. ( 16 Mar 2009 ) by Robert Sheldon

How to Get SQL Server Data-Conversion Horribly WrongOne of the most certain ways of going wrong with any relational database is to get data conversion wrong. Implicit data conversion is a good feature for the expert but can cause a lot of trouble to the unwary. These boil down to seven ways of failing to get data conversion right. Rob Sheldon explains and gives sage advice on how to avoid the problems ( 02 Apr 2015 ) by Robert Sheldon

The Seven Billion Dollar ManWhen the incredible news broke, last week, that a trader at the third-largest bank in France, the Soci‚t‚ G‚n‚rale, had allegedly managed to over-ride the entire compliance mechanism of the bank, implemented at immense cost by a department of 2000 IT compliance 'officers', to cause a massive $7 billion loss, it sent waves of panic throughout the IT industry, as well as the money markets. So we sent our roving reporter, Richard Morris, to try to find out what went wrong. ( 29 Jan 2008 ) by Richard Morris

Controlling Execution Plans with HintsThe Query Optimizer gets it right most of the time, but occasionally it chooses a plan that isn't the best possible. You can give the Query Optimiser a better idea by using Table, Join and Query hints. These come with a risk: Any choices you force on the Optimizer by using hints can turn out to be entirely wrong as the database changes with the addition of data over time. Grant Fritchey, in a chapter from his highly acclaimed book, explains further. ( 12 Nov 2009 ) by Grant Fritchey

Why is that SQL Server Instance under stress?There are several reliable indications, using SQL Queries, of the what is causing SQL Server performance problems. Some of these are fairly obvious, but others aren't. Grant shows how you can get clues from any SQL Server as to the cause of stress. ( 11 Sep 2012 ) by Grant Fritchey

The Data Center that ExplodedA while back, in a Simple-Talk editorial meeting, someone bet Phil that he couldn't come up with a Halloween story. To our surprise he said he could, as long as he didn't have to keep to the strict literal truth. In the end, he came up with a story about a story, and it is true that he first told the story in a data Centre at Halloween! ( 28 Oct 2008 ) by Phil Factor

Restraining the Workplace BullyWorkplace bullying is not to be taken lightly. For the victim it can be traumatising. It is a symptom of poor management and badly-functioning teamwork, and now, at last, it is not only contemptible but also illegal ( 05 Nov 2007 ) by Richard Morris

SQL String User Function Workbench: part 1Robyn and Phil go back to basics and hammer out some basic String-handling User Functions in TSQL, based on Python examples. Plenty of sample code, and TSQL programming tricks. ( 15 Apr 2008 ) by Robyn Page and Phil Factor

SQL Server Storage Internals 101This article is an extract from the book Tribal SQL. In this article, Mark S. Rasmussen offers a concise introduction to the physical storage internals behind SQL Server databases. He doesn't dive into every detail, but provides a simple, clear picture of how SQL Server stores data. ( 09 Oct 2013 ) by Mark S Rasmussen

Exploring Query Plans in SQLSQL Server keeps the most-used execution plans in cache, so it doesn't need to recompile the same queries every time. How can we benefit from this to find potential performance problems in execution plans? Let's see how to find some opportunities for optimization by using information held in SQL Server's plan cache. ( 31 Dec 2014 ) by Dennes Torres

Handling Errors Effectively in ASP.NET MVCASP.NET MVC gives you more options in the way that you handle exceptions. Error handling isn't intrinsically exciting, but there are many ways of avoiding the classic yellow page of death, even getting ELMAH to manage error handling for you. ( 10 Apr 2014 ) by Dino Esposito

The TSQL of CSV: Comma-Delimited of ErrorsDespite the neglect of the basic ODBC drivers over the years, they still afford a neat way of reading from, and writing to, CSV files; and to be able to do so in SQL as if they were tables is somewhat magical. Just to prove it is possible, Phil creates a CSV version of AdventureWorks as a linked server. ( 13 Apr 2012 ) by Phil Factor

Developing your Data Access Layer with ADO.NET Entity Framework 4Entity Framework has evolved in the light of feedback. ADO.NET Entity Framework 4 is now better able to accommodate different development methodologies. A welcome improvement is the way that, the application designer now has a range of options in the way that Entity Framework creates the Data Access layer. Prasanna returns to Simple-Talk to explain the significance of the changes. ( 23 Mar 2010 ) by Amirthalingam Prasanna

Upgrade from Exchange 2007 to Exchange 2010 - Part 1Upgrading to Exchange Server 2010 is easy if you know how, and Jaap's simple walkthrough will guide you painlessly through the process. Having already explained the step-by-step upgrade process for those of you using Exchange Server 2003, Jaap now makes life easy for the Exchange Server 2007 SysAdmins, too. ( 18 Nov 2010 ) by Jaap Wesselius

PowerShell Data Basics: File-Based DataOne of the frustrations of anyone beginning with PowerShell is the simple task of getting data in and out. To help out with this, Michael Sorens begins a series that shows you how to import data from most of the common file formats and sources. He also shows how to export data in a range of formats. ( 03 Dec 2013 ) by Michael Sorens

Giving Clarity to LINQ Queries by Extending ExpressionsLINQ expressions can be made much easier to comprehend and modify by using extension methods to create pipes and filters. Ed takes a working LINQ expression and makes stepwise improvements to it to make it clearer. ( 15 Nov 2013 ) by Edward Charbeneau

The Role of the Technical Architect in DevelopmentWhat do Technical Architects (TAs) actually do when in a development role? Are they just senior developers 'pushed upstairs' into a management role? Is there a clear distinction between a TA and a product, or project, manager? In an increasingly automated and joined up development environment, the role is important, varied and wide-ranging; as Grzegorz Strzelecki explains ( 15 Oct 2014 ) by Grzegorz Strzelecki

5 Tips for Understanding Managed-Unmanaged Interoperability in .NETInterop doesn't have to be taxing. Interoperability between managed and unmanaged code happens under the hood in .NET. When you are doing Interop in your .NET applications, there are a few things to beware of, and Michael McLaughlin gives a brief introduction of how interop is used in .NET before explaining the five points to watch out for. ( 14 Nov 2011 ) by Michael McLaughlin

SQL Server SQLCMD BasicsSqlcmd makes many SQL Server tasks, such as automating test runs and maintenance tasks, easier and quicker. The sqlcmd command-line utility is valuable to any database developer or DBA as the prime means of executing batches of SQL Statements to SQL servers, and saving results to file. Rob Sheldon gives you the basic facts about this great utility ( 15 Oct 2013 ) by Robert Sheldon

Using Exchange 2007 for Resource BookingThe process of booking various resources to go with a meeting room just got a whole lot easier with Exchange 2007. Nathan Winters explains Exchange's resource-scheduling functionality and offers practical advice on how you might go about configuring Exchange to allow users who are scheduling meetings to specify that such things as video conferencing, projection equipment, and refreshments are required for the meeting. ( 16 Jul 2008 ) by Nathan Winters

The Time BombPhil cheerfully admits to his fair share of accidental IT disasters. His experiences some time ago with the Time Bomb, where his software crashed and threatened civil unreast in a far-away country were, however, deliberate. ( 29 Apr 2008 ) by Phil Factor

The Ghost in the MachineI have always felt rather second-rate as an IT pundit as I have yet to introduce my own TLA (Three-letter Acronym ) into the IT industry. I would therefore like to suggest a new branch of IT: solving IT problems by Antiquarian Research in Technology. Or ART, to us aficionados. ( 27 Jun 2006 ) by Phil Factor

SQL Server Wait Events: Taking the Guesswork out of Performance ProfilingMeasuring what is actually happening is always the best course of action when investigating performance issues on databases, rather than relying on cache hit ratios, or best practices, or worst of all, guesswork. This article introduces some techniques that will allow you to pinpoint exactly where the performance issues are in your system, so you'll know exactly where to spend your time (and money) in solving them. ( 22 Mar 2007 ) by Mario Broodbakker

How to Get SQL Server Dates and Times Horribly WrongOne of the times that you need things to go right is when you are doing analysis and reporting. This is generally based on time and date. A sure-fire way of getting managers upset is to get the figures horribly wrong by messing up the way that you handle datetime values in SQL Server. In the interests of peace, harmony and a long career in BI, Robert Sheldon outlines some of the worst mistakes you can make when using SQL Server dates. ( 28 May 2015 ) by Robert Sheldon

Does NoSQL = NoDBA?There's a joke doing the rounds at SQL conferences and seminars: three DBAs walk into a NoSQL bar and leave when they can't find a table. You may have heard it before, but it made Matt Hilbert sit down and ponder. What's happening? Is there a division opening up between the newly fashionable NoSQL followers and DBAs? Matt bravely enters the shiny new world of NoSQL to investigate. ( 21 Oct 2014 ) by Matt Hilbert

The Data DialogMost companies have long since jettisoned the role of the grizzled old data architect, whose job it was to ensure a common understanding of the meaning of all data entities in the enterprise, and the actions carried out on it. Many are just now coming to realize what a costly mistake that might have been... ( 30 Jan 2007 ) by Phil Factor

Advice on CSS you'll wish your mother told youWilliam Brewer turns a jaundiced eye to the task of laying out web pages using CSS, and gives some nuggets from years of occasional page design. It is, of course, set with a a stylesheet he's come up with to demo a few of his points. ( 21 May 2010 ) by William Brewer

Blogged to deathSuddenly, Bloggers aren't just writing the news, they are the news. Are we expected to believe that the pressures of the job are enough to cause premature death and disease amongst professional bloggers? Is it now time to feel sorry for the high-profile personalities of the blogosphere? Once again, we send our own journalist, Richard Morris, out into the rain in his trenchcoat to find out. ( 14 Apr 2008 ) by Richard Morris

Exchange 2010 - A Practical ApproachJaap's Practical Guide to Exchange Server 2010 draws upon all that experience to deliver an easy-to-use guide to this latest platform, full of useful examples and top tips for SysAdmins, both new and experienced. ( 13 Oct 2009 ) by Jaap Wesselius

The Query Optimizer: Date Correlation OptimisationIn SQL Server 2005, a feature was introduced that was hardly noticed, but which might make a great difference to anyone doing queries involving temporal data. For anyone doing Data Warehousing, timetabling, or time-based pricing, this could speed up your queries considerably. Who better to introduce this than Query Optimizer expert, Fabiano Amorim? ( 01 Oct 2009 ) by Fabiano Amorim

Report Builder 3.0: Formatting the Elements in your ReportThere is a lot that can be done to make basic tabular reports more readable, using Microsoft's free Report Builder. Rob Sheldon continues his exploration of the power of this tool by showing how to format various elements within reports. ( 12 Sep 2012 ) by Robert Sheldon

Reporting at the TopIn Reporting Services, It is not difficult to provide flexible grouping and to display the detail records in a drill-down on-demand method. It is more difficult to combine custom ranking and aggregations on filtered table groups in table based reports. David Leibowitz shows you how. ( 26 Oct 2007 ) by David Leibowitz

Partitioning Your Code Base Through .NET Assemblies and Visual Studio ProjectsShould every Visual Studio project really be in its own assembly? And what does 'Copy Local=True' really mean? Patrick Smacchia is no stranger to large .NET projects, and is well placed to lay a few myths to rest, and gives some advice that promises up to a tenfold increase in speed of compilation. ( 10 Feb 2011 ) by Patrick Smacchia

Making Data Analytics Simpler: SQL Server and RR and SQL Server are a match made in heaven. You don't need anything special to get started beyond the basic instructions. Once you have jumped the hurdle of reliably and quickly transferring data between R and SQL Server you are ready to discover the power of a relational database when when combined with statistical computing and graphics. ( 28 Apr 2015 ) by Feodor Georgiev

ASP.NET MVC Action Results and PDF ContentThe Action Result in ASP.NET MVC provides a simple and versatile means of returning different types of response to the browser. Want to serve a PDF file with dynamically-generated content? Do an SEO-friendly permanent redirect? Dino shows you how simple this can be using a tailor-made ActionResult class ( 06 Jul 2011 ) by Dino Esposito

ASP.NET 2.0 and VS 2005 - You win some, you lose someRick Strahl takes stock of the major changes and provides a personal perspective on some of the highs and lows of ASP.Net 2.0 and VS 2005. ( 19 Apr 2006 ) by Rick Strahl

Close These Loopholes in Your Database TestingAlex starts of a series of articles on 'Unit Testing' your database development work. He starts off by describing five simple rules that make all the difference. ( 31 Jul 2007 ) by Alex Kuznetsov

The DIS-Information Principle: A Splitting HeadacheYou can easily re-factor bad DML code, but if a database design is wrong, you can do little to rescue the problem, even with expert queries. So what constitutes 'wrong RDBMS design? What are these errors that continually crop up? How can you recognise them and fix them? Joe embarks on a new series of articles by identifying a series of bad practices based on the habit of 'splitting' that which shouldn't be split. ( 17 Aug 2010 ) by Joe Celko

SQL Server Matrix WorkbenchIn this workbench, Robyn Page and Phil Factor decide to tackle the subject of Matrix handling and Matrix Mathematics in SQL. They maintain that 'One just needs a clear head and think in terms of set-based operations' ( 15 Nov 2008 ) by Robyn Page and Phil Factor

The March of TechnologyIn which Phil, under the influence of a surfeit of lobster, some fine wine and a large book, conjures up an imaginary Bill Gates, lets him know why people aren't flocking to SQL 2005, and offers him a turning off of the path to ever more complex and bloated database software. ( 28 Feb 2007 ) by Phil Factor

Troubleshooting SQL Server: A Guide for the Accidental DBAThree SQL Server MVPs, and stalwarts of the SQLServerCentral and MSDN community forums, provide fascinating insight into the most common SQL Server problems, why they occur, and how they can be diagnosed using tools such as Performance Monitor, Dynamic Management Views and server-side tracing. The focus is on practical solutions for removing root causes of these problems, rather than "papering over the cracks". ( 29 Sep 2011 ) by Jonathan Kehayias

Provisioning a New SQL Server Instance - Part ThreeOnce you've installed and configured SQL Server 2012, there are some tasks that should be done to ensure that maintenance, monitoring and alerting systems are in place to keep the instance running smoothly. Glenn Berry explains how. ( 18 Sep 2012 ) by Glenn Berry

How to Avoid Conditional JOINs in T-SQLRelational databases go out of their way to execute SQL, however bad the crimes against Codd and relational theory within the query. The 'conditional join', can be executed but at great cost. As always, it is much better to sit back and restate the problem in a set-based way. The results can be rewarding. ( 07 Sep 2015 ) by Dwain Camps

An Introduction to Windows Azure Table StorageWindows Azure Tables are intended for the storage of large amounts of schemaless data. Tables are just containers of rows of data. Mike Wood describes the practicalities of getting started with using the system. ( 14 Nov 2013 ) by Mike Wood

7 Preventable Backup ErrorsThe loss of a company's data is often enough to put the company out of business; and yet backup errors are generally avoidable with the application of common sense rather than deep technical knowledge. Grant digs into memories of his long experience of giving forum advice, to come up with the most easily preventable backup errors. ( 31 Oct 2011 ) by Grant Fritchey

The CV DetectivesAs more and more CV fraudsters creep into the technology sector, increasingly covert tactics have to be employed to hunt them out. Richard Morris reveals all... ( 12 Oct 2006 ) by Richard Morris

The Ego and the System AdministratorBecause the Sys Admins and DBAs who are efficient end up wielding a great deal of power, there is always a danger that it can 'go to their head'. If ever you start imposing your decisions on the organisation for no better reason than the fact that they're yours, then it is time to read Matt's simple guide on how to prevent your actions being controlled by your ego.Matt Simmons

Python for the SQL Server DBAPython is increasingly used by DBAs as a general-purpose scripting language, despite the pressure to adopt Microsoft's PowerShell. They find it easy to learn, powerful, and reasonably intuitive. Here Timothy Wiseman, a working DBA, explains the attraction of Python and gives a general introduction to the language, suitable for anyone who has been wondering whether to give it a try. ( 27 Aug 2009 ) by Timothy Wiseman

SQL Server Partitioning without Enterprise EditionTable partitioning is a valuable technique for managing very large database tables. It has always been possible with SQL Server, even if slightly cumbersome. SQL Server 7.0 introduced partitioning through partitioned views: These were combined with constraints to allow the query optimizer to remove irrelevant tables from the query plan and reduce the overall plan cost when a UNIONed view accessed multiple tables. As Barry King explains, this is still a valuable feature that works in every current version of SQL Server. ( 10 Dec 2009 ) by Barry King

Hypothetical Indexes on SQL ServerSometimes, you have to test out alternative indexing strategies, but the task of creating the candidate indexes would just take too long. Is there another way? Well, yes, why not use the same method the DTA (Database Tuning Advisor) uses, and take the tedium out of the job. ( 18 Dec 2012 ) by Fabiano Amorim

WebMatrix: Website Development made easier?Microsoft's WebMatrix Beta 2 comes with some interesting technologies, such as Razor and IIS Developer Express. It promises a much simpler way of getting Web Applications up and running, either by using a configurable package, or by writing code from scratch. Jinath investigates to see what's in store with WebMatrix. ( 05 Oct 2010 ) by Jinath Premaratne

SQL Server Transaction Log Fragmentation: a PrimerGenerally, you will have no need to worry about the number of virtual log files in your transaction log. However, if you use the default settings for 'auto-grow', you can end up with such 'fragmentation' in your transaction log as to affect performance noticably. How can this be avoided? How can you tell it's a problem? What do you do about it? Greg explains. ( 26 Apr 2012 ) by Greg Larsen

Automated Script-generation with Powershell and SMOIn the first of a series of articles on automating the process of building, modifying and copying SQL Server databases, Phil Factor demonstrates how one can generate TSQL scripts for databases, selected database objects, or table contents from PowerShell and SMO. ( 03 Feb 2012 ) by Phil Factor

Window Functions in SQL Server: Part 3: Questions of PerformanceA SQL expression may look elegant on the page but it is only valuable if its performance is good. Do window functions run quicker than their conventional equivalent code? Fabiano gives a definitive answer. ( 04 Jan 2012 ) by Fabiano Amorim

Pakistan: Cyber Warfare and Internet HackingThe extent of malicious hacking on the internet, in pursuit of political or economic advantage, crime or just plain mischief, threatens to escalate the cost of even basic IT infrastructure. In the emerging economies, organised hacking is now beginning to impede economic growth so much that organised counter-measures are now required. Our Pakistan correspondent describes the problem there, and suggests some solutions. ( 17 Jan 2012 ) by Alamzeb Khan

Statistics in SQL ServerSQL Server's Query Optimiser relies on statistics for providing a decent query plan. If the statistics are wrong, outdated or missing then you have little realistic hope of having queries that perform well. It is therefore important to appreciate how SQL Server maintains distribution statistics.Grant Fritchey

Tim Berners-Lee, Geek of the WeekWe interview Simple-Talk's Geek of the Week, Sir Timothy John Berners-Lee OM KBE FRS FREng FRSA. , ranked first in The Telegraph's list of 100 greatest living geniuses, and director of the World Wide Web Consortium. What has he achieved? He invented the World Wide Web, Browsers and Web Servers. You could reasonably argue that he invented Wikis and Blogs too. And he's still inventing things. ( 20 Jun 2008 ) by Richard Morris

Taking Back Control of your IT CareerIt can, and does, happen during the average IT career. Suddenly you have lost your job. It is a time when you have to think carefully about your strategy, what you want to aim for, and then take back control of your IT Career. Stephan Onisick writes frankly about his own successful odyssey to put his career back on track. ( 06 Nov 2008 ) by Stephan Onisick

Software Tool Design: Design by SketchingDevelopers can get so used to relying on computers for everything that they can forget how useful it can be in the design process to elicit and refine ideas whilst working in groups, using a sketchbook, pencils and crayons. Sometimes we all need a jolt to force us to take a different approach to solving software design problems. ( 06 Aug 2008 ) by Stephen Chambers

The Burning Men - The IT drug habitIt would seem bizzare that IT staff who depend on their quick wits for their living should ever think it a good idea to fry their brains with recreational drugs. It is therefore worrying to hear that there has been a 34 percent increase in IT employees in the US testing positive for cocaine usage in the workplace. We sent the taciturn Richard Morris to find out more. ( 29 Apr 2008 ) by Richard Morris

Restoring Exchange Server 2010 using Windows Server BackupIn his previous article, Antoine Khater made sure that every Exchange SysAdmin knew how to backup their servers. Now that you've got your backups running smoothly, his latest no-nonsense guide covers exacty how to restore everything ranging from whole servers down to individual mailboxes and items, and how to do it fast. ( 24 Jun 2010 ) by Antoine Khater

Hands-on Entity FrameworkPeople keep saying that Entity Framework is simple to learn. Simple? Well, finally, we're going to be forced to agree, thanks to James Johnson's new series on learning EF the hands-on way. ( 23 Feb 2010 ) by James Johnson

Writing to Word from SQL ServerNever a man to walk away from a challenge, Phil Factor set himself the task of automating the production of Word reports from SQL Server, armed only with OLE automation and a couple of stored procedures. ( 06 Mar 2007 ) by Phil Factor

Token Replacement in ASP.NETDamon Armstrong describes an elegant way of performing dynamic string replacement in ASP.NET applications - one that will work in any situation imaginable! ( 01 Nov 2006 ) by Damon Armstrong

Some NHibernate Best-PracticesNHibernate can help to build a project more quickly if the database it connects to is sound. Otherwise, there are bound to be problems, but they are not problems of NHibernate's making. Nick Harrison gives some advice, and suggests some 'best-practices' for using it, fresh from the reality of developing an application based on NHibernate. ( 25 Nov 2010 ) by Nick Harrison

Calling Stored Procedures from .NET ApplicationsEverybody knows how to call stored procedures from a .NET application. Right? But then, how often do you see stored procedures used to their full advantage in database applications? William Brewer goes through some of the basics, but uses PowerShell and IronPython as well as VB.NET as the example .NET applications just to freshen the subject up a bit, and avoids all mention of Northwind or AdventureWorks! ( 11 Sep 2009 ) by William Brewer

Using PowerShell and WMI Events Queries for Powerful NotificationsWith PowerShell in one hand, and WMI in the other, DBAs can do almost anything in their Window's environments, and Laerte is using his powers for good. He built a highly precise, highly configurable alerting system for his servers, and now shows us exactly how he did it. ( 25 Jul 2011 ) by Laerte Junior

Inside the SQL Server Query OptimizerThis book will take you from the fundamentals of Statistics, Cost Estimation, Index Selection, and the Execution Engine, and guide you through the inner workings of the Query Optimization process, and throws in a pragmatic look at Parameterization and Hints along the way. ( 08 Nov 2010 ) by Benjamin Nevarez

Microsoft Hyper-V Networking and Configuration - Part 2Hyper-V Networking can be configured to meet a wide range of requirements, but it isn't always obvious which choices are appropriate when configuring the virtual network, and in particular the best ways to implement Virtual Network Switches. ( 10 Jan 2013 ) by Nirmal Sharma

SQL Server Heaps, and Their FragmentationIn SQL Server, heaps are rightly treated with suspicion. Although there are rare cases where they perform well, they are likely to be the cause of poor performance. If a table is likely to have a large number of changes, then it can become fragmented due to way that space is allocated and forward pointers used. How does one detect this problem? Is it significant? How does one deal with it, if necessary? ( 02 Nov 2015 ) by Neeraj Tripathi

Binary Trees in SQLA number of hierarchies and networks are most convenently modelled as binary trees. So what is the best way of representing them in SQL? Joe discards the Nested Set solution in favour of surprisingly efficient solution based on the Binary Heap. ( 22 Jun 2010 ) by Joe Celko

SQL Server Alerts: Soup to NutsIn which Robyn Page and Phil Factor try to get to grips with the difficult subject of SQL Server Alerting, and give you enough detail to put effective alerting systems into your database. ( 19 Feb 2008 ) by Robyn Page and Phil Factor

Regular Expression Based Token Replacement in ASP.NETDamon Armstrong presents an extremely powerful and flexible token replacement mechanism for your ASP.NET applications. It is based on regular expressions so allows you to search for dynamic text, instead of just a static token, in a given string. ( 10 Jan 2007 ) by Damon Armstrong

A Practical Guide to Microsoft Hyper-V Replica: Part IA Hyper-V replica installation provides a great opportunity for providing rapid disaster-recovery by asynchronously replicating a VM running at a primary site to a replica site across LAN or WAN to maintain a hot standby VM. Nirmal explains more, and shows how to set it up. ( 10 Jun 2013 ) by Nirmal Sharma

When Database Source Control Goes BadIt is a question every development manager dreads; "So how does your company handle database changes?". The reply usually masks a multitude of sins against all the canons of version control. Mike has seen most of these sins and, like the ancient mariner, is keen to give you the awful warning, 'Neglect database source control at your peril'. ( 05 Aug 2010 ) by Mike Mooney

Rob Pike: Geek of the WeekRob Pike's contribution to Information Technology has been profound, both through the famous books he co-authored with Brian Kernighan, and his contribution to distributed systems, window systems and concurrency in Unix. Now at Google, his creative skills are in full flow, particularly, in collaboration with Ken Thompson, in the exciting Go language, a grown-up, but radical, C with concurrency. ( 17 Jan 2011 ) by Richard Morris

How to develop TSQL Code The basic texts for developing SQL code tend to leave unsaid the basic techniques for building routines such as stored procedures in T-SQL. Phil is well-known for his more lengthy and complex stored procedures, so we asked him to explain in more detail how he goes about developing things like that without the comfort of Visual Studio ( 24 Jun 2011 ) by Phil Factor

Database Administration as a ServiceA DBA should provide two things, a service and leadership. For Grant Fritchey, it was whilst serving a role in the Scouts of America that he had his epiphany. Creative chaos and energy, if tactfully harnessed and directed, led to effective ways to perform team-based tasks. Then he wondered why these skills couldn't be applied to the workplace. Are we DBAs doing it wrong in the way we interact with our co-workers? ( 14 Aug 2013 ) by Grant Fritchey

Tom Kyte: Geek of the WeekTom Kyte's contribution to the AskTom column and site over ten years has been outstanding. Much of what he says has relevance to all relational databases. His views are straightforward, the discussions he provokes are lively: Not only does he know a frightening amount about both Oracle and SQL Server, but he's also refreshing to listen to. ( 24 Jun 2010 ) by Richard Morris

SQL Server XML CribsheetIf you're like me and find XML a bit of an acronym minefield, Robyn Page's Cribsheet will help sort out your XSLT from your XDM. ( 29 Mar 2007 ) by Robyn Page

Using SSIS to monitor SQL Server Databases Rodney Landrum is a DBA who manages over eighty SQL Servers. It is a job that requires a great deal of ingenuity. He needed a way of knowing if there were signs of trouble anywhere in his servers. Here he describes how the use of SSIS saved him a great deal of time in getting a monitoring system in place and working ( 05 Jun 2008 ) by Rodney Landrum

High Availability in Exchange 2007Neil Hobson writes about the ways that MS Exchange 2007 can ensure that your organisations messaging remains available. He looks at the way that the Mailbox Server role can be made more available using features as Single Copy Clusters, Local Continuous Replication,  and Clustered Continuous Replication. He also discusses ways of improving the resilience of the other server roles. ( 10 Jun 2008 ) by Neil Hobson

Cursors and embedded SQLThe database mole turns his attention to take a look at cursors and embedded SQL ( 19 Dec 2005 ) by Phil Factor

Eight Steps to Effective SQL Server MonitoringIf you need to start monitoring your SQL Server instances and database, and there are many good reasons to do so, Tony Davis gives you the eight essential steps to diagnosing problems quickly. ( 14 Aug 2013 ) by Tony Davis

Robyn Page's SQL Server Data Validation WorkbenchRobyn Page provides essential techniques for ensuring the validity of the data being entered into your SQL Server tables. ( 23 Oct 2006 ) by Robyn Page

Craig Newmark: Geek of the WeekOccasionally, readers of Simple-Talk will ask quizzically if the 'Geek of the Week' that the editors have chosen really is a true 'geek'. Nobody could ever ask that about Craig Newmark, the founder of the famous website 'CraigsList'. The site is uncompromisingly geeky in attitude, spartan in appearance but immensely popular, and supported by an army of enthusiasts. One can say exactly the same about the admirable Craig Newmark himself. ( 15 Jun 2009 ) by Richard Morris

Reporting Services CribsheetIf you tend to just nod gravely and stay silent when SQL Server Reporting Services is mentioned, here is your opportunity to get up to speed with one of the more important technologies associated with ?SQL Server ( 07 Aug 2007 ) by Robyn Page and Phil Factor

Questions About CUBE, ROLLUP and GROUPING SETs That You Were Too Shy to AskThere are few parts of SQL Syntax as familiar as the GROUP BY clause of the SELECT statement. On the other hand, CUBE and ROLLUP remain mysterious despite their usefulness and GROUPING SET is positively arcane, especially if you are too shy to reveal your ignorance of the subject by asking! ( 03 Nov 2015 ) by William Brewer

Using Table Valued Parameters with VB.NETSQL Server's Table-Valued Parameters are useful, and easy to use, but you should be aware that something that looks loke a table, and seems to behave like a table, can't necessarily be used just like any other table. Leidago gives a developer's guide on how, and why, you should use TVPs in your application. ( 03 Nov 2010 ) by Leidago !Noabeb

Exceptional PowerShell DBA Pt 2 - The Morning ChecklistLaerte Junior takes us further into the world of an Exceptional PowerShell DBA, showing us how he uses PowerShell 2.0 to take all the headaches out of even more of his daily checklist. What could be better than having your morning checklist run itself? ( 21 Jan 2010 ) by Laerte Junior

Queries, Damned Queries and StatisticsIn a perfect world, we should just be able to write queries and leave the RDBMS to decide the perfect strategy to get the data. Until then we have to understand the Query Optimizer and the way it uses distribution statistics. ( 14 Oct 2010 ) by Holger Schmeling

SQL Injection: How it Works and How to Thwart itThis article is an extract from the book Tribal SQL. In this article, Kevin Feasel explains SQL injection attacks, how to defend against them, and how to keep your Chief Information Security Officer from appearing on the nightly news. ( 24 Apr 2014 ) by Kevin Feasel

Walter Bright: Geek of the WeekAfter developing the first native C++ compiler, the Zortech C++, and writing the Symantec Java compiler, Walter Bright created D (C Done right). He has written a number of commercial compilers for a number of languages, and D is the culmination of everything he has learned in over twenty years. As a result of all this experience, he has interesting views on compilers and languages. ( 01 Oct 2009 ) by Richard Morris

Andrew Tanenbaum: Geek of the WeekAndrew Tanenbaum has had an immense influence on the way that operating systems are designed. He provided the inspiration for Linux, in his lightweight kernel Minix, and his classic textbook 'Operating Systems: Design and Implementation' that Linus Torvalds  described as 'the book that launched me to new heights.' ( 14 Aug 2008 ) by Richard Morris

Dynamically generating typed objects in .NETWhen you are binding Data to DataGrid in .NET, this has to be done at design-time. That's fine if you know what the form of the data is at design time: but what if you don't? Vlad Bodurov looks at some of the options and demonstrates an unusual dynamic technique that transforms IDictionary into a typed object ( 14 Jul 2008 ) by Vladimir Bodurov

Getting Started with Extended Events in SQL Server 2012Extended Events provide a way of unintrusively monitoring what's going on in a SQL Server instance. Unlike SQL Server Profiler and SQL Trace, it has little performance impact. Now, in SQL Server 2012 SSMS, it is relatively easy to use, as Robert Sheldon shows. ( 04 Feb 2013 ) by Robert Sheldon

Rebuilding Indexes using the SSMS Database Maintenance WizardIndex fragmentation can cause problems with query performance. Indexes therefore need to be occasionally rebuilt. the Rebuild Index task of the SSMS Database Maintenance Wizard drops and rebuilds every index in a database. It is effective but an off-line activity that is resource-intensive, so it not always the best way of avoiding index fragmentation in a production database. Brad explains... ( 18 Aug 2010 ) by Brad McGehee

Managing Exchange 2007 Mailbox Quotas with Windows PowerShellThe use of PowerShell with Exchange Server 2007 can do a great deal to ease the task of managing mailbox quotas. You can, for example, use scripts to customize quota messages, retrieve mailbox sizes, and set the quotas. Ben shows you how, in the 2nd installment of his Top Tips for SysAdmins. ( 24 Nov 2008 ) by Ben Lye

Relational Databases and Solid State Memory: An Opportunity Squandered?The relational model was devised long before computer hardware was able to deliver an RDBMS that could deliver a fully normalized database with no performance deficit. Now, with reliable SSDs falling in price, we can reap the benefits, instead of getting distracted by NOSQL with its doubtful compromise of 'eventual consistency'. ( 17 Jan 2012 ) by Robert Young

Exceptional PowerShell DBA Pt1 - Orphaned UsersInspired by Brad McGehee's 'How to Become an Exceptional DBA', Laerte decided it was high time he took a proactive approach to his work. Using PowerShell, he came up with a solution that makes finding and fixing orphaned users as easy as cake, and now he's sharing it with us. ( 26 Nov 2009 ) by Laerte Junior

Fun with SQL Server Profiler trace files and PowerShellRunning Profiler traces against multiple servers becomes a painful process when it's time to collate and filter all that data. It would be time-consuming, frustrating and messy if Laerte hadn't written this handy PowerShell script (complete with examples) to help you out. ( 25 Nov 2010 ) by Laerte Junior

LINQ Secrets Revealed: Chaining and DebuggingLINQ has the capabilities of providing a great productivity boost. LINQ Chaining is particularly powerful magic, giving your code greater clarity and brevity. Using it, and debugging it, can be tricky without the right tools and techniques, but Michael is on hand to explain and make suggestions. ( 01 Dec 2010 ) by Michael Sorens

Mobile BI with SQL Server Reporting ServicesFor users to get the information they need from mobile reports, we frequently have to tailor the way we design those reports to the characteristics of the target device. Adam Aspin demonstrates some of the ways that we can deliver easy-to-use Business Intelligence to tablets and smartphones using Reporting Services. ( 20 Apr 2015 ) by Adam Aspin

Pop Rivett's SQL Server FAQPop Rivett dispenses pearls of SQL Server wisdom, this time tackling the setting of variables from dynamic SQL. Bah, humbug. ( 18 Sep 2006 ) by Pop Rivett

Quantifying Text differences in TSQLIn TSQL there is a limit to the way you can compare text strings. They're either equal or not. Sooner or later, usually when cleaning data, something more subtle is required! ( 20 Sep 2007 ) by William Brewer

Programmer SuperstitionsWhy do we cling to some programming traditions so strongly? Jesse Liberty asks us to pause, ponder and re-assess the value of many of our superstitions. ( 11 Dec 2006 ) by Jesse Liberty

Richard Stallman: Geek of the WeekMany famous geeks work away at their programs without considering the wider implications of what they, and others, are doing. Richard Stallman isn't like that. Richard (rms) is one of the great brains behind Linux Distros, as he wrote the GNU compilers and GNU debugger. He is driven by strong opinions about the nature of free software, and the restrictive nature of software copyright. We sent our intrepid reporter, Richard Morris, to find out if Richard Stallman really required journalists to read parts of the GNU philosophy before an interview, for "efficiency's sake". ( 20 Jul 2009 ) by Richard Morris

To SP or not to SP in SQL Server: an argument for stored proceduresA seemingly never-ending battle in online database forums involves the question of whether or not database application development should involve the use of stored procedures. ( 06 Jun 2006 ) by Adam Machanic

Numeral Systems and Numbers Conversion in SQLNumeral systems can be fascinating. In everyday programming, we are now becoming quite insulated from the need to convert between binary numbers and their representation, so it is a novelty to try out ways of doing it in SQL, and experiment with other number systems from the past. ( 10 Dec 2007 ) by Alex Kozak

Software that Crushes your SoulStephen confesses his anger at Visio, which he is having to use all day, every day, in order to design software. Unlike the average 'angry blogger', he offers a constructive solution to some of his gripes that you may download. ( 05 Dec 2008 ) by Stephen Chambers

Verity Stob: Geek of the WeekReal geeks read Verity Stob. Verity writes her painfully funny invective from a powerful advantage, she is a geek herself, and her humour comes from the pain of every-day life as a programmer. Verity Stob, with her unique, and hilarious, contribution to making our lives bearable, had to be our Geek of the Week. We sent Richard Morris to interview her, of course. ( 27 Nov 2008 ) by Richard Morris

Sir Tony Hoare: Geek of the WeekAfter inventing the QuickSort algorithm, and designing the compiler for the Algol 60 programming language, Tony Hoare went on to apply axiomatic semantics to compiler design and his work and writings have since had a great influence on software engineering, and the way we specify, design, implement, and maintain computer programs. Now, at 75, he is working at Microsoft research on projects that will filter through to .NET languages. ( 18 Aug 2009 ) by Richard Morris

Free Phil Factor eBook: Confessions of an IT ManagerDownload a 108-page eBook in which Phil tells all on a career spent in the rough-and-tumble of the IT industry. It's FREE for registered users! ( 13 Dec 2006 ) by Phil Factor

SQL Server Backup and Restore for the Accidental DBANot everyone who is tasked with the job of ensuring that databases are backed up, and easily restorable, consider themselves to be database administrators. If you are one of these 'Accidental DBAs' then Grant Fritchey has some good straightforward advice for you to ensure that things go well when a database has to be restored from backups ( 24 May 2011 ) by Grant Fritchey

Full-Text Indexing WorkbenchRobert Sheldon continues his guide to Full-Text Indexing, by putting down his pen and reaching for SSMS for a practical workbench on Full-Text indexing. There is nothing like trying things out to make ideas click. ( 02 Feb 2009 ) by Robert Sheldon

An Introduction to Windows Azure Service Bus Brokered MessagingAs applications grow, a message queue system soon becomes the best way of achieving scalability. It is an obvious candidate for a cloud-based service, and Azure's Service Bus Brokered Messaging service is a robust and well-tried product. Mike Wood provides enough in this article to get you started. ( 03 Jan 2014 ) by Mike Wood

The Road to Professional Database Development: Database NormalizationNot only is the process of normalisation valuable for increasing data quality and simplifying the process of modifying data, but it actually makes the database perform much faster. To prove the point, Peter takes a large unnormalised database and subjects it to successive stages of normalisation. ( 07 Jun 2012 ) by Peter Larsson

Windows Server Virtualisation: Hyper-V, an IntroductionFor SQL Server and Exchange Server, Windows Server Virtualization is going to be increasingly important as a way for the administrator to allocate hardware resources in the most efficient way, to offer more robust services, and for deploying services. Jaap Wesellius starts his new series on Hyper-V by explaining what Hyper-V is, how it relates to Windows Server 2008 and how it compares to ESX, Virtual Server and Virtual PC. . ( 01 Jun 2009 ) by Jaap Wesselius

What is Database Lifecycle Management (DLM)?When the different teams that are involved throughout the life of a database fail to reconcile their different roles and priorities, and so fail to cooperate, or work adaptively, the result is gridlock: databases defined as though carved in stone rather than by code and data. DLM offers an alternative that allows databases to respond quickly to business change. ( 13 Jul 2015 ) by William Brewer

Grant Fritchey's SQL Server HowlersWe decided to ask various well-known SQL Server people to write about their favourite SQL Server Howlers. These are the common misunderstandings about how SQL Server works that end in tears, and plaintive forum questions. Grant Fritchey opens the series with some of his favourite howlers. ( 30 Nov 2011 ) by Grant Fritchey

Matrix Math in SQLRelational Databases have tables as data structures, not arrays. This makes it tricky and slow to do matrix operations, but it doesn't mean it is impossible to do. Joe gives the Celko Slant on how to go about doing Matrix Math in SQL. ( 17 Sep 2012 ) by Joe Celko

Correlating SQL Server Profiler with Performance MonitorBoth Performance Monitor and SQL Server Profiler provide valuable information about your server. However, if you combine the data from the two sources, then this correlated information can help find some of the subtler bugs. Brad explains how. ( 16 Feb 2011 ) by Brad McGehee

Questions About T-SQL Control-of-Flow Language You Were Too Shy to AskSurely, we all know how T-SQL Control-of-flow language works? In fact it is surprisingly easy to get caught out. What, for example, do the BREAK, RETURN and CONTINUE keywords do, precisely, in their various contexts? the answers to this and other questions aren't all entirely obvious, but we're too shy to ask them in public, and risk displaying our ignorance. ( 26 Jan 2015 ) by Robert Sheldon

SQL Server 2014 Backup BasicsThere is nothing mysterious about SQL Server backups. They are essential, however you use your databases. Grant Fritchey explains the basics of database backups and restores with SQL Server 2014. ( 02 Jan 2014 ) by Grant Fritchey

Creating Technical PresentationsMaking a technical presentation is like being interviewed. It is not a skill that you are likely to need often, but when you do, advice culled from experience can make all the difference to the outcome; and like successful interviews, successful technical presentations can really help your career! ( 01 Sep 2008 ) by Joe Webb

Up Against It: Gary McKinnonIn the first of a new series about IT people or organisations in trouble, or 'Up Against It', we send Richard Morris to interview a curiously nondescript hacker from Crouch End called Gary, who gives an impression completely at odds with the 'evil Genius' described by US prosecutors who are applying for his extradition. Is Gary a stoned loner looking for evidence of UFOs, or a terrorist capable of influencing the US Government by intimidation and coercion? ( 22 Jan 2009 ) by Richard Morris

Data SynchronizationMaking your smart client application work in a disconnected environment - considering data loading and return synchronization. ( 01 Oct 2005 ) by Steve Joubert

Questions about T-SQL Expressions You Were Too Shy to AskNobody seems to ask questions about SQL Expressions in forums, even though expressions can cause all sorts of problems. Even the books on T-SQL skate over them in haste to get to more complicated topics. It is time for frank, straight-forward Q&A, and who better than Robert Sheldon to give the A? ( 13 Aug 2014 ) by Robert Sheldon

jQuery Goodness in a DotNet WorldjQuery is one of the most popular JavaScript frameworks. It shields the programmer from the idiosyncrasies in the way that each browser implements the language: it makes life easier by doing all the routine chores and takes the pain out of AJAX. It also introduces a 'Wow' factor to browser-based applications. ( 12 Aug 2010 ) by Nick Harrison

Kalen Delaney: Geek of the WeekKalen Delaney has been involved in SQL Server from the beginning. Her talks and her writings are always interesting but, most important of all, she was able to successfully take on authorship of the 'Inside SQL Server' series of books from Ron Soukup, and make them her own. Despite her own protests that she is a trainer first and foremost, she richly deserves our accolade of 'Geek of the Week' ( 16 Sep 2008 ) by Richard Morris

Getting Data between Excel and SQL Server using ODBC With ODBC, you can summarise, and select just the data you need, in an Excel workbook before importing it into SQL Server. You can join data from different areas or worksheets. You can even get data from the result of a SQL Server SELECT statement into an Excel spreadsheet. Phil Factor shows how, and warns of some of the pitfalls. ( 16 Aug 2013 ) by Phil Factor

No Significant Fragmentation? Look Closer.If you are relying on using 'best-practice' percentage-based thresholds when you are creating an index maintenance plan for a SQL Server that checks the fragmentation in your pages, you may miss occasional 'edge' conditions on larger tables that will cause severe degradation in performance. It is worth being aware of patterns of data access in particular tables when judging the best threshold figure to use. ( 28 Feb 2012 ) by Luciano Moreira

Managing ItemUpdating and ItemUpdated Events Firing Twice in a SharePoint Item Event ReceiverDeveloping a Sharepoint application would have all the fun of a video game, if only you had infinite lives. Dangers lurk hidden out there which, if you run into them, can be a blow to your project and waste a great deal of time. Damon gives just one example of a poisoned dagger in the game of Sharepoint Development: The Item Event Receiver. ( 17 Jan 2012 ) by Damon Armstrong

Jeff Moden: DBA of the DayJeff Moden's election to the Exceptional DBA of the Year award for 2011 was a popular one. Although all the finalists were exceptional, Jeff has impressed everyone with his energy, stamina and wit, particularly with his work on SQL Server Central. In conversation with Richard Morris, Jeff comes up with several nuggets of advice and opinion that are valuable for any DBA or database developer. ( 24 Nov 2011 ) by Richard Morris

Migrate to Office 365If you are using Exchange Server 2003, it is worth considering a move to Office 365 instead of Exchange 2012. If you have business reasons to do so, it is possible to use the migration tool to switch over from an 'on-premises' Exchange-hosted mail service to a cloud-based Office 365 service. Jaap walks through the steps for a relatively small corporation.. ( 08 Mar 2012 ) by Jaap Wesselius

SQL View: Beyond the BasicsFollowing up from his popular article, SQL View Basics, Joe delves into the main uses of views, explains how the WITH CHECK OPTION works, and demonstrates how the INSTEAD OF trigger can be used in those cases where views cannot be updatable. ( 28 May 2012 ) by Joe Celko

Deploying Database DevelopmentsWhen a team is developing a database application, it is a mistake to believe that deployment is a simple task. It isn't.  It has to be planned, and scripted. Alexander Karmanov describes many of the problems you're likely to meet, and provides an example solution that aims to save the DBA from the nightmare complexity of an unplanned deployment. ( 17 Jun 2008 ) by Alexander Karmanov

Josh Klein: Big in the IT BusinessIt is hard to categorize Josh Klein. Author, Technologist, Developer, Entrepreneur, polymath? He has participated in several startups, and is a popular speaker at conferences. He describes himself as an expert in 'taking things apart or putting them together again', reworking existing systems in unorthodox ways. ( 03 Apr 2012 ) by Richard Morris

A Look at the Razor View Engine in ASP.NET MVCRazor is now the dominant markup language for ASP.NET MVC applications, since it is terse and produces more readable markup than the ASPX syntax. Now with conditional nuggets and URL auto-completion, it is the obvious choice, as Dino explains. ( 14 Nov 2013 ) by Dino Esposito

The PoSh DBA - The Attributes of Advanced FunctionsOnce you pass that point of just hurriedly writing PowerShell scripts for immediate use and start to write PowerShell functions for reuse, then you'll want a robust set of parameters that allow functions to work just like cmdlets. ( 19 Jun 2012 ) by Laerte Junior

SQL Server Reporting Services Basics: The Visual ControlsThe challenge of report development is to present complex data in a simple, visually compelling way. The goal is to make it as quick and easy as possible for others in the organization to use that data to make decisions, to see progress towards a business target, or spot and act on worrying trends sooner rather than later. Kathi Kellenberger demonstrates how to start adding visual flair to your SSRS reports, using its impressive set of visual controls, ranging from basic charts to gauges, indicators, sparklines, and maps. ( 03 Dec 2014 ) by Kathi Kellenberger

7 Things that High Availability is NotWesley has heard High Availablity touted as all sorts of technological cure-all for busy SysAdmins and DBAs, and now he's taking a stand against it. There are a range of things that High Availability is regularly confused with (either deliberately or innocently), and Wesley's clearing it all up. ( 13 Jan 2011 ) by Wesley David

Building Your DBA SkillsetAs a DBA and hiring manager, Chris Shaw has been on those sides of the recruitement process. As an MVP and active member of the SQL Server community, he knows what resources are available to help DBAs hone their abilities. Who better to guide you through the many paths to developing your DBA skillset? ( 06 Jul 2011 ) by Chris Shaw

What's New in C# 6The C# language itself has changed little in version 6, the main importance of the release being the introduction of the Roslyn .NET Compiler Platform. However the New features and improvements that have been made to C# are welcome because they are aimed at aiding productivity. Paulo Morgado explains what they are, and how to use them. ( 30 Nov 2015 ) by Paulo Morgado

Geek of the Week: Linus TorvaldsFor Windows programmers, Linus Torvalds work has suddenly become relevant. No, we don't mean Linux, but Git. This distributed Source Control system now works sweetly as a nut on Windows. We contacted Linus for a second interview; this time to talk mainly about Git, but also to catch up with his thoughts about computer languages. ( 17 Oct 2011 ) by Richard Morris

TSQL String Array WorkbenchRobyn and Phil show how to use XML-based arrays to make string handling easier in SQL Server 2005/2008, and illustrate the techniques with some useful functions, one of which copies the PHP str_Replace function. ( 16 Mar 2008 ) by Robyn Page and Phil Factor

Getting Started With XML IndexesXML Indexes make a huge difference to the speed of XML queries, as Seth Delconte explains; and demonstrates by running queries against half a million XML employee records. The execution time of a query is reduced from two seconds to being too quick to measure, purely by creating the right type of secondary index for the query. ( 25 Sep 2012 ) by Seth Delconte

Never Ignore a Sort Warning in SQL ServerIt is always bad news if your SQL queries are having to use the SORT operator. It is worse news if you get a warning that sort operations are spilling onto TempDB. If you have a busy, slow TempDB, then the effect on performance can be awful. You should check your query plans to try to eliminate SORTs and never leave a SORT warning unheeded. Fabiano Amorim shows the range of ways of getting information on what is going on with a query that is doing a SORT and when requests are made for memory. ( 18 Mar 2015 ) by Fabiano Amorim

Big Data is Just a FadThe Term 'Big Data' is nothing more than a fad, and we'll soon be cringing with embarrassment at the thought that we ever used it. However, the data, and the challenges to processing it that it presents, will stay with us. If jargon like 'Big Data' helps us focus on the problems, then let's use it: temporarily, perhaps. ( 13 Apr 2012 ) by Buck Woody

Embedding Help so it will be usedIt is not good enough to make assumptions about the way that users go about getting help when they use your application. Heather Fielding describes how she was able to test the effectiveness of various different ways of providing embedded help in an application. By changing the design, she discovered, you can greatly increase the users willingness to use such help to make the task easier. ( 17 Jul 2008 ) by Heather Fielding

Comparing Python and PowerShell DBA Scripting Just when it seemed that there were were no adequate scripting systems for DBAs that could access .NET, along came two. Powershell and Python. ( 03 Aug 2007 ) by Ron Dameron

Primary Key Primer for SQL ServerEvery database developer uses keys, but without always understanding all the ramifications. They come with few hard and fast rules, but if you get them right from the start with a database design, the whole process of database development is simpler, and the result is likely to perform better. We asked Phil for advice, little knowing that the explanation might take a while. ( 02 Dec 2013 ) by Phil Factor

ASP.NET MVC: Resolve or Inject? That's the Issue.Classes should have dependencies only on abstract, rather then concrete, classes. To get around this, you can choose between Service Locator and Dependency Injection techniques. ASP.NET MVC uses 'Dependency Resolvers' which are Service Locators. When designing ASP.NET MVC applications it is open to you to decide whether to resolve or inject, so what are the pros and cons? Dino explains. ( 23 Apr 2012 ) by Dino Esposito

Understanding Browser-Based Silverlight Project ArchitectureA large part of Silverlight's allure is in its cross-browser capabilities, and that power is derived from its rendering architecture. Understanding that in-browser architecture will make your life easier when it comes to troubleshooting, and so Shailesh Patel takes us through it. ( 04 Nov 2010 ) by Shailesh Patel

The Writing on the WallPhil Factor offers an intriguing theory on why so many, hugely complex, government IT projects fail. Is it because there is a world of difference between the business processes that really take place in a company and the management's understanding of those processes? ( 27 Apr 2006 ) by Phil Factor

On Comparing Tables in SQL ServerHow do you compare two SQL tables? Every SQL Developer or DBA knows the answer, which is 'it depends'. It is not just the size of the table or the type of data in it but what you want to achieve. Phil sets about to cover the basics and point out some snags and advantages to the various techniques. ( 29 May 2014 ) by Phil Factor

Software Piracy in PakistanAlamzeb Khan, our Simple-Talk correspondent in Pakistan, goes undercover to discover the true scale of software piracy in his native country. Shocked by his findings, he interviews everyone from professional software engineers to government ministers in his hunt for potential solutions, and to understand the insidious dangers of letting the current level of piracy continue. ( 13 Mar 2010 ) by Alamzeb Khan

Practical PowerShell for SQL Server Developers and DBAs - Part 1There is a lot of confusion amongst DBAs about using PowerShell due to existence the deprecated SQLPS mini-shell of SSMS and the newer SQLPS module. In a two-part article and wallchart, Michael explains how to install it, what it is, and some of the excellent things it has to offer. ( 23 Jul 2012 ) by Michael Sorens

.NET Developer Basics - Recursive AlgorithmsRecursion can be a powerful programming technique when used wisely. Some data structures such as tree structures lend themselves far more easily to manipulation by recursive techniques. As it is also a classic Computer Science problem, it is often used in technical interviews to probe a candidate's grounding in basic programming techniques. Whatever the reason, it is well worth brushing up one's understanding with Damon's introduction to Recursion. ( 24 Dec 2009 ) by Damon Armstrong

Pivoting, Un-pivoting and Aggregating: A Quick Spin Around the BlockIn which Phil is asked to write a nice simple quick-start guide about aggregation, pivoting and un-pivoting techniques. To do so, he takes us all the way from getting the data from a published source, transferring it to SQL Server, un-pivoting it, storing it in a relational table, aggregating it and finally pivoting the data in a variety of ways ( 12 Nov 2009 ) by Phil Factor

Statistical Sampling for Verifying Database BackupsA DBA's huge workload can start to threaten best practices for data backup and recovery, but ingenuity, and an eye for a good tactic, can usually find a way. For Tom, the revelation about a solution came from eating crabs. Statistical sampling can be brought to bear to minimize the risk of failure of an emergency database restore. ( 13 May 2010 ) by Thomas LaRock

The Future of Reflector Simple Talk asked freelance writer Bob Cramblitt to sit down with the two people behind the agreement that Red Gate will be responsible for the future development of .NET Reflector, and discuss with them what it means to the community and the future of Reflector. ( 20 Aug 2008 ) by Bob Cramblitt

The Wrong FabiaThere is often more than a twinge of embarrassment when an Email goes astray, and is received by the wrong person. Phil remembers an occasion when it nearly ended a career, but somehow, ironically, changed it for the better. ( 04 Jul 2008 ) by Phil Factor

Questions About SQL Server Transaction Log You Were Too Shy To AskYou can give a deep-dive presentation about SQL Server's transaction log, and round it off by inviting questions. Your audience will stare awkwardly at their boots. Afterwards, to your surprise there will be a queue of questioners, and the questions are the ones they were too shy to ask out loud. Tony Davis answers these apparently simple, yet tricky questions. ( 11 Feb 2015 ) by Tony Davis

Understanding More Complex Query PlansIn order to be able to tackle performance issues in SQL Server , and write effective SQL, it is essential to gain a sound understanding of execution plans. Grant's previous article described graphical execution plans for Simple SQL queries. He now moves on to cover some of the more complicated plans that every database programmer will see. ( 26 Feb 2009 ) by Grant Fritchey

The SQLCMD workbenchRobyn and Phil feel strongly that there are two striking features in SSMS that extends its usefulness dramatically. The first is the Template, and the second is the powerful functionality hidden by those strange words 'SQLCMD Mode'. Here they try to demonstrate how useful SQLCMD can be to anyone who is tasked with having to administer a database. ( 07 Jan 2008 ) by Robyn Page and Phil Factor

Gail Shaw: Geek of the WeekGail Shaw, the fabled 'gilamonster', earned her MVP, and the gratitude of a great number of SQL Server professional seeking technical help, through her expert forum posts on SQL Server Central. She brings great enthusiasm to everything she does, including SQL Server, and has come to be a huge influence on the communities she joins. ( 09 Mar 2009 ) by Richard Morris

Resource GovernorIf you suffer from runaway queries, if you have several database applications with unpredictable fluctuation in workload, or if you need to ensure that workloads get the memory or CPU they need according to certain priorities, then you need Resource Governer, and you need Roy Ernest's clear explanation of the technology. ( 26 Oct 2011 ) by Roy Ernest

Buck Woody's Cloud HowlersWe asked Buck Woody to come up with his favourite 'Cloud' Howlers. After 'Howler' monkeys, we are faced with Howler letters. Buck dreams of sending Howler letters to the folks who dreamed up the marketing hype around 'cloud' services, who misunderstand services, who don't prepares applications for distributed environments and so on. ( 17 Jan 2012 ) by Buck Woody

SQL Server Audit: Magic without a WizardIn SQL Server 2008, Microsoft introduced SQL Server Audit. This is much better than anything we had before, and is likely to meet the needs of all but the largest, or the most highly-regulated of industries. SQL Server 2008 Enterprise Edition includes all of the features whereas SQL Server 2008 Standard Edition only provides only a subset. What is most attractive about it is that it is easy to administer, as Thomas LaRock explains. ( 27 Apr 2009 ) by Thomas LaRock

Stop Relying on Cloud File Stores as a Backup StrategyThere is a growing assumption that Cloud file-storage services represent an ideal way of backing up files. It seems a compelling idea because it is so easy and seems secure. The truth is, as always, more complicated. There is more to any backup strategy than just cloud storage ( 22 Oct 2014 ) by Robert Sheldon

SQL Server CASE LawSQLs CASE expressions can be powerful magic, but can trap the unwary who are used to the more familiar CASE statements of procedural languages. ( 03 Mar 2011 ) by Joe Celko

Searching for Strings in SQL Server Databases Sometimes, you just want to do a search in a SQL Server database as if you were using a search engine like Google. Besides the obvious Full-Text search, there are plenty of techniques for finding that pesky data that resists the normal SELECT blandishments. Phil Factor describes some alternative techniques. ( 15 Apr 2014 ) by Phil Factor

Down the Rabbit Hole- A Study in PowerShell Pipelines, Functions, and ParametersFor an experienced programmer to learn a new language can be a journey quite like Alice's in wonderland. Paradoxes, unexpected twists, blind tangents, bafflements and nice surprises. Michael comes to the rescue of anyone learning PowerShell with an explanation of how to use PowerShell functions. ( 14 Jul 2011 ) by Michael Sorens

NULL-Friendly: Using Sparse Columns and Column Sets in SQL ServerSparse columns and column sets in SQL Server 2012 provide a way of accomodating the less-structured data that has always proved to be tricky for the relational model. They can be used very effectively where the attributes are sparse for any given entity and very numerous across all entities. Seth Delconte shows how to use them. ( 10 Jul 2012 ) by Seth Delconte

Painless management of a logging table in SQL ServerTables that log a record of what happens in an application can get very large, easpecially if they're growing by half a billion rows a day. You'll very soon need to devise a scheduled routine to remove old records, but the DELETE statement just isn't a realistic option with that volume of data. Hugo Kornelis explains a pain-free technique for SQL Server. ( 11 Jun 2013 ) by Hugo Kornelis

Importing Text-based data: WorkbenchRobyn and Phil return with some fresh ideas about how to import text files into SQL Server, without resorting to DTS or SSIS scripting. They go on to show how much can be done in TSQL ( 23 Oct 2007 ) by Robyn Page and Phil Factor

CLR Assembly RegEx Functions for SQL Server by ExamplePhil Factor presents a simple CLR Assembly to allow SQL Server users to access all the powerful RegEx library methods in .NET. In the spirit of 'get something up and running', he takes a hands-on approach and demonstrates that you needn't be a C# hotshot or Visual Studio expert to develop a CLR assembly for SQL Server ( 15 Apr 2009 ) by Phil Factor

BIT of a ProblemThe BIT data type is an awkward fit for a SQL database. It doesn't have just two values, and it can do unexpected things in expressions. What is worse, it is a flag rather than a predicate, and so its overuse, along with bit masks, is a prime candidate for being listed as a 'SQL Code Smell'. Joe Celko makes the case. ( 04 Jan 2011 ) by Joe Celko

Declarative SQL: Using UNIQUE Constraints In SQL, you can express the logic of what you want to accomplish without spelling out the details of how the database should do it. Nowhere is this more powerful than in constraints. SQL is declarative, and Joe Celko demonstrates, in his introduction to Declarative SQL, how you can write portable code that performs well and executes some complex logic, merely by creating unique constraints. ( 04 Dec 2015 ) by Joe Celko

Using Information Schema ViewsMany seasoned database developers tuck away all the commonly-used INFORMATION_SCHEMA queries as templates. They're an indispensable supplement to sp_help and sp_helpText to get handy information about your database objects, and, even if you use SQL Prompt, they're usually the best standard way to access such information programmatically within a routine. They are ISO standard SQL and are here to stay. Rob Sheldon goes through the basics in a timely refresher course. ( 01 Oct 2009 ) by Robert Sheldon

Smoke and MirrorsIt seems hard to imagine that a presentation on a new IT application to the directors can go too well. Phil doesn't need to imagine- it happened to him. He winces at the memory. ( 13 Jul 2007 ) by Phil Factor

Exploring LINQ, SQLMetal and SqlTacIf you're a .NET developer, working with or without a database on the back-end, your world is about to change. The emergence of LINQ and SQLMetal technologies will mark a fundamental change to your development approach to collections, and provide a simpler, more consistent way of accessing your database. Steven McCabe provides what you need to get started. ( 15 Mar 2007 ) by Steven R. McCabe

MongoDB Basics for .NET by ExampleMongoDB is one of the more intriguing 'NoSQL' databases to emerge from 'Cloud' computing. Sometimes, the best way of understanding a rather different technology is to get stuck-in and try it out, so Jeremy Jarrell shows how to get started with a simple ASP.NET MVC project that uses MongoDB. ( 26 Mar 2012 ) by Jeremy Jarrell

Connecting the Disconnected in Exchange 2010Since Exchange 2000, and the introduction of the document retention period it has been much easier to recover mailboxes, disconnect or connect mailboxes to users, and disable mailboxes. Exchange 2010 has introduced the personal archive, which adds a slight complication. Michel de Rooij explains how to deal with this, and clean up mailboxes that are still within the retention period. ( 22 Sep 2010 ) by Michel de Rooij

Managing the SQL Server Transaction Log: Dealing with Explosive Log GrowthYou've just become responsible for a database, only to find that the log file is growing out of control. Why is it happening and what do you do to correct it? ( 14 Mar 2013 ) by Tony Davis and Shawn McGehee

Faster Database Development with SQL RefactorInsights into SQL Refactor, a groundbreaking refactoring tool for SQL Server databases, from its architect and lead developer, Andr s Belokosztolszki. ( 07 Nov 2006 ) by Andr s Belokosztolszki

Developing a Custom SSIS Source ComponentSSIS was designed to be extensible. Although you can create tasks that will take data from a wide variety of sources, transform the data is a number of ways and write the results a wide choice of destinations, using the components provided, there will always be occasions when you need to customise your own SSIS component. Yes, it is time to hone up your C# skills and cut some code, as Saurabh explains. ( 30 Jun 2014 ) by Saurabh Dhoble

Ad-Hoc XML File QueryingWhen you need to shred just part of the data within a large XML file into a SQL Server table, the most efficient way is to just select what you need via XQuery or by using XPath, before shredding it into a table. But precisely how would you do that? ( 05 Mar 2013 ) by Seth Delconte

Exceptional PowerShell DBA Pt 3 - Collation and FragmentationIn this final look into his everyday essentials, Laerte Junior provides some useful scripts for the DBA that use an alternative way of error-logging. He shows how to use a PowerShell script to check and, if necessary, to defragment your indexes, write data to a SQL Server table, and change the collation for a table. Being an exceptional DBA just got a little easier. ( 11 Feb 2010 ) by Laerte Junior

The PoSh DBA - Getting to know PowerShellAlthough it was primarily designed for System Administrators, PowerShell is now extending its use to Database, SharePoint, Exchange and all Microsoft products. In this article Laerte Junior offers an introduction to PowerShell and describes how DBAs can use PowerShell to automate repetitive tasks. He also explains when to use PowerShell instead of, or in addition to, T-SQL and SSIS. ( 10 Sep 2013 ) by Laerte Junior

The PoSh DBA: Solutions using PowerShell and SQL ServerPowerShell is worth using when it is the quickest way to providing a solution. For the DBA, it is much more than getting information from SQL Server instances via PowerShell; it can also be run from SQL Server as part of a system that helps with administrative and monitoring tasks. Laerte explains how. ( 18 Sep 2012 ) by Laerte Junior

PowerShell One-Liners: Help, Syntax, Display and FilesPowerShell is designed to be used by busy IT professionals who want to get things done, and don't necessarily enjoy programming. PowerShell tackles this paradox by providing its own help and command-line intellisense. We aim to make it a bit easier still by providing a series of collections of general-purpose one-liners to cover most of what you'll need to get useful scripting done. ( 04 Apr 2014 ) by Michael Sorens

CLR Performance TestingAre Common Language Runtime routines in SQL Server faster or slower than the equivalent TSQL code? How would you go about testing the relative performance objectively? Solomon Rutzky creates a test framework to try to answer the question and comes up with some surprising results that you can check for yourselves, and offers some good advice. ( 21 Jul 2011 ) by Solomon Rutzky

Laying out SQL CodeIt is important to ensure that SQL code is laid out the best way for the team that has to use and maintain it. Before you work out how to enforce a standard, one has to work out what that standard should be for the application. So do you dive into detail or create an overall logic to the way it is done? ( 21 Jan 2010 ) by Phil Factor

Developing Modifications that Survive ConcurrencyYou can create a database under the assumption that SQL looks after all the problems of concurrency. It will probably work fine under test conditions: Then, in the production environment, it starts losing data in subtle ways that defy repetition. It is every Database Developer's nightmare. In an excerpt from his acclaimed book, Alex explains why it happens, and how you can avoid such problems. ( 22 Jun 2010 ) by Alex Kuznetsov

Networking - The Crib SheetWhen anyone mentions network masks and the 'seven layer model' we all nod wisely and hope not to be asked too many questions. No longer need we feel embarassed, as Matt Simmonds has produced the simple cribsheet for 'the rest of us'. ( 15 Nov 2011 ) by Matt Simmons

Recover a Mailbox Server in A Database Availability Group (DAG)When one mailbox server in a Database Availability Group (DAG) is accidentally deleted, then it is supposedly easy to fix the problem, but if the DAG is not fully cleaned up, it can prove a little more complex. ( 10 Oct 2011 ) by Jaap Wesselius

Importing PSTs with PowerShell in Exchange 2010 SP1Unless you use Red Gate's PST Importer, the import and export of PST files with Exchange 2010 is a complex and error-prone business. Microsoft have acknowledged this in the release of Exchange 2010 SP1, since they have now re-engineered the way that PSTs are handled to try and ease the pain of importing and exporting them, but it is still a matter of using Powershell with cmdlets, rather than a GUI. Jaap Wesselius takes a look at the new process. ( 21 Oct 2010 ) by Jaap Wesselius

Monitors! Windows Extended Across WindowsIn any IT department, there is a certain geek-cool to having a whole range of monitors attached to your PC. The more, the geekier. OK, but are you really trying? In these straitened times, Surely it must be possible to harness old PCs and laptops into a huge display? Our intrepid expert Systems Engineer, Wesley "Nonapeptide" David, is dispatched to investigate the possibilities. ( 11 Apr 2011 ) by Wesley David

Implementing Real-World Data Input Validation using Regular ExpressionsFrancis Norton shows how to use regular expressions to fulfil some real world data validation requirements, demonstrating techniques ranging from simple number format checks, to complex string validation that requires use of regex's powerful "lookahead" feature. ( 14 May 2007 ) by Francis Norton

Testing Times Ahead: Extending NUnitIf you want to get serious with Unit Testing, then you'll need to understand how to extend the NUnit framework in different ways for your own particular test requirements and how to tailor test behaviour. Test Expert Ben Hall, of the SQL Generator team, shows how it is done, with special reference to the art of testing SQL code. ( 14 Mar 2008 ) by Ben Hall

Confessions of a DBA: My worst mistakeOver the next few months, we'll be asking various well-known DBAs to describe their worst disaster caused by a mistake they made. To kick off the series, we asked Phil Factor to confess. He came up with a classic: The mistaken belief that a backup WITH CHECKSUM guaranteed a good backup that could be restored, and the ensuing disaster. ( 23 Jan 2012 ) by Phil Factor

Bunnikins!When an IT manager is selected as a victim of office politics of a large corporate, it is time for him to engage in intelligence-gathering. Phil Factor exposes a ruthless streak when called to account over an Engineering Workflow system. ( 24 Aug 2008 ) by Phil Factor

Creation by CommitteePhil Factor got to wondering how on earth the wonderful frescos of the Sistine Chapel ever got painted, if the type of corporate 'best-practice' and management now seen in IT development projects were in place then. Phil Factor imagines the pressures on Michelangelo and the Pope, from strategists, MVPs,  project managers, analysts, architects, sponsors, and bureaucrats, and conjures up two visionaries in a very modern predicament. ( 25 Jan 2008 ) by Phil Factor

Luca Cardelli: Geek of the WeekLuca Cardelli is probably best known for Polyphonic C# and Biocomputing, but he has designed a number of experimental languages and published a variety of papers on Theoretical Computing subjects such as type theory and operational semantics. He is now Principal Researcher at Microsoft Research in Cambridge, and head of the Programming Principles and Tools and Security groups. We sent a slightly apprehensive Richard Morris to ask him about DNA Computing ( 02 Sep 2009 ) by Richard Morris

How to Read Raw Files in SSIS ( 01 May 2007 ) by Simon Sabin

Selling SoftwareIn some ways, wanting to make a living as a Software tool writer is like wanting to be a professional rock star or footballer. The success-stories are more visible than the others. Here, Andrew Clarke salutes the others and explains some of the pitfalls. Despite everything, he is always keen to wish anyone luck who wants to give it a try. ( 27 Mar 2008 ) by Andrew Clarke

SQL GROUP BY BasicsIt sometimes pays to go back and look at what you think you already know about SQL. Joe Celko gives a quick revision of the GROUP BY and HAVING clauses in SQL that are the bedrock of any sort of analysis of data, and comes up with some nuggets that may not be entirely obvious ( 08 Feb 2016 ) by Joe Celko

Pop Rivett and the Expanding Log Pop Rivett comes to the rescue when an expanding log file threatens the very existence of a young man's website... ( 22 Jun 2007 ) by Pop Rivett

Active Directory Snapshots with Windows Server 2008Snapshots are a useful feature of Windows Server 2008. Taking a snapshot of Active Directory as a scheduled task can prove to be a wise precaution in case disaster strikes. Once they are mounted, they can be accessed by any LDAP tool which allows the user to specify a host name and port number. Ben Lye shows how you can restore attributes to a large numbers of broken distribution groups from a snapshot. ( 09 Feb 2010 ) by Ben Lye

Extending Editor Templates for ASP.NET MVCIf you find yourself doing routine work repeatedly in ASP.NET MVC, it is worth exploring the possibilities that come from modifying or creating Editor Templates in Visual Studio. Templates can save you a lot of time when creating views or other default content. Nick Harrison explains. ( 02 Dec 2014 ) by Nick Harrison

A Gentle Introduction to .NET Code GenerationCode-generation has been used throughout the age of the digital computer. The use of code to generate code might, at first glance, seem an odd thing to want to do, but the technique is alive and well, and is widely used in .NET.  Nick Harrison explains, and introduces the CodeDom... ( 28 May 2009 ) by Nick Harrison

Partial Backup and RestoreIn this sample chapter from his book SQL Backup and Restore, Shawn McGehee discusses partial backups, how they're used, and how to avoid potential problems when restoring from a partial backup. ( 11 Apr 2012 ) by Shawn McGehee

Close those Loopholes - Testing Stored Procedures Alex and Alex continue their series of articles on 'Unit Testing' database development work with some examples of unit testing stored procedures. ( 20 Aug 2007 ) by Alex Kuznetsov and Alex Styler

Backups, What Are They Good For?Pixar recently confessed, in an engaging video, that Toy Story 2 was almost lost due to a bad backup, but sometimes there is no 'almost'. Grant Fritchey casts a sympathetic eye over some catastrophic data losses, and gives advice on how to avoid what he has termed an RGE (r‚sum‚ generating event). ( 15 May 2012 ) by Grant Fritchey

The 10 Commandments of Good Source Control ManagementSimple-Talk generally doesn't re-publish anything from another site, but Troy's popular blog post on the Ten Commandments of Source Control was too good to miss. Here is Troy's updated version in the light of the readers' comments made when it was first published. ( 23 May 2011 ) by Troy Hunt

Showplan Operator of the Week - SORTFabiano introduces another ShowPlan operator that is used to build a query plan, or perform an operation specified in the DML. Once again, Fabiano demonstrates why it is important to be aware of these operators when getting queries to perform well. ( 11 Oct 2010 ) by Fabiano Amorim

How to Create Custom SharePoint Workflows in Visual Studio 2008Whereas simple workflows are possible using Microsoft Office SharePoint Designer, you will soon reach the point where you will need to use Visual Studio. In the third article in Charles' introduction to Workflows in Sharepoint, he demonstrates how to create a workflow from scratch using Visual Studio, and discusses the relative merits of the two tools for this sort of development work. ( 11 Dec 2009 ) by Charles Lee

Statistics on Ascending ColumnsIt comes as rather a shock to find out that one of the commonest circumstances in an OLTP database, an ascending primary key with most querying on the latest records, can throw the judgement of the Query Optimiser to the extent that perfomance nose-dives. Fabiano once again puts on snorkel and goggles to explore the murky depths of execution plans to find out why. ( 01 Sep 2011 ) by Fabiano Amorim

Introduction to SQL Server Spatial DataMore and more applications require the handling of geospatial data. It is easy to store spatial data, but it takes rather more thought to retrieve and manipulate it. Tasks like searching neighborhoods, and calculating distances between points is often required from databases. But how do you start? Roy and Surenda take you through the basics. ( 26 Mar 2015 ) by Roy Ernest and Surenda Djaoen

Service Broker Advanced Basics WorkbenchSQL Service Broker, an asynchronous queuing and messaging system for SQL Server 2005, is set to change the way we design and run distributed applications. Adam Machanic once more makes it all seem so easy in Part 2 of his epic series... ( 15 Oct 2007 ) by Adam Machanic

SQL Toolbelt 2008: Predominantly an Engineering TaskThe conversion of the Red-Gate tools to be compatible with SQL Server 2008 might not seem, on first impression, the most interesting or creative project ever undertaken by the company. However, the two people most involved in the project were adamant that it was a fascinating and rewarding experience. Why? We sent the indefatigable Richard Morris to find out. ( 18 Aug 2008 ) by Richard Morris

Database High-Availability: Soup to NutsWilliam Brewer argues that, although there are technologies around that will minimise downtime in most circumstances, they are only part of the solution. At the heart of every robust system, there is planning, documentation, scripting, testing and drill. ( 31 May 2007 ) by William Brewer

The Evolution of SQL Server BIIt is sometimes hard to keep up with Microsoft's direction in Business Intelligence. Over the years, we've been presented with so many ways of aggregating, processing, graphing, reporting and visualising data, that we felt it was time to take stock and present the Simple BI Timeline, and explain how BI has evolved over the years. ( 27 Jul 2015 ) by Robert Sheldon

TIME Gentlemen please! The SQL Server temporal datatypesIf you are still using the old Sybase DateTime datatype, it is a good idea to move your code to the more standard datatypes that were introduced in SQL Server 2008. Joe Celko explains why, and walks through some of the history of the TSQL way of storing and manipulating dates and times. ( 12 May 2011 ) by Joe Celko

The Helper Table WorkbenchCursors and iterations are both renowned for slowing down Transact SQL code, but sometimes seem unavoidable. In this workbench, Robyn Page and Phil Factor demonstrate some set-based techniques for string manipulation and time interval-based reporting, which use helper tables rather than the dreaded cursor. ( 16 Mar 2007 ) by Robyn Page and Phil Factor

Database Build and Release with JenkinsOne of the frustrations of implementing a Continuous Integration (CI) system is understanding how the individual components of the workflow work together to contribute to the process. The software engineer for a successful system describes how his team designed and use a useful CI system based on Jenkins, Subversion and Red Gate Tools. ( 26 Jul 2012 ) by Ernest Hwang

On Writing Unit Tests for C#Is it realistic to keep to principles of 'Test-First' and 100% coverage for unit tests when in the heat of developing commercial C# applications? Does rigorous unit-testing lead naturally to good design by enforcing testability, low coupling and high cohesion? Patrick Smacchia gives his opinion based on hard-won experience. ( 08 Mar 2012 ) by Patrick Smacchia

Create a Monitoring Server for SQL Server with PowerShellAt some point, you are going to need a notification system for a range of events that occur in your servers, even if it is only a warning of low disk space. Laerte shows how you can even set up temporary or permanent alerts for any WMI events to give you a system that fits your server environment perfectly. ( 21 Oct 2011 ) by Laerte Junior

Phrenetic Phil and the SQL ShootoutPhil Factor turns to burlesque in order to reinforce his point that an ability to answer SQL Technical questions isn't really a measure of anyone's fitness for a real job of work. He is struck by the expression 'SQL Shootout', and the rest is left to his over-active imagination. The first SQL Cowboy story? ( 03 Feb 2009 ) by Phil Factor

Buck Woody: DBA of the DayBuck Woody is an irrepressibly ebullient DBA who, since he joined Microsoft, has managed to give the SQL Server development team a much better insight into the everyday problems facing DBAs. He remains refreshingly independent-minded and entertaining. ( 10 Dec 2009 ) by Richard Morris

Level Playing FieldThe Federal Government in the States accepts tenders for their IT projects from a wide-range of competent, innovative software companies. In Britain, by contrast, 11 firms account for 80% of the UK government IT projects, despite some spectacular disasters. Why is this? We send Richard Morris to investigate. ( 27 Feb 2008 ) by Richard Morris

Chris Date and the Relational ModelChris Date is famous for his writings on relational theory. At IBM in the seventies, and afterwards, he was a friend and colleague of Edgar Codd, who invented the principles of the relational database. Chris took on the role of communicating and teaching Codd's relational theory, and reluctantly admits to a role in establishing SQL as the dominant relational language. Richard Morris interviews the well-known author and computer scientist ( 22 Aug 2014 ) by Richard Morris

The Three Models of ASP.NET MVC AppsWe've inherited from the original MVC pattern a rather simplistic idea of what should be in the Model. In fact, in ASP.NET MVC, there are three distinct types of model: the domain model, view model and input model. As the data behind an ASP.NET MVC application becomes more complex, the more the view model and domain model may diverge. ( 12 Jun 2012 ) by Dino Esposito

DMVs for Query Plan MetadataBefore you can tackle any performance issues with a working database, you need to know which queries to work on first: The ones that are taking the most time in total, and which are the most expensive in terms of cache, CPU and disk. Although SQL Server Management Studio can help, it isn't long before you need an armoury of DMVs to provide you the statistics to find the culprits. ( 17 Aug 2010 ) by Louis Davidson and Tim Ford

Partitioned Tables, Indexes and Execution Plans: a Cautionary TaleTable partitioning is a blessing in that it makes large tables that have varying access patterns more scalable and manageable, but it is a mixed blessing. It is important to understand the down-side before using table partitioning. ( 23 Oct 2012 ) by Dmitri Korotkevitch

Thoughts on ASP.NET MVC Authorization and Security It is only a matter of time in developing most websites that you'll need to implement a way of restricting access to parts of the site. In MVC, the 'Authorize' attribute handles both authentication and authorization. In general, it works well, with the help of extension to handle AJAX calls elegantly, and to distinguish between unauthorized users and those who are not logged in. ( 22 Jul 2013 ) by Dino Esposito

Showplan Operator of the Week - Merge IntervalWhen Fabiano agreed to undertake the epic task of describing each showplan operator, none of us quite predicted the interesting ways that the series helps to understand how the query optimiser works. With the Merge Interval, Fabiano comes up with some insights about the way that the Query optimiser handles overlapping ranges efficiently ( 11 Jan 2011 ) by Fabiano Amorim

Database Source Control - The CribsheetAs part of our long-running Cribsheet series, we asked William to come up with a brief summary of what was involved in bringing database development work under source control. What are the advantages it brings, and are there disadvantages? ( 08 Nov 2011 ) by William Brewer

The ChallengeIn which Phil is challenged to organize a concerted beer drinking session in an establishment dedicated to beer manufacture. ( 19 Jun 2007 ) by Phil Factor

JSON support in SQL Server 2016At last, SQL Server has caught up with other RDBMSs by providing a useful measure of JSON-support. It is a useful start, even though it is nothing like as comprehensive as the existing XML support. For many applications, what is provided will be sufficient. Robert Sheldon describes what is there and what isn't. ( 15 Dec 2015 ) by Robert Sheldon

SQL Injection: Defense in DepthSo much has been written about SQL Injection, yet such attacks continue to succeed, even against security consultants' websites. The problem is often that only part of the solution is described, whereas the best practice requires the use of defense in depth. ( 17 Mar 2011 ) by Timothy Wiseman

Using R to Explore Data by Analysis - for SQL ProfessionalsWhat's the best way for a SQL programmer to learn about R? It's probably by trying out various experiments with an interesting set of data, and some helpful suggestions that point out the parallels with SQL. Feodor provides the data and the helpful suggestions. The rest is up to you. ( 02 Jun 2015 ) by Feodor Georgiev

The Performance of the T-SQL Window FunctionsWindow Functions in SQL greatly simplify a whole range of financial and statistical aggregations on sets of data. Because there is less SQL on the page, it is easy to assume that the performance is better too: but is it? Dwain gets out the test harness to investigate. ( 17 Jan 2014 ) by Dwain Camps

The .NET 4.5 async/await feature in Promise and PracticeThe .NET 4.5 async/await feature provides an opportunity for improving the scalability and performance of applications, particularly where tasks are more effectively done in parallel. The question is: do the scalability gains come at a cost of slowing individual methods? In this article Jon Smith investigates this issue by conducting a side-by-side evaluation of the standard synchronous methods and the new async methods in real applications. ( 28 Jul 2014 ) by Jon Smith

Microsoft Office Communications Server 2007 R2 - Part I Office Communications Server, which provides integrated voice, conferencing, IM, and telephony, is one of those products that are difficult to explain in simple terms. It takes a brave man to take on the task, and to provide a simple guide to installing it: Luckily for us, Johan is that man. In the first of a series, he explains what it is, how it benefits your enterprise, and how to make it happen. ( 11 Mar 2010 ) by Johan Veldhuis

Showplan Operator of the Week - Stream AggregateFabiano continues his mission to explain the Query Optimiser in practical terms, describing, one week at a time, all the major Showplan Operators used by SQL Server's Query Optimiser to build the Query Plan. He discusses the Stream Aggregate function and shows how easy it is to get performance gains in GROUP BY clauses by choosing the right index. ( 10 Sep 2010 ) by Fabiano Amorim

Tales of Corporate EspionageCorporate espionage eats into an organisation's wealth, but Richard Morris explains how corporate detectives are often hired at great cost to root out what is sometimes viewed as a harmless crime. ( 16 Nov 2006 ) by Richard Morris

The Cobra Programming LanguageThere are suddenly a number of strong alternatives to C# or VB. F#, IronPython and Iron Ruby are now joined by an open-source alternative called Cobra. Phil is taken by surprise at a language that is so intuitive to use that it is almost like pseudocode. ( 26 Apr 2010 ) by Phil Factor

Defensive Error HandlingTRY.CATCH error handling in SQL Server has certain limitations and inconsistencies that will trap the unwary developer, used to the more feature-rich error handling of client-side languages such as C# and Java. In this article, abstracted from his excellent new book, Defensive Database Programming with SQL Server, Alex Kuznetsov offers a simple, robust approach to checking and handling errors in SQL Server, with client-side error handling used to enforce what is done on the server. ( 28 Oct 2010 ) by Alex Kuznetsov

Introduction to XML SchemaWhat is an XML Schema, and why is it important? How did XSD develop from its precursors, DTD and XDR? What is XML capable of in the recent versions of SQL Server? Jacob Sebastian gives a succinct answer in this extract from his new book. ( 07 May 2009 ) by Jacob Sebastian

Using Optimizer_WhatIF and StatsStream to Simulate a Production EnvironmentSQL Server's Query optimiser judges the best query plan from the data in the relevant tables and the server's hardware. How, then, can you investigate the query plans being generated for slow-running queries on a customer's production server when you can neither access the server, nor recreate the database from a backup? ( 30 Jan 2013 ) by Fabiano Amorim

PowerShell for SharePoint DevelopersFor some reason, Sharepoint developers haven't taken to PowerShell with the same enthusiasm as the DBAs and SysAdmins. Dave McMohan is a man on a mission to explain that PowerShell can provide plenty of power for repetitive tasks and, once learned, can mean very quick scripting. ( 28 Feb 2012 ) by Dave McMahon

HDDs, SSDs and Database ConsiderationsIn this article Feodor clears up a few myths about storage, explains the difference in how HDDs and SSDs work and looks into the considerations every DBA should have in mind when choosing / working with SSDs. ( 09 Jan 2013 ) by Feodor Georgiev

Ext Framework, jQuery and ASP.NETIf you are developing a browser-based application, or using Adobe AIR, then jQuery and Ext JS are prime choices for your framework. Of course you could code it all in raw Javascript and HTML but Daniel Penrod hasn't got the time or the inclination to type code all day. He wants results! ( 04 Dec 2008 ) by Daniel Penrod

Causation, Correlation and CrackpotsJoe Celko explores the dangers of muddling correlation and causation, emphasises the importance of determining how likely it is that a correlation has occurred by chance, and gets stuck into calculating correlation coefficients in SQL. Along the way, Joe illustrates the consequences of leaping to the wrong conclusion from correlations with tales of Pop Dread. ( 15 Sep 2009 ) by Joe Celko

Using Entity Framework With an Existing Database: Data AccessPre-existing SQL databases, particularly if complex, can often pose problems for software developers who are creating a new application. The data may be in a format that makes it hard to access or update, and may include functions and procedures. Jon Smith looks at what tools there are in Microsoft's Entity Framework's Data Access technology that can deal with these requirements. ( 01 Dec 2014 ) by Jon Smith

SQL Server Performance TestingWhen faced with two viable solutions to a badly compromised database design, one using clustered indexes and the other compound primary keys, Grant Fritchey took the only sensible route: he gathered hard performance data... ( 15 May 2006 ) by Grant Fritchey

Database Geek of the Week: Jim HoffmanJim Hoffman is chief operating officer of Innovative Health Solutions, a company that creates web-based solutions for healthcare providers. ( 09 Nov 2005 ) by Douglas Reilly

SQL Server and .NET training and career development Part 3How do you keep your skills current? How will you prepare yourself for what you will be doing 5 years from now? In this article, part III of the series, I discuss books and the role they can play in keeping the developer up to date. ( 07 Jun 2006 ) by Douglas Reilly

The Strategic Value of Monitoring SQL ServersWhy would you ever need to automatically monitor the SQL Servers in your care? What is the business value of doing so? What are the important features that a DBA should look for in a performance-monitoring tool? Rodney gives answers based on long experience. ( 31 May 2012 ) by Rodney Landrum

What can Software Designers Learn from Video Games?Application Developers and designers often seem addicted to playing video games. Is this wasted time? Perhaps not, if they are quick to learn from the game that there must be no blind alleys in software, you must always provide a way of making progress, and that users of tools don't want to use software particularly, they need to get a job done. ( 05 Mar 2009 ) by Brian Harris

The Vermillion Screen of DeathRaw Materials Comic Strip: An elementary error foils Peter's plans for world domination. ( 12 Feb 2009 ) by Larry Gonick

Set-based Speed Phreakery: The FIFO Stock Inventory SQL Problem The SQL Speed Freak Challenge is a no-holds-barred competition to find the fastest way in SQL Server to perform a real-life database task. It is the programming equivalent of drag racing, but without the commentary box. Kathi has stepped in to explain what happened with the second challenge and why some SQL ran faster than others. ( 25 May 2010 ) by Kathi Kellenberger

SSIS and Parallelism: The Unseen MinionsSometimes, a procedural database process cannot easily be reduced to a set-based algorithm in order to reduce the time it takes. Then, you have to find other ways to parallelise it. Other ways? Josef shows how to use SSIS to drastically reduce the time that such a process takes. ( 10 Jun 2010 ) by Josef Richberg

4 Geek Excuses for Bad PresentationsFrustrated by technically interesting yet agonizing conferences, Dr. Masha Petrova leaves geeks with no excuses for making bad presentations, and begins her campaign ensure that the people with good ideas also have good presentation skills to back them up, and get them noticed. ( 06 Apr 2010 ) by Dr. Masha Petrova

SQL and the Snare of Three-Valued LogicThe whole subject of the Three-Valued (also known as ternary, trivalent or 3VL) Logic of SQL tends to trip people up. This is hardly surprising in view of the fact that it involves an esoteric Polish mathematician and because it behaves differently in the DDL (Data Declaration Language) and the DML (Data Manipulation Language). In response to requests, Joe Celko comes to the rescue and makes it all seem simple. ( 07 May 2009 ) by Joe Celko

Chuck Esterbrook: Geek of the WeekThe Cobra Programming Language is an exciting new general-purpose Open-source language for .NET or Mono, which features unit tests, contracts, 'informative' asserts, generics, Compile-time nil/null tracking, lambda expressions, closures, list comprehensions and generators. Even if it had been developed by a team, it would have been a remarkable achievement. The surprise is that it is the work of one programmer with help from a group of users. We sent Richard to find out more about that one programmer. ( 26 Apr 2010 ) by Richard Morris

Consolidating SQL Server Error Logs from Multiple Instances Using SSISSQL Server hides a lot of very useful information in its error log files. Unfortunately, the process of hunting through all these logs, file-by-file, server-by-server, can cause a problem. Rodney Landrum offers a solution which will allow you to pull error log records from multiple servers into a central database, for analysis and reporting with T-SQL. ( 14 Apr 2010 ) by Rodney Landrum

PATINDEX WorkbenchThe PATINDEX function of SQL Server packs powerful magic, but it is easy to get it wrong. Phil Factor returns to the Workbench format to give a tutorial of examples, samples and cookbook ideas to demonstrate the ways that this underrated function can be of practical use. It is intended to be pasted into SSMS and used as a basis for experiment ( 12 May 2011 ) by Phil Factor

Microsoft and Database Lifecycle Management (DLM): The DacPacThe Data-Tier Application Package (DacPac), together with the Data-Tier Application Framework (DacFx), provides an alternative way to automate the process of scripting out, or deploying a SQL Server database, reporting on changes, or checking version-drift. As such, it seems to provide an obvious cost-free start for tackling automated Database Delivery as part of Database Life-cycle Management (DLM). We asked Phil Factor if it is ready for Prime-time. ( 24 Jul 2015 ) by Phil Factor

SQL Server Tacklebox Free eBookAs a DBA, how well-prepared are you to tackle issues such as backup failure due to lack of disk space, or locking and blocking that is preventing critical business processes from running, or data corruption due to a power failure in the disk subsystem? If you have any hesitation in your answers to these questions, then Rodney Landrum's SQL Server Tacklebox is a must-read. ( 04 Aug 2009 ) by Rodney Landrum

RegEx-Based Finding and Replacing of Text in SSMSSo often, one sees developers doing repetitive coding in SQL Server Management Studio or Visual Studio that would be much quicker and easier by using the built-in Regular-Expression-based Find/Replace functionality. It is understandable, since the syntax is odd and some features are missing, but it is still well-worth knowing about. ( 14 Jan 2011 ) by Phil Factor

First Steps with .NET ReflectorIf you are new to using .NET Reflector, or you are wondering whether it would be useful to you, you'll appreciate Jason Crease's quick run through of the basic functionality. This is also available as a video. ( 17 Nov 2008 ) by Jason Crease

Exchange 2010 DAG Creation and Configuration, Part 2Now that you've created your first DAG in Exchange 2010, you'll need to be sure it's correctly configured for failovers and switchovers, and you know how to troubleshoot. Fear not, for Neil Hobson tells you what you need to know. ( 20 Oct 2010 ) by Neil Hobson

Report Building 3.0: Adding Maps to Your ReportsWith Report Builder and SSMS, there isn't much you can't do in the way of the common reports and visualisations. One of the more interesting visualisations uses maps, and that, combined with layers, makes for an impressive way of representing data. ( 13 Nov 2012 ) by Robert Sheldon

ShowPlan Operator of the Week - Split, Sort, Collapse'Split, Sort & Collapse' is, happily, not a description of the intrepid Fabiano after his epic series of articles about the ShowPlan operators. With renewed stamina, Fabiano continues his mission to describe all the major operators by explaining the Trivial Plan and the power of unique indices. ( 11 Apr 2011 ) by Fabiano Amorim

Using VMware vCenter Update Manager to keep your vSphere Hosts Up-To-Date with PatchingThe chore of patching operating systems and applications is taking an increasing proportion of the time of a system administrator, so it is a a relief that at least VMware is keen to make the task easier. VMware provide a tool in vCenter Update Manager to assist in keeping VMware up to date. Jonathan Medd explains all. ( 09 Feb 2010 ) by Jonathan Medd

Full Text Searches on Documents in FileTablesSQL Server's FileTable technology is an intriguing way of accomodating file-based text data in a database, and allowing for complex searches. As with most technologies, the best way of learning them is to try it out and experiment. Feodor shows how to set it up, add some sample data and set up full-text search. ( 14 Feb 2013 ) by Feodor Georgiev

R BasicsFor exploring data and doing open-ended statistical analysis on it, nothing beats the R language. Over the years, this open-source tool has come to dominate the way we do analysis and visualization; It has attracted a rich and varied collection of third-party libraries that has given it remarkable versatility: But how do you get started? Casimir explains how to get started, and get familiar with the way it works. ( 04 Mar 2015 ) by Casimir Saternos

Experiments with NEO4J: Using a graph database as a SQL Server metadata hubNEO4J, the graph database, can be used to provide answers that are very tricky for relational databases, including providing diagrams to show how SQL tables relate to each other, and the shortest chain of relationships between two tables, as David Poole demonstrates ( 17 Jun 2014 ) by David Poole

Getting Started with Active Directory Rights Management Services for Exchange 2010With security concerns being a constant litany, it's worth considering Active Directory Rights Management Services as a powerful tool in your access-control arsenal, particularly when it integrates so neatly with Exchange 2010. Elie Bou Issa kindly takes us, step by step, through everything we need to know to install and start using this versatile technology like a pro. ( 06 Apr 2010 ) by Elie Bou Issa

Temporal Data Techniques in SQL In the first part of this series on Temporal Data, Joe explained how it is that the Common Era calendar is irregular and mentioned that, although there are ANSI/ISO Standards for temporal operations in SQL, every vendor has something different. Now, he discusses other factors to take into account when using temporal data such as Holidays, and discusses a few techniques using Calendar, Report Usage and History tables ( 18 Jan 2009 ) by Joe Celko

Producing JSON Documents from SQL Server queries via TSQLAlthough SQL Server supports XML well, XML's little cousin JSON gets no love. This is frustrating now that JSON is in so much demand. Maybe, Phil suggests, it is possible to leverage all that XML, and XPath, goodness in SQL Server to produce JSON in a versatile way from SQL Queries? Yes, it so happens that there are plenty of alternatives. ( 06 May 2014 ) by Phil Factor

Doug Crockford: Geek of the Week Doug Crockford is the man behind JavaScript Object Notation (JSON). He is a well-known critic of XML and guides the development of Javascript on the ECMA Standards Committee, as well as being the senior JavaScript architect at Yahoo! He is also the author of the popular 'JavaScript: The Good Parts'. Richard Morris was dispatched to ask him which the good parts were. ( 17 Mar 2010 ) by Richard Morris

Sarah Lacey on The Rise of Web 2.0Sarah Lacy's commentary on the IT Industry for BusinessWeek is widely read and causes polarised opinions. She is a skilled and experienced writer whose work on TechCrunch is a virtuoso display of the art of blogging. Her treatment at the hands of the audience at SXSWi 2008 Tech-fest was the stuff of every journalist's nightmare, and baffling to those of us who watched the video in retrospect. We sent Richard Morris meet her and find out more. ( 14 Apr 2009 ) by Richard Morris

To SP or not to SP in SQL ServerThere have been a number of discussions about whether to use SPs or not, often shedding more heat than light, Doug Reilly takes a look at the debate. ( 11 Apr 2005 ) by Douglas Reilly

Using DAX to create SSRS reports: The BasicsYou can use DAX to create reports from a tabular database in SQL Server Reporting Services. To do so requires a few workarounds. Rob Sheldon describes a poorly-documented but important technique for Business Intelligence. ( 27 Aug 2013 ) by Robert Sheldon

A Developers' Guide to Refactoring DatabasesWhen Agile meets 'Big Design', the result can be frustration on both sides. Is it possible for database development to to easily coexist with Agile methodologies for application development? Nick suggests that the technical solutions already exist, and the dissonance is more due to cultural and organisational problems ( 04 Apr 2011 ) by Nick Harrison

SQL# (SQLsharp): A ReviewOnly the brave, and foolhardy, write production CLR routines if you can get the functionality already-written and tested. Whether you're a DBA or developer, there are plenty of times when a CLR routine will save a lot of time, and occasionally provide new functionality. ( 13 Sep 2011 ) by Grant Fritchey

The Lure of Simplicity in ITA deceptively simple solution to a business-re-engineering problem can beguile companies into selecting a compromise that doesn't actually meet all their needs. Simple is great, but not at the expense of functionality. Some IT solutions are complex because the problem is complex, but they can be made conceptually clearer ( 07 Jun 2012 ) by Buck Woody

Showplan Operator of the Week - Row Count SpoolThe Row Count Spool operator is a simple component in an execution plan that can make an enormous difference to SQL query plans that would otherwise read a table on every row of the inner input to a nested loop. As this is a common type of query, it illustrates the power that a knowledge of your showplan operators can give you. ( 06 Jul 2010 ) by Fabiano Amorim

Using LINQ Lambda Expressions to Design Customizable Generic ComponentsLINQ makes code easier to write and maintain by abstracting the data source. It provides a uniform way to handle widely diverse data structures within an application. LINQ's Lambda syntax is clever enough even to allow you to create generic building blocks with hooks into which you can inject arbitrary functions. Michael Sorens explains, and demonstrates with examples. ( 27 Jan 2010 ) by Michael Sorens

Asynchronous processing in .NET part 1: fundamentalsIn Windows Forms applications, we often need to perform some complex processing in the background, while still continuing with other tasks, such as monitoring user input and updating the user interface. For example, if you think of a web browser, it fetches and renders a web page without the main form hanging, so we can still press the Stop or Back buttons without waiting for the current page to load. This is achieved through asynchronous processing; that is, processing that takes advantage of Windows' multi-threading abilities to perform (as it appears to the user) two tasks at the same time. ( 19 Jun 2006 ) by Julian Skinner

Exploring SQL Server table metadata with SSMS and TSQLPhil shows how to start squeezing powerful magic from SSMS for doing a detailed exploration of the metadata of your routines and tables, in this third part to his series on exploring your database schema with SQL. ( 29 Apr 2010 ) by Phil Factor

An Interview with Tim Berners-LeeRichard Morris offers some revealing insights into what the "father of the web" thinks about his invention, where it is heading, and how it can fulfil its full potential. ( 20 Dec 2006 ) by Richard Morris

On the Trail of the Expanding DatabasesIt is sometimes difficult for other IT people to understand the constraints that DBAs have to work under. So often the ideal or obvious solution is frustratingly out of reach because of 'political' reasons that seem baffling to the spectator. Francis Hanlon describes a typical incident: It is essential reading for anyone wishing an insight of the problems that DBAs face ( 11 Oct 2008 ) by Francis Hanlon

Captain Codd and the Simple PropositionA Pantomime for Database Professionals. ( 26 Sep 2007 ) by Phil Factor

The PoSh DBA - Towards the Re-usable PowerShell ScriptWhen starting out with PowerShell, it is hard to escape from the detail to work out the best strategy for creating scripts. Laerte explains how, when and why it pays to think in terms of versatile functions to meet varying demands. ( 21 Jan 2016 ) by Laerte Junior

Questions about SQL Server Distribution StatisticsFabiano was asked a couple of questions about SQL Server Distribution Statistics. Having given an answer based on his current knowledge, he then decided to find out for himself whether what he'd said was right, and started an epic journey of exploration into Distribution Statistics and the way that the Query Optimiser uses them. ( 23 Jun 2011 ) by Fabiano Amorim

PowerShell One-Liners: Variables, Parameters, Properties, and ObjectsPowerShell isn't a conventional language, though it draws inspiration widely. Many people learn it, and use it, best by collecting snippets, or one-liners, and adapting them for use. Michael Sorens provides the second in a series of collections of general-purpose one-liners to cover most of what you'll need to get useful scripting done. ( 24 Apr 2014 ) by Michael Sorens

Subversion and TortoiseSVN Cookbook Part 1- The BasicsIf you have more than zero developers in your team, then you need Source Control. In this article Michael starts a series that aims to provide clear and complete recipes for using Subversion, mainly through its simple, elegant, graphical interface: TortoiseSVN. ( 03 Nov 2011 ) by Michael Sorens

Automating Your SQL Server Best Practice Reports: The DocumentIf you're making a report from table-based data, an MS Word document is often a good option. In the second part of his introduction to SQL Server best-practice monitoring, Laerte Junior shows how to use PowerShell scripts to create a Word-based report with colour-coded alerts where there are problems or best practices aren't being followed. ( 21 Oct 2015 ) by Laerte Junior

Oracle to SQL Server, Crossing the Great Divide, Part 3We soon learn, in SQL Server, that heaps are a bad thing, without necessarily understanding how or why. Jonathan Lewis is an Oracle expert who doesn't like to take such strictures for granted, especially when they don't apply to Oracle. Jonathan discovers much about how SQL Server places data, and concludes from his experiments that heaps perform badly in SQL Server because you cannot specify a fill factor for them. ( 23 Jun 2010 ) by Jonathan Lewis

IT Interviews and the lawHave you ever wondered whether those odd questions and tests you are sometimes asked at interview are actually legal and pertinent. The answers may interest you and are important for any interviwer to know ( 09 Oct 2007 ) by Richard Morris

SharePoint 2010 Visio ServicesEven if you've heard of SharePoint, you may not know about Visio Services, which is making Data-Driven visualizations easier to create than ever before. Dave McMahon has generously provided an excellent introduction to get us up to speed, complete with a step-by-step guide to getting started. ( 12 Aug 2010 ) by Dave McMahon

Provisioning a New SQL Server Instance - Part TwoSo how should you install and configure SQL Server 2012 properly? Glenn Berry completes his two-part series by explaining the steps needed to complete the preparation and do the actual installation. ( 13 Aug 2012 ) by Glenn Berry

Never Mind the Controller, Here is the OrchestratorThe Model-View-Controller pattern of the ASP.NET MVC allows the separation of the business logic from the input and presentation logic. Although it permits the independent development, testing and maintenance of each component, it doesn't guarantee clean code. Dino Esposito offers a modified approach in which an Orchestrator component helps to keep your controllers small, clean and manageable. ( 11 Oct 2011 ) by Dino Esposito

The PoSh DBA - Using the Basic PowerShell ParadigmsPowerShell is like any computer language: you must understand the paradigms, the constructs, and the way it is designed to work to get the most value from it. It is no good just translating 'sausage-string' procedural algorithms. To demonstrate how PowerShell should be used as its' creators intended, Laerte Junior shows the difference between PowerShell problem-solving with, and without, PowerShell paradigms. ( 04 Dec 2015 ) by Laerte Junior

PowerShell Eventing and SQL Server RestoresWhen you're managing a large number of servers, it makes no sense to run maintenance tasks one at a time, serially. PowerShell is able to use events, so is ideal for, say, restoring fifty databases on different servers at once, and be notified when each is finished. Laerte shows you how, with a little help from his friends. ( 05 Jul 2011 ) by Laerte Junior

Women in IT: Change at Every LevelIn the past, straight-forward sexism was a real problem in the IT industry - women in IT were discriminated against simply because they were women. Overt sexism like that is finished, legally, and in the western societies we have moved on. However, a second, more subtle form of disincentive exists in the way we work; both in terms of hours and in terms of "male" thinking. ( 10 Sep 2008 ) by Richard Morris

Was Offshoring Responsible for Hamlet?Phil Factor imagines how Hamlet ended up as the play we know, with a little help from cost-cutting and offshoring. ( 05 Sep 2006 ) by Phil Factor

Taking the Guesswork out of SQL Server Performance Profiling Part 2SQL 2005 wait event statistics are a good step forward, but are only useful for isolated testing, and to get a global impression on how the SQL Server is spending its time. Mario Broodbakker demonstrates why it would be much better if SQL Server collected those statistics per session and per subtask. ( 18 May 2007 ) by Mario Broodbakker

Message Tracking in Exchange 2007'Where did my mail go?' In order to answer this question, to troubleshoot mail problems and to analyse mail flow, the Exchange administrator can use message-tracking logs. Ben Lye elaborates on these essential logs and explains how you can use Powershell commands to search them for those emails that have gone adrift. ( 27 Mar 2009 ) by Ben Lye

Rendering Hierarchical Data with the TreeviewIt sometimes happens that Web Server controls that visualize data don't quite fit with the way that the data is actually held in the application. This shouldn't be an obstacle, as Ion Freeman points out. To prove his point, he shows how to use Nested Sets with Treeview. ( 05 Jan 2009 ) by Ion Freeman

Free eBook: SQL Server Crib-Sheet CompendiumFor everything you need to know, rather than want to know, about SQL Server Reporting Services, replication, backup, XML, performance, data warehousing and more.. ( 24 Apr 2009 ) by Chris Massey

Schema-Based Access Control for SQL Server DatabasesAccess-control within the database is important for the security of data, but it should be simple to implement. It is easy to become overwhelmed by the jargon of principals, securables, owners, schemas, roles, users and permissions, but beneath the apparent complexity, there is a schema-based system that, in combination with database roles and ownership-chaining, provides a relatively simple working solution. ( 09 Apr 2015 ) by Phil Factor

Database Management for SharePoint 2010With each revision, SharePoint becomes more a SQL Server Database application, with everything that implies for planning and deployment. There are advantages to this: SharePoint can make use of mirroring, data-compression and remote BLOB storage. It can employ advanced tools such as data file compression, and object-level restore. DBAs can employ familiar techniques to speed SharePoint applications. Bert explains the way that SharePoint and SQL Server interact. ( 10 May 2011 ) by Bert Jan van der Steeg

The Top 5 WPF and Silverlight GotchasAs WPF and Silverlight sit on the .NET framework, they're subject to the rules of the Garbage Collector. That means there are a few unique ways in which WPF will cause your application to leak memory, and Chris Farrell points out the most prominent culprits. ( 10 Aug 2011 ) by Chris Farrell

Operator of the Week - Index SpoolIf you've ever wondered what happens to your queries if you're not conscientious about creating indexes, then Fabiano Amorim has yet another nugget of Execution Plan wisdom for you. The Query Optimizer's solution is to use the Nonclustered Index Spool, and we're about to learn why. ( 25 Jun 2010 ) by Fabiano Amorim

Improving the Quality of SQL Server Database Connections in the CloudTo access SQL Server from the client, you use TDS protocol over TCP. This is fine over reliable LANs but over the internet these connections are relatively slow and fragile, TDS is still used to connect to databases in the cloud, but you need to use a combination of the new features such as connection pools and idle connection resiliency to make applications faster and more reliable. ( 22 Sep 2014 ) by Edward Elliott

Source Control and DatabasesAndr s's article on Source Control shows a lot of the thinking amongst the developers at Red Gate at that time that eventually crystallized into SQL Source Control. It identified several problems that had to be overcome before the task could be done properly. Andras's suggestions for the use of SQL Compare are now built-in to SQL Source Control, but it remains a fascinating explanation of the complications along the way. ( 29 May 2007 ) by Andr s Belokosztolszki

Mimicking Magnetic Tape in SQLThe sequential nature of early data storage devices such as punched card and magnetic tape once forced programmers to devise algorithms that made the best of sequential access. These ways of doing data-processing have become so entrenched that they are still used in modern relational database systems. There is now a better way, as Joe explains. ( 17 Aug 2011 ) by Joe Celko

SQL Style Habits: Attack of the SkeuomorphsAlthough we like to think that our programming techniques are progressive and in tune with the bleeding edge of software development practices, too often they are directly influenced by restrictions faced in the post-war decades when computers first became mainstream. As these restrictions no longer apply, is it time to relinquish such things as cursors, 'tibbling', storing display formats, using short names for symbols and primary keys? ( 14 Jul 2015 ) by Joe Celko

.NET Reflector: Soup to Nuts.NET Reflector is almost an intrinsic part of the .NET Framework, a free tool for browsing the contents of a .NET assembly. When Lutz Roeder passed responsibility for development of the code to Red Gate, the team preserved the characteristic minimal look, focussing on updates and code improvements. Then they added a free add-in that allowed it to be accessed from within Visual Studio. Reflector Pro is a paid-for extension that allows Visual Studio users to debug code in .NET Reflector. ( 22 Oct 2008 ) by Andrew Clarke

Michael Pilato: Geek of the WeekFor a large number of .NET developers, Subversion is Source Control. The book they go to to find out how to use it is O'Reilly's 'Version Control with Subversion'. Both Subversion and the book owe a great deal to the Subversion open source development team, including Michael Pilato of CollabNet, who has worked on the project for many years, almost since the project was founded in 2000 by Collabnet. ( 08 Nov 2011 ) by Richard Morris

The Essex MenA band of muscly Essex men take on the geeky IT department in a basketball match - if you think the victor of this challenge sounds like a foregone conclusion, read on... ( 14 Sep 2006 ) by Phil Factor

Automating Your SQL Server Best Practice Reports:The ChecksA DBA in charge of a whole lot of databases and servers has to check regularly that there are no likelihood of problems. The task is well suited for automation as workload increases. Laerte Junior introduces a PowerShell-based reporting framework that aims to simply provide a Word-based report with colour-coded alerts where there are problems or best practices aren't being followed. ( 06 Oct 2015 ) by Laerte Junior

Active Directory Management with PowerShell in Windows Server 2008 R2One of the first things you notice with Windows Server 2008 R2 is that PowerShell 2.0 has become central to the admin function There is a powerful Active Directory module for Powershell that contains a provider and cmdlets that are designed to allow you to manage Active Directory from the command line. Now, you can also use versions for previous versions of Windows Server. ( 19 Nov 2009 ) by Jonathan Medd

Using Entity Framework with an Existing Database: User InterfacePre-existing databases can pose some difficulties for software developers using an ORM. To demonstrate ways of circumventing them, Jon Smith builds an ASP.NET MVC application with Entity Framework (EF) to provide a user interface to Microsoft's AdventureWorks sample SQL database. He shares his design approach for displaying and updating this data with real examples from the test web application he built. ( 16 Dec 2014 ) by Jon Smith

Catching Bad Data in Entity FrameworkAny website that rejects the users' input without giving enough information to correct what they're doing is doomed to be unpopular. Entity Framework offers three different ways of validating data before writing it to the database. As well as describing how to harness these validation methods Jon Smith shows how capture these errors to make the feedback to the user less cryptic. ( 11 Jul 2014 ) by Jon Smith

Diagnosing Common Database AilsWhen a database starts showing signs of an illness, it's up to the DBA to get to the root of the problem, fast. Kat Hicks takes a look at the most common causes of database troubles, free tools that can help, and the misconceptions that get in the way. ( 25 Mar 2013 ) by Kat Hicks

SQL Server StatisticsA Distribution Statistics object is a sampled map of the distribution of data in a table. Such statistics help the Query Optimizer of SQL Server's Database Engine to translate the 'logical' SQL Query into the best strategy for doing all the physical operations of joining, sorting, and selecting the data. Most of the time, this work happens effectively, but occasionally, if the statistics no longer reflect what is actually in the table, then queries can suddenly run grindingly slow. At this point, the DBA must intervene to correct the problem. ( 23 Nov 2010 ) by Holger Schmeling

Bruce Schneier: Geek of the WeekIf one were to close one's eyes and imagine a BT Executive, one would never conjure up Bruce Schneier. He is one of the greatest experts in cryptography, and a well-known mathematician. He even got a brief mention in thebook 'The Da Vinci Code'. He also remains an outspoken and articulate critic of the way that security is actually implemented in applications, as Richard Morris found out when we dispatched him to interview him. ( 16 Feb 2010 ) by Richard Morris

SQL Response: The dim sum interviewRichard Morris met David and Nigel of the SQL Response team, in a dim sum Restaurant in Cambridge. They had just finished a new Red-Gate product called SQL Response. Away from the office, they described the fourteen month software project that had been dominating their lives; and they were still able to say that they loved writing software. ( 30 Sep 2008 ) by Richard Morris

Tucker Taft: Geek of the WeekWhat do military networks and a 19th Century Difference Engine have in common? Tucker Taft; industry leader in compiler construction and programming language design, and SoftCheck CTO. Tucker has taught disseminated his encyclopaedic knowledge at Harvard University, and has worked tirelessly to improve the Ada language for 20 years. We sent Richard Morris to find out about more about the man and his two-decade-long project. ( 28 Oct 2009 ) by Richard Morris

Brad's Sure Guide to SQL Server Maintenance PlansBrad's Sure Guide to Maintenance Plans shows you how to use the Maintenance Plan Wizard and Designer to configure and schedule eleven core database maintenance tasks, ranging from integrity checks, to database backups, to index reorganizations and rebuilds. ( 02 Oct 2009 ) by Brad McGehee

ASP.NET MVC Security through ValidationASP.NET MVC provides a way of providing declarative validation of user inputs. It removes a lot of the tedium of this important task. Nick Harrison explains how to do it, and also points out why it is so important to provide input validation ( 20 Jan 2015 ) by Nick Harrison

Investigating Transactions Using Dynamic Management ObjectsThere can be a great difference in the performance of a particular routine in a test database, and in a fully loaded production system. When you hit performance problems in a database under load, and there is excessive locking and blocking, how can you determine exactly where the problems lie, in order to fix them? Read on... ( 30 Sep 2010 ) by Timothy Ford

XML Data Modification Language WorkbenchXML Data Modification Language (XML DML) allows you to modify and update XML data. When working with SQL Server Databases, this is the most efficient way to modify elements in an XML column, yet the techniques of using XML-DML have not been well, and simply, described - up until now. Robert Sheldon presents a practical workbench to show the various modify methods ( 28 Apr 2009 ) by Robert Sheldon

Registered Servers and Central Management Server StoresSQL Server Management Studio (SSMS) has many features that make it particularly convenient for the database developer and DBA. Registered Servers are typical: poorly documented, but essential for the busy DBA, since they are easily scriptable via TSQL or PowerShell as well as the SSMS GUI, to access groups of servers to perform a wide range of tasks. ( 28 Aug 2012 ) by Phil Factor

The Walrus and the ManagerWhy do Phil's eyes water whenever he hears the poem 'The Walrus and the Carpenter'? Is it the voice of his conscience or memories of struggles selling software services to large companies? Why does he identify so strongly with the eldest oyster? ( 05 Jun 2008 ) by Phil Factor

SQL Server and .NET Training and Career DevelopmentA number of years ago, I wrote a blog entry entitled "Who is Responsible for your Career?". It was perhaps the second most popular post I ever wrote (judging by reads and referrals), and it generated a large number of comments and other blog entries, both pro and con. ( 24 Feb 2006 ) by Douglas Reilly

Data Cleaning in SQL 2012 with Data Quality ServicesFor data to be usefully analyzed, it must be consistent, accurate, and trustworthy. When incoming data is non-uniform, duplicated records are created and the data starts losing its value. In order counteract this issue, SQL Server's Data Quality Services (DQS) helps monitor and maintain incoming data, and deduplicates existing data using rules-based matching. Feodor Georgiev provides a thorough walkthrough on setting up DQS and creating the rules it uses to function as a first step towards data cleansing. ( 31 Dec 2014 ) by Feodor Georgiev

On Adopting the Mindset of an Enterprise DBAAlthough many of the important tasks a DBA has to perform should be done 'by hand', keying in commands or using SSMS, the canny DBA with a heavy workload will always have an eye to automating routine tasks wherever possible, or using a tool. Although the likely candidates for automation are often obvious, it is not always so. Time can often be saved in surprising ways. ( 19 May 2014 ) by Joshua Feierman

Stock Market Technical AnalysisAlthough the technical approach to stock market analysis has been around since the 1800s, some improvements have obviously been made over time. With the introduction of computers, and specifically .NET libraries geared towards statistical analysis, huge, complex operations have been made easy. ( 07 Sep 2011 ) by Clay Burch

Practical PowerShell for SQL Server Developers and DBAs - Part 2Having shown just how useful PowerShell can be for DBAs in executing queries, Michael Sorens now takes us through navigating SQL Server space and finding meta-information - valuable information for anyone looking to be more productive in SQL Server. ( 15 Aug 2012 ) by Michael Sorens

Insurgency and IT in PakistanIt is unsurprising that Pakistan is a source of concern for people who are worried about terrorism and political stability in the world at large, or who have a humanitarian bent. As a significant player in the global skills-outsourcing market, Pakistan's IT sector also has a considerable impact on businesses further afield. ( 16 Oct 2009 ) by Alamzeb Khan

Complete Showplan OperatorsFabiano Amorim has taken the time to reallv drill into the behavior of a small set of execution plan operators in an effort to explain the optimizer's behavior. He's explored why things happen, how you can change them, positively or negatively, and he's done it all in an approachable style. ( 10 Oct 2011 ) by Fabiano Amorim

Fixing Cache Bloat Problems With Guide Plans and Forced ParameterizationImagine it. You've been asked to fix a dire performance problem with a SQL Server database. You find a severe case of 'Cache Bloat' due to ad-hoc queries, but you can't fix the code itself. What should you do? Specify forced parameterization? Perhaps a better idea would be to use guide plans. ( 20 Feb 2014 ) by Fabiano Amorim

Practical SQL Server 2005 CLR AssembliesOne advantage of CLR assemblies is the ability to consume web services from within the database. This wouldn't be easy with T-SQL, and would also require a lot of work in an unmanaged extended stored procedure. With .NET, it's almost as simple as accessing a local DLL. ( 28 Feb 2006 ) by Julian Skinner

Bjarne Stroustrup, and Programmers With ClassBjarne Stroustrup devised C++ or 'C with Classes' in 1978. It has evolved a great deal over the decades and and it is still being used today for some of the most demanding programming tasks. Google has acknowledged their debt to the language, and referred to it as 'is the best-performing programming language in the market'. We spoke to Bjarne about the longevity of his creation and how C++ is likely to evolve further. ( 19 Aug 2014 ) by Richard Morris

Oracle to SQL Server: Crossing the Great Divide, Part 2A well-known Oracle expert records faithfully his struggles with the unfamiliar : SQL Server. He now sets himself the task of creating a table with a million rows of random data. As one might expect, it is the lack of familiarity with the workarounds and tricks of SQL Server that trips him up. His journey brings us fresh insights, and a glimpse at the alternative-universe of Oracle. ( 26 May 2010 ) by Jonathan Lewis

Agile Database DevelopmentAgile methodologies work well with database developments only if great care is taken to do things right. It requires good judgement and leaves little room for error. Dev Nambi, in an extract from the book Tribal SQL, argues that Agile works for smart, curious, and experienced software engineers. ( 03 Jan 2014 ) by Dev Nambi

Creating a Business Intelligence Dashboard with R and ASP.NET MVC: Part 2Continuing the project to build a Business Intelligence (BI) application using R, Visual Studio 2012 and Twitter Bootstrap, Sergei introduces drill-down via jQuery and jQuery UI, simplifies the R coding with the PLYR and GGPLOT2 libraries, and shows how to generate reports simultaneously with a batch file ( 23 Jul 2013 ) by Sergei Dumnov

One application in both WPF and SilverlightBecause Silverlight is a development of Windows Presentation Foundation, and the technologies are so interlinked, it would seem obvious that there would besuch a high degree of code compatibility that one could then develop an application for both platforms from a common code-base. Khawar describes how it can be done, and shows the results. ( 05 Oct 2010 ) by Khawar Yunus

Hosted Team Foundation Server 2010 ReviewTeam Foundation Server (TFS) has expanded its remit to support the whole software development process, but is is not designed to serve widely-distributed teams. This has made the idea of hosted TFS services increasingly attractive. Bahadir Arslan decided to investigate this novel 'cloud' service. ( 23 Jun 2011 ) by Bahadir Arslan

Increase Your Value as a Professional in the Technical IndustryIt has never been so important to enhance your employability as it is today. Job security can never be taken for granted. Employability, increasing your professional value, means far more than just collecting qualifications, as Dr Masha Petrova explains: It also involves communicating, writing, and participating in communities. ( 17 Nov 2009 ) by Dr. Masha Petrova

ShowPlan Operator of the Week - Merge JoinDid you ever wonder how and why your indexes affect the performance of joins? Once you've read Fabiano's unforgettable explanation, you'll learn to love the MERGE operator, and plan your indexes so as to allow the Query Optimiser to use it. ( 22 Nov 2010 ) by Fabiano Amorim

Exchange 2007 Mailbox Server ClusteringThe original, rather complex, Exchange clustering, 'Single Copy Cluster', protects you against a server failure but not a database failure. 'Local Continuous Replication' protects you from database failure, but not server failure. The more simple 'Clustered Continuous Replication' protects against both. If you use it with Transport Dumpster, you won't lose emails. ( 12 Aug 2008 ) by Jaap Wesselius

Using Microsoft Robotics Developer Studio with Lego Mindstorms NXT RobotA good way to learn about Robotics is to build a Lego Mindstorms NXT robot and to control it using Visual Studio and Microsoft Robotics Developer Studio. Although the results will hardly do the washing up for you, you'll gain valuable insights into thread synchronisation and coordination in a multiprocess, multi-code event-driven environment. Yes, and it is great fun too! ( 10 Aug 2010 ) by Vladimir Bodurov

SQL Server Tracing: An Automated and Centralized SolutionWhen you are trying to pin down the cause of a problem with a SQL Server, there is probably going to come a time when you need to get 'trace' information. If you've ever done that, you'll know how easy it is to get overwhelmed by the detail. Here, Shawn McGehee shows how to get round the problem by capturing trace information on a schedule, filtering the captured information, and monitoring it from a central location. ( 14 Mar 2008 ) by Shawn McGehee

Alan Kay: Geek of the WeekThe development of Object-oriented programming, the windowing User-interface, Ethernet and the Laptop all had essential contributions from a brilliant, visionary, former professional Jazz and Rock guitarist. Alan Kay. His second career as a computer scientist led to him being the creative catalyst at Xerox, Atari and Apple. Alan is driven by the vision of the computer's potential role in education, to build a better society. ( 14 Sep 2009 ) by Richard Morris

Itzik Ben-Gan: DBA of the DayItzik Ben-Gan, who was one of our first Geeks of the Week in 2005, is so well known and popular because he has all the instincts of a database developer and teacher, as well as being a certified DBA. His books and articles on Transact SQL are memorable because they relish the techniques of solving practical problems with SQL. His classes have been described as 'the mental equivalent of drinking Red Bull'. We sent Richard Morris to savour the adrenaline kick. ( 06 Jan 2010 ) by Richard Morris

Exporting our CompetenceThere are several initiatives that have ambitions to replace the Internet. Some of these, in the States and Europe, we know about, but the ones that should concern us are the ones we know almost nothing of. In China, the funding and the political will is at its strongest. 'They are so much more clear sighted than we are. And they need the money!' . We sent our man in the raincoat, Richard Morris, to investigate. ( 05 Feb 2008 ) by Richard Morris

The DBA and the Battle for Reputations Richard Morris comments on the perception amongst some DBAs that the reputation of their profession is declining. In today's world of burgeoning information theft, are DBAs part of the problem or part of the solution? ( 18 Jul 2007 ) by Richard Morris

Automating Common SQL Server Tasks using DMOPhil Factor's DMO automation procedures provide a valuable additon to any DBAs toolkit. ( 27 Nov 2006 ) by Phil Factor

Cybercrime - the Dark Edges of the InternetCriminal activity is a growing menace on the internet. This inevitably means more diligence is required by legitimate users in the face of an increasingly sophisticated criminal threat. Robert Sheldon describes some of the emerging threats and risks. ( 12 May 2015 ) by Robert Sheldon

Mutation TestingYou may have a twinge of doubt when your code passes all its unit tests. They might say that the code is OK, but if the code is definitely incorrect, will the unit tests fail? Mutation Testing is a relatively simple, but ingenious, way of checking that your tests will spot the fact that your code is malfunctioning. It is definitely something that every developer should be aware of. ( 17 Jun 2010 ) by Jeremy Jarrell

Creating WPF Prototypes with SketchFlowPrototyping with Sketchflow transforms what was once a frustrating and time-consuming chore. With SketchFlow, WPF prototypes can be created and changed with amazing ease. SketchFlow is WPF's secret weapon. Well, it was secret until Michael Sorens produced this article. ( 18 Jun 2010 ) by Michael Sorens

The Fast Guide to Application ProfilingIn this sample chapter from his recently released book (co-Authored with Paul Glavich) Chris Farrell gives us a fast overview of performance profiling, memory profiling, profiling tools, and in fact everything we need to know when it comes to profiling our applications. This is a great first step, and The Complete Guide to .NET Performance Testing and Optimization is crammed with even more indispensable knowledge. ( 22 Apr 2010 ) by Chris Farrell

Game-over! Gaining Physical access to a computerSecurity requires defense in depth. The cleverest intrusion detection system, combined with the best antivirus, won't help you if a malicious person can gain physical access to your PC or server. A routine job, helping to remove a malware infection, brings it home to Wesley just how easy it is to get a command prompt with SYSTEM access on any PC, and inspires him to give a warning about the consequences. ( 15 Mar 2011 ) by Wesley David

Taking NuGet to the EnterpriseThe NuGet package manager is a great way for developers to install and update third-party tools. It solves a lot of the problems of dependency management and integration. Is it ready for the exacting requirements of development in the enterprise? ( 25 Apr 2013 ) by Alex Papadimoulis

Upgrade from Exchange 2007 to Exchange 2010 - Part IIHaving walked us through the initial steps of the migration from Exchange Server 2007 to 2010, Jaap now discusses the next stage of the process - Configuring External access to your Exchange environment, and setting up your new Exchange 2010 Mailbox Server. ( 14 Dec 2010 ) by Jaap Wesselius

jQuery Fast Food Cook BookAnyone in IT should be aware of jQuery. This free, open-source JavaScript library has become amost essential to anyone creating a web-based application. Nick Harrison explains, in as sucession of small examples, why it helps his productivity so much, and takes the grudgery out of creating dynamic web pages. ( 11 Jul 2012 ) by Nick Harrison

The Yancey MenEver wondered what the perfect IT director might be like? Phil Factor experimented... ( 03 Oct 2006 ) by Phil Factor

Basic SQL Server Performance Troubleshooting For DevelopersThe speed of a slow SQL Query can almost always be improved. In SQL Server, the query optimizer determines the best way of executing the query, based on the evidence it has. The same query can be executed in many different ways as the data size increases, new indexes become available, or as the data distribution changes. If the appropriate index doesn't exist or can't be used, then SQL Server shrugs and does the best it can. Tony Davis explains how to find out what a query needs to perform well ( 14 Aug 2015 ) by Tony Davis

Creating Service-Orientated Data-Access LayersThe ADO.Net Data Services framework enables you to provide data services to Web applications that are simple to integrate with them. The data services use URIs to point to pieces of data, and use standards such as JSON and XML to transfer that data. ADO.NET Data Services uses the Entity Framework,  which allows an easy translation from a Database layer based on Stored procedures, to an object-orientated Application layer. It all seems surprisingly sensible. Prasanna explains all, as usual. ( 30 Jul 2008 ) by Amirthalingam Prasanna

Tracking tempdb growthRunaway tempdb growth can be a problem, so how do you track its growth and correlate the growth to specific commands? ( 11 Apr 2005 ) by Brian Moran

Encryption without the ConfusionEric Brown demonstrates some practical encryption techniques in SQL Server 2005, to protect both your objects and your data. ( 29 Nov 2006 ) by Eric Brown

Controlling Email Messages using Exchange's Transport RulesSome tasks that should have been easy in previous versions of Exchange just weren't. Now, with Transport Rules in Exchange 2007, administrators have a much improved set of tools to manage message flow. ( 22 Jul 2008 ) by William Lefkovics

Network Administrators Past, Present, and FutureEven in the short time that PCs have been signficantly networked, what it means to be a SysAdmin has changed dramatically. From the first LAN parties to the lumbering infrastructures of today, the role of SysAdmin has evolved and adapted to the shifting needs of users and corporations alike. Brien Posey has been on the front line of it all, and considers the future of this thus-far essential IT role. ( 11 Jul 2011 ) by Brien Posey

Two stops short of DagenhamPhil Factor mourns the demise of the Eccentric in the IT World - "One of the best programmers I ever met was referred to, in Essex jargon, as being 'two stops short of Dagenham' (Barking)*. ( 09 Feb 2006 ) by Phil Factor

Phil Factor on the LawTaking the adversarial system to task with vigour and courage, Phil Factor gives us his view on how to handle the trials of litigation if all cannot be solved by a hearty pub lunch. ( 21 Dec 2006 ) by Phil Factor

Using BITS to Upload Files with .NETAlthough FTP is commonly used to transfer files over the Internet, it's somewhat unfriendly to firewalls. Phil Wilson shows you how to create a BITS upload program using C#, which will transfer files over browser ports. ( 04 Sep 2006 ) by Phil Wilson

Investigating SQL Server 2008 Wait Events with XEVENTSSome reasons for the slow-running of database applications aren't obvious. Occasionally, even the profiler won't tell you enough to remedy a problem, especially when a SQL Statement is being forced to wait. Now, in SQL Server 2008, come XEvents, which allow you to look at those wait events that are slowing your SQL Statements. Mario Broodbakker continues his series about SQL Server Wait Events SQL Server 2008 wait event based performance analysis using XEvents ( 24 Jul 2008 ) by Mario Broodbakker

Michael Meeks: Geek of the WeekRichard Morris talks to Michael Meeks, a young Geek who has made a huge impact on the quality of Open source software in the past eight years. He is a Cambridge graduate, a committed Christian, and is modest about his impressive achievements. He gives an interesting interview too! ( 09 Feb 2009 ) by Richard Morris

On Handling Dates in SQLThe calendar is inherently complex by the very nature of the astronomy that underlies the year, and the conflicting historical conventions. The handling of dates in TSQL is even more complex because, when SQL Server was Sybase, it was forced by the lack of prevailing standards in SQL to create its own ways of processing and formatting dates and times. Joe Celko looks forward to a future when it is possible to write standard SQL date-processing code with SQL Server. ( 06 Mar 2014 ) by Joe Celko

SQL Backup and RestoreA DBA's tasks, from day-to-day, are rarely constant; with one exception: the need to ensure each and every day that any database in their charge can be restored and recovered, in the event of error of disaster. In this book, you'll discover how to perform each of these backup and restore operations using SQL Server Management Studio (SSMS), basic T-SQL scripts and Red Gate's SQL Backup tool. ( 26 Mar 2012 ) by Shawn McGehee

What Specification Server Should I Buy?Simon Sabin explains why he is always cagey about giving advice on the sort of hardware to run SQL Server on, but admits to some general rules. ( 13 Aug 2007 ) by Simon Sabin

Backup Verification: Tips for Database Backup TestingA Backup system is merely part of a recovery system. If your backups can't be used to recover the database, then they're useless. Do you regularly make sure that you can restore a database from your backups? ( 06 Dec 2011 ) by Grant Fritchey

Using Migration Scripts in Database DeploymentsA SQL migration script is similar to a SQL build script, except that it changes a database from one version to another, rather than builds it from scratch. Although they're simple in essence, it is worth knowing how to use them effectively for stress-free database updates and deployments. It takes care to get them right, but it is worth the trouble. ( 17 Jun 2014 ) by Jonathan Hickford

Query Optimizer and Cartesian ProductsIn his continuing quest to bring a deeper understanding of Query Optimizer to the world at large, Fabiano takes a moment to point out a potential pitfall you may encounter. A light read, but one worth perusing. ( 22 Oct 2009 ) by Fabiano Amorim

Constraints and the Test-Driven DatabaseBad data always seems to appear when, and where, one least expects it. Sam explains the great value of a defensive approach based on constraints to any team that is developing an application in which the data has to be exactly right, and where bad data could cause consequential severe financial damage. It is perhaps better seen as creating a test-driven database. ( 14 Dec 2011 ) by Sam Bendayan

Branching and Merging: Ten Pretty-Good PracticesIn the course of rescuing a development from 'merge misery', it became increasingly apparent that there were a number of practices for managing branches in the Version Control System that would have reduced the pain and effort of the subsequent merge, and made the dream of continuous delivery come closer to reality. From the experience comes some well-tested ways of making branches and merges a stress-free part of application development. ( 13 May 2014 ) by Konrad Lukasik

.NET Application Architecture: Logging SQL Exceptions in the Data Access LayerDamon Armstrong demonstrates an efficient way to capture and manage SQL exceptions in your .NET application, by adding a SQL logger to your data access layer. ( 11 Sep 2006 ) by Damon Armstrong

Building an Excel View Engine for ASP.NET MVCWhen we see a grid with some interesting data in it in an MVC application we, as users, expect to be able to download it as an Excel spreadsheet. If your application can't do it, it is no use telling the user that it is too difficult, because it isn't, as Nick Harrison explains. ( 22 Aug 2014 ) by Nick Harrison

Declarative SQL: Using ReferencesThere are several ingenious ways of using SQL References to enforce integrity declaratively. Declarative Referential Integrity (DRI) is more effective than using procedural code in triggers, procedures or application layers because it uses the SQL paradigm, thereby making optimisation easier and providing clearer expression of the rules underlying the data. ( 15 Dec 2015 ) by Joe Celko

SQL Server ConsolidationIn the crusade to cut expenses, Data Centres (and IT Infrastructure) are now coming under scrutiny as a possible source of savings. Half-informed executives now rally behind the cry of "Virtualization!", but virtualization is only part of the story - The tip of the consolidation iceberg - and it might not actually save you as much as you thin. Thomas takes us deeper. ( 04 Sep 2009 ) by Thomas LaRock

Monitoring Transactional Replication in SQL ServerIf you are using replication in SQL Server, you can monitor it in SSMS, but it makes sense to monitor distribution jobs automatically, especially if you can set up alerts or even set up first-line remedial action when a problem is detected. Francis shows how to do it in TSQL as an agent job. ( 11 Apr 2013 ) by Francis Hanlon

How to Get SQL Server Security Horribly WrongIt is no good doing some or most of the aspects of SQL Server security right. You have to get them all right, because any effective penetration of your security is likely to spell disaster. If you fail in any of the ways that Robert Sheldon lists and describes, then you can't assume that your data is secure, and things are likely to go horribly wrong. ( 29 Apr 2015 ) by Robert Sheldon

The Performance of Traversing a SQL Hierarchy Dwain Camps show that, depending on the size and characteristics of some hierarchical data, six different methods of traversal can each be the fastest at some point. He illustrates convincingly that It is dangerous to generalize from just one set of test data, and it is foolish to assume that, just because SQL code looks neat, it will perform well. ( 28 Apr 2014 ) by Dwain Camps

Introducing Single Sign-on to an existing ASP.NET MVC applicationImplementing a single sign-on for a set of a company's business applications isn't hard if they are all new applications, especially if you use WS-Federation and and Identity server such as Thinktecture. If it is a mix of new and existing applications then it helps to sort out any problems if you first understand the technology as a whole, and appreciate how it works. Jarek shares his experiences. ( 27 Apr 2015 ) by Jaroslaw Szczegielniak

Practical PowerShell Unit-Testing: Getting StartedBy the time you're using PowerShell to automate an increasing amount of the system administration, database maintenance, or application-lifecycle work, you'll probably need to automate the unit-testing of the PowerShell scripts themselves. Michael Sorens introduces you to Pester, the leading test framework for PowerShell, and shows how it can make it easier to produce reliable scripts ( 03 Nov 2014 ) by Michael Sorens

Nesting Levels in SQLThe 'Structured' part of SQL denotes the fact that queries can be nested inside each other in such a way that, wherever you can use a table, you can use a table expression. Such derived tables can provide powerful magic, to which is added CTEs and Lateral Tables. Joe Celko explains. ( 27 Jan 2014 ) by Joe Celko

The Joy of NADPhil Factor convenes a short meeting to discuss the data architecture for storing a client's contact painful could it be? Phil Factor discovers that even the simplest database can be a major cause of grief and complexity ( 30 Oct 2007 ) by Phil Factor

Secrets of successful IT projectsThe database mole shares his secrets of successful IT projects, and pitfalls to avoid. ( 17 Nov 2005 ) by Phil Factor

'Peli' de Halleux: Geek of the WeekIt is extraordinary how much 'Peli' has achieved in a short space of time. Here, our choice for Geek of the Week, 'Peli' de Halleux, talks about his contributions to MbUnit, .NET Reflector, QuickGraph and Pex. ( 21 Oct 2008 ) by Richard Morris

Integrating with WMIJames shows how to add a simple WMI provider to a service so that you can monitor it, and make changes to it, remotely across the network ( 17 Oct 2007 ) by James Moore

Showplan Operator of the week - AssertAs part of his mission to explain the Query Optimiser in practical terms, Fabiano attempts the feat of describing, one week at a time, all the major Showplan Operators used by SQL Server's Query Optimiser to build the Query Plan. He starts with Assert ( 14 Apr 2010 ) by Fabiano Amorim

How to Create Custom Workflows in Windows SharePoint Services 3.0SharePoint is an incredibly powerful platform when it comes to managing flows of data, and it seems odd that more people don't understand or use that functionality. Charles Lee builds on his explanation of lists in SharePoint for beginners and gives you a clear, straightforward demonstration of how to build a custom workflow to automate some of your more mundane everyday workflow tasks. ( 07 Oct 2009 ) by Charles Lee

Time Slots - An Essential Extension to Calendar TablesAfter answering many forum entries from developers asking for help with dealing with SQL that involved time intervals and ranges, Dwain dreamed of a generalized tool that sets up time slots of various sorts without the need to experiment; that could do the heavy lifting, so that developers could do aggregations and reports based on time intervals without the hard graft. Here is Dwain's dream made reality. ( 22 Apr 2015 ) by Dwain Camps

Symmetric EncryptionCryptography is an increasing requirement for applications, so it is great that it is part of the .NET framework. Matteo builds on his first article that explained Asymmetric Cryptography and Digital Signatures, and tackles Symmetric Encryption and how to implement it in the .NET Framework. ( 04 Jan 2010 ) by Matteo Slaviero

Oracle to SQL Server: Putting the Data in the Right PlaceJonathan Lewis is an Oracle expert who is recording his exploration of SQL Server in a series of articles. In this fourth part, he turns his attention to clustered indexes, and the unusual requirement SQL Server seems to have for the regular rebuilding of indexes. ( 17 Sep 2010 ) by Jonathan Lewis

Exploring Smelly CodeBad Code Smells are similar in concept to Development-level Antipatterns. They don't describe bad programming aesthetics and you can't sniff them out precisely with code metrics. They describe code in need of refactoring in rich language such as 'Speculative Generality', 'Inappropriate Intimacy' or 'shotgun surgery'. They're useful because they give us words to describe antipatterns that we all come across in code. Nick Harrison explains... ( 27 Apr 2009 ) by Nick Harrison

Pop Rivett's SQL Server FAQ No2: Pop Backs UpPop leaps into action to safeguard a young girls's data... ( 22 Sep 2006 ) by Pop Rivett

The database moleBogus resumes and unblushing lies: navigating the database hiring waters and selecting a development team. ( 18 Oct 2005 ) by Phil Factor

How to Import Data from HTML pagesIt turns out that there are plenty of ways to get data into SQL Server from websites, whether the data is in tables, lists or DIVs Phil finds to his surprise that it is easier to use Powershell and the HTML Agility Pack, than some of the more traditional approaches. Web-scraping suddenly becomes more resilient. ( 30 Mar 2011 ) by Phil Factor

Project MismanagerIn IT, it is difficult to measure individual productivity, and it is particularly difficult to determine whether a project manager for a development project is 'pulling his weight'. ( 07 Mar 2013 ) by Phil Factor

Understanding XML web services for testersThis White Paper investigates how XML web services are implemented, considers the customizable features of web services and looks at load testing a web service, specifically so that test strategies can be formulated. ( 13 Apr 2003 ) by Helen Joyce

Jez Humble: Geek of the WeekJez Humble and David Farley achieved fame through a book that tackled the least glamorous but most intricate part of the application development cycle, Deployment. It was no accident that the book achived so much attention, since it was a lively and iconoclastic take on a vital but neglected aspect of development upon which the ultimate success of software projects so often depend. We found Jez to be an interesting guy, too! ( 28 Sep 2011 ) by Richard Morris

XML Jumpstart WorkbenchIn which Robyn and Phil decide that the best way of starting to learn XML is to jump in and take a ride around the block. ( 27 Jun 2007 ) by Robyn Page and Phil Factor

Backup and Restore SQL Server with the SQL Server 2012 PowerShell cmdletsThere are plenty of occasions when it makes a lot of sense to do backup and restore scripts in PowerShell. Microsoft have put effort into making it much easier, as Allen demonstrates. ( 03 May 2013 ) by Allen White

Which New Technology Should I Chase?It is a question that almost anybody working in IT occasionally ask themselves. 'How can I best develop my career to make sure my skills and experience remain in demand?' The questions may be spurred by a variety of reasons, including job-insecurity, dissatisfaction, or a wish for career advancement. So what advice would you give? Buck Woody tackles the difficult question with some straight-forward advice.. ( 06 May 2014 ) by Buck Woody

The PoSh DBA - Specifying and Gathering Performance Counters If you are needing to keep tabs on a number of servers and applications in a Windows domain then performance counters provide the bedrock of information. It is important to identify the counters you need and gather baseline data to allow you to create alerts when abnormal conditions occur. When it comes to monitoring SQL Server, don't guess, collect. ( 07 Mar 2014 ) by Laerte Junior

Calculating Gaps Between Overlapping Time Intervals in SQLThere are a number of real-life reporting tasks in SQL that require a 'gaps and islands' analysis. There are a number of techniques around that work, but finding ones that scale well makes for a tougher, but interesting, challenge. ( 14 Feb 2014 ) by Dwain Camps

Extending MSBuildBecause MSbuild underpins the Visual Studio 'build' process, you can use MSBuild to explore and extend the build process to suit your needs. If you are finding the job of building Microsoft .NET applications tedious , the chances are that there is a way that using 'extended MSBuild' for your automated builds will save you time, effort and code. ( 06 Dec 2007 ) by Tilman Bregler

Database Normalization BasicsThe task of Database Normalization doesn't have to be painful, especially if you follow Old Mother Celko's Normalization Heuristics. ( 07 Apr 2014 ) by Joe Celko

Contiguous Time PeriodsIt is always better, and more efficient, to maintain referential integrity by using constraints rather than triggers. Sometimes it is not at all obvious how to do this, and the history table, and other temporal data tables, presented problems for checking data that were difficult to solve with constraints. Suddenly, Alex Kuznetsov came up with a good solution, and so now history tables can benefit from more effective integrity checking. Joe explains... ( 22 Nov 2010 ) by Joe Celko

Top HATIf there is one thing that developers and users always seem to disagree on, it is the relative importance of documentation. We take a look at the whole technology of producing Help and Documentation for tools and applications, and then review one particular product; EC Software's Help & Manual ( 13 Nov 2007 ) by William Brewer

Monitoring SQL Server Virtual Log File FragmentationOne of the delights of PASS is to be able to pick up ideas from some of the presentations and recombine them in new and interesting ways. Tom recounts how he used two different insights to solve a problem of monitoring a large number of servers for signs of Virtual Log-file Fragmentation. ( 06 Jan 2010 ) by Thomas LaRock

Harnessing PowerShell's String Comparison and List-Filtering FeaturesWhen you are first learning PowerShell, it often seems to be an 'Alice through the looking-glass' world. Just the simple process of comparing and selecting strings can seem strangely obtuse. Michael turns the looking-glass into wonderland with his wall-chart of the PowerShell string-comparison operators and syntax. ( 07 Jun 2011 ) by Michael Sorens

Building Performance Metrics into ASP.NET MVC ApplicationsWhen you're instrumenting an ASP.NET MVC or Web API application to monitor its performance while it is running, it makes sense to use custom performance counters.There are plenty of tools available that read performance counter data, report on it and create alerts based on it. You can then plot application metrics against all sorts of server and workstation metrics.This way, there will always be the right data to guide your tuning efforts. ( 29 Oct 2013 ) by David Berry

Data Is Crazier than You Think As a society, we have an unrealistic respect for data, especially if it has a decimal point somewhere and uses metric units. We who are in the business of data need to cultivate a renewed interest in the sceptical and rigorous science of statistics: it is too important to leave to 'Data Scientists'. If the data is wrong, or the way we analyse or report it is misleading, much of what we do is pointless ( 17 Oct 2014 ) by Joe Celko

Database RefactoringAlthough the methodology of refactoring code has been adopted enthusiastically, the same has not really been the case with databases. Nick argues that the reason could lie in the extent of the task of unpicking complex databases systems sufficiently to make them more efficient and effective; and this will only be ameliorated with better tools and planning to support the techniques. ( 01 Feb 2011 ) by Nick Harrison

Back to Basics: Converting a Web Page to a Web Form View ASP.NET developers can learn a lot from MVC practices. This article shows you how to structure a WebPage in an ASP.Net web application so that it is behaves like an MVC View, and suggests a number of ways to increase the quality, and portability, of ASP.NET applications by encapsulation, and separating the logic between the Presenter and View. ( 20 Apr 2010 ) by Nick Harrison

Developing Low-Maintenance DatabasesAlex's team of developers are geared to doing rapid development of database applications in a busy corporate setting, yet take considerable time over meticulous database design, extensive constraints, automated tests, error logs, and defensive coding. Why? Because it cuts down on the subsequent need for maintenance ( 12 Jun 2012 ) by Alex Kuznetsov

Database Deployment CribsheetAs part of our long-running Cribsheet series, we asked William to write a guide to deployment that described in general terms what is involved in the deployment of a database application, and the sort of issues that one is likely to come up against. ( 29 Oct 2012 ) by William Brewer

SSRS Reports as a Data Source in Excel 2013DBAs are expected to know how to administer the technologies that are available with and peripheral to SQL Server. To properly administer them, it certainly helps to understand the technology from the point of view of the user. By using an existing SSRS report as a data feed for Excel, Rodney Landrum explains how these users can now take advantage of development efforts in new ways. ( 26 Sep 2013 ) by Rodney Landrum

Cyber CrimeRichard Morris investigates the increasingly sophisticated tactics of an industry that survives and thrives by feeding off the wealth of others. ( 23 Oct 2006 ) by Richard Morris

Enabling the Blind to See the WebFor most net users, trying to navigate a badly designed website means irritation. For disabled people, particularly those with a visual impairment or who find it difficult to use a mouse, bad design means many sites are out of bounds. Not only are these websites losing a huge potential audience, they may also be breaking the law. ( 14 Mar 2007 ) by Richard Morris

Report Builder 3.0: Adding Charts to Your ReportCharts are one of the commonest ways of visualizing reports from data. Report Builder provides a way of generating charts and reports that will be intuitive to anyone who has done the same in Excel. Robert provides a simple explanation of how to get the best from charts using Report Builder. ( 11 Oct 2012 ) by Robert Sheldon

Client-Side Markup with JQuery Cloning and TemplatesAlmost certainly, any HTML-based application is going to need to create markup on the client-side, using JavaScript. The language isn't particularly geared for the task, but with JQuery and now JSrender, it is no longer something that the web programmer needs to dread ( 27 Nov 2012 ) by Nick Harrison

Multiple Views and DisplayMode Providers in ASP.NET MVC 4Display modes in ASP.NET MVC 4 provide a neat way of separating page content from the way it is rendered on different devices. All you need to do is to define a display mode for each device, or class of devices, that you're interested in. ( 18 Feb 2013 ) by Dino Esposito

The unnecessary evil of the shared development databaseOne of the greatest pain-points in developing a database-driven application happens when the application is in source control,but the database isn't. When the development database is shared, the pain increases, and it is not alleviated by source control alone. Troy Hunt spells out why each database developer must have their own version of the database. ( 23 Mar 2011 ) by Troy Hunt

How The Garbage Collector Can Cause Random SlownessIf your website is suffering from slow performance, it's easy to blame the code, but not always correct. Even in if you're using .NET, you need to be aware of how your memory is being managed, and sometimes it's .NET that's the culprit. ( 25 Nov 2010 ) by Edward Elliott

Building an Airport Status Mashup with Silverlight and Bing MapsDjonatas Tenfen demonstrates in fine detail how to quickly and easily build a mashup Silverlight application to consume and manipulate multiple data sources, and plot airports' realtime status onto a map. ( 15 Jul 2010 ) by Djonatas Tenfen

EntityDataSource Control BasicsThe Entity Framework can be easily used to create websites based on ASP.NET. The EntityDataSource control, which is one of a set of Web Server Datasource controls, can be used to to bind an Entity Data Model (EDM) to data-bound controls on the page. Thse controls can be editable grids, forms, drop-down list controls and master-detail pages which can then be used to create, read, update, and delete data. Joydip tells you what you need to get started. ( 03 Mar 2011 ) by Joydip Kanjilal

Calculating Values within a Rolling Window in Transact SQLBefore the SQL Window functions were implemented, it was tricky to calculate rolling totals or moving averages efficiently in SQL Server. There are now a number of techniques, but which has the best performance? Dwain Camps gets out the metaphorical stopwatch. ( 17 Oct 2013 ) by Dwain Camps

Calculating and Verifying Check Digits in T-SQLA lot of numbers that we use everyday such as Bank Card numbers, Identification numbers, and ISBN codes, have check digits. As part of the routine data cleansing of such codes on data entry we must check that the code is valid- but do we? Dwain Camps shows how it can be done in SQL in such a way that it could even be used in a constraint, to keep bad data out of the database. ( 11 Jul 2014 ) by Dwain Camps

Working with SQL Server data in Power BI DesktopWhat's the best way of providing self-service business intelligence (BI) to data that is held in on-premise SQL Server? Not, it seems, Power BI 2.0 the hosted cloud service, but Power BI 2.0 Desktop. If moving your database to Azure isn't an option, Power BI 2.0 desktop could still bring smiles to the faces of your BI hotshots. ( 24 Aug 2015 ) by Robert Sheldon

Deleting Files in the CloudThe public perception is that, when something is deleted, it no longer exists. IT in general prefers the fuzzier idea of the trashcan, where the deleted compromising documents can blow around a digital landfill site for years. The Cloud takes this further, and so the data you serve up to the cloud can be stored out there indefinitely, no matter how hard to try to delete it. Rob Sheldon investigates, and finds the cloud a worryingly public place. ( 23 Sep 2014 ) by Robert Sheldon

A Code of Conduct for DBAsDespite the fact DBAs are protectors of an organization's knowledge, and privy to much confidential information, there is no clearly defined set of rules and standards to help govern and guide their ethical conduct. Brad McGehee, in an article based on a chapter from the second edition of his book 'How to Become an Exceptional DBA', discusses a Code of Conduct for DBAs. He advises on why such a code is required, the sort of topics it should contain, and how it might be enforced. Much of this article has relevance for any IT professional. ( 03 Sep 2009 ) by Brad McGehee

.Net application profilingPerformance is a concern for all but the simplest of applications. Making your applications perform well seems a simple enough ask, but it can be something of a black art. This is where profiling comes in. ( 13 Apr 2005 ) by Paul Glavich

Premature Scalability and the Root of All EvilWhen you're designing an application, there is a temptation to build it to a super-scalable future-proof architecture, even when the immediate requirements can be met by a simple single-tier application that can exploit the pure power of IIS and SQL Server. Dino recounts the painful story of what happened when the gurus got their way. ( 18 Mar 2015 ) by Dino Esposito

A TDD Journey: 1-Trials and TribulationsTest-Driven Development (TDD) has a misleading name, because the objective is to design and specify that the system you are developing behaves in the ways that the customer expects, and to prove that it does so for the lifetime of the system. It isn't an intuitive way of coding but by automating the specifications of a system, we end up with tests and documentation as a by-product. Michael Sorens starts an introduction to TDD that is more of a journey in six parts: ( 15 Jul 2014 ) by Michael Sorens

Refactoring Databases: The ProcessDatabase refactoring can greatly improve the efficiency of your database code. However, even a seemingly simple database refactoring such as "Move Column" can be tricky to implement correctly in a production environment. In this article, Scott Ambler and Pramod Sadalage describe a rigorous process for the correct implementation of an appropriate refactoring. ( 09 Jan 2007 ) by Scott W. Ambler and Pramod J. Sadalage

Are there ethical limits on whom you'll work for?It can be all too easy to turn a blind eye to the moral values of the organization that provides your salary. Jesse Liberty explains why he believes we should stop and think more often...and also how difficult this task can be. ( 11 Jan 2007 ) by Jesse Liberty

SSMS Tools Pack 2.0If you work with SSMS, you'll know how frustrating it can be when tasks you perform every day aren't part of the core features. Mladen Prajdic certainly did, which is why he developed his free SSMS Tools Pack. Now on its second version, Grant Fritchey explains the functionality of this great free plugin. ( 26 Oct 2011 ) by Grant Fritchey

Quickly Investigating What's in the Tables of SQL Server DatabasesFrom SQL Server Management Studio it is difficult to look through the first few rows of a whole lot of tables in a database. This is odd, since it is a great way to get quickly familiar with a database. Phil was persuaded to tidy up a SQL routine he uses to investigate databases quickly in a browser. He explains how to use it, how it works, and how to use it from PowerShell. ( 12 Aug 2014 ) by Phil Factor

Documenting your SQL Server DatabaseOne of the shocks that a developer can get when starting to program in T-SQL is that there is no simple way of generating documentation for routines, structures and interfaces, in the way that Javadocs or Doxygen provides. To embed the documentation in the source is so obvious and easy that it is a wrench to be without this facility. Phil Factor suggests a solution. ( 06 May 2015 ) by Phil Factor

The Ultimate Excuse DatabaseIs your IT project in trouble? Do you need to create a smokescreen so that no-one can pin the blame on you? No problem! Marvel at Phil Factor's versatile use of T-SQL functions in creating the "ultimate excuse database" and then start generating your excuses immediately! ( 15 Jan 2007 ) by Phil Factor

IT Agencies and the DevilWhenever I worry about how I shall earn a crust when my mental powers start failing, I always console myself with the thought that I can go and start an IT employment agency. Many before me have done so. It is remarkably easy, as the profession of "Employment Agent" seems to be almost free of regulation. ( 15 Mar 2006 ) by Phil Factor

Hyper-V R2 Live MigrationReliability is one of the great payoffs to virtualization, and failover clustering has got a whole lot better with Windows Server 2008 and Hyper-V. Now, you get failover without any downtime for the virtual machine. Jaap tells you how to implement it. ( 10 Feb 2010 ) by Jaap Wesselius

Under the ORM Hood: Revealing the SQLYour application code may look neat and clean, and you are using a sound Object-relational Mapper, but when you put the pedal to the metal, you're not getting the performance. The time has come to lift the hood and see what SQL is being generated by the ORM, and what part of your code is causing the bottlenecks. The effect can be spectacular. ( 05 Oct 2010 ) by Nick Harrison

Logical Network Layout for Small NetworksMatt examines what it's like to design a network from the ground up, as well as dealing with an existing network that has been undocumented, by analyzing the relationships between the systems ( 28 Nov 2011 ) by Matt Simmons

Code Deodorants for Code SmellsCode Smells have become an established way of talking about indications that things may be wrong with your code. Nick Harrison extends the idea with the concept of 'code deodorants' and shows how the code smell of 'inappropriate intimacy' can be cured by means of the code deodorant called 'separation by interface'. ( 09 Jul 2009 ) by Nick Harrison

Procedural, Semi-Procedural and Declarative Programming in SQLA lot of the time, the key to making SQL databases perform well is to take a break from the keyboard and rethink the way of approaching the problem; and rethinking in terms of a set-based declarative approach. Joe takes a simple discussion abut a problem with a UDF to illustrate the point that ingrained procedural reflexes can often prevent us from seeing simpler set-based techniques. ( 15 Feb 2010 ) by Joe Celko

A Start with Automating Database Configuration ManagementFor a number of reasons, it pays to have the up-to-date source of all the databases and servers that you're responsible for in a central archive, in version control, and this is a job that is best automated. If you enlist the help of SQL Compare Pro, you can create a Powershell-based system that can be extended to warn you of changes, roughly when they happened, with a report of exactly what changed and how. ( 16 Jan 2015 ) by Phil Factor

The Dark Arts of JournalismAlthough the IT industry is usually blamed for security breaches in confidential databases, it is likely that it is usually the staff that operate the databases that are responsible. Should we be designing IT systems that log and report every access by the users? We sent our roving reporter, the steely-eyed Richard Morris, to find out. ( 16 Mar 2008 ) by Richard Morris

Essential Tools for the WPF Novice When Michael sets out to do something, there are no half-measures; So when he set out to learn WPF, we all stand to benefit from the thorough research that he put into the task. He wondered what utility applications could assist programming in WPF. Here are the fruits of all his work. ( 19 May 2010 ) by Michael Sorens

Multi-Language database applications using Oracle ApexIt isn't straightforward to design a database application that has to provide text data in several languages. There are several problems to overcome such as, for example, allowing the translation bureau to work independently, using their own specialised formats. Fortunately, Oracle Apex can, if you follow the advice in this article, do the hard work for you. ( 03 Jun 2011 ) by Peter Raganitsch

Customizing Team Foundation Server 2013Visual Studio Team Foundation Server (TFS) manages workflow of software development projects. It is designed for the typical development. If it doesn't support all your team development activities, you can extend it by various means, including the creation custom controls or new work items. ( 26 Jan 2015 ) by Ambily Kavumkal Kamalasanan

Row Versioning Concurrency in SQL ServerThe optimistic concurrency model assumes that several concurrent transactions can usually complete without interfering with each other, and therefore do not require draconian locking on the resources they access. SQL Server 2005, and later, implements a form of this model called row versioning concurrency. It works by remembering the value of the data at the start of the transaction and checking that no other transaction has modified it before committing. If this optimism is justified for the pattern of activity within a database, it can improve performance by greatly reducing blocking. Kalen Delaney explains how it works in SQL Server. ( 05 Jun 2014 ) by Kalen Delaney

Understanding Cross-Database Transactions in SQL ServerMicrosoft 'Always On' technology does not support distributed or cross-database transactions. Why not? Grahaeme Ross shows how to investigate cross-database transactions to understand the problem in more detail, and concludes that a Cross-Database transaction can cause loss of data integrity in the commit phase of the two-phase commit ( 11 Apr 2015 ) by Grahaeme Ross

SQL and R Not only can you easily retrieve data from SQL Sources for analysis and visualisation in R, but you can also use SQL to create, clean, filter, query and otherwise manipulate datasets within R, using a wide choice of relational databases. There is no reason to abandon your hard-earned SQL skills! ( 18 Sep 2015 ) by Casimir Saternos

ASP.NET SignalR: Old-fashioned Polling, Just Done BetterA website often needs to update a page as the underlying data changes. You can, of course, just poll the server every few seconds on the browser via JavaScript, but to receive live updates from a site it is better to push data to the browser, using server-based SignalR. This uses web sockets to do this rather than browser-based polling where web sockets are supported on the browser. Dino explains how. ( 18 May 2015 ) by Dino Esposito

Hens that CrowShort on results, but long on superficially plausible technical excuses, Phil Factor describes his dealings with the hen that crowed. ( 25 May 2007 ) by Phil Factor

SQL Server eBook Download - SQL Server TackleboxThe SQL Server Tacklebox contains a collection of practical tools and techniques to automate and standardize SQL Server installation, document and report on servers, migrate data and manage data growth, troubleshoot performance issues, receive notifications of impending issues, secure access servers and fight off the data corruption. ( 05 Aug 2008 ) by Rodney Landrum

Build Your Own Virtualized Test Lab Desmond explains the fundamentals of building a test lab for Windows servers and Enterprise applications from scratch using Hyper-V on a supported x64 machine. He even suggest tips and tricks to help make the journey smoother. ( 05 Jan 2009 ) by Desmond Lee

Avoiding the EAV of DestructionA forum posting, from someone who wanted a better solution to the common problem of handling global settings in a database, leads Joe Celko into a fascinating discussion of the ramifications of the various solutions. ( 18 Jun 2009 ) by Joe Celko

Database Deployment ChallengesTraditionally, Database Deployment is a process that isn't associated with smiles, bonhomie and tranquility. There are a number of challenges that make the task more difficult. Alex reviews the common techniques for deploying new databases and upgrading existing ones, and their flaws, and argues the advantages of an automated, incremental, script-based approach to deployments ( 30 Jan 2013 ) by Alexander Karmanov

Agile Development and ICONIXSoftware projects fail for all sorts of reasons, although the same reasons crop up over and over again. The ICONIX process might offer a way out. ( 06 Apr 2006 ) by Matt Stephens

The Simple-Talk SQL PrettifierTired of struggling through dull, monchrome SQL, C# and VB code in website blogs and forums? Then check out the all-new Simple-Talk code prettifier! ( 22 May 2007 ) by Phil Factor

Geek of the Week: Don SymeWith the arrival of F# 3.0 Microsoft announced a wide range of improvements such as type providers that made F# a viable alternative to their other .NET languages as a general purpose workhorse. So what exactly are type providers, and why are they a killer reason for using F#? Why should we be considering F# for data-rich applications? To find out, we caught up with Don Syme, F#'s creator, to ask him about the latest developments in F# 3.0 and canvas his views on functional programming in general. ( 01 Feb 2012 ) by Richard Morris

Troubleshooting with Dynamic Management ViewsIf you work with SQL Server 2000, then you know how painful it is to triage a server that has "gone astray". Eric Brown thinks that the new Dynamic Management Views in SQL 2005 are a big step forward. ( 12 Apr 2007 ) by Eric Brown

Deploying Reports using the ReportingServices2005 Class and the RS UtilityMuch of the routine administration of Reporting Services (SSRS), such as the routine deployment of RDL reports, can be automated by using the Reporting Service 2005 class library and web services. To make things easier, Microsoft supply the RS utility to run Visual Basic code as a script. It is an intriguing system, with a lot of potential, as Greg Larsen explains. ( 16 Apr 2010 ) by Greg Larsen

Deploying Exchange 2007 on Windows Server 2008Nicolas Blank recounts his Experiences deploying Exchange 2007 SP1 on Windows Server 2008, when not everything worked out of the box as it should have. In this article Nicolas writes about the fixes to the issues he faced when installing on Server 2008. ( 19 Sep 2008 ) by Nicolas Blank

TSQL Pivot Rotations using only REPLACEPivoting SQL Server tables is always awkward, even with the PIVOT and UNPIVOT operators. If you want to get the job done without GROUP BY or PIVOY, here is a way to do it using only REPLACE. ( 01 Apr 2013 ) by Hugh Bin-Haad

The SQL Server 2016 Query Store: Overview and ArchitectureSQL Server's Query Store, introduced in SQL Server 2016, helps to troubleshoot query performance by capturing a range of information about query usage, CPU, memory consumption, I/O and execution time, and retaining every Execution Plan for analysis. Much of this information is available through queries. It looks set to be the most significant enhancement of SQL Server 2016. ( 20 Nov 2015 ) by Enrico van de Laar

Applying The Scientific Method to SQL Server Performance TuningDatabase administrators tend to rely more on science than intuition, and may therefore seem exasperatingly cautious to other IT people. A relational database is a complex machine, however, that is asked to deal with intricate problems. When things go wrong, it usually takes knowledge, deduction and a systematic approach to track down the root core of problems and to determine the best fix. ( 10 Mar 2014 ) by Joshua Feierman

Using Stored Procedures to Provide an Application's Business-Logic LayerWhen faced with a complex business application that had to be delivered with minimum staffing, on-time and within budget, Dwain's team chose to encapsulate and implement most of an application's business logic in SQL Server, using an interface made up of stored procedures. Without this approach, the team was convinced that it would not have been possible to deliver that level of business logic complexity within the timeframe. Dwain explains how it was done, and provides a template. ( 17 Nov 2014 ) by Dwain Camps

Insider Insights ( 01 Apr 2010 ) by Hugh Bin-Haad

The Concept of Cardinal Reciprocity- A PrimerToo many authors in the field of relational theory have neglected the concept of Cardinal Reciprocity. This can cause a number of subtle problems with database design in terms of its derivability, redundancy, and consistency. . Increasingly, this little-understood aspect of relational theory, that emphasises the cardinality of the attributes of tuples in a relation and the reciprocity with isomorphic foreign key restraints, is becoming a hot forum topic. ( 01 Apr 2008 ) by Hugh Bin-Haad

Showplan Operator of the Week - BookMark/Key LookupFabiano continues in his mission to describe the major Showplan Operators used by SQL Server's Query Optimiser. This week he meets a star, the Key Lookup, a stalwart performer, but most famous for its role in ill-performing queries where an index does not 'cover' the data required to execute the query. If you understand why, and in what circumstances, key lookups are slow, it helps greatly with optimising query performance. ( 07 May 2010 ) by Fabiano Amorim

5 Steps to Making Your Boss Read Your Technical ReportsAs an IT professional, you probably find it hard to communicate effectively with your less-than-technically-adept manager. Dr. Masha Petrova is determined to help you get your point across, and suggests 5 essential techniques that will get your documentation read. ( 18 Nov 2010 ) by Dr. Masha Petrova

Thinking of Setting up a SQL Server Users Group? The work of setting up a SQL Users Group isn't always easy, but, as Karla relates, it can be a very rewarding experience. She gives some detailed and useful advice for anyone wishing to get a local group up and running, gleaned from her first year with the excellent Pensacola SQL Server Users Group. ( 03 Jun 2009 ) by Karla Kay Remail

DBAs vs Developers: A Sad Tale of Unnecessary ConflictFor many developers, does DBA really stand for Don't Bother Asking? David Poole thinks it is time to end the unnecessary conflict between developer and DBA, and explains how to deal professionally with the inevitable friction between development and operation activities in IT ( 26 Aug 2014 ) by David Poole

Custom reports in Management Studio, using the Performance DashboardIf you are using SSMS and SQL Server 2005 sp2 You've probably tried out the database reports that are available in the Performance Dashboard, and decided how useful they are, but did you know that you can create your own dashboard reports? ( 18 Jul 2007 ) by Greg Larsen

Seth Godin: Big in the IT BusinessSeth Godin has transformed our understanding of marketing in IT. He invented the concept of 'permission marketing', sees the end of the "TV-Industrial complex" and the techniques of 'interruption-marketing' Instead he sees a sunny future, one where the consumer has the power to drive sales on merit ( 02 Feb 2012 ) by Richard Morris

Larry Gonick: Geek of the WeekCartoonist, mathematician, historian and environmentalist. Larry Gonick proved that learning could be fun by producing a wide range of educational books, all done as comic strips. Many present-day geeks attribute the awakening of their enthusiasm for science to coming across one of Larry's books. ( 08 Jan 2009 ) by Richard Morris

The ETL from Hell - Diagnosing Batch System Performance IssuesToo often, the batch systems that underlie a lot of database processing just grow without conscious design. When runs start to extend beyond their allotted time, and tuning no longer solves the problem, it is often discovered that batches are run in series, with draconian error handling. It is time to impose some rational design, and Nigel is a seasoned healer of batch processes. ( 15 Oct 2013 ) by Nigel Rivett

Connection Strings, an OverviewWe asked Phil to come up with a simple explanation of connection strings. We somehow weren't expecting a 'quote of the day' for your database, or a C# application to gather data from the internet. However, sometimes the oblique approach is the best, especially when the knowledge comes from hard-won experience by a cynical man. ( 26 Nov 2009 ) by Phil Factor

The SQL of Scrabble and RappingIn which Phil decides to use a table consisting of all the common words in English to explore ways of cheating at Scrabble and writing doggerel using SQL Server. He then issues a SQL challenge. ( 25 Dec 2009 ) by Phil Factor

Change Management and Source ControlSo, given the many good reasons for using Version Control systems for managing the changes in database applications, how does one go about the rather different routines of team development, such as testing, continuous integration, and managing data? What are the issues you're likely to face? ( 03 Mar 2011 ) by Grant Fritchey

Power Query Formula Language in Power BI DesktopThe Power Query Formula Language (PQFL) is a functional language that drives the Power BI transformations, and allows you to create mashup queries from scratch. Rob demonstrates how to use it in Power BI Desktop to extract data from its source, filter rows, specify the columns, clean the data, and create visualisations. ( 21 Sep 2015 ) by Robert Sheldon

Further Down the Rabbit Hole: PowerShell Modules and EncapsulationModules allow you to use standard libraries that extend PowerShell's functionality. They are easier to use than to create, but if you get the hang of creating them, your code will be more easily-maintained and re-usable. Let Michael Sorens once more be your guide through PowerShell's 'Alice in Wonderland' world. ( 24 Aug 2011 ) by Michael Sorens

Silverlight Beyond the Browser: The BasicsSilverlight can now be used to write a complete business application that can be run outside the browser. Such an application will probably need to automatically check, and react to, changes to the network status, as well as automatically download and install updates from the server. It will need to be easily installed from the browser. Richard Costall explains how, with a complete example. ( 14 Feb 2011 ) by Richard Costall

Reliable Storage Systems for SQL ServerBy validating the IO path before commissioning the production database system, and performing ongoing validation through page checksums and DBCC checks, you can hopefully avoid data corruption altogether, or at least nip it in the bud. If corruption occurs, then you have to take the right decisions fast to deal with it. Rod Colledge explains how a pessimistic mindset can be an advantage ( 12 May 2010 ) by Rod Colledge

LINQ Lycanthropy: Transformations into LINQLINQ is one of the few technologies that you can start to use without a lot of preliminary learning. Also, it lends itself to learning by trying out examples. With Michael's help, you can watch as your conventional C# code changes to ravenous LINQ before your very eyes. ( 05 Jan 2011 ) by Michael Sorens

Acceptance Testing With FitNesse, The OverviewFitNesse is an open-source framework for supporting user-acceptance testing. The aim is to make the construction of the individual tests as easy and intuitive as possible. It works with Java, .NET and database applications. It is very useful, but needs a simple 'tips from the trenches' guide to its use. Here is the start of that guide. ( 31 Jul 2013 ) by Michael Sorens

Common database deployment blockers and Continuous Delivery headachesDeployability is now a first class concern for databases, so why isn't it as easy as it should be? Matthew Skelton explores seven of the most common challenges which will bring your database deployments to their knees, and the steps you can take to avoid them. ( 06 Aug 2014 ) by Matthew Skelton

Checking the Plan Cache Warnings for a SQL Server DatabaseHow often do you check your query plans during development to see if they contain any warnings? If you're missing them, it means that you're not getting all those hints about missing indexes, join predicates or statistics. Is the query optimiser trying to tell you about implicit conversions? Dennes shows how to view the warnings in plan cache for a particular database using SQL ( 11 Feb 2015 ) by Dennes Torres

Doing a SQL Server Healthcheck via PowerShellPowerShell is an ideal tool for doing health checks of a collection of SQL Server instances, and there are several examples around, but few acknowledge the fact that individual DBAs have their own priorities for tests, and need something easily changed to suit circumstances. Omid's health check allows tests to be SQL or PowerShell and requires only adding, altering or deleting files in directories. ( 16 Nov 2015 ) by Omid Afzalalghom

Visual Basic.NET 2005Discover some of the new features in Visual Basic.NET 2005 such as partial classes, generics, operator overloading and using block ( 06 May 2005 ) by Amirthalingam Prasanna

The Parodist: A SQL Server ApplicationEvery year, we ask Phil Factor to celebrate the holiday season with an article on SQL Server Programming that is fun. This year, he responded with 'The Parodist'. This is a SQL Server application, the like of which I doubt if you've seen before. ( 20 Dec 2010 ) by Phil Factor

Dependencies and References in SQL ServerIt is important for developers and DBAs to be able to determine the interdependencies of any database object. Perhaps you need to work out what process is accessing that view you want to alter, or maybe find out whether that table-type you wish to change is being used. What are all these dependencies? How do you work out which are relevant? Phil Factor explains. ( 24 Sep 2015 ) by Phil Factor

No More Disconnected SQL Development in Visual StudioSome types of development work are much more effectively accomplished if the developer can work directly on SQL Server Databases from Visual Studio, alongside the application code, rather than constantly switching applications to SSMS. Until SQL Connect was created, there was no easy way to do this. Nate Suver had just this requirement, and explains why SQL Connect is so important to him. ( 12 Apr 2012 ) by Richard Morris

Using Powershell to Generate Table-Creation ScriptsFor all of us who learn best by trying out examples, Bob Sheldon produces a PowerShell script file for SQL Server that can be used in either SQL Server 2005 or 2008, has error handling and prompts for user-input, is easily extended and, does something useful. He then explains how to run it and what each line does. Magic ( 04 Oct 2008 ) by Robert Sheldon

Row Sorting in SQL It should be easy to model a game of poker in SQL. The problem is, however, that you need to model a permutation from a set of elements. Joe Celko argues that using a group of columns to do this isn't necessarily a violation of 1NF, since a permutation is atomic. Then comes the second problem: how would you sort such a column-base permutation in order? Sorting columns in SQL? ( 30 Nov 2012 ) by Joe Celko

Developer-Tester RelationshipsIn a development team, there are times when the relationships between developers and testers can become strained. How can you turn this potential conflict into something more positive? Is it part of the skill of team-working to find ways of avoiding friction, or should one blame a system that relies on good social skills to work well? ( 06 May 2015 ) by Devyani Borade

Mission Critical: SQL Server 2008 General MaintenanceThere is nothing that beats a simple checklist for ensuring that things don't get forgotten in the Database Maintenance process. Once again, Buck Woody imagines how the US military would have tackled DBA checklists for 'mission-critical' databases. ( 15 Feb 2010 ) by Buck Woody

Reflectoron in Prism: a WPF MVVM tutorialWhen Eli was writing a WPF MVVM tutorial, he decided to use .NET Reflector as his sample, and created a WPF UI for .NET Reflector using its public interface, mimicking the original. A WPF/Prism version of Reflector? Eli explains what he did, and supplies the complete project and source to Reflectoron ( 14 Jul 2010 ) by Eli Arbel

Single Item Recovery One of the more obscure parts of Exchange Server is the Dumpster. This allows the recovery of one or more deleted emails, in much the same way as the recycle bin in Windows, even if the user has purged them. Although it is seen as an alternative to backup, or as a means to document retention, it really provides a separate function, undoing an accidental deletion. Elie explains how to configure deleted retention items and how to recover a purged item. ( 22 Jan 2010 ) by Elie Bou Issa

Temporal Datatypes in SQL ServerIn the first of a series of articles on the tricks of tackling temporal data in SQL, Joe Celko discusses SQL's temporal data types and agonizes over the fact that, although there are ANSI/ISO Standards for temporal operations in SQL, every vendor has something different. He explains the mysteries of such things as time-zones, lawful time, UTC, CUT, GMT, CE, DST, and EST. ( 16 Dec 2008 ) by Joe Celko

An Incremental Database Development and Deployment FrameworkOften, an existing database application must evolve quickly by incremental steps. Alex describes a tried and tested system to provide an automated approach to deploying both new and existing database systems, whilst dealing with common security and configuration issues. ( 12 Feb 2013 ) by Alexander Karmanov

SQL Server Security Workbench Part 1Robyn Page and Phil Factor present practical T-SQL techniques for controlling access to sensitive information within the database, and preventing malicious SQL injection attacks. ( 06 Mar 2007 ) by Robyn Page and Phil Factor

SQL Server Grouping WorkbenchA gentle lesson about GROUP BY on the Nursery Slopes develops gradually into a wild ride off-piste amongst the pine-trees. ( 26 Apr 2007 ) by Robyn Page and Phil Factor

Risking your ReputationIT companies sometimes don't survive an incident that damages their reputation. Often, when happenstance brings a commercial disaster, businesses make things worse by their instinctive reaction to clam up. We sent the square-jawed Richard Morris off into the rain in his trench coat to find out more. As 'reputation-management" is his daytime job, he was soon back in the dry with some tips on what to do when the night-soil hits the ventilation system.. ( 27 May 2008 ) by Richard Morris

The Benefits of Regular DeploymentWhen developing software, it makes sense to 'fail early, fail often'; to become aware of mistakes quickly and to learn from them. This means being able to deliver software as early in development as possible. This makes it easier to gather opinions and promote discussions with the people who would want to use the application; and then respond to the feedback. ( 13 Dec 2012 ) by James Moore

Using Silverlight to Build a Guitar Chord CalculatorSilverlight is so versatile that it is easy to move beyond conventional browser-based applications and even write games. John Papa celebrates the launch of his new book by bringing you a simple Silverlight guitar Chord Calculator to demonstrate features of Silverlight such as Data binding, Media elements, Resources, Transforms, Visual states and Dynamically generated controls. He has placed the complete source on Codeplex, so that you can enhance it if you feel the urge. ( 12 Mar 2009 ) by John Papa

Lipoaspiration in your SQL Server DatabaseOnce, when disk space was at a premium, DBAs fought hard to keep the size of their database down. Now there seems less motivation to 'fight the flab' of a database. Fabiano Amorim was watching television recently when the subject matter, cosmetic surgery, gave him the theme and inspiration for this guide to keeping your database fit and trim. ( 03 Mar 2011 ) by Fabiano Amorim

Adding a Graphical Front End to your PowerShell ScriptsEven if you know PowerShell inside and out, there will be those times where you won't be the end user for your script, even within your organisation. You need a straightforward GUI. Thankfully, Jonathan Medd has provided workthoughs for three tools - PowerGUI, PrimalForms, and SQL Scripts Manager - to help apply some GUI goodness to your scripts. ( 10 Oct 2011 ) by Jonathan Medd

Precision Indexing: Basics of Selective XML Indexes in SQL Server 2012Seldom has a SQL Server Service pack had such an effect on database development as when SQL Server 2012 SP1 introduced selective XML indexes. These transform the practicality of querying large amounts of XML data. Seth Delconte demonstrates how and why this feature makes all the difference. ( 25 Jan 2013 ) by Seth Delconte

Jodie Beay and the Production Database DriftYou make an example database, like NorthWind or WidgetDev in order to test out your deployment system and the next thing you know you're worrying about constraints, backup and security. Then you add an index to the production system and feel a pang of guilt. What would the Devs say? Somehow databases take on lives of their own, populated by the lost souls of users, Developers and DBAs. Has the Redgate DLM Team's practice Forex database somehow come alive? ( 17 Nov 2015 ) by Chris Heppell

Avoiding Database Deployment Disasters - 7 TipsHere are seven practical tips for any 'accidental DBA' or developer, faced with having to deploy an upgrade to a database live to production, in a development environment that is in the early stages of getting the database code "house in order", and without any existing 'continuous delivery' process. ( 02 Jul 2014 ) by Melanie Townsend

Going Beyond the Relational Model with DataSQL is a powerful tool for querying data, and for aggregating it. However, you can't easily use it to draw inferences, to make predictions, or to tease out subtle correlations. To provide ever more sophisticated inferences to businesses, the race is on to combine the power of the relational model with advanced statistical packages. Both IBM and PostGres are ready with solutions. And SQL Server? Hmm... ( 27 Sep 2011 ) by Robert Young

The Art of the One-PagerIn which Phil finds himself in a place of work where, despite his penchant for insulting or upsetting senior managers, he survives purely due to his ability to distill complex IT documents into one-page strategy papers ( 02 Apr 2013 ) by Phil Factor

PowerShell SMO: Just Writing Things OnceSometimes, you can tire of writing the same PowerShell code once again. After this happened to Phil whilst keying in an SMO pipeline to access databases, it occurred to him that he should have only one pipeline to access databases in PowerShell, one reusable pipeline ( 19 Jul 2012 ) by Phil Factor

The Winter of our Missing Disc ContentThe UK government, ten years ago, launched several reforms of the public sector, pinning their faith in radical IT initiatives to create a powerful, efficient, welfare state. Only now is the full extent of the failure of this dream becoming apparent. Our square-jawed reporter investigates remorselessly, 'in the interests of greater transparency' ( 08 Jan 2008 ) by Richard Morris

Eric Sink: Geek of the WeekEric Sink became well-known for his work with the Spyglass browser, which was acquired by Microsoft and morphed into Internet Explorer. Since then, he has succeeded at the difficult double-act of combining programming and the software business. He is living proof that it is possible to master both skills. ( 21 Apr 2011 ) by Richard Morris

Building Active Directory Wrappers in .NETThe ability to authenticate .NET application users against Active Directory is a common requirement. Here, Jeff Hewitt demonstrates how to build wrapper classes in Visual Basic that can convert AD data types into ones that can be used in a .NET application. ( 09 Feb 2007 ) by Jeff Hewitt

Microsoft's Log Parser Utility: Swell ETLFor loading text, CSV or XML files into SQL Server, the Log Parser utility, with its amazing SQL engine, is likely to be the obvious choice. Although initially developed purely for converting IIS logs, the Log Parser can turn its hand to a range of formats including even event logs or the Windows registry. ( 12 Nov 2013 ) by Robert Sheldon

VALUES() and Long Parameter ListsTo make progress as a relational Database programmer, you have to think in terms of sets, rather than lists, arrays or sequential data. Until that point, you'll feel the need to pass lists, arrays and the like to functions and procedures. Joe suggests some unusual ways around the difficulty and broods on the power of the VALUES constructor. ( 22 Jul 2010 ) by Joe Celko

Group Policy and WMI, A Wonderful CombinationIf you're faced with having to deploy software to those PCs that are, say, from a particular manufacturer, are laptops with Windows 7, or almost any other criteria, you can use Group Policy if you use the option to filter via a WMI Query. Joseph Moody explains how. ( 25 Jul 2013 ) by Joseph Moody

Policy-based Management and Central Management ServersWhilst it may be more exciting as a DBA to rush around fixing broken databases, it is far better to forestall problems by making sure that your servers conform with best-practices. It is even better if you can also manage your servers centrally, and monitor that they are all adhering to company policies. ( 30 Sep 2010 ) by Rod Colledge

A SysAdmin's Guide to Change ManagementIn the first in a series of monthly articles, 'Confessions of a Sys Admin', Matt describes the issues involved in Change Management, and gives a simple guide. ( 06 Jan 2009 ) by Matt Simmons

Peter Norvig: Geek of the Week It's likely that you are already using the results of Peter Norvig's work every day, if you search the internet with Google. One of the smartest moves that Google ever made was to hire the man who not only was a leading expert in Artificial Intelligence, but was an expert application developer. Now he leads a team of over a hundred researchers to discover better ways of handling issues such as the machine-understanding and machine-translation of language in the quest for semantic search. ( 03 Feb 2010 ) by Richard Morris

PowerPoint Presentation BurnoutPhil's dread of Powerpoint sales presentations is already known to his readers, but we've never before heard the story of how an intern in his team gave them the necessary insights to find a cure for their unfortunate tendency to doze off, and convince them that they were charmless geeks. ( 16 Apr 2013 ) by Phil Factor

SQL Programmer's workshopPhil Factor records, as closely as possible, the twists and turns of creating a SQL Server T-SQL stored procedure, describing the methods that work for him. ( 05 Aug 2011 ) by Phil Factor

SQL Server Execution Plans, Second Edition, by Grant FritcheyEvery Database Administrator, developer, report writer, and anyone else who writes T-SQL to access SQL Server data, must understand how to read and interpret execution plans. My book leads you right from the basics of capturing plans, through how to interrupt them in their various forms, graphical or XML, and then how to use the information you find there to diagnose the most common causes of poor query performance, and so optimize your SQL queries, and improve your indexing strategy. ( 16 Oct 2012 ) by Grant Fritchey

Ken Blanchard meets the One Minute ReporterWith economic doom and gloom all around him, Richard Morris decides to seek advice before starting a business. Who better, we suggest, than Ken Blanchard, the relentlessly optimistic purveyor of uplifting materials to the wannabe entrepreneurs, and author of the best-selling 'One Minute Manager'. We sent him of into the rain in his trilby to interview Ken and infuse himself with some get-up-and-go ( 28 May 2009 ) by Richard Morris

The Marmite or Miracle Whip of Computer LanguagesWhat is it about C++ that makes it one of the most important computer languages for systems work, yet so reviled by so many? Like Marmite, or Miracle Whip, nobody seems to take a neutral opinion of it. We asked the languages' creator, the great Bjarne Stroustrup. ( 03 Jan 2012 ) by Richard Morris

SSIS Package ComponentizationIn this article, David Leibowitz describes methods for scalable SQL Server 2005 Integration Services package creation. If you're no stranger to OOP, then the methods described will fit nicely in your enterprise ETL (Extract, Transform, Load) toolkit. ( 29 Apr 2008 ) by David Leibowitz

Fluent Code in C#In LINQ, the 'fluent' method syntax flows logically and intuitively, and allows them to be combined simply, because each method returns the appropriate type of object for the next. Can this fluent technique be extended as an API style to make it easier to develop C# team-based applications for enterprises? ( 11 Jul 2013 ) by Tom Fischer

Rapid Prototyping, the MVC Working ModelIf you've ever had to build a working model from scratch, or produce a quick prototype for something, you know it's trickier than it sounds. Thankfully, Ed Charbeneau shows us the tools he uses to make it both quick and easy to produce fantastic (and fantastic-looking) working prototypes in ASP.NET MVC. ( 16 Aug 2012 ) by Edward Charbeneau

AlwaysOn Availability Groups - What Not to do when Adding DatabasesSQL Server's AlwaysOn Availability Groups provide a very resilient way of providing High-availability for SQL Server databases, but there are inevitable limits to their capacity. How many databases can you reasonably add? It depends on the resources available and the workload, but you can come up with a reasonable estimate as Warwick Rudd explains ( 10 Mar 2014 ) by Warwick Rudd

Setting up your own free Virtualized test environmentIf you need to test new software, configurations, or operating systems, a virtual machine saves time, risk and hardware. You can set up a virtual Test environment for free with some products such as VMware Server 2. All you need is a simple set of instructions about how to set it up; and here it is, thanks to Sean Duffy. ( 26 Aug 2010 ) by Sean Duffy

SQL Server tablediff utilityRob Sheldon continues on his quest to explain all those command-line tools such as SQLCMD, Logparser, SQLIO and tablediff that are part of SQL Server. TableDiff can be used for comparing tables, as when you run automated tests that check a result against a table of expected values. The best way to learn TableDiff is to see it in action and Rob talks you through several examples. ( 02 Dec 2013 ) by Robert Sheldon

Erland Sommarskog: DBA of the Day Erland is best known for his famous SQL Server site It is plain, it has eight articles in it, it is short on jokes: However, it is hugely popular and one of the great 'essential' SQL Server sites. We sent Richard Morris to find out more about Erland, and he discovered a diligent and energetic teacher and mentor in the SQL Server Community. ( 26 May 2010 ) by Richard Morris

SQL Server Execution PlansWhy is my query running slow? Why isn't my index getting used? In order to answer these questions, you have to ask the same return question in each case: have you looked at the execution plan? Grant Fritchey provides the only dedicated and detailed guide to this essential topic... ( 30 Jun 2008 ) by Grant Fritchey

The DBA Detective: Disturbing DevelopmentsOriginally one of the articles in the first DBA Team series, Grant wonders what Raymond Chandler or Dashiell Hammett would have done if asked to write technical articles for Simple-Talk. He came up with the DBA detective, hard-boiled Joe Dee Beay ( 31 Mar 2014 ) by Grant Fritchey

Creative Solutions by Using a Number TableOne irritating thing for the occasional SQL Server Developer is that the experts assume that you are familiar with the use of number tables when they write about techniques. We therefore asked Greg Larsen to spell it out in a way that would help the beginner and intrigue those already familar with the technique. ( 03 Aug 2010 ) by Greg Larsen

SQL Scripts Manager: An AppreciationSQL Scripts Manager is Simple-Talk's present to its readers. William Brewer was an enthusiastic bystander when Red Gate involved the 'Friends of Red-Gate' in helping them design and contribute towards SQL Scripts Manager over the past few months. Here he gives his impressions of the new tool and explains why it is useful to him. ( 22 Dec 2010 ) by William Brewer

Why editorial freedom is worth fighting forOne of the biggest challenges in running any publication is balancing editorial freedom .the ability to report on all events that affect the community without fear or favour .against the need to meet your "bottom line". Currently, the advertorial, pop-up and page-peeler are ubiquitous, but can other models work? And regardless of the model used, what is the price of losing editorial freedom? ( 05 Jan 2007 ) by Richard Morris

Quick Tip: Performing an FTP rename in a SSIS script taskNigel Rivett provides a technique for moving files from one FTP directory to another, and for performing this processing from SQL Server Integration Services. ( 17 Jan 2007 ) by Nigel Rivett

Simple COM server registrationLooking at COM activation context on Windows XP and Windows Server 2003. Working with manifest files and XML. Exposing .NET COM class libraries using interop. ( 09 Mar 2006 ) by Phil Wilson

How to Get Information About Your BackupsWhen you need to restore but aren't 100% sure about the contents of your backup files, what do you do? Head to the headers. Grant Fritchey explains how to find the useful bits in these huge stores of information and make sure you restore the right files. ( 23 Mar 2012 ) by Grant Fritchey

.Net Debugging? Don't give me none of your VSVisual Studio is fine for most debugging purposes. Just occasionally, it isn't practicable, or there are other quicker ways of doing it with a user-mode debugger. Edward argues that debugging in MSIL or assembly language is a strangely liberating experience and can be a lightweight route to discovering the cause of elusive bugs. He starts off with a simple introduction to SOS debugging. ( 14 Oct 2009 ) by Edward Elliott

New Remoting Features in PowerShell 2.0Eager to quell misinformation, Jonathan Medd points why PowerShell 2.0 is so much more than just super-charged SSH. He describes some new commands with full remoting functionality, and then explains persistent sessions, and how they give you that much sought-after power: administration automation. ( 20 Apr 2010 ) by Jonathan Medd

ASP.NET Scalability: the Good, the Bad and the HypeScalability remains an exasperatingly vague term, even though there are well-established ways of ensuring that a web-based application reacts well to wide variations in usage. Dino cuts through the mystique to pin down what it is, what it isn't, and how to achieve it. ( 25 Jun 2014 ) by Dino Esposito

Ten Things I Wish I'd Known When I Started Using tSQLt and SQL TestThe open-source Unit Test framework tSQLt is a great way of writing unit tests in the same language as the one being tested. In retrospect, after using tSQLt for a while, what are the 'gotchas'; those things that you'd have been better off knowing about before you get started? David Green lists a few tips he wished he'd read beforehand. ( 11 Sep 2012 ) by Dave Green

How DBAs Can Adopt the Craftsman MindsetThe job of a DBA requires a fusion of skill and knowledge. To acquire this requires a craftsman mindset. Craftsmen find that the better they get at the work, the more enjoyable the work gets, and the more successful they become. Deliberate practice, Specialization and an appetite for overcoming difficulty are good habits to deliberately adopt to successfully grow those craftsmanlike skills to the point that you become "so good they can't ignore you". ( 01 Apr 2015 ) by Joshua Feierman

Guerrilla Project Management for DBAsAll DBAs need to engage in a little project management to help make sure everything runs smoothly. In this extract from the book Tribal SQL, David Tate explains his system for managing workload, coleagues, and projects, and how not to be just "the guy who says no". ( 13 Feb 2014 ) by David Tate

Beating up my Code with ANTS Performance Profiler Ty Anderson assumed that his cryptographic library was perfect until he tried it out with ANTS Performance Profiler. Within twenty minutes, eight and half of which were spent watching a video overview of ANTS Performance Profiler, he was able to make a ten percent performance improvement. Although his ego was slightly bruised by the experience , the fact that his code was even better soon restored his confidence. ( 17 Jul 2009 ) by Damon Armstrong

Using Microsoft Excel to Retrieve SSAS Tabular DataAlthough it is well-known how to create a tabular database in PowerPivot, it is less obvious that there are several useful options for retrieving SSAS tabular data into Excel. This provides an easy way of manipulating, visualizing and analyzing the data without needing to know the details of SSAS and the tabular model. ( 16 Jul 2013 ) by Robert Sheldon

Do Not Forget to Maintain Your Indexes Index Maintenance Plans are essential for the well-being of a database. However, there is more to the process than just the use of the wizard. Brad McGehee takes this one stage further in suggesting that, instead, you should create your own index maintenance tasks that you can schedule to run using the SQL Server Agent. ( 09 Jul 2009 ) by Brad McGehee

Gathering RSS Feeds using Visual Studio and RSS.NETIf you would like to learn how to build and customize your very own Windows service to retrieve posts from multiple RSS feeds, and then store those posts in a SQL Server database, let John Papa guide you through his tutorial. ( 04 May 2007 ) by John Papa

Seven SQL Server Under-Used UtilitiesThere are more than ten useful command-line applications that are either associated with, or are distributed with, SQL Server. Some, like BCP are used often, whereas others like LogDumper, almost never. However, they all have their uses and several become important as part of script-based automation of tasks. It is definitely worth knowing what is lurking in your tools\binn directory. ( 25 Feb 2014 ) by Robert Sheldon

What's New in Exchange Server 2010 SP1?The very latest and greatest incarnation of Exchange Server 2010, Service Pack 1 Beta, is now available for the public to try out. Lucky for us, Jaap's had access to the new release for quite some time, and he gives us a distilled guide to exactly what is new and improved. ( 22 Jun 2010 ) by Jaap Wesselius

Introducing SQL Server In-Memory OLTPIn-Memory OLTP, aka Hekaton, originally shipped with 2014, and although it certainly helped the performance of certain types of workload, it then had certain restrictions that impeded its widespread adoption.With SQL Server 2016,  there is more support for In-Memory OLTP and a more seamless integration with SQL Server's Database Engine. It is time to consider whether In-Memory OLTP can help those pinch-points in your data throughput, explains Artemakis Artemiou. ( 30 Sep 2015 ) by Artemakis Artemiou

What is DevOps really?Ops and Development people are busy, and focussed on their jobs. They have plenty of ideas for improving the whole software delivery process but the task of developing, maturing and communicating a different way of working isn't often in their job-description. Others are only too keen to do so, but on their own terms. So, let's get clarity. What is the central DevOps idea really? ( 08 May 2014 ) by Mike Mooney

Setting up a Data Science LaboratoryThere is no better way of understanding new data processing, retrieval, analysis or visualising techniques than actually trying things out. In order to do this, it is best to use a server that acts as data science lab, with all the basic tools and sample data in place. Buck Woody discusses his system, and the configuration he chose. ( 03 Dec 2012 ) by Buck Woody

Are Unit Tests Overused?Unit Testing has come to dominate the many types of test that are used in developing applications. This has inevitably been at the expense of other types, such as integration test. Does a successful unit test regime ensure quality, or should we see unit testing as just one of a range of tests that can together give us confidence in an application? ( 19 Oct 2012 ) by Andrew Hunter

Join Reordering and Bushy PlansNormally, the query Optimiser won't consider 'bushy' plans, where both operands to a join operator could be intermediate results from other joins. This means that it won't produce good query plans for some types of query. Hints, by themselves won't do it. More powerful magic is required. ( 05 Mar 2013 ) by Fabiano Amorim

Exploring In-memory OLTP Engine (Hekaton) in SQL Server 2014 CTP1The continuing drop in the price of memory has made fast in-memory OLTP increasingly viable. SQL Server 2014 allows you to migrate the most-used tables in an existing database to memory-optimised 'Hekaton' technology, but how you balance between disk tables and in-memory tables for optimum performance requires judgement and experiment. What is this technology, and how can you exploit it? Rob Garrison explains. ( 25 Jun 2013 ) by Rob Garrison

Free Tools for the DBA: PAL ToolThe Performance Analysis of Logs tool is a general tool for collecting and analysing log data. With the addition of a template, it becomes an effective way of analysing data from performance counters for SQL Server, in order to diagnose performance problems and capture baseline information. ( 30 Nov 2012 ) by Jonathan Kehayias

Database Maintenance Plans in SSMS: An OverviewMaintenance plans are essential. Microsoft provide two tools, the Maintenance Plan Wizard and the Maintenance Plan designer, to assist the busy DBA to get started with one, but they don't include all the likely tasks, so Custom-created T-SQL or PowerShell scripts are usually required sooner or later to provide a more comprehensive plan ( 06 Jan 2010 ) by Brad McGehee

Software Tool design: The Three RsTo understand the full extent of the requirements of your users when you are redesigning a software tool, you have to talk to them, and observe how they are currently using the package. For this sort of research, there is no established rule-book, but there certainly are pitfalls and rewards. Stephen Chambers offers his advice and tells of some experiences. ( 21 Jul 2008 ) by Stephen Chambers

Reporting on Mobile Device Activity Using Exchange 2007 ActiveSync LogsIn this new column giving practical advice on all things Sys Admin related, Ben Lye takes on the often difficult task of keeping track of mobile device activity ( 10 Oct 2008 ) by Ben Lye

UNIQUE Constraints in SQLHere is an in-depth look at an underused constraint, UNIQUE, that can increase the performance of queries and protect data integrity. ( 10 Jan 2013 ) by Joe Celko

Continuous Delivery and the DatabaseContinuous Delivery is fairly generally understood to be an effective way of tackling the problems of software delivery and deployment by making build, integration and delivery into a routine. The way that databases fit into the Continuous Delivery story has been less-well defined. Phil Factor explains why he's an enthusiast for databases being full participants, and suggests practical ways of doing so. ( 03 Apr 2014 ) by Phil Factor

Curing Data-Obesity in OLTP DatabasesOLTP databases work best when data that becomes no longer current is then transferred to a separate database for analysis and reporting. There are many ways to do this, but Feodor describes a rapid technique that takes advantage of partitions to automates the rotation of the data and moving it to the analysis server. ( 06 Feb 2015 ) by Feodor Georgiev

T-SQL Window Functions Speed PhreakeryBefore SQL Server had SQL window functions, SQL Server developers had to use all manner of tricks and algorithms to come up with ways to rapidly process large amounts of data. Do we need these techniques now that we can express a SQL task in terms of window functions? Kathi revisits a famous SQL challenge to find out ( 27 Aug 2015 ) by Kathi Kellenberger

Change Management- What It Is and Why You Need ItBill Holmberg takes a practical look at Change Management, and list the steps you need to take. To make things simpler, he also provides a sample ˙Word template you can use to follow through a complete change control cycle on a given project. Leaving nothing to doubt, he finishes with an illustration; a fictional exercise so you can see his guidelines in action. ( 02 Mar 2009 ) by Bill Holmberg

Visualizing Data with RIt isn't just the attraction of the huge range of statistical analyses afforded by R that attracts data people to R. The language has also developed a rich ecosystem of charts, plots and visualisations over the years. In his second article about R Basics, Casimir Saternos shows how to get started with the three best-established graphics systems in R. ( 24 Aug 2015 ) by Casimir Saternos

Where in the Application Should Data Validation be Done? Whereabouts in the application should the business logic of data-validation checks be made? The advantages of a layered approach to validation that includes database constraints, would seem to outweigh the disadvantages. William Sisson explains some interesting issues. ( 04 Nov 2014 ) by William Sisson

Creating Custom OAuth Middleware for MVC 5Website visitors will have come to expect to be able to use OAuth authentication, rather than require yet another ID and password. Although MVC5 provides Google, LinkedIn, Facebook or Twitter authentication, you would need to write custom authentication middleware for any other provider. Ed Charbeneau shows you how to get started. ( 04 Aug 2014 ) by Edward Charbeneau

Public Speaking 101 - Presenting for Your AudienceContinuing her campaign for better technical presentations, Dr. Masha Petrova now provides simple yet fundamental guidance to becoming a great speaker, in 3 easy steps. She even lets us in on the secret ingredient of a fantastic presentation. ( 28 May 2010 ) by Dr. Masha Petrova

Migrating from OCS 2007 R2 to Lync: Part ILync Server is more than just a name-change for OCS, it is a significant upgrade. How then do you make that migration from and existing Microsoft Office Communications Server (OCS) 2007 environment to Lync? Johan explains, from experience, all the necessary steps to the point that one can confidently say 'Gentlemen, start your engines!' ( 09 May 2011 ) by Johan Veldhuis

So You Need to Expose JSON EndpointsEven the most experienced programmers can be caught unawares by software they've used for years without trouble. Dino Esposito explains why and how the JSON method in an ASP.NET MVC controller class suddenly started to cause an exception on a production server, and how he fixed the problem. ( 15 Oct 2015 ) by Dino Esposito

Generating Data for Database TestsIt is more and more essential for developers to work on development databases that have realistic data in both type and quantity, but without using real data. It isn't exactly easy, even with third-party tools to hand. Phil Factor shows how it can be done, taking the classic PUBS database and giving it a more realistic set of data. ( 08 Mar 2012 ) by Phil Factor

Cultivating Creativity in your IT teamProfessor of Psychology, Adrian Furnham, discusses whether or not you can teach your IT team to be creative. ( 25 Jul 2006 ) by Adrian Furnham

Smart client architectureSmart client is more than a fancy moniker for Win Forms, or a marketing ploy to sell Visual Studio 2005. ( 05 Nov 2005 ) by Steve Joubert

Using Operations Manager Reports to Validate Your UptimeOperations Manager has a number of reports to help you monitor the uptime of your applications, but reporting can be difficult to learn until you understand all the different options, the different parameters possible, and the way the Operations Manager health model is structured. Firstly, you need a clear idea about the way that your organisation defines 'uptime'. then you can start your reports from any of the views in the Monitoring tab, and then add or remove objects to get the report you need. Thomas LaRock explains... ( 09 Mar 2009 ) by Thomas LaRock

Salesforce: A Very Straightforward Cloud Development is an enigma; a Platform-as-a-Service that is designed to appeal to a broad church of developers, to make it quick and easy to write simple cloud-based applications. Robert Sheldon explains, as simply as possible, why this unusual data-centric, and metadata-driven platform is attracting so much interest in the industry. ( 17 Dec 2014 ) by Robert Sheldon

Baselining with SQL Server Dynamic Management ViewsWhen you're monitoring SQL Server, it is better to capture a baseline for those aspects that you're checking, such as workload, Physical I/O or performance. Once you know what is normal, then performance tuning and resource provisioning can be done in a timely manner before any problem becomes apparent. We can prevent problems by being able to predict them. Louis shows how to get started. ( 02 Jul 2013 ) by Louis Davidson

Understanding Performance Profiling TargetsIn this sample chapter from his upcoming book, Paul Glavich explains performance metrics and walks us through the steps needed to establish meaningful performance targets. He covers many metrics such as "time to first byte" and explains why you should add some contingency into your estimated performance requirements. ( 04 Nov 2009 ) by Paul Glavich

A Primer on Managing Data BitemporallyIn systems that require, for auditing purposes, advanced logging and reproducibility of reports between runs, a straightforward update, insert, or delete may be counter-productive. In such circumstances, a bitemporal model is necessary. Adam Machanic explains how it works. ( 10 May 2007 ) by Adam Machanic

Handcuff Your IT StaffOur fearless and intrepid reporter investigates the constant struggle between IT headhunters and the IT departments that are using employment contracts to defend against their activities. ( 24 Sep 2007 ) by Richard Morris

Bitwise Operations in T-SQLHow can you, in T-SQL, get a list of columns that have changed within a trigger? How can you see what bits are set within a varbinary or integer? How would you pass a bitmap parameter to a system stored procedure? Phil Factor shows how, introduces the bitwise operations, illustrates ways of peeking at bit-level operations, and explains the concepts behind the coding of integer datatypes. ( 18 Nov 2014 ) by Phil Factor

Making HTML tables easier on the eye- CSS Structural Pseudo-classesWe asked Phil why his PowerShell tabular reports looked so nice. 'CSS structural pseudo-classes' he muttered mystically. Later on, without any further warning, he popped up with this article that explains for anyone who has missed them, how to go about doing intricate formatting of an HTML file, the contents of which you cannot alter. ( 11 Aug 2011 ) by Phil Factor

Optimizing Memory Usage in a .NET Application with ANTS Memory ProfilerMost people have encountered an OutOfMemory problem at some point or other, and these people know that tracking down the source of the problem is often a time-consuming and frustrating task. Florian Standhartinger gives us a walkthrough of how he used the ANTS Memory Profiler to help make an otherwise painful task that little bit less troublesome. ( 22 Dec 2009 ) by Florian Standhartinger

A Look at Exceptions in .NET ApplicationsMemory dumps are a wonderful way of finding out what caused an exception in a managed .NET application, particularly if it is happening in a production application. It is when tracking exceptions in applications where you can't use Visual Studio that the techniques of using cdb and sos.dll come into their own. They may nor be skills that you need to use regularly, but at some point, they will be invaluable. Edward supplies sample memory dumps and gives you a simple introduction. ( 03 Dec 2009 ) by Edward Elliott

PowerShell One-Liners: Accessing, Handling and Writing Data In the grand finale to Michael Sorens' series of PowerShell one-liners, we come to the handling of data, reading it in and writing it out, whether by files; input/output streams or a database. It shows how it can be done in a variety of formats including CSV, JSON, and XML. ( 05 Jun 2014 ) by Michael Sorens

How to Create Event Receivers for Windows SharePoint Services 3.0You'll be surprised how often that you'll use event receivers instead of Workflow in order to implement functionality in Sharepoint; And who better to get you started with a simple guide to using them than Charles Lee? ( 28 Jan 2010 ) by Charles Lee

Getting Started with Amazon AWS and Elastic BeanstalkWe wondered how easy it would be for the average developer to use one of the cloud services to put up one of the very simplest of ASP.NET MVC applicastions, NerdDinner, complete with database. We asked Bud, who turned into an intrepid explorer of the Amazon to show us the way. ( 17 Jul 2012 ) by Bud Aaron

Managing Printers with Group Policy, PowerShell, and Print ManagementJust because it is possible to do many configuration jobs 'click by bleeding click', doesn't mean that it is a good idea. It is better to step back, plan, and use the advanced resources provided for managing large network. Printer configuration is the perfect illustration of this, and Joseph demonstrates how the use of Group Policy, PowerShell, and Print Management can turn a time-consuming chore into a pleasure. ( 24 Apr 2014 ) by Joseph Moody

Optimizing Batch Process in SQL ServerSQL Server batch processes are usually run from SQL Agent in background. They can take significant time and resources, especially if they are ETL tasks. Quite often, the responsibility for creating these tasks belongs entirely to the developer. Dennes demonstrates that DBAs can advise and assist with this type of batch job by bringing their expertise to bear on the problem of reducing their impact on the working system to a minimum. ( 08 May 2015 ) by Dennes Torres

How to build a Query Template ExplorerHaving introduced his cross-platform Query Template solution, Michael now gives us the technical details on how to integrate his .NET controls into applications both simple and complex. With screenshots and code samples, this has everything you need to build your own powerful SQL editor or Query Template explorer. ( 23 Oct 2009 ) by Michael Sorens

Hosting SQL Server in Hyper-V Replica EnvironmentA Hyper-V replica will provide a rapid disaster-recovery by simply replicating to a standby site a VM running at the primary site. Is it, therefore, ideal for running SQL Server in high-availability? Well, it depends on the type of HA you require, and whether you need the features that aren't supported. Nirmal explains the details and shows how to set it up. ( 04 Feb 2014 ) by Nirmal Sharma

Hyper-V Migration TechnologiesHyper-V has become far more sophisticated since the release V3 of Windows 2012, but it means that there are now a number of alternative ways of achieving migration and High-availability. The right method depends on your particular requirements, as Nirmal explains. ( 21 Mar 2013 ) by Nirmal Sharma

Planning for DisasterThere is a certain paradox in being advised to expect the unexpected, but the DBA must plan and prepare in advance to protect their organisation's data assets in the event of an unexpected crisis, and return them to normal operating conditions. To minimise downtime in such circumstances should be the aim of every effective DBA. To plan for recovery, It pays to have the mindset of a pessimist. ( 16 Mar 2010 ) by Rod Colledge

SQL Server CRUD-Generation from System ViewsIf you are not keen on repetitive typing, you can still rapidly produce production-quality documented code by planning ahead and using Extended properties, and system views. Phil Factor explains, with some Scary SQL ( 09 Jul 2010 ) by Phil Factor

Cybercrime Cop-outIn the US, the IC3 has shown the world how to tackle the immense threat of Cybercrime. Britain's current government record makes a painful contrast. Richard Morris, our roving reporter, exposes a sad, but familiar, tale of British muddle and spin. ( 21 Jan 2008 ) by Richard Morris

Managing SQL Server using PowerSMOMost DBAs don't have time to perform routine processes manually. Everything has to be scripted, automated and scheduled. Here, Dan Sullivan describes how a combination of PowerShell and SMO ("PowerSMO") can provide a familiar but powerful command line tool for managing common SQL Server tasks. ( 31 Jan 2007 ) by Dan Sullivan

Close Those Loopholes: Stress-Test those Stored ProceduresYou can write a stored procedure that tests perfectly in your regression tests. You will hand it to the tester in the smug certainty that it is perfectly bug-free. Dream on, for without stress-testing you could easily let some of the most unpleasant bugs through. Alex continues his excellent series, by showing how to catch those subtle problems. ( 03 Feb 2008 ) by Alex Kuznetsov

Automate your Database Maintenance using SMOThe most important thing you can do as a database administrator is perform regular database maintenance. This includes regular backups, database integrity checks and optimizations. In Part 1 of a three article series, Allen White shows how to automate the backup of all of your databases, using SQL Server Management Objects (SMO) and either native backup or Red Gate's SQL Backup tool. ( 05 Apr 2007 ) by Allen White

Report Builder 3.0: Adding Matrices to Your ReportsIt is easy to create a basic matrix in Report Builder. However, it takes some practice in order to format and display the matrix exactly how you want it. There are a large number of options available to enhance the matrix and Robert provides enough information to get you the point where you can experiment easily. ( 04 Dec 2012 ) by Robert Sheldon

Upgrade from Exchange 2007 to Exchange 2010 - Part IIIJaap has now walked us most of the way through the upgrade from an Exchange 2007 environment to an Exchange 2010. In this last article in the series, he takes us the rest of the way, and completes the migration. ( 13 Jan 2011 ) by Jaap Wesselius

The DIS-Information Principle, Part IIDatabase design simply involves populating a schema with tables that model sets of entities and relationships. A table will contain Columns that model an entity's attributes and contain scalar values. What could go wrong? Plenty, unfortunately, when these simple principles are misunderstood or flouted, and Joe continues to itemise bad design practices that can cause subsequent grief for the application developers. ( 01 Sep 2010 ) by Joe Celko

Paul Randal: Geek of the WeekPaul Randal and Kimberly Tripp, together with their small team of experts at, dominate the high-end training and consultancy for SQL Server. They help to maintain this domination by virtue of their popular public speaking, and writing. We sent Richard Morris to find out a bit more about Paul, his views about SQL Server, his lifestyle, ambitions and plans. ( 10 Mar 2014 ) by Richard Morris

Brian Kernighan: Geek of the WeekWhen anyone mentions 'Kernighan and Ritchie', we all know what they are referring to: that brief book that introduced the C language to programmers, and set a high standard for all subsequent books on computer languages. Now over thirty years later it is still in print and translated into over 20 languages, being required reading for undergraduates. We sent Richard Morris to interview Professor Brian Kernighan ( 19 May 2010 ) by Richard Morris

XML and RDBMS: 10 years onAs we approach the 10-year anniversary of XML, Jim Fuller provides a personal retrospective, focussing on how XML has been and will be used with the RDBMS. ( 25 Aug 2006 ) by Jim Fuller

Increasing the Availability of Virtualised Applications and ServicesBy using a virtualized clustering computing environment with failover, you can improve server availability without using as many physical computers. A group of independent computers can work together to increase the availability of virtualised applications and services. If one of the cluster nodes fails, another node takes over to provide the service without disrupting the service. Nirmal Sharma explains the failover process under Hyper-V and how to improve the performance of a failover. ( 22 Oct 2009 ) by Nirmal Sharma

C# Async: What is it, and how does it work?The biggest new feature in C#5 is Async, and its associated Await (contextual) keyword. Anybody who is faced with creating Metro applications for Windows 8 is having to tackle the very different mindset of Async Programming. Clive explains what is happening under the covers and how one can investigate, using .NET Reflector. ( 15 May 2012 ) by Clive Tong

Managing session state in Windows Azure: What are the options?Because you can't maintain session state for ASP.NET applications in Azure using the default in-process method, you will need to opt for one of the other available methods, of which the most popular are Table storage, SQL Azure, or Windows Azure Caching. ( 16 Feb 2012 ) by Wely Lau

Testing and the Application LifecycleIn application or database development, testing is too often given secondary importance. There are advantages to the whole delivery process if testers can get involved in the initial stages of planning and design. Testers have a role throughout the development lifecycle, as Doris Robinson explains ( 07 Oct 2015 ) by Doris Robinson

PowerShell Version 2: What is new and why is it important?It was a year ago that Microsoft shipped PowerShell 2. Jonathan Medd lists the top ten reasons why PowerShell 2 should be an important tool for your work. ( 21 Sep 2010 ) by Jonathan Medd

Data Correlation Optimization InternalsHaving adroitly introduced us, in his previous article, to the Date Correlation ability of the Query Optimizer, Fabiano discusses the inner workings of this little-known feature in order to explain exactly how Date Correlation works. ( 14 Oct 2009 ) by Fabiano Amorim

Getting to know your customers better - cohort analysis and RFM segmentation in RIt often pays to use a tool like R, in conjunction with a relational database, to quickly perform a range of analyses, and graphs, in order to ensure that you're answering the right question, to explore alternative hypotheses, or to provide insight into a problem. Feodor demonstrates how to quickly, and interactively, explore the ways that customers purchase goods and services using cohort analysis. ( 12 Jun 2015 ) by Feodor Georgiev

Robin Milner: Geek of the WeekAlthough Robin Milner is best known for creating ML, which has evolved into Microsoft's new F# language, he would, had this never happened, still be renowned for developing LCF, one of the first tools for automated theorem proving, and for calculus of communicating systems (CCS), a theoretical framework for analyzing concurrent systems. Richard Morris went along to find out more. ( 14 Jan 2010 ) by Richard Morris

Performing DBCC Checks Using SQL Virtual RestoreEver restored a corrupted database from the backup, only to find that the backups are corrupted too - All the backups? Sure it can happen and it isn't nice when it does. To check that a database backup is internally consistent you have to use DBCC CheckDB. On a huge highly-loaded live system? Grant Fritchey has, as usual, a practical solution. ( 07 Apr 2011 ) by Grant Fritchey

A Tale of IdentifiersIdentifiers aren't locators, and they aren't pointers or links either. They are a logical concept in a relational database, and, unlike the more traditional methods of accessing data, don't derive from the way that data gets stored. Identifiers uniquely identify members of the set, and it should be possible to validate and verify them. Celko somehow involves watches and taxi cabs to illustrate the point. ( 09 Jun 2011 ) by Joe Celko

Exchange: Recovery Storage GroupsIt can happen at any time: You get a request, as Admin, from your company, to provide the contents of somebody's mailbox from a backup set as part of an investigation. The Recovery Storage Group is usually the easiest way to do this. It may either mean using the Exchange Management Console or the Exchange Management Shell. Jaap explains all. ( 06 Jan 2009 ) by Jaap Wesselius

Getting Started with XAMLSee for yourself the flexibility of XAML, as Jesse Liberty and Alex Horovitz show you how to create an interactive Windows application declaratively, in .NET 3.0. ( 16 Mar 2007 ) by Jesse Liberty and Alex Horovitz

Policy-Based ManagementEvery DBA knows the frustration of trying to manage tens of servers, each of which has a subtly different configuration. Policy-based management, now introduced in SQL Server 2008, could ease a lot of this pain. Brad McGehee explains.... ( 26 Aug 2008 ) by Brad McGehee

Incorporating XML into your Database ObjectsXML data can become a full participant in a SQL Server Database, and can be used in views, functions, check constraints, computed columns and defaults. Views and table-valued functions can be used to provide a tabular view of XML data that can be used in SQL Expressions. Robert Sheldon explains how. ( 04 Jan 2012 ) by Robert Sheldon

SQL Server System Views: The BasicsWhen maintaining or refactoring an unfamiliar database, you'll need a fast way to uncover all sorts of facts about the database, its tables, columns keys and indexes. SQL Server's plethora of system catalog views, INFORMATION_SCHEMA views, and dynamic management views contain all the metadata you need, but it isn't always obvious which views are best to use for which sort of information. Many of us could do with a simple explanation, and who better to provide one than Rob Sheldon? ( 27 Jan 2016 ) by Robert Sheldon

Managing Office 365As you start to use Office 365 more extensively, it becomes crucial that you understand all of the options for managing your new cloud-based infrastructure. Jaap Wesselius has done the research, and explains all. ( 03 Aug 2011 ) by Jaap Wesselius

Hiring System AdministratorsHiring someone for a technical post is a task that should never be tackled half-heartedly. Matt Simmons provides some general advice on the subject, illustrated by a recent experience of hiring an IT administrator to help share the load. It opened his eyes to the real state of the economy. ( 24 Sep 2009 ) by Matt Simmons

Simon Peyton Jones: Geek of the WeekSimon Peyton Jones is a Principal Researcher at Microsoft Research's lab in Cambridge. Although he is best known as the developer of the definitive Haskell Compiler, his influence on the development of the new generation of functional languages such as F# has been profound. He has also been in the forefront of the development of parallel programming using Software Transactional memory. We sent Richard Morris across the road to find out more. ( 13 Nov 2009 ) by Richard Morris

Data Manipulation in R: Beyond SQLAlthough SQL is an obvious choice for retrieving the data for analysis, it strays outside its comfort zone when dealing with pivots and matrix manipulations. R includes a number of packages that can do these simply. By combining the two, you can prepare your data for analysis or visualisation in R more efficiently. ( 13 Jan 2016 ) by Casimir Saternos

Using SASS and Compass in ASP.Net MVC with Web WorkbenchThe Designers of CSS never envisaged the demands that we make of styles. However, preprocessors such as SASS can provide the obvious missing features such as constants, selector inheritence and nesting. Compass can in turn use SASS to provide a simple browser-independent way of expressing complex layout. ( 19 Feb 2013 ) by Edward Charbeneau

Multi-Platform Mobile Development with PhoneGapIt seems a great idea to have your application on all the main mobile platforms as well as on the desktop. Nothing beats writing an app specially for each device, but then you've created a full-scale maintenance headache. Are technologies like PhoneGap/Cordova or Adobe Air, using a browser-based UI, the perfect compromise? If so, what frameworks do you use? ( 27 Jul 2015 ) by Arkadiusz Pachucy

Regular Rapid Releases: An Agile Tale While developing their new SQL Source Control tool, a team at Red Gate learned a lot about Agile development, as well as the benefits (and challenges) of rapid, regular Early Access releases. Stephanie Herr (project manager for SQL Source Control) and Mark Wightman (head of development at Red Gate Software) tell us more. ( 07 Jul 2011 ) by Mark and Stephanie

The DBA in Space Videos: A Film Critic WritesWe invite the distinguished film critic Hugh Bin-Haad to examine our DBA in Space videos and give his opinion as to their artistic merit. ( 21 Nov 2011 ) by Hugh Bin-Haad

Determining MS Exchange Disk PerformanceWith an Exchange Server, how do you measure performance? How, in particular do you do about measuring your disk subsystem's performance? Whereas the CPU Usage and Memory usage are both easy to measure, the measurement of disk performance is often described as a 'black art'. In fact it isn't so difficult, as Michael Smith explains ( 26 Mar 2009 ) by Michael B. Smith

Database Design Workbench - KeysRobyn Page and Phil Factor explore the innocent subject of Keys for their latest workbench. Everybody knows about keys. Oh yeah? Phil Factor ends up muting the immutable out of sheer devilry, and we learn how silly the British Secret Service were to tag James Bond with the code '007' ( 19 Sep 2008 ) by Robyn Page and Phil Factor

Is there coding life after 40?I was about 40 when a well-meaning vice president at my company pulled me aside at a party and told me that I was getting too old to code. ( 09 Mar 2005 ) by Douglas Reilly

Changing Service CredentialsOne day, you may need to change those service credentials under which your SQL Server services normally run. If you have a number of servers, then you'll really want to read about Rodney's solution. ( 05 Sep 2007 ) by Rodney Landrum

Improving Comparison Operators and Window FunctionsIt is dangerous to assume that your data is sound. SQL already has intrinsic ways to cope with missing, or unknown data in its comparison predicate operators, or Theta operators. Can SQL be more effective in the way it deals with data quality? Joe Celko describes how the SQL Standard could soon evolve to deal with data in ways that allow aggregation and windowing in cases where the data quality is less than perfect ( 01 Apr 2011 ) by Joe Celko

Automating SQL Server Database Deployments: Scripting DetailsTo wrap up the series on Database Deployment Challenges, Alexander takes a dive into the details of how he scripted a solution and comes up with several practical tips for getting the most out of any automated database deployment framework. ( 06 Jun 2013 ) by Alexander Karmanov

Glenn Berry: DBA of the DayGlenn Berry works as a Database Architect at Avalara in Bainbridge Island, Washington. He is a SQL Server MVP, and has a whole collection of Microsoft certifications, including MCITP, MCDBA, MCSE, MCSD, MCAD, and MCTS. As well as working as a DBA, he is an Adjunct Faculty member at the University of Denver, where he has been teaching since 2000. He wrote chapters in the SQL Server MVP Deep Dives books as well as 'SQL Server Hardware' for Simple-Talk. ( 23 Feb 2012 ) by Richard Morris

Large Object Heap Compaction: Should You Use it?Despite the many benefits of automatic memory management in .NET, there are still a few perils which we must avoid. One of the most common, and frustrating to deal with, is fragmentation of the large object heap. In this article Chris Morter explains what LOH fragmentation is, why it's a problem, and what you can do to avoid it. ( 02 Oct 2013 ) by Chris Morter

Take your CRUD to the next level with DDD conceptsSometimes, in a software development, the level of complexity in part of the project can get to a point where the experienced developers will rethink their strategy. Domain-Driven Design can often help, but if the necessary prerequisites aren't there, it could be that DDD-Lite can help. Konrad Lukasik gives a simple example where some DDD patterns can help to clarify complex logic. ( 30 Oct 2014 ) by Konrad Lukasik

Solving Performance Problems in an ASP.NET application with ANTS ProfilerYou have a Data-Access Layer that is generating dynamic SQL, and you haven't the time to understand the implementation of the business layer. Something that is firing unexpected volumes of queries is slowing the code down. What do you do? You can now avoid having to hunt methodically for the cause from the queries up; you can now do it rapidly from the code down. Geoffrey Braaf explains... ( 31 Mar 2009 ) by Geoffrey Braaf

Captain Biplane: Interplanetary AirmanSimple-Talk caters for the lighter side with its publication of 'Captain Biplane: Interplanetary Airman, and his first adventure: Kidnappers from Mercury. ( 01 Jun 2011 ) by Red Gate Books

Steve Furber: Geek of the WeekProfessor Stephen Byram Furber CBE, FRS, FREng was one of the designers of the BBC Micro and the ARM 32-bit RISC microprocessor. The result of his work, the ARM chip, is in most mobile phones, calculators and other low-power electronic devices in the world. At the University of Manchester, he is working on the radical SpiNNaker project which could one day change the whole nature of the personal computer. ( 28 Mar 2011 ) by Richard Morris

SQL String User Function Workbench: part 2In which Robyn and Phil continue with their popular series on TSQL String User-functions. In this final episode, they pull together the themes from their TSQL String Array Workbench and String User Function workbench, to provide a simple TSQL string-handling package. ( 28 Apr 2008 ) by Robyn Page and Phil Factor

ANTS Profiler and the Un-Rest CureAfter a while, successful applications can get set in their ways. Bart Read and Andrew Hunter decided to go for a much more radical approach when given the task of bringing ANTS Profiler up to date, and, almost accidentally, they reinvented the way we do Performance Profiling. ( 10 Nov 2008 ) by Richard Morris

Auditing DDL Changes in SQL Server databasesEven where Source Control isn't being used by developers, it is still possible to automate the process of tracking the changes being made to a database and put those into Source Control, in order to track what changed and when. You can even get an email alert when it happens. With suitable scripting, you can even do it if you don't have direct access to the live database. Grant shows how easy this is with SQL Compare. ( 12 Oct 2011 ) by Grant Fritchey

Database Deployment: The Bits - Getting Data InQuite often, the database developer or tester is faced with having to load data into a newly created database. What could be simpler? Quite a lot of things, it seems. ( 05 Nov 2012 ) by Phil Factor

Monitoring and Scheduling Exchange 2007 Database Online MaintenanceTo keep the Exchange database healthy, it is important to make sure that online maintenance and online maintenance and online defragmentation are running properly, or are at least conforming to Microsoft's recommendations. Ben shows how easy it is to automate the maintenance and monitor the defragmentation task. ( 25 Aug 2009 ) by Ben Lye

Median WorkbenchSQL Server database engine doesn't have a MEDIAN() aggregate function. This is probably because there are several types of median, such as statistical, financial or vector medians. Calculating Medians are essentially a row-positioning task, since medians are the middle value of an ordered result. Easy to do in SQL? Nope. Joe Celko explains why ( 05 Apr 2009 ) by Joe Celko

Customizing the Outlook Address BookIt is possible to change the fields in the Outlook address book to make them a better fit for your organisation. Exchange provides templates for Users, Contacts, Groups, Public Folders, and Mailbox Agents that are downloaded to Outlook. Any changes will be visible in the address book. As usual with Exchange, careful planning before you make changes pays dividends, Ben Lye explains. ( 17 Dec 2009 ) by Ben Lye

Declarative SQL: Using CHECK() & DEFAULT SQL is unusual is that data is not passively stored. Instead you use declarative SQL to specify the rules that underlie the data and its integrity. When used properly, constraints can avoid having to provide a lot of logic elsewhere. CHECK() and DEFAULT can do a lot to ensure that your data is correct ( 13 Jan 2016 ) by Joe Celko

SQL Strategies for 'Versioned' DataIf you keep your data according to its version number, but need to work only with a particular version, what is the best SQL for the job? Which one works best? Which one do you use and when? ( 17 Mar 2011 ) by Grant Fritchey

Preventing Problems in SQL ServerIt is never a good idea to let your users be the ones to tell you of database server outages. It is far better to be able to spot potential problems by being alerted for the most relevant conditions on your servers at the best threshold. This will take time and patience, but the reward will be an alerting system which allows you to deal more effectively with issues before they involve system down-time ( 15 Aug 2011 ) by Grant Fritchey

Disaster Recovery Planning for Data: The CribsheetPlanning for disaster recovery and business continuity aren't amongst the most exciting IT activities. They are, however, essential and relevant to any Database Administrator who is responsible for the safety and integrity of the companies' data, since data is a key part of business continuity. ( 07 Dec 2012 ) by William Brewer

What's New in Code Access Security in .NET Framework 4.0 - Part 2Having introduced us to the basics of the new Code Access Security Model available in .NET Framework 4.0, Matteo Slaviero explains how to use this powerful new system to implement fine-grained code security in ways where have never before been possible. ( 13 Jul 2010 ) by Matteo Slaviero

Behaviour Driven Development: Part 2 - Implementing Scenarios and Step Definitions in SpecflowIn Behaviour-driven Development, the scenarios that you work out with the participants in the development in order to specify the acceptance criteria of a feature are recorded in a language that clearly describes the way that a feature should works. The same code can then, via a utility such as SpecFlow, create the unit tests that are subsequently used to write the code, and finally the user-acceptance tests. ( 29 Jun 2015 ) by Sunil Pardasani

Functionally Similar - Comparing Underscore.js to LINQUnderscore.JS is a useful JavaScript library for anyone familiar with the LINQ syntax. It is not a direct LINQ port like Rx or linq.js, but provides a very useful "LINQ-like" experience for anyone familiar with functional programming. Is it similar enough to LINQ to make it easy to transfer your existing skills? ( 12 Aug 2013 ) by Edward Charbeneau

How to Create Features for Windows SharePoint Services 3.0To customise a SharePoint (WSS 3.0) site, you'll need to understand 'Features'. The 'Feature' framework has become the recommended method of customising a SharePoint site, because it allows the ultimate flexibility, extensibility and scalability for you customisations. Charles Lee explains. ( 14 Apr 2010 ) by Charles Lee

Collecting the Information in the Default TraceThe default trace is still the best way of getting important information to provide a security audit of SQL Server, since it records such information as logins, changes to users and roles, changes in object permissions, error events and changes to both database settings and schemas. The only trouble is that the information is volatile. Feodor shows how to squirrel the information away to provide reports, check for unauthorised changes and provide forensic evidence. ( 02 Jul 2013 ) by Feodor Georgiev

Roy Fielding: Geek of the WeekAlmost certainly, you use the results of Roy Fielding's work every day. After all, he was one of the principal authors of the HTTP specification, was active in developing HTML and the URI, defined REST, and remains one of the directors of the Apache Software Foundation, having co-founded the Apache HTTP Server that runs the bulk of the words webservers. ( 02 Aug 2010 ) by Richard Morris

Talking TechnicalDevelopers, programmers and designers tend to be deeply geeky types, immersed in the minutiae of the technology. In stark contrast, many IT managers appear to have difficulty working the remote controls on their television. This cultural gap between the foot soldier and officer classes of the IT industry can have interesting consequences. ( 26 May 2006 ) by Phil Factor

Monitor your Database Backups Using Operations ManagerThomas LaRock shows just how easy it is for a DBAs to monitor any aspect of the databases in their charge by using Operations Manager, just as long as they are prepared to spit on their hands and do some coding. As he says, 'The possibilities are endless'. ( 02 Dec 2008 ) by Thomas LaRock

The Boardgame of Office PoliticsSometimes the stress of interdepartmental friction within organisations can get on top of you, especially between the business and IT when the going gets tough. Simple-Talk's answer is a board game to put it all into perspective. Instead of getting carried away, play the board game instead and reach catharsis. ( 17 Dec 2015 ) by Simple Talk

Five Online Database Modelling ServicesTo design, or redesign, a database of any complexity, the Entity-Relationship modelling tool becomes essential. The specialized tools that have dominated the industry for a long while are expensive and are installed on a workstation. Now that browser technology has progressed so rapidly, the online database modelling tools have become viable and are starting to attract the attention of database designers. Are they good enough to use now? Robert Sheldon finds out. ( 08 Feb 2016 ) by Robert Sheldon

Creating Usable ApplicationsIf I had a penny for every person who said "usability is just common sense", I'd have a pretty reasonable stack of pennies - maybe 30 or so. Clearly I'm not going to be able to retire on this, but at least it demonstrates that many people have misconceptions about how usable interfaces are designed. ( 21 Jun 2006 ) by Dominick Reed

JSON and other data serialization languagesThe easiest way to speed up an Ajax application is to take out the 'X' and use JSON rather than XML. Of course, it isn't that simple, as William Brewer explains, but JSON, and YAML, are fascinating solutions to the old problem of transferring complex data between modules, services and applications, nonetheless. ( 18 Jul 2008 ) by William Brewer

Choosing between CLR and T-SQL stored procedures: a simple benchmarkIn this short article, Greg Larsen performance benchmarks alternative CLR-based and T-SQL stored procedure solutions for retrieving operating system file information. He also assesses other factors to be considered when choosing the correct implementation for your system, such as ease of development and maintenance. ( 24 Apr 2007 ) by Greg Larsen

When the wheels come offIt is somewhat comforting to know that even the great and the good in industry make mistakes. The IT industry is amongst the leaders. Our investigative reporter is on the trail... ( 21 Aug 2007 ) by Richard Morris

The Developer's ProgressWith apologies to the famous print of 'The Drunkards Progress' of 1846, we track the plight of the application developer to serve as a warning. ( 07 Dec 2011 ) by Red Gate Books

SQL Server HardwareSQL Server Hardware will provide the fundamental knowledge and resources you need to make intelligent decisions about choice, and optimal installation and configuration, of SQL Server hardware, operating system and the SQL Server RDBMS. ( 08 Dec 2010 ) by Glenn Berry

PowerShell Day-to-Day Admin Tasks: Monitoring PerformanceBy reading performance counters from services such as SQL Server or Exchange, you can get a wealth of performance information. By automating the process of gathering and storing appropriate counters, you can routinely check a range of devices quickly using visual tools such as PerfMon. By then creating your own counters, you can add counter-based metrics to anything that can be measured programmatically, such as services, applications, processes such as ETL, or deployments. ( 01 Jul 2015 ) by Nicolas Prigent

Behaviour Driven Development Overview Part 1 - Ubiquitous LanguageBehaviour Driven Development is an Agile methodology that aims to allow software development and management teams to use shared tools and processes to communicate and collaborate, It describes the behaviour of the application in a language that is understood by business analysts, testers, developers in order to minimize misunderstandings and make the development process more visible. This structured description or 'Ubiquitous Language' then serves to define much of the testing. ( 02 Jun 2015 ) by Sunil Pardasani

A SQL-Based Universal Currency FormatterSQL Server isn't usually the best place to format dates or currency as strings. It can be a complex task to conform correctly with national and cultural conventions. Just occasionally, though, you need to do it. This is easy in SQL Server 2012, but if you aren't using that, what do you do? ( 07 Feb 2013 ) by Dwain Camps

Technical Plagiarism: the Scourge of Pakistan's Educational and Creative IndustriesAfter suffering the wholesale plagiarism of articles from Simple-Talk by a Pakistan-based website (now 'suspended'), we asked our Pakistan Correspondent, Alamzeb Kahn, to find out more about the extent of the problem in IT, and the increasing government involvement in international action against the global problem of plagiarism. ( 13 Jun 2012 ) by Alamzeb Khan

Eating SQL Server Installations for BreakfastHere you will find wholesome SQL Server installations on the menu, complete with Express, Continental and Deluxe breakfast choices, depending on your application's appetite. This is the article where your new SQL Server installation is completely yours, having not as yet been turned over to the general populace of developers or users. Enjoy it while you can: From the SQL Server Tacklebox ( 24 Nov 2009 ) by Rodney Landrum

SQL Server Execution Plans - eBook DownloadWhy is my query running slow? Why isn't my index getting used? In order to answer these questions, you have to ask the same return question in each case: have you looked at the execution plan? Grant Fritchey provides the only dedicated and detailed guide to this essential topic. Download the eBook. ( 07 Oct 2009 ) by Grant Fritchey

Finding Stuff in SQL Server Database DDLYou'd have thought that nothing would be easier than using SQL Server Management Studio (SSMS) for searching through the DDL for both the names and definitions of the structural metadata of your databases, for the occurrence of a particular string of letters. Not so easy, it turns out, though Phil Factor is able to come up with various methods for various purposes. ( 04 Feb 2010 ) by Phil Factor

A SysAdmin's Guide to UsersWhat level of trust do you afford users by default? What level of support do you offer users who have low technical skills? Are you creating a system which is more difficult to use with little or no payback? Are you adopting administrative policies as a punitive measure? do users believe that you are deriding them for their ignorance? Matt provides some timely advice. ( 26 Feb 2009 ) by Matt Simmons

Unique Experiences!You'd have thought that a unique constraint was an easy concept - Not a bit of it; it can cause a lot of subtle problems in database designs. Joe Celko goes over the ground of unique keys, primary Keys, foreign keys and constraints. ( 18 Nov 2008 ) by Joe Celko

Message Hygiene in Exchange Server 2007Around four out of every five email messages are spam. Now that the nuisance threatens to engulf what has become the normal route of business communications worldwide, all the vendors of Mail Servers are taking more active steps to confront the problem. William Lefkovics explains how Microsoft Exchange 2007 is meeting the challenge of the rising tide of spam ( 03 Jul 2008 ) by William Lefkovics

Pop Rivett's SQL Server FAQ No.4: Pop does Log ShippingPop Rivett demostrates the fine art of log shipping in SQL Server. ( 30 Oct 2006 ) by Pop Rivett

NET Performance CribsheetRobyn and Phil tackle the topic of how to make .NET applications perform well. As usual, they try to take a terse, practical approach to the mysteries of JIT, CLR and GC. After giving many performance tips, they come to the conclusion that rules and tips are less useful than rolling up your sleeves and measuring or profiling everything possible, to see what's really happening with your application. ( 11 May 2008 ) by Robyn Page and Phil Factor

Breaking Spam'SPAM, SPAM, SPAM, SPAM...lovely SPAM, wonderful SPAM'. Spam, like the Viking call in Monty Python's famous sketch, is persistent and annoying. Jesse Liberty offers his opinion on how we can combat this issue now and in the future. ( 20 Dec 2006 ) by Jesse Liberty

Making the Case for a SQL Server Platform RefreshWith the release of Windows Server 2012, SQL Server 2012, and the new generation of Sandy Bridge Xeon processors, your organization is likely to get many tangible benefits from upgrading your current database infrastructure with a complete platform refresh. ( 04 Dec 2012 ) by Glenn Berry

Learn Where You AreIn order to make progress in your career in IT, you need to actively plan your professional development rather then allow others around you to control it. For anyone in IT, the task of learning new skills and technologies is part of your work: and you can do it right where you are, in your current job. ( 03 Aug 2012 ) by Buck Woody

A first look at SQL Server 2012 Availability Group Wait StatisticsIf you are trouble-shooting an AlwaysOn Availability Group topology, a study of the wait statistics will give a pointer to many of the causes of problems. Although several wait types are documented, there is nothing like practical experiment to familiarize yourself with new wait stats, and Joe Sack demonstrates a way of testing the sort of waits generated by an availability group under various circumstances. ( 21 May 2012 ) by Joe Sack

SQL Server Transaction Log Management by Tony Davis and Gail ShawWhen things go wrong, a DBA's reputation depends on an understanding of the transaction log, both what it does, and how it works. An effective response to a crisis requires rapid decisions based on understanding its role in ensuring data integrity. This book shows you how to control your transaction log, so that it doesn't control you. ( 10 Jun 2013 ) by Tony Davis and Gail Shaw

Getting HTML Data: WorkbenchRobyn and Phil start their investigation into XHTML by showing how to use TSQL to parse it to extract data, and demonstrate how to turn an XHTML table into a SQL Server Table! ( 27 Mar 2008 ) by Robyn Page and Phil Factor

Back to Basics: Wiring up a Web ApplicationIn the third of a series on Web Application design, Nick turns his attention to the Model part of the Model View Presenter (MVP) pattern, and discusses what a well-behaved model might look like ( 18 Jun 2010 ) by Nick Harrison

Check your DigitsThe most persistent struggle in data processing has been to ensure clean data. There are many ways that data can be incorrect and a database must check, as best it can, that the data is correct. The CHECK constraint is ideally suited for this sort of work, and the checking routine can become quite complex when dealing with check digits in data. ( 07 Apr 2011 ) by Joe Celko

Think You Can Be a Software Tester?We all use software, and we all find it alarmingly easy to find bugs in it. Does that mean that we have a natural talent for testing software? Devyani suggests that there are some qualities that characterise software testers who are very good at their job. No matter whether you were born like that, or if you've worked upon, practised, developed and acquired them over time, they make all the difference. ( 29 Jun 2015 ) by Devyani Borade

How Forwarded Records are Read and Processed in a SQL Server HeapBefore you deliberately use a heap in SQL Server rather than a table, it is worth understanding why a heap has such different characteristics, and therefore relative benefits and disadvantages. Forward pointers and the Page Free Space page are designed with performance in mind, but only in certain circumstances. Uwe explains why, and how heaps can be used to advantage. ( 09 Sep 2015 ) by Uwe Ricken

Developing a Report Definition Customization Extension for Multi-Language ReportsWhen you need to present the same SQL Server Reporting Services (SSRS) report in eight or more different languages, or in different formats for different recipients, and the boss demands last-minute changes, it suddenly makes sense to use the Report Definition Cusomisation Extension (RDCE) .NET class library to create the final reports automatically. But how? ( 19 Apr 2013 ) by Holger Schmeling

The Zen of Code Reviews: Best PracticesIf you don't feel that you are getting helpful and comprehensive feedback from code reviews, it may well be your fault. Unless you are considerate to your reviewers in a number of ways, they might find it difficult to check your code and provide helpful advice. What ways? Michael Sorens outlines the eight golden rules that, if you follow them, might even even make your code a pleasure to review! ( 24 Aug 2015 ) by Michael Sorens

Two Steps Forward to More Secure ApplicationsAre you certain that you know enough about cross-site scripting attacks, and SQL Injection to avoid either of them happening to that site you're responsible for? Even though these exploits are easy to avoid, many developers still aren't taking the necessary precautions, so we asked Jeremy Jarrell to come up with simple guidelines. ( 09 Sep 2010 ) by Jeremy Jarrell

A Unified Approach to Multi-DataBase Query TemplatesWhile trying to get the information he needed out of various SQL, MySQL and Oracle environments, Michael finally got tired of endlessly flicking through reference manuals and having to work so hard just to formulate his queries. So he decided to build a cross-platform Query Template solution to make his life easier, and he even went as far as building a .NET control to be integrated into applications. He's been kind enough to share the control, and the theory behind it, with us. ( 30 Sep 2009 ) by Michael Sorens

TortoiseSVN and Subversion Cookbook Part 5: Instrumenting Files with Version InformationSubversion lets you embed, and automatically update, information within source-controlled files to make it easy to see who did what, and when they did so. It is not entirely straightforward to get it working, though; unless of course you read, and follow, Michael's easy guide. ( 21 Feb 2012 ) by Michael Sorens

Ten Things that should be in Every SysAdmin's Virtual BackpackA good SysAdmin needs the right tools, both virtual and physical. As a front-line consultant, Wesley David will be providing suggestions for both in the next few weeks, and here he discusses of the essential software tools that every SysAdmin should have on hand at a moment's notice. ( 20 Oct 2010 ) by Wesley David

DevOps and the DBAMichael Fal is a huge advocate of automation and many ways it can improve the lives of developers and DBAs alike, but you can't just automate all your problems away. The real challenge is breaking down barriers and having developers and DBAs functioning smoothly together. You may have heard of DevOps, and so Mike explores what the buzz might mean for database administrators. ( 08 May 2015 ) by Mike Fal

Ziggurats, Batman and the Town CrierWe asked Brian for a description of the Help System for the software he's working on and ends up quoting Blake's poetry, discussing town criers, Ziggurats, security guards and the BRAD signal. ( 19 Aug 2008 ) by Brian Harris

Cluster Continuous Replication Network DesignCluster continuous replication (CCR) is a means of providing a more resilient email system with faster recovery. It was introduced in Microsoft˙Exchange˙Server˙2007 and uses log shipping and failover. The host-name feature of Exchange 2007 Service Pack 1 and the use of multiple redundant private network interfaces can improve the effectiveness of CCR. ( 18 Jun 2009 ) by Neil Hobson

Roland Waddilove: Geek of the WeekA whole generation of British geeks owe a debt of gratitude to Roland Waddilove. He is a journalist with a rare knack of being able to explain complex technical ideas in a very simple way. Many successful developers cut their teeth many years ago on an Atari, Electron, Sinclair or Amstrad computer, poring over the technical articles of Roland Waddilove in well-thumbed magazines ( 21 Dec 2010 ) by Richard Morris

Carl Franklin and Richard Campbell: Geeks of the WeekLearning .NET doesn't have to be dull: not when there are geeks like like Carl Fraklin and Richard Campbell with the wit and ability to talk interestingly about it. If you don't listen to their podcasts on .NET topics, then maybe you're missing out on a great way of whiling away the time spent commuting between home and work. ( 13 Sep 2010 ) by Richard Morris

Ted Krueger: DBA of the DayTed Krueger is well known for his 'Less-Than Dot' website. He is a SQL Server MVP who has been working in development and database administration for over 13 years. He was one of the finalists to the Exceptional DBA of the Year Award for 2010 ( 15 Sep 2010 ) by Richard Morris

Josef Richberg: DBA of the DayAs the winner of the Exceptional DBA Awards 2010 is announced, we take a moment to recognize last year's winner Josef Richberg. We sent Richard Morris to meet Josef to find out what has happened in the past year, and if life has changed for the Exceptional DBA of 2009. ( 20 Aug 2010 ) by Richard Morris

Pop Rivett and the Case of the Rogue SPIDsA process in a complex database occasionally, and apparently randomly, manages to put table locks on vital tables. Several applications are brought to a complete halt. Armed with a T-SQL stored procedure, a violin and a keen investigative spirit, Pop Rivett tracks down the rogue SPIDs that are causing all the problems. ( 22 Mar 2007 ) by Pop Rivett

The Simple-Talk CookbookWritten by geeks, for geeks, the Simple-Talk Cookbook is a quirky culinary collection of recipes by SQL Server and .NET MVPs and experts, who would like to inspire Simple-Talk readers to ditch their microwave convenience meals for some more nourishing dishes this winter. Chef hats at the ready, because the e-cookbook download is available for free now to registered users... ( 21 Dec 2006 ) by Claire Brooking

Some Data with your Application Take-away, Sir?Prasanna is reminded of pizza in cardboard boxes when he explores the possibilities of Synchronization Services for ADO.NET. Data applications are becoming increasingly mobile, and often disconnected, and data is often wrapped up to be consumed later. Miccrosoft's Merge Replication was their first, and most heavyweight, solution, but now comes a different tack, based on SQL Server 2008 and ADO. ( 09 Dec 2008 ) by Amirthalingam Prasanna

Chrome Browser: A Novel Approach to LanguageAs a Technical Author, one of the most important tasks that you face is to make the language of applications as obvious, intuitive and accessible as possible. Google's approach to language attempts to do this AND to reflect its overall ethos - that it's homely and easy and accessible to all. Brian is pondering whether this is a general trend, and how he can apply it. ( 16 Sep 2008 ) by Brian Harris

Getting Started with UI Test AutomationUser Interface test automation is a tricky practice, and it's not always obvious what the benefits are. UI tests are an essential part of protecting your application's critical paths, and it's easy to start building them in the wrong way. Jim Holmes urges us to ask some pointed questions before we get started, and get start testing our UI the right way, for the right reasons. ( 14 Nov 2014 ) by Jim Holmes

Virtual Machine Storage Provisioning and Best PractisesIf you're using virtualization technology, then at some point you'll have run out of (or will run out of) virtual disk space, leading to the provisioning of extra storage; are you confident that you know how to do that? Sean Duffy makes sure you're doing it right, sharing his recommendations and tips in this step-by-step guide. Follow this advice, and you'll be a virtualization veteran in no time. ( 14 May 2010 ) by Sean Duffy

Preparing to Upgrade your SQL ServerIt isn't a problem to use deprecated TSQL features until it comes to the time to move the database to a server with a newer version of SQL Server, because The Upgrade Adviser tool will tell you what needs to be changed. An alternative is to flush out the use of archaic features via scripting during the development process so there are no surprises later. Jonathan Allen shows how ( 12 Jun 2013 ) by Jonathan Allen

ASP.NET: Go Async or SinkTo be scalable, web applications have always had to be asynchronous, even if the programmer did not need to be particularly aware of the fact. However ASP.NET Webforms and ASP.NET MVC now to make it simpler for developers to implement HTTP handlers asynchronously. You can also start implementing asynchronous operations for potentially lengthy tasks in ASP.NET MVC. Dino explains how. ( 12 Sep 2012 ) by Dino Esposito

Mission Critical: SQL Server 2008 Performance Tuning Task ListIn which Buck Woody imagines how the US military would have tackled DBA checklists for 'mission-critical' databases. And having imagined it, lo, it came to be. The CTL for the DBA with short-back-and-sides. ( 04 Feb 2010 ) by Buck Woody

SQL Server Unit Testing with tSQLtWhen one considers the amount of time and effort that Unit Testing consumes for the Database Developer, is surprising how few good SQL Server Test frameworks are around. tSQLt , which is open source and free to use, is one of the frameworks that provide a simple way to populate a table with test data as part of the unit test, and check the results with what should be expected. Sebastian and Dennis, who created tSQLt, explain. ( 06 Jan 2011 ) by Sebastian Meine and Dennis Lloyd

What is DNX?In the past, working in .NET for non-Windows platforms has been dependent on third-party frameworks like Mono. Now, with VS2015 and DNX Microsoft have stepped up to provide everything you need to code multi-platform apps straight out of the box. Clive Tong introduces this new .NET technology. ( 30 Jul 2015 ) by Clive Tong

Raw Materials: Administration AutomatedEvery system has its limits. ( 14 Jul 2009 ) by Larry Gonick

A Practical Guide to Microsoft Hyper-V Replica: Part IIA Hyper-V replica installation provides rapid disaster-recovery by asynchronously replicating a VM running at a primary site to a replica site. Know how to prepare for something to go wrong at the Primary Server/Site? In this article Nirmal Sharma presents the Replication options for a Replica Virtual Machine with a focus on Hyper-V Failover. ( 12 Sep 2013 ) by Nirmal Sharma

The overhead of async/await in NET 4.5The support for asynchronous operations in .NET 4.5 has made it much easier to create easily-intelligible asynchronous methods that avoid blocking. However, async/wait isn't cost-free in terms of CPU overhead. How best to judge when to use it? Chris Hurley explains. ( 01 Jul 2013 ) by Chris Hurley

Monitoring In-Memory OLTP: What's Important?In-Memory OLTP has evolved to be a great solution. However, a production system that uses it needs careful monitoring to avoid stress conditions becoming problems. As with many new features of SQL Server, it pays to plan a monitoring strategy to ensure that you are alerted as soon as possible when things go awry. ( 26 Jan 2016 ) by Murilo Miranda

Arrays in SQL that Avoid Repeated GroupsIt is certainly possible to fake an Array in SQL, but there are only a few occasions when it would be the best design. Most often, the wish for an array in SQL is a sign of a forlorn struggle against poorly-normalised data. One of the worst sins against Codd is the repeating group, as Joe explains. ( 05 Jul 2011 ) by Joe Celko

Painless Refactoring of SQL Server Database ObjectsRefactoring a database object can often cause unexpected behavior in the code that accesses that object. In this article, adapted from his excellent book, Defensive Database Programming with SQL Server, Alex Kuznetsov discusses several techniques that will harden your code, so that it will not break, or behave unpredictably, as a result such changes. ( 26 Mar 2015 ) by Alex Kuznetsov

Routine SQL DML Testing for the Unenthusiastic TesterThere are more exciting things in life than unit testing SQL Statements, checking the results, timings, and execution plans. Phil Factor demonstrates a PowerShell-based technique taking the tedium out of testing SQL DML. ( 03 Nov 2015 ) by Phil Factor

119 SQL Code SmellsOnce you've done a number of SQL code-reviews, you'll be able to identify signs in the code that indicate all might not be well. These 'code smells' are coding styles that, while not bugs, suggest design problems with the code. In this PDF, Phil's put together 119 of those code smells, some generic, and some particular to SQL Server, so you can see what to avoid and why. ( 15 Sep 2014 ) by Phil Factor

Fast and Free; SQL Scripts Manager's Script GeneratorWhen William produced his second article on the free tool 'SQL Scripts Manager', revealing that it worked just as well with PowerShell and Python scripts as it does with TSQL, he thought that would be the end of the series. Oh no; in response to feedback, comes a small add-in called 'Script Generator' that makes a big difference to the speed of developing and producing new scripts. ( 10 Jun 2011 ) by William Brewer

A Life After CrimeOur redoubtable reporter goes in search of the stories of some of the IT high-flyers who blew their tech career by getting in trouble with the law. ( 25 Nov 2007 ) by Richard Morris

Database Geek of the Week: Kirk HaseldenAuthor and SQL Server development manager, Kirk Haselden, talks about SSIS, gruelling interviews on an empty stomach, and his role at Microsoft. ( 07 Sep 2006 ) by Douglas Reilly

Azure SQL Database MaintenanceIt is increasingly likely that DBAs are now given responsibility for maintaining Azure SQL databases as well as conventional SQL Server databases. What is likely to be required by way of maintenence? What are the differences? ( 22 Mar 2013 ) by Grant Fritchey

Database Continuous IntegrationHave you ever longed for a way of making the delivery of databases more visible, predictable and measurable? Do you ever wish that they would be of better quality, quicker to change, and cost less? Grant Fritchey explains some of the secrets of doing Continuous Integration for Databases to relieve some of the pain-points of the Database Delivery process. ( 10 Feb 2016 ) by Grant Fritchey

The DBA Detective: The Case of the Missing IndexWhen problems arise in SQL Server, we're faced with a server full of suspects, including disk I/O, memory, CPU, incorrect or missing indexes, badly written T-SQL code, out of date statistics, and full disk drives. All of these have motive and opportunity to murder the performance of our databases, and it's the DBA's job to collar the culprit, quickly without relying on luck or heroics. ( 15 May 2013 ) by Grant Fritchey

Private Cloud, What Is It and Why Do You Need It?Even where organisations cannot make full use of public cloud for reasons of security or because of bandwidth limitations, many of the advantages of flexibility and rapid deployment can be made by providing a private cloud where the IT department manages the service but allows users to use the resources as their requirements change. Could Private Clouds provide a new paradigm for enterprises, irrespective of the public cloud? ( 11 Mar 2014 ) by Jaap Wesselius

The Internet of Things: A New World Order?Was the marketing hook 'The Internet of Things' conjured up before the technical definition? Are we being persuaded to spend money on fending off yet another fantasy tsunami of data? Already, we have televisions that listen to, and report, your conversations; so are we facing the Science Fiction future of gadgets that report where you go, who you visit and what medications you take? As Robert Sheldon says; "It's big, almost too big to get your arms around" ( 10 Mar 2015 ) by Robert Sheldon

The DRI Subject of ReferencesA database must be able to maintain and enforce the business rules and relationships in data in order to maintain the data model. It does this through referential constraints. They aren't complex, but are powerful, especially with the means to attach DRI actions to them. Joe Celko explains all, and pines for the ANSI CREATE ASSERTION statement ( 11 Feb 2015 ) by Joe Celko

Cleaning Up SQL Server Deployment ScriptsAlthough, generally speaking, source control is the truth, a database doesn't quite conform to the ideal because the target schema can, for valid reasons, contain other conflicting truths that can't easily be captured in source control. Dave Ballantyne explains the problems and suggests a solution. ( 02 Aug 2012 ) by Dave Ballantyne

Investigating .NET Memory Management and Garbage CollectionInvestigating a subtle memory leak can be tricky business, but things are made easier by using The .NET framework's tool SOS (Son of Strike) which is a debugger extension for debugging managed code, used in collaboration with the Windows debugger. ( 24 Mar 2010 ) by Edward Elliott

Using Three Flavors of LINQ To Populate a TreeViewLINQ is a valuable technology. LINQ to XML, LINQ to Objects and LINQ to XSD, in particular, can save valuable time for developers and produce more maintainable code. Michael describes how he used three different flavours of LINQ to map XML to a Treeview component that he used in the QueryPicker control that was the subject of a two-part article here on Simple-Talk. ( 02 Dec 2009 ) by Michael Sorens

Showplan Operator of the Week - Compute ScalarThe third part of Fabiano's mission to describe the major Showplan Operators used by SQL Server's Query Optimiser continues with the 'Compute Scalar' operator. Fabiano shows how a tweak to SQL to avoid a 'Compute Scalar' step can improve its performance. ( 28 Apr 2010 ) by Fabiano Amorim

Visual Studio 2010 and SharePoint 2010: Support at LastSharePoint developers have long been denied their own set of tools, but that's finally starting to change. Developing for SharePoint 2010 with Visual Studio 2010 is easy and intuitive, and David takes a moment to walk us through this brave new world. ( 20 Jan 2011 ) by Dave McMahon

Under the Hood of .NET Memory ManagementAs well-engineered as the .NET framework is, it's not perfect, and it doesn't always get memory management right. To write truly fantastic software, you need to understand how .NET memory management actually works. This book will take you from the very basics of memory management, all the way to how the OS handles its resources, and will help you write the best code you can. ( 19 Jun 2012 ) by Chris Farrell

Common Aspects of ASP.NET Code: in Web Forms and MVCIs it time to abandon the use of Web Forms in favour of controller methods in ASP.NET MVC? As always, the answer is 'it depends', but it is certainly a good time to make sure that your skills-set includes the use of controller methods and understanding the software design principles behind MVC. Dino Esposito explains why. ( 22 Jan 2016 ) by Dino Esposito

The Promise - and the Pitfalls - of In-Memory OLTPWhen SQL Server 2014 was released, it included Hekaton, Microsoft's much talked about memory-optimized engine that brings In-Memory OLTP into play. With memory-optimized tables 30 times faster than disk-based tables, higher performance is promised - but at what cost? Jonathan Watts looks at the features that have improved, and those that need careful consideration. ( 04 Feb 2015 ) by Jonathan Watts

Test Your SQL Server Backups with PowerShellThe best way of checking SQL Server backups is to restore them and run DBCC CHECKDB on the restored database. To do this regularly means that you need to automate the task. Allen White shows how, with PowerShell. ( 23 Aug 2013 ) by Allen White

Marc Wick: Geek of the WeekMarc Wick is the genius behind GeoNames, the free Web Service that powers a number of popular GPS applications and games. It is an open-source database of geographical information that is used by hundreds of applications from iPhone apps to political organizations. Its data is used for research and geo-visualizations in universities around the world. It underpins a large number of geography-aware applications and can be loaded into SQL Server Spatial and used with the new geospatial features of SQL Server 2008 ( 06 May 2009 ) by Richard Morris

The Science of Compliance'William Brewer takes a look at what is involved with IT 'Compliance', and discusses what SOX compliance means for the DBA and IT Application developer.' ( 02 Oct 2007 ) by William Brewer

COM Automation of Office Applications via PowerShellThere need be no shame in using Office by automating it via COM. It was designed to be used that way, and with PowerShell, the various Office applications can be used as glorious output devices for data. Phil Factor uses some practical examples to try to persuade you to take the plunge. ( 26 May 2011 ) by Phil Factor

Bin Packing Problems: The SQLThe 'bin packing' problem isn't just a fascination for computer scientists, but comes up in a whole range of real-world applications. It isn't that easy to come up with a practical, set oriented solution in SQL that gives a near-optimal result. ( 22 Mar 2012 ) by Joe Celko

Can Twitter Help your Professional Development? At PASS this year, there was a great deal of 'twittering' going on. Effectively, the attendants were able to broadcast text messages amongst themselves, by using Twitter. Suddenly, Twitter was more than a technology looking for a use. TJay Belt explains why DBAs are taking to twitter. ( 16 Dec 2008 ) by TJay Belt

Technical Debt and the Cultural GapSometimes, technical jargon is often so readily understandable by the technical community that they forget that it may be interpreted quite differently by the rest of the business. 'Technical Debt' is an example of a metaphor that is considered very differently by others. By failing to adopt a common language, you could be giving a message about your IT project that is quite different to the one you intended. ( 13 Jan 2014 ) by David Poole

An Introduction to Real-Time Communication with SignalRSignalR, from Microsoft, solves many of the problems that come with developing web applications that need a communication channel with the server that is effective on a variety of server and client configurations. Christos Matskas gives an overview of the library and its potential. ( 23 Jul 2015 ) by Christos Matskas

A look at Microsoft Lync 2010Lync manages office communications such as voice calls, video calls, instant messages, meetings, and shared whiteboard sessions all from a single interface. If this sounds like OCS, then you're right, it is the new improved version. Johan explains the background, why it is better, and how you can get started with it. ( 22 Mar 2011 ) by Johan Veldhuis

The Complete Guide to PowerShell PunctuationIt is the punctuation, the strange dollar signs, brackets and parentheses that bewilder anyone learning PowerShell. Add to that the aliases and you can bewilder everyone. The punctuation is essential, so here is the the complete PowerShell wallchart and guide to Powershell Punctuation. PowerShell need no longer be perplexing. ( 30 Sep 2015 ) by Michael Sorens

The PoSH DBA - SQLPSX: SQL Server PowerShell ExtensionsEvery DBA needs to know about SQLPSX, the PowerShell module library that is built by DBAs for DBAs, and designed to provide intuitive functions around the SMO objects. It makes the automation of database administration easier across all versions of SQL Server since SQL Server 2000. Laerte Junior, who is one of the developers on the open-source project, describes how to use it. ( 10 Dec 2013 ) by Laerte Junior

The PoSh DBA - Reading and Filtering ErrorsDBAs regularly need to keep an eye on the error logs of all their SQL Servers, and the event logs of the host servers as well. When server numbers get large, the traditional Windows GUI approach breaks down, and the PoSH DBA reaches for a PowerShell script to do the leg-work. ( 10 Jan 2014 ) by Laerte Junior

SQL Server Prefetch and Query PerformancePrefetching can make a surprising difference to SQL Server query execution times where there is a high incidence of waiting for disk i/o operations, but the benefits come at a cost. Mostly, the Query Optimizer gets it right, but occasionally there are queries that would benefit from tuning. ( 21 May 2012 ) by Fabiano Amorim

ASP.NET MVC 4: What else?Even ASP.NET MVC can be improved. Dino explains the value of templates, and makes a case for the productivity gains that could come if there was a way of making more interactive custom templates that are honed for your own particular requirements. ( 11 Jan 2013 ) by Dino Esposito

Towards the Perfect BuildAn automated build and deployment system is no longer a dream. Now that PowerShell has matured as a product, and since the emergence of new tools such as Psake and Chocolatey, the ambition of the perfect build process has come nearer to reality. ( 30 Apr 2012 ) by Matt Wrock

Make sure your .NET applications performImproving the performance of your application often boils down to rephrasing the problem you are trying to solve. James discusses common pitfalls and problems when creating applications in .NET. ( 30 Oct 2007 ) by James Moore

Getting Data Into and Out of PowerShell ObjectsYou can execute PowerShell code that creates the data of an object, but there is no cmdlet to generate the 'object notation' code from an existing PowerShell object; until now, that is. Phil Factor also produces a ConvertTo-YAML function and explains how they both work, with illustrative code ( 21 Oct 2014 ) by Phil Factor

It's 3AM and I'm on callIf you are part of a team that is required to ensure that an application stays running at all hours, then you're likely to experience that 3AM-callout feeling. Grant knows all too well what is required, and gives hard-won advice on the best way of keeping on top of the task of keeping the IT services running, no matter what time of day the problems occur. ( 27 Apr 2011 ) by Grant Fritchey

David Heinemeier Hansson: Geek of the WeekRuby on Rails, the open-source web application framework, grew out of David Heinemeier Hansson's work on Basecamp at 37Signals. It is now so popular with developers that it has been shipped with Mac OSX since 2007, and has a dedicated Windows following. Rail's focus on software engineering patters and Agile philosophy were so intriguing that we decided that DHH should be Geek of the Week. ( 07 Aug 2013 ) by Richard Morris

Pop Rivett and the FTP directoryDr Pop Rivett diagnoses URL-Aphasia in an anxious and exhausted patient and divulges a technique of synchronising a local directory with a remote FTP directory, all in TSQL! ( 19 Sep 2007 ) by Pop Rivett

Creating Excel and Word reports for .NET applications using OfficeWriterOfficeWriter is a reporting tool from Softartisans, which allows you to execute and generate business reports in familiar Excel and Word formats. Here, Ty Anderson, an independent consultant, provides an overview of the tool's capabilities and provides the code you need to start generating Excel reports from your ASP.NET applications. ( 02 Feb 2007 ) by Ty Anderson

Brad's Sure Guide to SQL Monitor 3.0This is an updated article by Brad M McGehee on how DBAs can use SQL Monitor to help monitor their SQL Server instances. It focuses on the latest edition, SQL Monitor 3.0, which includes several key new features, including custom metrics, user roles, and SQL Server 2012 support. ( 10 Jun 2011 ) by Brad McGehee

Hyper-V R2 Live Migration on Server Core - Part IIf you're working with Hyper-V, it's recommended that you use Windows Server 2008 R2 Server Core for your root partition, as its stripped-down nature makes it a more secure option than it's more full-bodied sibling. But it can also be painful to work with. Jaap Wesselius expertly guides us through the pitfalls. ( 06 Jul 2010 ) by Jaap Wesselius

The Mindset of the Enterprise DBA: Creating and Applying Standards to Our Work Although many professions, such as pilots, surgeons and IT administrators, require judgement and skill, they also require the ability to do many repeated standard procedures in a consistent and methodical manner. These procedures leave little room for creativity since they must be done right, and in the right order. For DBAs, standardization involves providing and following checklists, notes and instructions so that the results are predictable, correct and easy to maintain ( 25 Jun 2014 ) by Joshua Feierman

Defusing Database Time Bombs: Avoiding the Need to Refactor DatabasesWhere applications are evolved by gradually molding them to a growing understanding of the business domain, this presents great challenges to database development. If databases are designed too loosely, and initial errors are allowed to fester, the results become harder and harder to refactor until eventually they constitute a database time bomb. Thomas LeBlanc describes how to avoid a few basic, but very common, database time bombs. ( 27 Feb 2015 ) by Thomas LeBlanc

The Compromise Between Development Time and Performance in Data-Driven ASP.NET MVCAs developers we always want to produce efficient code, but efficient in what - development time or overall performance? In this article Jon Smith describes how to investigate and understand performance so that you can decide how to balance these two goals. The article starts with high level performance issues and drills down to detailed code tuning using examples taken from real applications. ( 03 Mar 2015 ) by Jon Smith

Test-driven Database Development - Why Bother?Test-Driven Development is a practice that can bring many benefits, including better design, and less-buggy code, but is it relevant to database development, where the process of development tends to me much more interactive, and the culture more test-oriented? Greg reviews the support for TDD for Databases, and suggests that it is worth giving it a try for the range of advantages it can bring to team-working. ( 16 Mar 2012 ) by Greg Lucas

Defining .NET Components with NamespacesA .NET software component is a compiled set of classes that provide a programmable interface that is used by consumer applications for a service. As a component is no more than a logical grouping of classes, what then is the best way to define the boundaries of a component within the .NET framework? How should the classes inter-operate? Patrick Smacchia, the lead developer of NDepend, discusses the issues and comes up with a solution. ( 14 Mar 2011 ) by Patrick Smacchia

Performance Tuning with SQL Server Dynamic Management ViewsThis is the book that will de-mystify the process of using Dynamic Management Views to collect the information you need to troubleshoot SQL Server problems. It will highlight the core techniques and "patterns" that you need to master, and will provide a core set of scripts that you can use and adapt for your own requirements. ( 14 Jun 2010 ) by Louis Davidson and Tim Ford

Showplan Operator of the Week - ConcatenationFabiano continues in his mission to describe, one week at a time, all the major Showplan Operators used by SQL Server's Query Optimiser to build the Query Plan. This week he gets the Concatenation operator . ( 22 Apr 2010 ) by Fabiano Amorim

The PoSh DBA - Getting Airborne with PowerShellMaybe the best way of helping the busy database professional to get started with practical PowerShell-based administration is to pull together all the essential community cmdlets into a toolkit for the POSH DBA, and explain how and why you'd use them. ( 31 Oct 2013 ) by Laerte Junior

Honeycombing a DatabaseIn this article, taken from Chapter 9 of his new book, Protecting SQL Server Data, John describes how to set a "honey trap" for would-be data thieves, allowing the DBA to identify the precursors of an attack and respond quickly and also to better understand the techniques being used to breach existing security measures. ( 16 Sep 2009 ) by John Magnabosco

Doing Schema Comparisons with Production ServersThere are usually strict rules against accessing production servers that generally apply even to the developers of the systems involved. John O'Shea comes up with a very elegant and versatile solution with Powershell that uses SQL Compare's ability to take, and compare, snapshots of databases to enable the developers to then compare development databases against the latest snapshots of production ones. Result? Happy developers! ( 24 Jul 2009 ) by John O'Shea

Web Testing with Selenium Sushi: A Practical Guide and ToolsetHow does one test the user-interface of a web application? Too often, the answer seems to be 'clumsily, slowly, and not very well'. The technology of automated, repeatable, testing of websites is still developing, but it exists; and Michael Sorens is here to describe an even better approach based on Selenium ( 09 Feb 2011 ) by Michael Sorens

Optimizing my client and server with ANTS Performance ProfilerIt might seem a hopeless task to reduce the time an application takes to do a task from three minutes to a second. However, after getting hold of a tool that showed him precisely what was taking the time, Jonathan Evans gained a renewed fascination with performance that led to him shaving what he terms the "banana seconds" off the execution time down to that last second. ( 10 Aug 2010 ) by Jonathan Evans

A Deep Dive into Transport Queues (Part 2)Johan Veldhuis completes his 'Deep Dive' by plunging even deeper into the mysteries of MS Exchange's Transport queues that are used to temporarily store messages which are waiting until they are passed through to the next stage, and explains how to change the way they work via configuration settings. ( 09 Feb 2010 ) by Johan Veldhuis

Elevated Trust in Silverlight 4Richard Costall brought us up to speed on getting Silverlight to run beyond the browser, and now he's giving us a crash course in how to use the new Elevated Trust mode available in Silverlight 4 to give your application even more customisations and permissions on your users' machines. ( 01 Jun 2011 ) by Richard Costall

Creating a Business Intelligence Dashboard with R and ASP.NET MVC: Part 3By introducing R libraries into an ASP.NET MVC application, it is possible to broaden its analytical and visualization power immensely. To illustrate this, Sergei shows an example of how to use the R libraries Lattice and GoogleVis to detect poorly-performing product categories, the quantity sold and the profit from them, and estimate their demand over time. ( 21 Oct 2013 ) by Sergei Dumnov

Office365 and Lync OnlineHaving gotten us up and running with the basics of Office365, Jaap Wesselius now dives deeper, walking us through the setup process for Lync Online, the Office365 component which provides cloud-based Unified Communications. He even shows us how to integrate it with our on-premises systems in quick, easy steps. ( 10 May 2011 ) by Jaap Wesselius

SQL Source Control: The Development Story, Part IIWhen creating SQL Source Control, the team had to make decisions as to which source control systems the tool would support, and needed to accomodate a range of different development practices. It also had to avoid the potential problems from the fundemental differences between database builds and application builds, David and Stephanie, from the team that wrote the tool, explain what they did, and why. ( 02 Sep 2010 ) by Andrew Clarke

The First Business Application ProgrammerDavid Caminer, who died on June 19th must surely be the First Business Application Programmer. He invented the software concepts and systems that we still use today to develop business software. He wrote the worlds first working computerized payroll system, introduced in 1954, followed by the first stock control system and a host of other business software. He went on to create the VME operating system for ICL and supervise the construction of the European Commission's computer network ( 02 Jul 2008 ) by Anna Larjomaa

Database Deployment: The Bits - Database Version DriftWhen you are about to deploy a new version of a database by updating the current version, one of the essential pre-deployment checks is to make sure that the version in production is exactly what it should be. If changes have somehow slipped in, you'll need to understand them and deal with them before you can deploy. ( 30 Nov 2012 ) by Phil Factor

Fifty Shades of Gray: The SQL and PowerShellPhil was struck by a comment by a DBA on a Simple-Talk article that complained that the PowerShell examples weren't simple enough. The traditional "hello world" was too simple (that's actually the program), but he was suddenly struck by the literary fuss over 'Fifty Shades of Gray' to decide to do a 'Fifty Shades of Gray' Wallchart in both TSQL and PowerShell. ( 30 Aug 2012 ) by Phil Factor

Using SQL BackupWilliam Brewer describes the role of SQL Backup in an enterprise SQL Server maintenance plan. ( 20 Jun 2007 ) by William Brewer

Defensive Database ProgrammingInside this book, you will find dozens of practical, defensive programming techniques that will improve the quality of your T-SQL code and increase its resilience and robustness. ( 22 Feb 2010 ) by Alex Kuznetsov

The Case of the Skewed TotalsEven when your code tests out perfectly in the standard test cell, you can experience errors in the real production setting where several processes are hitting the database at once, in unpredictable ways. You shouldn't, of course, let it get that far, because there are now ways of simulating concurrency during the test process. ( 15 Apr 2008 ) by Alex Kuznetsov

Modifying Contiguous Time Periods in a History TableAlex Kuznetsov is credited with a clever technique for creating a history table for SQL that is designed to store contiguous time periods and check that these time periods really are contiguous, using nothing but constraints. This is now increasingly useful with the DATE data type in SQL Server. The modification of data in this type of table isn't always entirely intuitive so Alex is on hand to give a brief explanation of how to do it. ( 25 Nov 2010 ) by Alex Kuznetsov

The SQL Server Sqliosim UtilityThe sqliosim utility is provided with SQL Server to test the I/O stability and 'correctness' of a server. It doesn't measure performance but simulates the read, write, checkpoint, backup, sort, and read-ahead activities of a typical SQL Server instance under load. It is generally used before installing SQL Server in order to ensure that new hardware can handle your expected loads. Bob Sheldon explains. ( 02 Jan 2014 ) by Robert Sheldon

Exploring Semantic Search Key Term RelevanceSQL Server's 'Semantic Search' feature seemed an exciting feature when first shown. Was it really true that Microsoft had come up with a system to rival the industry-leaders, one that could extract the contextual meaning of terms in text, or automatically categorise the subject matter of text? On first inspection, it seems unlikely. ( 09 Oct 2012 ) by Joe Sack

The Operating Systems of Windows AzureIt is wrong to assume that moving to a managed cloud platform means never having to be concerned with upgrades to the operating system: It is important to be aware of how these updates are applied, and how they can affect the availability and maintainability of your cloud-based applications ( 07 Aug 2013 ) by Mike Wood

So You Thought PowerShell Was Only For Exchange 2007PowerShell makes a lot of sense as a means of gathering information, and automating large sections of your administration tasks. It is not just for the latest version of Exchange, though. Powershell can be used on previous versions too. Jonathan Medd gets you started! ( 08 May 2009 ) by Jonathan Medd

Third Party High Availability and Disaster Recovery Tools for Microsoft Exchange ServerClustering Exchange 2007 to ensure high-availability has its disadvantages. It is expensive and complicated. Is it possible, as an alternative, to recover rapidly from a downed Exchange Server using one ot the third-party Exchange Server Disaster-Recovery tools? ( 30 Mar 2009 ) by Hilal Lone

Using Twitter and PowerShell to Find Technical Information and Join a CommunityUsing PowerShell and a little bit of .NET Framework and XML knowledge, it is possible to delve a little deeper into the information which is potentially available to you from Twitter. Jonathan explains about Twitter and shows how to use Powershell to access twitter automatically. ( 30 Jul 2009 ) by Jonathan Medd

ASP.NET MVC Controllers and ConventionsWhy is it that ASP.NET MVC has such strongly-enforced naming conventions? Can conventions for the default behaviour of code actually help to reduce the complexity of applications, and at what point is it wise to break conventions in application architecture. Dino investigates the issues. ( 22 Aug 2012 ) by Dino Esposito

Microsoft Office Communications Server 2007 R2 - Part IIOnce you have set up Office Communication Server 2007 R2 to provide IM within the organisation, the next stage is to provide full telephony by setting up the OCS Mediation Server and the OCS Edge Server to connect 'outside' the organization, and escpecially to a SIP trunk provider of Internet phone services. ( 19 Mar 2010 ) by Johan Veldhuis

Migrating from OCS 2007 R2 to Lync: Part 4Having migrated the rest of our users and legacy resources across and started getting ready to decommission OCS 2007 R2, this final article in the series explains how to complete the migration, reconfigure the federation traffic, and remove the OCS 2007 R2 environment. ( 06 Feb 2012 ) by Johan Veldhuis

Using R Machine Learning Script as a Power BI Desktop Data SourceYou can develop a Power BI Dashboard that uses an R machine learning script as its data source and custom visuals. Here is a simple example that shows how to connect to data sources over the Internet, cleanse, transform and enrich the data through the use analytical datasets returned by the R script, design the dashboard and finally share it. ( 27 Jan 2016 ) by Sergei Dumnov

DML Trigger Status AlertsWhen databases suddenly stop working, it can be for a number of different reasons. Human error plays a large part, of course, and the DBA needs to know what these various humans are up to. DDL triggers can help alert the DBA to unauthorized tampering with a production system, of course, but DDL triggers can't tell you everything. At some point, you will need to implement your own checks. ( 04 Jul 2008 ) by Randy Volters

The Puzzle of 'Rating Decomposition'When reading rating information, how do you you knew how many points each separate voter gave if you only know the average rating and the number of votes? Well, you might be surprised to learn that you can figure it out using SQL ( 29 Aug 2007 ) by Alex Kozak

SQL Data Generator: A Case StudySteve Sanderson wonders why he no longer fliches at the thought of the laborious task of stocking his test databases with lashings of convincing test data. Its because he's managed to get a preview copy of the Beta SQL Data Generator. ( 07 Jan 2008 ) by Steven Sanderson

Exchange 2010 Service Pack 2 - What's NewMicrosoft Exchange Service Pack2 (SP2)is now released, so Jaap Wesselius has taken a look at the latest update, highlighting some of the most interesting features of the latest build. ( 05 Dec 2011 ) by Jaap Wesselius

Survival tips for powerpointThe Database Mole Presents Survival tips for PowerPoint boredom ( 17 Jan 2006 ) by Phil Factor

SQL Cop ReviewStatic code analysis is used a lot by application programmers, but there have been surprisingly few tools for SQL development that perform a function analogous to Resharper, dotTest, or CodeRush. Wouldn't it be great to have something that can indicate where there are code-smells, lapses from best practice and so on, in your Database code? Now there is. ( 19 Jan 2012 ) by Grant Fritchey

Pop Rivett and the Uncontrolled ReleasePop Rivett offers a hard lesson in the dangers of an uncontrolled software release. ( 15 Feb 2007 ) by Pop Rivett

Cristina Cifuentes: Geek of the WeekCristina Cifuentes was already well-known for her work on decompilers before she took the development of Sun Microsystems 'Parfait' bug-checking application for C/C++ source. Unlike the classic 'Lint', Parfait is careful about avoiding false positives. What is more, it is fast, and popular with programmers. ( 30 Mar 2010 ) by Richard Morris

Metric-Driven Refactoring with .NET ReflectorSoftware Metrics are a great way of suggesting those parts of your code that may need refactoring, if they are treated purely as an aid to judgement. Nick Harrison shows how metrics can be done simply with NET Reflector and Peli's CodeMetrics Addin, and explains some details of the Smelly Metrics that are often used. ( 27 Jan 2009 ) by Nick Harrison

SmartAssembly: Eating Our Own DogfoodQuite often at Red Gate, we are some of our own most enthusiastic software-users. SmartAssembly is a case in point. In the words of the current IT clich‚, 'we eat our own dogfood'. We sent Andrew Clarke to find out more.... ( 16 Jul 2010 ) by Andrew Clarke

SQL Server Spatial IndexesSpatial Data in SQL Server has special indexing because it has to perform specialised functions. It is able, for example, to break down an indexed space into a grid hierarchy by using a technique called tessellation. This is a rules-based system that, when you compare a shape to an index, works out how many cells in the the grid hierarchy are touched by that shape , and how deep down the grid hierarchy to search. There is powerful magic in Spatial Indexes as Surenda and Roy explain. ( 25 Mar 2015 ) by Roy Ernest and Surenda Djaoen

High Availability and Disaster Recovery for Small BusinessesToo often in the past , High Availability and Disaster Recovery have been marketed as expensive choices for businesses with deep pockets. The truth is that, with careful planning, there are sensible and economic solutions for small businesses that can maintain business continuity when disaster strikes. ( 16 Dec 2014 ) by Joshua Feierman

High Performance Relational Division in SQL ServerRelational division is used in SQL to select rows that conform to a number of different criteria. It is a neglected but effective technique for a number of tasks. Although the SQL can appear daunting and complex, it can perform very well if you reduce the rows as much as possible before applying the final logic. Dwain Camps explains how, and shows the performance gains. ( 24 Mar 2014 ) by Dwain Camps

Responsive Web Design: The DownsidesAlthough Responsive Web Design (RWD) makes it possible to deliver design that is appropriate to a wide range in the dimensions of the browser-window, The designer cannot use RWD alone to adapt the UI to the actual device. It's not just the subtleties of the display device, but the way that the same volume of data must be sent to all devices; hardly suitable for an old smartphone with poor bandwidth. ( 22 Sep 2014 ) by Dino Esposito

Profiling the Memory Usage of a .NET Application with ANTS Memory Profiler 5˙We were recently taken to task by a reader who felt that the one place he'd expect to find a nice simple introduction to memory profiling with ANTS Memory ProfilerT 5 would be on Simple Talk. Memory profiling has an intimidating reputation, but fortunately Laila Lotfi came up with a simple introduction that even ordinary mortals could appreciate. ( 04 Jun 2009 ) by Laila Lotfi

The Resurrection of the ContractometerPatrick is gripped by nostalgia for the golden age of IT Contactors in London, and proposes a revival of the Contractometer, a software device for increasing morale ( 27 Nov 2007 ) by Patrick Index

Exceptional DBA Josef Richberg: fighting cancer, but still sharingJosef Richberg is an exceptional person: The Judges of the Exceptional DBA Award were quickly proved right in their decision to choose him, when he subsequently showed extraordinary resilience and determination in the face of an unexpected diagnosis of cancer. His determination to deal positively with a difficult life-event is surely a source of inspiration to all of us. ( 10 Nov 2009 ) by Bob Cramblitt

Microservices in Promise and PracticeAre microservices the cure for the ague of monolithic applications, or do they bring their own problems with them that monolithic architectures have circumvented? Are they capable of delivering applications that are easier to maintain and develop? How can they avoid the failings of service-oriented architectures? Once more, Robert Sheldon gets to the heart of the technical issues. ( 13 Apr 2015 ) by Robert Sheldon

Upgrading to Exchange Server 2007Jaap starts a series on the necessary steps to migrate an existing installation of Exchange to Exchange Server 2007. Of course it's simple! Everybody says so, but it is in the detail where you can get caught out. ( 20 Feb 2009 ) by Jaap Wesselius

Peldi Guilizzoni: Geek of the WeekPeldi is one of the most likeable of the new hybrid IT generation; part entrepreneur, part geek. Balsamiq is Peldi's creation, a tool for creating mockups of software. Balsamiq has shown what a good framework Adobe Air is, and how successful single-purpose software that completely fills a need can be. ( 24 Apr 2012 ) by Richard Morris

Pop Rivett's SQL Server FAQ No.3: Pop restoresPop describes a stored procedure for restoring the most recent full backup of a SQL Server database and then applying all transaction logs. Handy to have around in case of emergency... ( 28 Sep 2006 ) by Pop Rivett

Raw Materials: Happy HolidaysJust how firm are those deadlines? ( 22 Dec 2010 ) by Larry Gonick

We needed to find the source of the memory leak, and fastAt any time, memory leaks in a commercial application have to be fixed; but when your application is being deployed via virtualized desktops using platforms such as Microsoft Application Virtualization for Terminal Services or Citrix XenDesktop, then it becomes vital that memory is used as efficiently as possible. You can imagine what would happen if signs of a large memory leak showed up during the deployment to a key customer. Jeremy Jarrell tells the story. ( 29 Sep 2009 ) by Jeremy Jarrell

TortoiseSVN and Subversion Cookbook Part 7: Managing RevisionsHere are recipes to manage Subversion source control revisions effectively, such as managing revisions, working out the current revision, whether it is up to date, working with more than one revision at a time, and getting notifications when certain files change. ( 30 May 2012 ) by Michael Sorens

Attribute Routing in Web API v2Attribute routing solves a lot of the problems of classic ASP.NET routing, which can get ungainly when there are many route handlers, or you have several REST services. Dino shows how to enable and use attribute routing in ASP.NET MVC ( 21 Aug 2013 ) by Dino Esposito

Disaster Recovery in the Enterprise - Paying the Price to Avoid Extra CostsData Protection and Disaster Recovery (DR) are IT tasks that seldom get the same level of attention as development. until disaster strikes. Only if planning is adequate can an organisation be resilient in the face of unexpected problems. There are several steps that are needed to achieve an adequate DR process and the ability to restore business operations after a disaster. ( 03 Apr 2013 ) by Feodor Georgiev

Catching Performance Issues in DevelopmentRefactoring code won't cause performance problems, right? This was the assumption when Chris Hurley and his team went out to improve some legacy code. They decided to separate the database access from business logic and standardise on Entity Framework, but when it came time to test the code using real-world workloads, unexpected performance issues appeared. Chris recounts how they discovered, investigated, and resolved these issues using ANTS Performance Profiler. ( 16 Apr 2015 ) by Chris Hurley

Test-driven Database Development - Why tSQLt?Test-Driven Development (TDD) has a good track record in application development, but is less well-established in database development work. This is set to change with the arrival of test frameworks that use SQL, and a plug-in for SQL Server Management Studio. Greg Lucas explains why. ( 21 Aug 2012 ) by Greg Lucas

Data Science Laboratory System - Graph DatabasesGraph database are an intriguing alternative to the relational model. They apply graph theory to record the relationships between entries more naturally, and are a good fit for a range of data tasks that are difficult in SQL. Buck Woody gives an introduction to Graph databases and shows how to get Neo4J up and running to get familiar with the technology. ( 04 Dec 2013 ) by Buck Woody

Continuous Integration for SQL Server DatabasesWhen it comes to the subject of putting databases into source control, Troy Hunt is no shrinking violet. "Database source control is no longer negotiable". In this article, published originally in his Blog, Troy explains how to do Continuous Integration from a database that is in a Version Control System (VCS). ( 01 Mar 2011 ) by Troy Hunt

Everyone Wants to WinRaw Materials Comic Strip: Leila plays chess against a truly competitive computer. ( 24 Feb 2009 ) by Larry Gonick

Windows Server 2012 and Hyper-VWindows Server 2012 comes with substantial improvements to the hypervisor-based virtualization system Hyper-V. This represents Microsoft's attempt to catch up with rival virtualisation technologies and support enterprise-based 'private cloud' services, and it is looking good. ( 07 Jun 2012 ) by Jaap Wesselius

Geek of the Week: Niklaus WirthWhen looking for a suitable Geek of the Week, we wondered whether a suitable candidate might be the man who pioneered structured programming, invented modular programming and who wrote one of the first languages with features for Object-oriented programming. Yes, for a second time, Niklaus Wirth, gets the accolade of 'Geek of the Week' and shows that he is still the radical thinker with strong view about computer languages. ( 26 Jul 2012 ) by Richard Morris

Stephen Curtis Johnson: Geek of the WeekStephen Johnson, one of the team that developed UNIX, can claim to be the man who originally wrote the software tool that has been the longest continuously advertised and marketed software tool ever, since 1984. Lint for C and C++ was not his only success, though. He wrote YACC too, still used after 35 years, the Portable C Compiler, and possibly his greatest achievement, the MATLAB compiler. ( 01 Oct 2009 ) by Richard Morris

Exchange Server 2010 - The First Public Beta VersionJaap takes a first look at the new Beta 1 of Exchange Server 2010, which is now available for download, and likes what he sees, especially with Outlook Live, mailbox replication, and the 'self-healing' of the database. Much will change before the release, but there is already a lot of new features that are worth a look.. ( 15 Apr 2009 ) by Jaap Wesselius

Microsoft Azure Stream AnalyticsAzure Stream Analytics aims to extract knowledge structures from continuous ordered streams of data by real-time analysis. These streams might include computer network traffic, social network data, phone conversations, sensor readings, ATM transactions or web searches. It provides a ready-made solution to the business requirement to react very quickly to changes in data and handle large volumes of information. Robert Sheldon explains its significance. ( 02 Jun 2015 ) by Robert Sheldon

'Methodist': Make .NET Reflector come alive with IronPythonIt is great to be able to inspect the contents of an assembly with .NET Reflector, but to really understand the behaviour of code, it is nice to be able to call methods and see the results immediately within .NET Reflector. Now you can, thanks to the magic of IronPython and the DLR. Ben builds a REPL add-in for .NET Reflector and makes a great tool even more useful. ( 21 May 2009 ) by Ben Hall

Acceptance Testing with FitNesse: Naming and LayoutHaving dealt with Documentation and Infrastructure in the popular wiki-based acceptance-testing tool Fitnesse, Michael turns his attention to conventions and best-practices for naming and layout, in his continuing series of articles that represent the 'view from the trenches'. ( 15 Oct 2013 ) by Michael Sorens

Getting Better Mileage by Extending Active Directory Users and ComputersActive Directory has more uses than it is usually credited with. The 'Active Directory Users and Computers' console can even be extended with whatever PowerShell tasks you need to make routine administrative tasks easier. ( 15 Feb 2013 ) by Joseph Moody

Automating Day-to-Day PowerShell Admin Tasks - Jobs and WorkflowIf you are aiming to optimise the use of your time by doing as much as possible via scripting, you will soon want to run scripts in parallel to save time. PowerShell does not demand that you run jobs one after the other; It has the means to launch actions whenever you wish and to obtain the results when you want them. ( 28 Apr 2015 ) by Nicolas Prigent

Identifying and Solving Index Scan ProblemsWhen you're developing database applications, it pays to check for index scans in the SQL Server query plan cache. Once you've identified the queries, what next? Dennes Torres gives some preliminary guidelines on how to find out why these index scans are being chosen for these queries and how to make the queries run faster and more efficiently. ( 10 Mar 2015 ) by Dennes Torres

Windows Azure Management CertificatesAlthough Windows Azure can be used from the portal, it comes into its own once provisioning, deployments and maintenance can be automated or undertaken with specialized tools. To reach this stage, you need to understand Windows Azure Management Certificates. Mike Wood brings all this information into one article and guides you through the process. ( 14 Oct 2013 ) by Mike Wood

Optimizing Transaction Log ThroughputAs a DBA, it is vital to manage transaction log growth explicitly, rather than let SQL Server auto-growth events "manage" it for you. If you undersize the log, and then let SQL Server auto-grow it in small increments, you'll end up with a very fragmented log. Examples in the article, extracted from SQL Server Transaction Log Management by Tony Davis and Gail Shaw, demonstrate how this can have a significant impact on the performance of any SQL Server operations that need to read the log. ( 08 May 2014 ) by Tony Davis and Gail Shaw

The Waffle GeneratorSometimes, silly programs have a less obvious useful purpose. Andrew Clarke takes his classic 'Waffle Generator', and provides it in various forms, including a CSS Stylesheet tester, and as a Generator for SQL Data Generator. The Waffle Generator puts text into your test database! ( 16 Jan 2008 ) by Andrew Clarke

Brad's Sure Guide to SQL Virtual Restore In the first of a series of in-depth software reviews, Brad investigates a newcomer, SQL Virtual Restore. What does it aim to do? How does it achieve it? Why is it safe to use? What are the benefits? Brad aims to answer a range of questions fairly and squarely. ( 05 Aug 2010 ) by Brad McGehee

Close Those Loopholes: Lessons learned from Unit Testing T-SQLAlex has done some pioneering work on the testing of stored procedures over four years, and has learned a great deal in the process. In this article, he spells out the lessons learned from a wealth of experience in Unit Testing T-SQL. ( 09 Jan 2012 ) by Alex Kuznetsov

State Transition ConstraintsData Validation in a database is a lot more complex than seeing if a string parameter really is an integer. A commercial world is full of complex rules for sequences of procedures, of fixed or variable lifespans, Warranties, commercial offers and bids. All this requires considerable subtlety to prevent bad data getting in, and if it does, locating and fixing the problem. Joe Celko shows how useful a State transition graph can be, and how essential it can become with the time aspect added. ( 08 Oct 2010 ) by Joe Celko

Process Delegation WorkbenchRobyn Page and Phil Factor show a useful technique for delegating SQL Server processes to a 'Back-Office', by using 'user-defined Alerts'. ( 07 Jun 2007 ) by Robyn Page and Phil Factor

Rollback and Recovery Troubleshooting; Challenges and StrategiesWhat happens if your database deployment goes awry? Do you restore from a backup or snapshot and lose all the data changes that have happened since then? Do you prepare rollback scripts to revert the changes whilst preserving the data? Do you branch by abstraction and toggle off the changes? Have you a blue-green deployment that can be switched? Do you quickly roll forward? ( 26 Jun 2014 ) by Grant Fritchey

Asynchronous Processing in .NET Part 2Julian Skinner presents an in-depth tutorial on thread synchronization in .NET, covering the most important Synchronization objects and including a full worked example. ( 18 Aug 2006 ) by Julian Skinner

The Database From HellIn which Arthur Fuller comes to the aid of a friend who is doing his best to administer The Database From Hell, and manages to set up a reasonable test database with which to solve some of the headaches that only a 65 million row, 600 column, table can cause. ( 19 Feb 2008 ) by Arthur Fuller

Confessions of an IT Manager, 2nd EditionThe software industry is, just occasionally, more absurd than one would dare to imagine. Having spent most of his working life in its clutches, Phil Factor has pretty much "seen it all" and what's more he's prepared to tell what he knows. The second edition of Phil's "Confessions of an IT Manager" contains Phil's full repertoire of tales of institutional mayhem and software projects gone awry. ( 11 May 2009 ) by Phil Factor

SQL Refactor and the Table Splitting HeadacheSQL Refactor is well-known as a way of formatting, and beautifying, SQL Code from within SSMS, but few users seem to be aware of the Table-Splitting wizard. This wizard is explained by another, Andr s Belokosztolszki. ( 31 Aug 2007 ) by Andr s Belokosztolszki

Microsoft Office 365 Beta: First LookWith the recent announcement of the Office 365 public beta, Microsoft has unveiled the next incarnation of their cloud-based services. Lucky for us, Jaap Wesselius has the inside scoop, and gives us everything we need to start using the new platform. ( 20 Apr 2011 ) by Jaap Wesselius

Using .NET Reflector Add-ins.NET Reflector by itself is great, but it really comes into its own with the help of some add-ins. Here we provide you with an introduction to the Add-ins, explain briefly what they do, and encourage you to write your own in order to get .NET Reflector to work the way you want it to! ( 19 Nov 2008 ) by Andrew Clarke

A TDD Journey: 2- Naming Tests; Mocking Frameworks; Dependency InjectionTest-Driven Development (TDD) relies on the repetition of a very short development cycle Starting from an initially failing automated˙test that defines the functionality that is required, and then producing the minimum amount of code to pass that test, and finally˙refactoring the new code. Michael Sorens continues his introduction to TDD that is more of a journey in six parts, by implementing the first tests and introducing the topics of Test Naming, Mocking Frameworks and Dependency Injection ( 31 Jul 2014 ) by Michael Sorens

The Great PST MigrationHaving recently been on the front lines of a massive PST import operation, Sean Duffy offers advice and points out pitfalls. More than anything, he wishes he had a simple tool with which to banish PST hell, and finishes with some hard-won guidelines. ( 06 Apr 2010 ) by Sean Duffy

Migrating from OCS 2007 R2 to Lync: Part 2In the story so far, Johan has described how to check that the migration from your OCS to Lync is supported and how to determine the requirements for the new installation This was followed by a walk-through of the preparation the Active Directory and installation of the first Lync Front End Server with a Mediation Server co-located. Now Johan tackles the merging the OCS configuration, and connection to the outsode world, followed by testing, performing and then validating the migration. ( 07 Jun 2011 ) by Johan Veldhuis

ASP.NET MVC Paging with ODataIt is natural for the user to want to browse through data within an application. Until recently, the interfaces with data sources have been ill-equipped to support this. OData, at last, takes the legwork away with some well-considered support for the paging of data, without imposing any particular conventions on the application. Dino explains how to use it. ( 16 Dec 2013 ) by Dino Esposito

Hekaton in 1000 WordsThe SQL Server 2014 In-Memory OLTP engine (a.k.a. Hekaton) is a radical change for relational databases. This article, an exerpt from Kalen Delaney's book "SQL Server Internals: In-Memory OLTP", provides a brief overview of what Hekaton is and why it's important. ( 22 Oct 2014 ) by Kalen Delaney

Deploying a simple database application to AWS and other cloud servicesSo how easy are you going to find putting websites in the Cloud? We decided to ask Bud, who has loads of IT experience, but is a stranger to the cloud, to create a minimal 'Hello world', LightSwitch application and attempt to deploy it; first to Amazon Web Services, then Elastichost and finally to Windows Azure. He documented the struggle. ( 03 Sep 2012 ) by Bud Aaron

Using SQL Test Database Unit Testing with TeamCity Continuous IntegrationWith database applications, the process of test and integration can be frustratingly slow because so much of it is based on manual processes. Everyone seems to agree that automation of the process provides the answer to accomodating shorter development cycles, but how, exactly? Dave Green describes a successful process that integrates third-party tools. ( 02 Feb 2012 ) by Dave Green

The SQL of Gaps and Islands in SequencesSome SQL problems are intriguing because, just when good methods emerge and are accepted, other alternative solutions are discovered. The fun of exploring problems such as 'Gaps and Islands' is all the greater when we have a thorough test-harness to try out the alternative solutions. ( 25 Jul 2013 ) by Dwain Camps

Calculating the Median Value within a Partitioned Set Using T-SQLIt is ironic that one of the most essential of statistical aggregations, the median, has been so difficult in the past to calculate efficiently in SQL. Although the recent window functions provide the solution, there isn't an obviously superior algorithm performance-wise, particularly when working across partitioned sets. Dwain Camps sets the candidates to work and identifies the winners and losers. ( 17 Dec 2013 ) by Dwain Camps

The SQL Server 2016 Query Store: Built-in ReportingOne of the most important features of the SQL Server 2016's new Query Store is the reporting. With these features, it is now possible to get a wealth of information on how your query workload is performing, either aggregated for the entire query workload or for a single query. With this information, you can see the effects of 'forcing' an execution plan for specific queries and get feedback of the consequences. ( 06 Jan 2016 ) by Enrico van de Laar

Using SQL Data Generator with your Unit TestsBen Hall, one of the team who wrote SQL Data Generator, has gone on to develop ways of using it to provide test data for a wide variety of Unit Testing requirements. Whether you use NUnit, XUnit, MbUnit or MSTest, you can now lay your hands on as much data as you need. ( 15 Apr 2008 ) by Ben Hall

RSS Newsfeed WorkbenchRobyn and Phil decide to build an RSS newsfeed in TSQL, using the power of SQL Server's XML. ( 06 Jul 2007 ) by Robyn Page and Phil Factor

Guillaume Laforge: Geek of the Week Guillaume Laforge is the project manager for the development of Groovy and Grails, and the creative force behind it. He has since shown, in a number of projects, how veratile Grails can be for the rapid development of web applications. Groovy is a dynamic language in a similar mould to Java, but with a malleable syntax and a greater economy. We asked Richard Morris to ask Guillaume about Groovy and Grails; and their context in the new wave of dynamic languages. ( 21 Dec 2009 ) by Richard Morris

Version Control as a Cloud ServiceSource control is a conservative technology. Even so, there has been a general willingness to use internet-based servers for the task for a long time, especially for open-source projects. Will the trend toward cloud-based services for version control continue, or is the question made irrelevant with the growing acceptance of distributed source control? Is Cloud-based version control still too risky for a service that must be secure, and almost risk-free? ( 02 Jul 2014 ) by Robert Sheldon

Auto-completion in HTML-Based Input FormsAre there ever times when the best practice for a GUI is to let the user type-in information using the keyboard? Of course there are, but then the users nowadays expect, when it is appropriate, to have auto-completion and suggestions that come with the search engines such as Google, and from mobile computers. The GUI must never get in the way. Dino shows how, as usual. ( 13 Jun 2013 ) by Dino Esposito

Uploading Data to Windows Azure SQL DatabaseOne way of getting the advantages of the Cloud without having to migrate the entire database is to just maintain a copy of the data that needs to be accessible to internet-based users in Windows Azure SQL Database. There are various ways of keeping the two in sync, and Feodor describes a solution based in using SSIS ( 29 Apr 2013 ) by Feodor Georgiev

Data Science Laboratory System - Programming and Scripting LanguagesAlthough every computer language is suitable for data, some languages lend themselves especially well for working with certain types or sources of data, or processing the data in certain ways, and so are of particular use to the data scientist. ( 16 Apr 2013 ) by Buck Woody

Introducing IM#1: The Final One?Our resident expert in current advances in Computer Science, Professor Bin-Haad, reviews the first details to emerge about the experimental language IM1, which has been a remarkable University project jointly sponsored by the major players in the battle for the Desktop. On this special day, we hear about the radical features of the new language, designed once and for all to resolve the apparently irreconcilable demands of the proponents of all the different computer languages required in order to create portable applications. ( 01 Apr 2012 ) by Hugh Bin-Haad

Using a Profiler to Speed Application PerformanceUse a profiler to measure before you optimise. If ever you doubt this advice, then you should read this fascinating account of how an application was given a five-fold speed increase just by finding out exactly where the performance problems were and then tackling them in detail. ( 27 Feb 2009 ) by Ryan Garaygay

Close These Loopholes - Testing Database ModificationsIn the latest in their popular series on 'Unit Testing' database development work , Alex K and Alex S give some examples of unit testing Database Modifications ( 02 Sep 2007 ) by Alex Kuznetsov and Alex Styler

Short ArticlesA collection of shorter articles by some of our regular Simple-Talk columnists, this week featuring Simon Sabin, Greg Larsen on CLR vs. T-SQL and Eric Brown on Dynamic management Views. ( 27 Apr 2007 ) by Regular Columnists

Executing SSIS Packages continuedWhen Nigel Rivett wrote his article about Executing SSIS packages for Simple-Talk, four years ago, it proved very popular and has since been read by nearly 150,000 visitors. Now, Patrick Index, like Boswell to Nigel Rivett's 'Dr Johnson', recounts another technique for deploying and executing SSIS packages. ( 25 Nov 2010 ) by Patrick Index

Getting Started Testing Databases with tSQLtThere are several frameworks for assisting with the testing of SQL Server databases, but tSQLt is popular because it is written in TSQL and is simple for a database developer to set up and use. It doesn't get in the way. Rob Sheldon shows you how to get started. ( 08 Apr 2013 ) by Robert Sheldon

What can Software Designers Learn from Video Games? Part 2Developers of software that is used in the office need to be aware of what Games Developers are doing to make the learning of games intuitive. Games don't require you to read a manual or engage in training. Maybe Office software should inveigle the users into a gentle pedagogical experience so that they fully exploit the potential of the software without having to read screeds of instructions. The only question is how.. ( 15 May 2009 ) by Brian Harris

Raw Materials: Summer on the LakeDerek gets away from it all. ( 15 Sep 2010 ) by Larry Gonick

Simon Sabin Says SQLBitsSQLBits is the largest SQL Server conference in Europe. Because it is held on a Saturday, and is free, it has proved extremely popular with database professionals, especially in the current economic climate. SQLBits is renowned for the quality and independence of the speakers. To find out more about SQLBits, , we sent Richard Morris off into the February snows to interview Simon Sabin, the organiser. ( 03 Mar 2009 ) by Richard Morris

Downloading Software: the SQL Prompt 4 ExperimentWhat is the best way for a Software vendor to get people to try out their tools? Is dialogue with the vendor support team an essential part of the trial? Or should the download process just be made as simple as possible? Simon Galbraith, joint-CEO of Red Gate, explains the SQL Prompt 4 download experiment. ( 18 Sep 2009 ) by Simon Galbraith

Deploying the same database to many different RDBMSsWith the idea of a generic Dacpac defined by international standard, comes the potential for a Visual Studio developer to use SSDT to create a generic database model to a SQL-92 compliant standard that can then be deployed to any one of the major RDBMSs. The same database model would be deployable to Oracle, MySQL, or SQL Server, for example. Professor Hugh Bin-Haad explains the reasoning and technology behind this. ( 01 Apr 2015 ) by Hugh Bin-Haad

Windows Azure Websites - A New Hosting Model for Windows AzureWhereas Azure works fine for established websites with a healthy visitor-count, it hasn't suited developers who wanted to just try the platform out, or to rapidly develop a number of hosted websites. The deployment process seemed too slow. Microsoft have now found a way of accomodating the latter type of usage with Windows Azure Websites (WAWS). ( 29 Oct 2012 ) by Mike Wood

A Foundation for the WebBecause we can now run browsers on devices of a wide range of screen-sizes, content publishers have had to find ways to fit the layout to the device so that it can be read and navigated effectively. It is no longer good enough to assume a browser-width of 960px. ( 28 May 2012 ) by Edward Charbeneau

SQL Server Data Tools (SSDT) and Database References SQL Server Data Tools (SSDT) provides, via the DacPac, interesting support for verifying not only those references within the database, but also those to other databases even if they are on other servers. Although it is adds an extra level of complexity to deployments, it can increase the probability that deployments will succeed without errors due to broken references or binding errors. ( 16 Nov 2015 ) by Edward Elliott

ASP.NET MVC: Annotated for InputWith an ASP.NET MVC application of any size, there comes a time when you are faced with creating utility forms where you don't need a special form layout. One of the best ways of doing this is by using data annotations. Despite a quirk or two, it can save a lot of time. ( 15 Apr 2013 ) by Dino Esposito

Keeping POST and GET SeparatedThe occasional problems that you can get with POST and GET are typical of the difficulties of separating any command and query operations. this separation is tricky to achieve, at least in ASP.NET MVC. Dino suggests some ways of avoiding errors and minimising the confusing warning messages. ( 16 Feb 2016 ) by Dino Esposito

A Database Development Model Using SQL CompareRichard Mitchell and Steven Davidson describe how they used Red Gate's database schema-comparison tool, SQL Compare, to develop the latest version of ( 19 Dec 2006 ) by Richard Mitchell

Raw Materials: Being and KnowingSchr”dinger's cat escapes its box. ( 03 Jun 2009 ) by Larry Gonick

Optimising a High-Performance Computing ToolMany computer systems nowadays have their 'correctness' checked using sample testing, but this isn't enough where failure can lead to catastrophe. Model Checking techniques are far better because they explore all scenarios and verify whether responses meet expectations in each instance. Now there is publicly available .NET Model Checker that introduces a new way for .NET developers to test their systems ( 22 Oct 2008 ) by Viet Yen Nguyen

Reusing T-SQL CodeDatabase programmers are often caught in the paradox of wanting to implement business rules and complex functionality in one place only, but being concerned by the performance hit of having generic functions or procedures that have a wide range of parameters and outputs. Alex Kuznetsov, in an article taken from his book 'Defensive Database Programming with SQL Server', shows how DRY principles can be put in practice with constraints, stored procedures, triggers, UDFs and indexes. ( 28 May 2015 ) by Alex Kuznetsov

SQL Source Control: The Development Story Often, there is a huge difference between software being easy to use, and easy to develop. When your pilot users tell you "by week three of any development project you've thrown out anything that takes time or just gets in your way", then it is time to be serious about usability, as well as quality. We decided to find out from some of those at the sharp end of the development of Red Gate's SQL Source Control. ( 22 Jul 2010 ) by Andrew Clarke

Celko's SQL Stumper: Eggs in one BasketJoe Celko reveals the winner of his Easter Stumper: the puzzle of designing an apparently simple database to deal with the process of packing eggs into cartons. It wasn't quite as easy as it looked. ( 29 Mar 2010 ) by Joe Celko

Data as a Service: The Next "As a Service" Wave?There was a time that data seemed part of the application that maintained and used it. Now, there is increasing demand to deliver data through platform-agnostic open-standard APIs so it can be consumed in a variety of ways, whether refined, aggregated, or combined with additional information. Are we heading towards a shared understanding of applications as data-providers, feeding other services such as BI, or even in the right circumstances, publishing it? ( 19 Nov 2014 ) by Robert Sheldon

Discovering Security Uses for SQL CompareMuch of the security of SQL Server is implemented as part of the database schema. This provides some bonus uses for SQL Compare. Andras, the architect of SQL Compare v 4, 5, and 6, tells how. ( 06 Aug 2007 ) by Andr s Belokosztolszki

Grady Booch: Geek of the WeekGrady Booch is probably best known for being one of the original developers of the Unified Modelling Language (UML). He defined much of the way we go about the Object-Oriented analysis of applications. He's also interesting to chat to about programming, as Richard Morris found out. ( 09 Aug 2010 ) by Richard Morris

Caching: the Good, the Bad and the HypeOne of the more important aspects of the scalability of an ASP.NET site is caching. To do this effectively, one must understand the relative permanence and importance of the data that is presented to the user, and work out which of the four major aspects of caching should be used. There is always a compromise, but in most cases it is an easy compromise to make considering its effects in a heavily-loaded production system ( 11 Jul 2014 ) by Dino Esposito

Collect Your SQL Server Auditing and Troubleshooting Information AutomaticallyIf you have a number of SQL Server instances with versions ranging from 2005 upwards, with a whole host of databases, and you want to be alerted about a number of diverse events that are useful for first-line problem-diagnosis and auditing, then Feodor's homebrew solution, using SSIS and Robocopy is likely to be what you're looking for. ( 28 Jan 2014 ) by Feodor Georgiev

How come the Hourglass? Why database applications slow downIt is frustrating when you hit 'submit' and you get the hourglass big-time. Is it the database to blame? It could be, but there are other suspects that should be considered. Feodor describes where, in the long route, to and fro', that a data request makes before returning, that things can get snarled up. ( 10 Nov 2012 ) by Feodor Georgiev

Mission Critical: Database DesignThere is nothing like a checklist to make sure you've completed all the tasks in designing a database, and there is absolutely nothing like Buck Woody's military-style Critical Task List ( 18 Mar 2010 ) by Buck Woody

Migrating from OCS 2007 R2 to Lync - Part 3So far, Johan has walked us through the whole process of preparing our new Lync Server 2010 environment, step-by-step. Now it's time to expand that environment, migrate the rest of our users and legacy resources across, and start getting ready to decommission OCS 2007 R2. ( 16 Aug 2011 ) by Johan Veldhuis

Managing Active Directory with PowerShellFor the busy administrator of a windows domain, any regular task or housekeeping process should be automated, and the Cmdlets that are now provided with Active Directory have improved to the point that there is no serious contender to PowerShell for the task. Joseph Moody shows how to do it, with examples. ( 11 Nov 2013 ) by Joseph Moody

Simple Database Backups With SQL AzureSQL Azure can take away a great deal of the maintenance work from a hosted database-driven website. It isn't perfect, however, in that it doesn't support the archiving of data by the users. Mike Mooney explains how he customised the solution with SQL Compare and SQL Data Compare to solve the problem of getting local backup copies of database schema and data. ( 17 Mar 2011 ) by Mike Mooney

Social Login in ASP.NET MVCIt isn't every web application where one would want visitors to identify themselves via their Twitter, Facebook, Google or LinkedIn account. However, where it is essential to allow comments or other social interaction on your site, then ASP.NET MVC makes a 'social login' like this remarkably simple to do. ( 21 Mar 2014 ) by Dino Esposito

A Plethora of PowerShell PitfallsPowerShell has some very valuable features, but it is a mistake to believe that all those skills that you've derived from more conventional programming languages will transfer over to PowerShell. There are some pitfalls for the unwary. Michael Sorens warns abut the most common PowerShell pitfalls and explains how to avoid them. ( 02 Apr 2015 ) by Michael Sorens

Practical PowerShell Unit-Testing: Checking program flowPester offers a relatively small number of commands to Unit-test PowerShell scripts, but these commands have tremendous capabilities. Pester even gives you the means to validate data and test program flow. It uses 'mocks' to provide hooks to validate program flow, so you can be more confident that a function is doing things they way you intended. ( 05 Nov 2014 ) by Michael Sorens

Deployment Management is Worth IT: These Templates Should Make You Believe It TooEven experienced managers of IT operations can stumble over the most critical part- the documentation. If only there were useful examples around! We commissioned Hugo Shebbeare to explain what is required of such documentation, and why. He has also provided the templates to make it all easy for the pen-chewing DBA or SysAdmin. ( 14 Apr 2010 ) by Hugo Shebbeare

Faster Restores: Best Practices to Increase SpeedBackups are an everyday part of DBA life, whereas restores tend to happen on call at 3 a.m. In this article, Grant Fritchey looks at what you should be doing to make your restores as quick and seamless as possible. ( 02 Dec 2011 ) by Grant Fritchey

Cloud Identities versus Federated Identities in Office 365Identities, the 'accounts' by which Cloud and Web users identify themselves, are tricky to manage, and tiresome for the users. Cloud services such as Office 365 have their main use in large organisations and so there have to be easy ways for system administrators to maintain them. Microsoft provide three alternative strategies; Cloud identities, Synced identities and federated identities. What is the differences between them, and which should you choose? ( 01 Dec 2014 ) by Jaap Wesselius

Continuous Integration with SQL ToolbeltSometimes, you wish you had a tool to run a software development process exactly the way you need it to run. You click your heels together and then realise that you already have the means to do it. By combining tools that can work in command-line mode, or can be automated in other ways, you can sometimes save a great deal of time and tedium. Roger Hart rummages into the SQL Toolbelt and comes up with some practical examples for providing Continuous Integration, along with the code! ( 23 Jul 2009 ) by Roger Hart

Databases and DominoesA Dominoes game of Texas 42 inspires Joe to explore unusual uses for check constraints and views. Sometimes, the best way of discovering useful SQL techniques is to tackle the more unusual problems. ( 09 Sep 2013 ) by Joe Celko

A Simple-Talk exclusive: Stars of the DBA in Space webisodes - Revealed!A lot of the buzz around the DBA in Space campaign has centered on the hosts of the snazzy, 60s space-noir webisodes created by Red Gate and The Mill. Simple-Talk sent intrepid reporter Bob Cramblitt to the Rodenberry Launch Center to interview the two hosts, Brad McGehee and the fetching Miss Friday. ( 20 Oct 2011 ) by Bob Cramblitt

Brad's Sure Guide to SQL Storage CompressSQL Storage Compress does just that, and encrypts as well, allowing the files associated with a live database to take much less file-space, and securing them from unauthorised access. Why would this be useful, and is it really a free lunch? Brad puts it to the test to find out. ( 07 Dec 2010 ) by Brad McGehee

Understanding Asynchronous Programming with .NET ReflectorWhen you are working with the .NET framework, it is great to be able to view, and step into, assemblies. The documentation is handy to have, but nothing beats being able to see and debug the code to understand how it works. Suddenly, the new Async features stop being mystical, and start to make practical sense. ( 24 Sep 2012 ) by Nick Harrison

Exchange 2010 SP1 - A Practical ApproachThis update of Jaap Wessellius' popular guide to Exchange 2010 covers everything you need to know to install, run and maintain Exchange 2010 SP1. ( 17 Jan 2012 ) by Jaap Wesselius

ASP.Net configurationAlthough it can be used in production sites, simply editing the web.config XML file, is not particularly user friendly. So this article introduces Visual Studio 2005's WSAT to configure your web application. ( 19 Jan 2006 ) by Ludmal De Silva

Building a Public HTTP API for DataThe creation of a public API for data presents something of a dilemma for the developer. Web API, with its content negotiation, seems somehow cleverer than classic ASP.NET MVC, but there are complications, such as the XML schema, that suggest that there are merits in using MVC controllers for all public HTTP APIs ( 21 Mar 2013 ) by Dino Esposito

5 Tips and Techniques for Avoiding Automatic GC CollectionsAutomatic memory management isn't new, but it's a wonderful thing for programmers. We bring you some tips and techniques to .help you understand a bit more about how .NET's memory management works, can help you to ensure that you write high-performance .NET code. ( 31 Oct 2011 ) by Michael McLaughlin

An Introduction to Information Rights Management in Exchange 2010If you're a Systems Administrator concerned about information security, you could do worse than implementing Microsoft's Information Rights Management system; especially if you already have Active Directory Rights Management Services in place. Elie Bou Issa talks Hub Servers, Transport Protection Rules and Outlook integration in this excellent guide to getting started with IRM. ( 06 May 2010 ) by Elie Bou Issa

Five Tips to Get Your Organisation Releasing Software FrequentlyThe frequency of releasing software varies widely in the industry. There can be good reasons for extended periods between public releases of software, but your development culture or methodology should never be a block. If the test and release process is made as reliable and predictable as possible, then everyone gains. But how do you get started? Jonathan Hickford writes from experience. ( 09 Jan 2014 ) by Jonathan Hickford

Building a Better NuGetNuGet is the standard package manager for the Microsoft development platform including .NET. It has transformed the ease of getting and installing the latest version of .NET packages, tools and frameworks. It relies on NuGet package authors to get packages right but there is little documentation for them to go by, and there are a few inevitable problems. Ed Charbeneau offers advice from experience ( 07 Oct 2014 ) by Edward Charbeneau

Continuous Delivery for Databases: Microservices, Team Structures, and Conway's LawHaving described some of the most common database deployability blockers, Matthew Skelton proposes a way to enable database continuous delivery that isn't as outlandish as it first appears. What can Conways Law and Microservices tell us about the future of databases and DBAs? Matthew shows us a glimpse. ( 19 Nov 2014 ) by Matthew Skelton

Behaviour Driven Development Part 3 - Benefits of using BDD Programming MethodologyBehaviour Driven Development requires the use of ubiquitous language to clearly state the requirements for a software project. As Sunil Pardasani explains, this clarity can bring substantial benefits to your organisation, reducing misunderstandings, competing visions, and setting clear goals that are directly tied to the development process. ( 04 Aug 2015 ) by Sunil Pardasani

Data Science Laboratory System - Key/Value Pair SystemsThough the Key/Value pair paradigm is common to almost every computer language, there is no clear agreement yet for the definition of a Key/Value Pair database. However, Key/Value pair databases are valuable for special applications where speed of writing data is more important than searching and general versatility. It is certainly worth experimenting with in a data science lab. ( 17 Jul 2013 ) by Buck Woody

Acceptance Testing with FitNesse: Database Fixtures, Project OverviewThere aren't many frameworks for writing acceptance tests for databases, including SQL Server. FitNesse is an obvious choice since it is designed with a Wiki-style interface that, once it is configured and set up correctly, makes it very easy for a non-specialist to set up individual tests. ( 03 Oct 2014 ) by Michael Sorens

Social Networking for Professional GrowthThe use of 'Social Networking' for your professional development is no longer just for the pioneers. If you aren't using social Media for your career, then you may be missing out. Dr Masha gives an overview, for the 'late adopters', of the opportunities out there . ( 22 Sep 2010 ) by Dr. Masha Petrova

Raw Materials: The Little Engine That CouldTotal Information Awareness can destroy your sanity. Get used to it. ( 01 Sep 2009 ) by Larry Gonick

Monitoring Mailbox MovesMailboxes moves happen all the time, and given how precious the data in mailboxes can be, you should know exactly how to monitor their progress and make sure they transition smoothly. You also need to know what happens when something goes wrong. Johan imparts the necessary skills. ( 17 Nov 2010 ) by Johan Veldhuis

Be the Puppet Master! Control Multiple PCs with one Keyboard and MouseIn the average IT department, geek-credibility is bound up with the number of monitors you are simultaneously using. What about going one step further, and running them on several computers at once, with just one mouse and keyboard? ( 20 May 2011 ) by Wesley David

Stumbling Towards Database Change ManagementThe scale of change in the insurance and financial markets is such that there is little time for the application or database developer to sit back and work out ways of improving the delivery process. Over time, however, it is possible to improve the process so that individual heroics are required less and less as release and deployment become more managed and predictable. It can be messy and error-prone at times but the long-term benefits make the struggle worthwhile. ( 09 Sep 2015 ) by Frazier Kendrick

The Mindset of the Enterprise DBA: 8 Ways To Centralize Your Work Although it is possible to provide good service to small to medium companies as a DBA without putting in place systems and processes to manage the workload and the demands of teamwork, it isn't so in the larger enterprise. As well as standardizing and documenting, the enterprise DBA needs to centralize the management of systems. Joshua Feierman explains. ( 12 Aug 2014 ) by Joshua Feierman

Condensing a Delimited List of Integers in SQL ServerIn real-world applications, it often makes sense to show denormalized data such as delimited lists within the application's user interface. Dwain Camps shows why, and how, the distribution business stores information about 'islands' in sequences in order to track the status of the shipping of a consignment. It makes a great SQL puzzle ( 28 Aug 2013 ) by Dwain Camps

Meredith Ryan: DBA of the DayMeredith Ryan - DBA at the Bell Group -was elected by judges and the SQL Server community as the Exceptional DBA of 2012. So who is Meredith, and how did she become a DBA? What makes her exceptional at her work? We sent Richard Morris to investigate. ( 14 Sep 2012 ) by Richard Morris

Database Continuous Integration with BambooWe were so interested in Atlassian's Bamboo, and it's role in Continuous Integration, that we wanted to find out more, such as 'why the name?'. So we sent our roving reporter, Richard Morris, out in his proverbial raincoat and trilby to find out more. Who better to ask than their marketing manager, Sarah Goff Dupont ( 26 Jul 2012 ) by Richard Morris

Discrete and Continuous data in SQLNot all data is discrete; some data types represent a continuum. In SQL, we have to approximate them and live with the special problems of handling continuous data. We need to understand the problems associated with continuous data types, when these will happen, and how it affects constraints and the results of queries. Joe Celko explains. ( 06 Jan 2015 ) by Joe Celko

Software Tool Design: Remote User TestingIf you are developing a software product, you'll know that the sooner you can get feedback from the users, the better. But, what sort of feedback, which users, and how? If your users have to test your software within their own development environment and workplace, you are presented with a challenge. Stephen explains a practical solution ( 18 Aug 2008 ) by Stephen Chambers

DAX Statistical FunctionsFollowing on from his first four articles on using Data Analysis Expressions (DAX) with tabular databases, Robert Sheldon dives into some of the DAX statistical functions available, demonstrating which are the most useful and examples of how they work. ( 23 Sep 2013 ) by Robert Sheldon

Installing Hyper-V and BeyondIn his previous article "Hyper-V, an introduction" Jaap Wesselius explained about the Hypervisor, the parent partition, the child partition, and Integration Components. In this article Jaap discusses installing Hyper-V, all kinds of Virtual Hard Disks, Virtual Networks, and some best practices. ( 28 Jul 2009 ) by Jaap Wesselius

Kevan Riley: DBA of the DayWhen the site started, something magical happened. A band of DBA and developer volunteers got together to ensure the very best quality of questions and answers about SQL Server. Kevan was one of them. Through a couple of happy chances, the community discovered an exceptional DBA, and a source of valuable advice. ( 18 Oct 2010 ) by Richard Morris

SQL Scripts Manager with PowerShell SQL Scripts Manager was released as a Christmas present to Simple-Talk subscribers. William Brewer then wrote an appreciation of the tool. Now, he reveals a secret:: It also runs PowerShell scripts, and hence, SMO. He has the scripts to prove it, though hopefully, you'll soon be running your own PowerShell from SQL Scripts Manager. ( 17 Feb 2011 ) by William Brewer

Database Documentation Using SQL DocRobert Chipperfield is a member of the development team at Red Gate Software. In this article he describes the key features of Red Gate's new database documentation tool, SQL Doc, and provides insight into the development process and some of the design philosophies that underpin the tool. ( 26 Jan 2007 ) by Robert Chipperfield

Betting on PromotionThe process of appointing managers in large IT department is shrouded in mystery. The bewilderingly random and illogical nature of the process makes it a gambler's delight, and it's often difficult for workers to resist the odd wager on the outcome. ( 09 May 2006 ) by Phil Factor

SQL Server ALTER TABLE syntax diagramsThe words in the documentation for the ALTER TABLE syntax on MSDN are accurate with forensic precision, but the potentially-useful 'syntax diagrams' look, to the untrained eye, to be the result of someone accidentally sitting on the keyboard. The answer for ordinary mortals like us who need to understand the syntax is to have railroad diagrams as well. ( 09 Jul 2013 ) by Phil Factor

PowerShell Day-to-Day Admin Tasks: WMI, CIM and PSWAWMI (Windows Management Instrumentation) is the basic way of querying and changing basic information about any windows server, including SQL Server or Exchange Server. It provides a logical structure and representation of systems and services that are hosted on the server and is essential for anyone who is keen to automate routine monitoring and administration work via PowerShell, especially where many servers are involved in the task. ( 28 May 2015 ) by Nicolas Prigent

SQLXML Bulk Loader BasicsSQLXML isn't exactly new technology, but like the even more venerable BCP, it remains the quickest and most reliable way of heaving large quantities of data into SQL Server databases. SQLXML is very versatile, and once set up is wonderfully reliable ETL system, but isn't trivial to learn. Adam Aspin comes to the rescue with a simple guide. ( 02 Jun 2015 ) by Adam Aspin

SQL Server Concurrency: Locking, Blocking and Row VersioningYour application can have impeachable indexes and queries, but they won't help you if you can't get to your data because another application has it locked. That's why every DBA and developer must understand SQL Server concurrency and how to troubleshoot excessive blocking or deadlocking. Kalen Delaney's book is your guide. ( 02 Oct 2012 ) by Kalen Delaney

Product Review: Schema Compare for OracleOne of the more important tasks in the process of rolling out incremental developments to a multi-server production system is to double-check that all of the planned modifications, and nothing else, have been deployed. An Oracle expert, Bruce Armstrong, comes across SQL Compare for Oracle, and sees if it helps with this time-consuming task. ( 23 Jul 2010 ) by Bruce Armstrong

A Plethora of PowerShell Pitfalls: Part 2There are some pitfalls in PowerShell for the unwary. Many people who are learning PowerShell come across quirks that can cause frustration. Michael Sorens continues his series, warning abut the most common PowerShell pitfalls and explains how to avoid them. ( 12 May 2015 ) by Michael Sorens

When to Quote in PowerShellThe one question about PowerShell that trips up almost everyone is about when and how to quote strings. Because PowerShell replaces the old command shell, it has to be able to work the way that it did with string parameters, but it also has to behave like a .NET scripting language to replace VBA. PowerShell grapples with this apparent contradiction, and manages to square the circle. Michael Sorens explains the how and when of PowerShell quoting. ( 12 Aug 2015 ) by Michael Sorens

Social Networking at Professional EventsDr. Masha Petrova compresses, into a small space, much good advice on networking with other professional people. She draws from her own experience as a technical expert to provide a detailed checklist of things you should and shouldn't do at conferences or tradeshows to be a successful 'networker'. As usual, she delivers sage advice with a dash of humour. ( 14 Jan 2010 ) by Dr. Masha Petrova

Foolproof Atomic Versioning of ApplicationsBad things tend to happen to developments where the scripts for the database layer are left out of source control. Now that we have the means to do it properly, there are many reasons to make the database an equal partner in the development process. Troy discusses some of those reasons. ( 08 Dec 2010 ) by Troy Hunt

Tracking Online UsersSometimes, the requirements for a web application include a list of users that are currently logged-in. It would seem, at first glance, to be pretty trivial, but because few of us explicitly log out of web applications, the reality can get complicated. Even the best solution is a trade-off. Dino explains the issues and alternatives. ( 10 Jun 2015 ) by Dino Esposito

Columnstore Queries in SQL Server 2012On demo, the columnstore index of SQL Server 2012 gives dazzling performance, but it is optimised for data warehouse queries so it is by no means a universal route to high-performance queries. Once you understand the context in which they are best used, and the ways of ensuring that they work as intended, they can be extremely useful. ( 08 Jul 2013 ) by Roy Ernest

OWIN: Customizing the Web ServerOWIN and Katana are designed to provide a different way of meeting those objectives that currently require the use of NodeJS. With them, you can run extremely thin and super-optimized web server applications by cutting out what you don't need and swapping out those parts that you wish to behave differently. Dino Esposito explains how to get started. ( 03 Feb 2014 ) by Dino Esposito

Centralize Your Database Monitoring ProcessSQL Server Data Collector, together with Management Data Warehouse, is a fine and useful component for gathering information centrally about how SQL Server instances are being used, and thereby keeping an eye out for problems. It comes into its own when you have figured out how to configure it to run on maybe hundreds of instances using Central Management Server. Dennes describes how to tame the system so that it scales. ( 26 Jan 2015 ) by Dennes Torres

Fundamentals of SQL Server 2012 Replication by Sebastian MeineFundamentals of SQL Server 2012 Replication provides a hands-on introduction to SQL Server replication. The book begins with a short overview that introduces you to the technologies that make up replication. In the following chapters, the book will walk you through setting up different replication scenarios. ( 26 Jul 2013 ) by Sebastian Meine

Jeffrey Snover: Geek of the WeekPowerShell has radically improved the ease of monitoring and adminstering Windows-based servers, and automating routine processes. The visionary leader of this project is Jeffery Snover, who is now Lead Architect for both Windows Server and System Center Datacenter. ( 23 Oct 2012 ) by Richard Morris

What's New in Exchange "15"The Beta of Exchange Server "15" shows considerable improvements in the ease of management and installation. It has been extensively re-engineered to make it more effective in working across several datacentres. It also has a new Outlook Web App that even allows offline working. ( 24 Jul 2012 ) by Jaap Wesselius

Physical Network Layout for the ReluctantHow do you select the hardware for your network, and connect it all together? How do you then test your network and ensure that it is secure? Our crash course for the reluctant tells you enough of the basics in simple language to get you started. ( 13 Dec 2011 ) by Matt Simmons

Sid: ViciousDan Archer documents his epic struggle with an apparently simple task of authenticating user credentials. For some reason, a task that should be performed by a simple API call leads to a great deal of head-scratching and googling. ( 22 Apr 2008 ) by Dan Archer

Automate your Database Integrity checks using SMOAllen White shows how to use Visual Basic to create simple routines that use SMO for inserting and deleting jobs from SQL Server Agent and for creating or deleting stored procedures in SQL Server. ( 15 Sep 2007 ) by Allen White

Do Alpacas Dream of farming DBAs?When IT starts to stand for 'Implement This', even the keenest DBA begins to dream of farming Alpacas as a career-change. ...and we ask our readers how they would have solved the DBA's dilemma. ( 13 Aug 2007 ) by Timothy Ford

Tuning SQL Queries with the Help of ConstraintsThe use of constraints is a valuable way of improving query performance as well as maintaining the integrity of the data, but this is, inevitably, a trade-off: The data uses up more storage, and the modifications are slower and more difficult. In SQL Programming, there are few 'best-practices' that are universally appropriate. ( 07 Dec 2010 ) by Alex Kuznetsov

Using Scaffolding to Create MVC Applications with Visual StudioScaffolding is a great way of kick-starting model-view-controller (MVC) framework development. Visual Studio's MVC Scaffolding uses templates to generate the routine code that is common to all ASP.Net MVC builds, such as data access and Web API. It allows the developer to concentrate on what is unique to the application. ( 14 Dec 2015 ) by Nick Harrison

PowerSMO At Work Part I: DBA Scripts and FunctionsDan Sullivan delves deeper into PowerSMO, the versatile command line utility for managing SQL Server databases. Using a certificate strategy, he provides a step-by-step guide to creating and deploying secure, signed DBA scripts. He then describes how to use PowerSMO functions to manage the extended properties of SQL Server objects. ( 19 Feb 2007 ) by Dan Sullivan

Creating Motivated DevelopersIf you're an IT manager, then your vision of "Peace on Earth" is probably a carefree existence where developers finish projects on-time and on-budget and who do only and exactly what you asked them to do. So it may surprise you to read that having your developers deliver "Peace on Earth" might be the last thing you want. ( 08 Mar 2006 ) by Steve Joubert

Practical UI Test Automation - Locators and Asynchronous LoadingHaving set us down an enlightened path of User Interface test automation, Jim Holmes returns to give some advice on how to start building smart, robust test harnesses, and some tools you might want to consider. Read this before you start trying to automate your UI tests, or if you're about to start on a new project. ( 04 Dec 2014 ) by Jim Holmes

Raw Materials: Santa's ChoiceSometimes that lump of coal comes studded with gumdrops ( 23 Dec 2009 ) by Larry Gonick

Exchange Server 2010 Compliance CapabilitiesExchange 2010 now has more features to assist System Admistrators with Compliance, but are these features sufficient? Are they easy to use? Michael Smith gives a roundup of these new features, and points out where are useful, and where they fall short of providing a complete solution to the compliance task ( 15 Dec 2009 ) by Michael B. Smith

MySQL Compare: The Manual That Time Forgot, Part 1Although SQL Compare, for SQL Server, is one of Red Gate's best-known products, there are also 'sister' tools that allow you to compare and synchronise MySQL and Oracle databases. MySQL Compare was originally a 'down-tools' project, so never had the extra features or lavish documentation of its siblings. In respect for a highly useful tool, we publish simple instructions of how to use it. ( 03 May 2013 ) by Michael Sorens

Cloud Services for the DBAA critical part of any DBA's role is implementing the systems that will improve in the long term their organization's guardianship, use and understanding of its data. Too often, however, this gets lost in the fog of immediate and urgent tasks. Gareth Marlow explains why he believes Cloud services will play an increasingly prominent role in helping DBAs achieve their strategic goals. ( 15 Nov 2013 ) by Gareth Marlow

Big Data: Are We Looking at the Wrong "V"s? For once, business people are excited about the importance of data and are interested in the business benefits of extracting insights from the data. Perhaps this is more of a cultural rather a technical initiative, and so we in the data industry should participate by redefining the concept of the three Vs to reflect business values rather than technical challenges. ( 21 May 2013 ) by David Poole

More Advanced Deployments with Group Policy Software InstallationGroup Policy Software Installation (GPSI) allows for a high level of control on what can be installed where on a group of computers based on the user. In this article Joseph Moody walks you through the steps to create pre-approved software lists for users to install, and upgrade and uninstall that software. ( 09 May 2013 ) by Joseph Moody

Fixing Gatekeeper Row Cardinality Estimate IssuesThe Query Optimiser needs a good estimate of the number of rows likely to be returned by each physical operator in order to select the best query plan from the most likely alternatives. Sometimes these estimates can go so wildly wrong as to result in a very slow query. Joe Sack shows how it can happen with SQL Queries on a data warehouse with a star schema. ( 01 Nov 2012 ) by Joe Sack

Filling In Missing Values Using the T-SQL Window FrameSince SQL Server delivered the entire range of window functions, there has been far less justification for using the non-standard ex-Sybase 'Quirky Update' tricks to perform the many permutations of running totals in SQL Server. One of these related problems is the 'Data Smear'. Do window functions make this easier, and what is performance like? Dwain Camps investigates ( 18 Sep 2014 ) by Dwain Camps

Database Configuration Management for SQL ServerIt is not just the rapid and painless testing, deployment and update of databases that requires care in the retention and management of configuration information. Configuration information is also essential for audit, resilience, and support. The range of documentation varies widely with the database and its setting, but the underlying principles remain the same. Without appropriate configuration management, automation is likely to be futile. ( 05 Nov 2014 ) by William Brewer

Database Build Automation - The First Step to Continuous IntegrationSo you're keen to take the first steps to the continuous integration of your database. You have to start by getting your database into source control. You can then begin to automate your build processes in order to generate and test a database. By doing this regularly, you'll be much better prepared for the deployment process because you'll have solved integration issues when they happen, and facilitated the broader testing process. ( 16 Dec 2014 ) by Grant Fritchey

T4 - The Insource Code MonkeyT4 usually stays behind the scenes in Visual Studio, but if you find that you have a good reason to write similar code over and over again, or use a lot of copy and paste, then it could be that you have a specific use for T4. There are times when it can be useful for generating code templates but it is versatile to provide a solution for a number of programming headaches. ( 03 Jun 2013 ) by Nick Harrison

Raw Materials: The Job InterviewA robot never lies. ( 26 May 2010 ) by Larry Gonick

Book Review: SQL and Relational Theory by C. J. DateSQL and Relational Theory, by Chris Date, isn't likely to be a book that SQL's greatest defender, Joe Celko, would agree with. However, following the debates between Date and Celko on the relational purity of SQL has all the fascination of watching Godzilla wrestling King Kong. ( 26 Sep 2012 ) by Joe Celko

Microsoft Azure DocumentDBDocumentDB is a late-entrant in the Document-oriented database field. However, it benefits from being designed from the start as a cloud service with a SQL-like language. It is intended for mobile and web applications. Its JSON document-notation is compatible with the integrated JavaScript language that drives its multi-document transaction processing via stored procedures, triggers and UDFs. ( 22 Dec 2015 ) by Robert Sheldon

Automating SQL Server Database Deployments: A Worked ExampleAlex talks through a simple practical example of a database deployment, First creating a empty database and then upgrading it through three steps by writing T-SQL scripts, adjusting configuration files and the change log, before generating a full build script containing all schema objects. ( 27 Feb 2013 ) by Alexander Karmanov

Embedding IronRuby and the DLR into SQL Data GeneratorYou can embed DLR-based languages such as IronPython and IronRuby into applications. This gives you instant scripting, and with it, the potential for greatly simplifying the development process. You can even take advantage of existing applications that have a plug-in architecture, such as SQL Data Generator and NET Reflector. Be Hall takes SQL Data Generator and shows how this technique allows you to create simple generators specifically for your needs. ( 23 Apr 2009 ) by Ben Hall

Dynamic Memory in Windows 2008 R2 SP1Windows Server 2008 R2 SP1 has introduced what Microsoft calls 'Dynamic Memory'.The start-up RAM VM memory assigned to guest virtual machines can be allowed to vary according to demand based on the workload of applications running inside. Fine, but it requires careful setting up for certain applications. Jaap explains. ( 11 Apr 2011 ) by Jaap Wesselius

Celko's Summer SQL Stumpers: Prime NumbersJoe Celko kicks off our series of Summer SQL Stumpers with a challenge to improve on his solution to˙calculating the prime numbers between 1 and 10000. Once the various solutions have been contributed and judged, the winner will be announced. The competition will be run on Simple-Talk and SQL Server Central together. ( 23 Jul 2009 ) by Joe Celko

Software patents - stupid or insane?Arthur Fuller considers software patents to be both stupid and insane, is it time for a review of patent law? ( 22 Aug 2005 ) by Arthur Fuller

Geek of the Week: Ola BiniOla Bini is one of the core developers for JRuby, and creator of the JvYAML and RbYAML projects. He is also well known for his work on promoting YAML as an alternative markup to XML. ( 08 Feb 2012 ) by Richard Morris

Deploying an Entity Framework Database into ProductionEntity Framework can be useful for getting up and running quickly with a database application, but when it comes to deployment, EF's built-in data migration feature doesn't inspire confidence. Jon Smith relates his quest to find a better answer. ( 17 Nov 2015 ) by Jon Smith

Handling Backups for Rapid ResilienceThe backup and restore system in SQL Server hasn't changed a great deal over the years despite a huge growth in the typical size of databases. When disaster strikes, and an important service is taken offline while a restore is performed, there is often time to reflect on whether it might be possible to design databases for a more rapid recovery of the most critical parts of a database application. ( 20 Nov 2012 ) by Feodor Georgiev

Importing PSTs into Exchange 2010, The Easy WayPST Importing has always been a bit messy. With Exchange 2010's Personal Archiving feature, it's become more pertinent, yet still comes with pit-falls, gotchas, and inexplicable errors. James Allison has done some research, and presents an easy way to smoothly tackle the whole problem. ( 27 Aug 2010 ) by James Allison

Moving from Practice to Production with Test-Driven DevelopmentMichael Williamson answers three common questions that come up in test-driven development (TDD), including the most likely causes of each potential problem, and practical tips on how to avoid them. ( 07 Apr 2014 ) by Michael Williamson

Script Loading between HTTP/1.1 and HTTP/2Web pages increasingly suffer from JavaScript-library bloat. Because it is difficult to avoid the awkward wait while these libraries load, there are some techniques for making the loading of these script files less evident to the page-load time. The introduction of HTTP/2 opens up further opportunities to defer script load or do it asynchronously in parallel. Dino explains. ( 23 Dec 2015 ) by Dino Esposito

Hitting the Ground Running with Parallel Extensions in .NET 4.0With the arrival of Parallel Extensions in .NET 4.0, the concurrent programming powers traditional reserved for the most elite of developers are now available to all of us. With multi-core processors increasingly becoming the norm, this is good news, and Jeremy Jarrell gives us the essential knowledge we'll need to get started. ( 01 Feb 2011 ) by Jeremy Jarrell

SQL Server Performance Tuning Using Wait Statistics: A Beginner's GuideThis beginner's guide by Jonathan Kehayias and Erin Stellato covers the basics of using wait statistics; topics include the SQLOS scheduler, performance tuning, baselines, and more. ( 01 Apr 2014 ) by Simple-Talk Editorial Team

Women in Technology: Innovation and Girl Geek DinnersAn interview with Sarah Blow, founder of the London Girl Geek Dinners. ( 15 Dec 2006 ) by Sarah Blow

Alan Cooper: Geek of the WeekAlan Cooper helped to debug the most widely-used PC language of the late seventies and early eighties, BASIC-E, and, with Keith Parsons, developed C-BASIC. He then went on to create Tripod, which morphed eventually into Visual Basic in 1991. Alan remains enthusiastic and interested in development with strong views on Agile and Pair Programming. ( 15 Apr 2015 ) by Richard Morris

The Book 'Confessions of an IT Manager'For three and a half years, the 'Confessions of an IT Manager', by Phil Factor, have been a distinctive part of Simple-Talk's output. Now compiled into a 300 page book, they form a unique commentary of the comic, and someties bizarre, nature of a career in IT. ( 27 May 2009 ) by Phil Factor

Database Deployment: The Bits - Agent Jobs and Other Server ObjectsDatabases often need more than just the database objects to run. There may be certain server objects and components, and SQL Agent objects, that are required as well. For an automated deployment, these need to be identified and their build script placed in source control. They then need to be deployed via the pre, or post deployment script. Phil spells out how and why. ( 23 May 2013 ) by Phil Factor

More Database Administration and Development Automation using DMOPhil Factor provides a handy DMO automation toolkit to take care of some core SQL Server administrative tasks. ( 04 Oct 2006 ) by Phil Factor

Why Put Your Database into Source Control?Checking program code into source control is a daily ritual for most developers, but versioning database code is less well-understood. Grant Fritchey argues that getting your databases under source control is not only vital for the stability of development and deployment, but it will make your life easier when something does go wrong. ( 08 Jul 2014 ) by Grant Fritchey

Database Geek of the Week: Itzik Ben-GanItzik Ben-Gan is a writer and mentor, he writes a monthly column for SQL Server Magazine and co-authored Advanced Transact-SQL for SQL Server 2000. ( 05 Sep 2005 ) by Douglas Reilly

Office 365 Essentials - Subscriptions and LicensesShould you be planning to move from Exchange to Office 365? If so, why? What sort of license should you get, and should you use cloud identities or federated identities for your users? Jaap starts a series of articles with an overview of the advantages, and a simple explanation of the options in subscriptions and licenses for Office 365. ( 08 Aug 2014 ) by Jaap Wesselius

Raw Materials: Performance AccelerationSometimes it's best to keep your secrets to yourself. ( 03 Feb 2010 ) by Larry Gonick

Raw Materials: Cloud Computing, the Next GenerationThe pros and cons of having computing power close at hand. ( 08 May 2009 ) by Larry Gonick

Childish GamesRaw Materials Comic Strip:Digitization transforms yet another of our most cherished traditions. ( 09 Mar 2009 ) by Larry Gonick

Silverlight Skinnable User InterfacesJohn Bower demonstrates more of the features of Silverlight, and Expression Blend, and shows how one might write an application that avoids UI pitfalls by placing your design responsibility squarely on your users' shoulders. If it looks bad, it's their fault! ( 05 Feb 2008 ) by John Bower

Close these Loopholes - Reproduce Database ErrorsThis is the final part of Alex's ground-breaking series on unit-testing Transact-SQL code. Here, he shows how you can test the way that your application handles database-related errors such as constraint-violations or deadlocks. With a properly-constructed test-harness you can ensure that the end-user need never sees the apparent gobbledegook of database system error messages, and that they are properly and robustly handled by the application. ( 23 May 2008 ) by Alex Kuznetsov

.NET Reflector Saved their Bacon: Chris Kapilla's Story.NET Reflector is not just a handy adjunct to Visual Studio for developers to browse their assemblies and understand classes and methods; Sometimes it can have a vital role. Many developers have told us that, occasionally, it had 'saved their bacon'. We were intrigued and decided to find out more by offering prizes and cash for ".NET Reflector Saved My Bacon" stories. ( 24 Feb 2009 ) by Bob Cramblitt

The SQL Server Sqlio UtilityIf, before deployment, you need to push the limits of your disk subsystem in order to determine whether the hardware's I/O capacity meets the needs of a database application, if you need performance baselines, or if you want to identify any performance-related issues, then why not use the sqlio utility? ( 27 Jan 2014 ) by Robert Sheldon

Yet Another SQL Strategy for Versioned DataThere is a popular design for a database that requires a built-in audit-trail of amendments and additions, where data is never deleted, but merely superseded by a later version. Whilst this is conceptually simple, it has always made for complicated SQL for reporting the latest version of data. Alex joins the debate on the best way of doing this with an example using an indexed view and the filtered index. ( 22 Jun 2011 ) by Alex Kuznetsov

Mastering SQL Server Profiler - eBook DownloadDownload Brad McGehee's "from the ground up" guide to SQL Server's most powerful performance diagnostic tool. ( 07 Oct 2009 ) by Brad McGehee

.NET Reflector meets the CodeDom.NET Reflector was the first .NET tool to allow assemblies to be disassembled back into the high level language that produced them. Moreover, it has a plug-in architecture that allows you to disassemble to any language for which you have a plug-in, or are prepared to write one. Nick Harrison takes it one further step, and creates a plug-in that produces the CodeDom code needed to create the contents of the assembly. Nick explains, gently. ( 02 Oct 2009 ) by Nick Harrison

Reflector Pro ComethReflector 6 is here. Nick Harrison is a long-time Reflector enthusiast, and has been responsible for writing an add-in. As he'd helped test the new version, Nick asked to review it for Simple-Talk. The team were anxious to know what he thought. They needn't have worried. ( 25 Feb 2010 ) by Nick Harrison

Using .NET Reflector to Manage Complex Software DependenciesTom Carter's Dependency Structure Matrix Plugin for .NET Reflector turns the tool into a means of tracking inter-module dependencies in .NET. Why is this such a powerful way of keeping the complexity of an application in check? How can you benefit from being able to track dependencies between objects? Nick Harrison provides a simple explanation. ( 23 Feb 2009 ) by Nick Harrison

Centralized management: Tips for Managing Backups on Multiple ServersManaging backups on a handful of servers should be a relatively straightforward process, but what about DBAs that need to automate to stay on top of large numbers of servers? What options are available, and how do they compare? Grant Fritchey looks at what's out there. ( 13 Dec 2011 ) by Grant Fritchey

Better Ways to Build a DatabaseThe purpose of a database build is simple: prove that what you have in version control can successfully create a working database. And yet many teams struggle with unreliable and untested database build processes that slow down deployments and prevent the delivery of new functionality. Grant Fritchey explains how to achieve an automated and reliable database build that is only as complex as the database system it needs to create. ( 19 Feb 2016 ) by Grant Fritchey

Project Management 101Most software projects fail. Only about a quarter are completely successful. About half are late and over budget and the remaining quarter just fade into oblivion. What if there was a simple way to ensure your project's success? There is, and it's all about starting out in the right way. ( 02 Feb 2006 ) by Steve Joubert

Windows Azure Virtual Machine: A look at Windows Azure IaaS Offerings (Part 2)We continue our introduction of the Azure IaaS by discussing how images and disks are used in the Azure Virtual Machine, and then show how to attach disks to virtual machines. ( 02 Oct 2012 ) by Wely Lau

Checklists: A DBA's Best FriendBecause so much of the work of the DBA involved doing things in the right order without missing steps out, checklists are a great way of ensuring that the chance of mistakes is minimised. DBAs generally create the sort of checklist style that suits their way of working, while making their work easier for them and as reliable as possible. ( 30 Sep 2015 ) by Joshua Feierman

How To Document Your PowerShell LibraryPowerShell provides comment-based help for functions and scripts with Get-Help, but when you want to document modules or generate a complete indexed API in HTML format, just as you can with Sandcastle for .NET or javadoc for Java, then stronger magic is required. Michael Sorens shows you how it is done, with source code. ( 25 Jun 2013 ) by Michael Sorens

Microsoft Hyper-V Networking and Configuration - Part IIIA configuration of Hyper-V networking across two or more Hyper-V Hosts is the most complex type. It needs to be configured according to the business rules and communication between Virtual Machines and the Hyper-V Parent Partition is best configured with VMBUS and VSP/VSC components. Nirmal explains how best to do it ( 14 Feb 2013 ) by Nirmal Sharma

Code Access Security in ASP.NET 4.0In the third, and final article that introduces Code Access Security in .NET Framework 4.0, Matteo explains, with examples, how the Level2 Security Transparent Model works within a hosted ASP.NET environment. ( 14 Sep 2010 ) by Matteo Slaviero

Tracking Online Users with SignalRSignalR is all about pushing notifications and data between web server and browser, but you can tap into a by-product of the work it has to do to keep track of the users who are currently online. This will provide a list of the users currently connected to a web community. SignalR has endpoints to push server events of any kind to the client, and thereby provides solutions for a number of common programming tasks. ( 14 Jul 2015 ) by Dino Esposito

Ninja Immutable Databases'Immutable' databases operate under the principle that data or objects should not be modified after they are created. Once again they hold the promise of providing strong consistency combined with horizontal read scalability, and built-in caching. Are Immutable databases a new idea? Are they different in any way from the mainstream RDBMSs. ( 22 Sep 2014 ) by Robert Young

Life After Retirement: Replacing Visual SourceSafeSource control systems aren't exciting, and they don't come less exciting than Visual SourceSafe. Developers continue to use it but Microsoft will soon be retiring the product officially. What's the best strategy then? TFS? Not if you are looking for the most painless approach. ( 31 Mar 2011 ) by John O'Neill, SourceGear

Backups as a Cloud Service - an Alternative ViewIn most databases, very small percentage of data changes between SQL Server backups. We tolerate this because it keeps things simple, and we have grown used to cheap storage and fast networks. To exploit the value of Cloud services, should we be rethinking this in favour of backup strategies that optimise resilience and minimise downtime? ( 29 Apr 2013 ) by Feodor Georgiev

The Red Gate Guide to SQL Server Team-based DevelopmentThis book shows how to use a mixture of home-grown scripts, native SQL Server tools, and tools from the Red Gate SQL Toolbelt, to successfully develop database applications in a team environment, and make database development as similar as possible to "normal" development. ( 02 Nov 2010 ) by Red Gate Books

TortoiseSVN and Subversion Cookbook Part 4: Sharing Common CodeMichael Sorens continues his series on source control with Subversion and TortoiseSVN by describing several ways one can use to share code among several projects. ( 13 Feb 2012 ) by Michael Sorens

Group Policy Software Deployment: Extraction to InstallationWhen you have a large number of PCs in the domain on which to deploy software, based on the role of the user within the organization, and you haven't a large budget, then Group Policy Software Installation is a good and simple way to do it. ( 13 Mar 2013 ) by Joseph Moody

How to Take an Asp.Net MVC Web Site Down for MaintenanceKeeping a customer facing web site up and performing well is a challenge, especially when you are still adding new features. While providing an "always on" experience for users is preferred there are times when it is easier to take the site "down for maintenance" and fix those things that are just too difficult and costly to do with the site up. Jon Smith describes his solution to a controlled "down for maintenance" approach for ASP.NET MVC sites. ( 07 Jan 2016 ) by Jon Smith

Set-based Constraint Violation Reporting in SQL ServerWhen you're importing data into an RDBMS in bulk and an exception condition is raised because of a constraint violation, you generally need to fix the problem with the data and try again. The error won't tell you which rows are causing the violation. What if you've thousands of rows to search when it happens? There are solutions, writes William Sisson. ( 07 Oct 2014 ) by William Sisson

SQL Server Internals: In-Memory OLTPIn this book Kalen Delaney introduces and explains how the new In-Memory OLTP engine works. The Hekaton internals knowledge offered in this book will help you migrate existing tables or databases to Hekaton, and get faster performance from your SQL Server applications than you ever thought possible. ( 15 Oct 2014 ) by Kalen Delaney

Using SQL Prompt to Accelerate the Top 10 Most Common Database ScriptsThere may be some people who enjoy repetitive typing, but Grant Fritchey doesn't. He's always preferred SQL Prompt. The standard snippets suit developers fine but aren't so DBA-oriented, so he set about asking the SQLServerCentral community what they typed in the most, and set about producing a set of DBA snippets with the results. ( 04 Nov 2015 ) by Grant Fritchey

Benjamin Pollack: Geek of the WeekBenjamin Pollack is well known for his work on Fog Creek Copilot, and Kiln. He is famous amongst young geeks for his role in a documentary film and website 'Aardvark'd: 12 Weeks with Geeks', which plotted his internship with Fog Creek back in 2005. ( 06 May 2011 ) by Richard Morris

Does your app need an independent data layer?This article looks at the benefits and drawbacks of building an independent data layer into your application. ( 03 Oct 2005 ) by Steve Joubert

Amazon's Aurora: A Distributed SQL Database Alternative For MySQL ApplicationsSQL-based distributed Cloud Relational databases aren't new, but Amazon's Aurora offers an alternative to SQL Azure, and, being MySQL-compatible, provides the obvious route to the cloud for hosted LAMP web applications. Is this of interest to the rest of us? Rob Sheldon investigates. ( 15 Jan 2015 ) by Robert Sheldon

An interview with Josef Richberg - The Exceptional DBA of 2009Josef Richberg, a DBA with HarperCollins Publishers, has been selected by judges and the DBA community as winner of 2009's Exceptional DBA Awards, sponsored by Red Gate Software. Freelance writer Bob Cramblitt spoke to Richberg about the role of the DBA and the importance of sharing knowledge with the community. ( 03 Sep 2009 ) by Bob Cramblitt

Alert-based Transaction Log Backups - Automate your database Maintenance Part 2Part 2 of Allen White's "SQL Server Automation" series demonstrates how to use 'performance condition' alerts for more effective database log backups during periods of high database activity. ( 20 Apr 2007 ) by Allen White

Let there be SilverlightJohn Bower stays calm, and so will you, whilst guiding you to producing your first Silverlight application. It may just be 'Hello World' but soon... ( 05 Jan 2008 ) by John Bower

Some Books on Programming SQL Server 2012It is a measure of the range of facilities that are available to the database developer nowadays that three different books on the same general topic of TSQL programming  can actually complement each other. ( 21 Feb 2013 ) by Robert Sheldon

Book Review: Microsoft SQL Server 2012 Bible A broad topic requires a thick book. the Microsoft SQL Server 2012 Bible is the work of several authors and comes to 59 chapters, yet it has all been edited into a single work that provides most of what you need to know about SQL Server outside your own specialization. ( 12 Oct 2012 ) by Robert Sheldon

Hosting .NET Reflector in your own ApplicationYou can automate .NET Reflector processes, and run .NET Reflector from within IDEs or other applications. You can even use it as a web control within a browser! . Here Nick shows how to develop a web control that accepts metadata for a method, uses .NET Reflector to disassemble the method and displays the decompiled output in a web page. ( 22 Mar 2009 ) by Nick Harrison

Why bother with backupBackup is good for you, like eating a good diet and getting exercise. Unfortunately, folks are about as successful with backups as they are with diet and exercise. ( 25 Apr 2005 ) by Douglas Reilly

Working with Continuous Integration in a BI Environment Using Red Gate Tools with TFSContinuous integration is becoming increasingly popular for database development, and when we heard of an implemention of a system based on TeamCity, TFS, SQL Source Control, SQL Compare, and SQL Data Compare, we were interested to find out more. Grahaeme Ross gives a practical guide to how it was achieved. ( 14 Jun 2012 ) by Grahaeme Ross

Questions About Devops that IT Pros are Too Shy to AskDevOps isn't a particular technology, nor a job role. It is more of a software development method, initiating originally from system administrators, that promotes ways of enhancing collaboration and communication between development, QA, and IT operations throughout the entire software delivery pipeline with the aim of faster software delivery. Adam Bertrand answers the four most common questions that IT Pro's wonder about, but seldom ask publicly. ( 29 Jun 2015 ) by Adam Bertram

Protecting SQL Server DataJohn Magnabosco's excllent new book, "Protecting SQL Server Data", holds the key to encryption without fear. In it, John Magnabosco sweeps away some of the misconceptions surrounding SQL Server's encryption technologies, and demonstrates that, when properly planned and implemented, they are an essential tool in the DBA's fight to safeguard sensitive data. ( 20 Aug 2009 ) by John Magnabosco

.NET Reflector Pro to the rescueAlmost all applications have to interface with components or modules written by somebody else, for which you don't have the source code. This is fine until things go wrong, but when you need to refactor your code and you keep getting strange exceptions, you'll start to wish you could place breakpoints in someone else's code and step through it. Now, of course, you can, as Geoffrey Braaf discovered. ( 19 Apr 2010 ) by Geoffrey Braaf

Working With the ANTS Profiler to Optimize SharePointWhen a page in SharePoint takes 30 seconds to load, it is time for any developer to be concerned. There is much to be gained by taking the obvious steps of removing functionality that is not required, but at some point, you'll need to take a close look at the code to see what parts need optimizing. Shereen Qumsieh describes how she reduced loading time to less than a third of what it had been. ( 20 Apr 2009 ) by Shereen Qumsieh

SSN Matching Speed PhreakeryOn, a group of people interested in experimenting with heavily optimised SQL techniques try them out on a problem, using reasonbly large amounts of data. They aren't so interested in explaining the techniques, so Kathi continues on her mission to explain the lessons learned and the tips that can be derived. ( 05 Aug 2010 ) by Kathi Kellenberger

Aspect-oriented Programming and Code Contracts in ASP.NET MVCThere are some aspects to application programming, such as logging, tracing, profiling, authentication and authorization that cut across the business objects. These are difficult to deal with in an object-oriented paradigm without resorting to code-injection, code-duplication or interdependencies. In ASP.NET MVC, you can use attributes in the form of action filters to provide a neater way of implementing these cross-cutting concerns. ( 31 Oct 2013 ) by Dino Esposito

Safe(r) Custom User-AuthenticationIf you are still storing passwords with MD5 hashing you're doing it wrong. The .NET platform provides a Cryptography library that allows you to develop PBKDF2 user authentication to the standards of the Open Web Application Security Project. Tom Fischer explains the background, shows a solution, and discusses the issues. ( 12 Jun 2015 ) by Tom Fischer

Windows Runtime: Fielding the Obvious QuestionsWinRT, the Windows Runtime, was launched by Microsoft to some puzzlement. How does it relate to COM? Is it a replacement for .NET or SilverLight? is it the same as Windows RT? Why is it important? Michael answers these questions and more. ( 22 Aug 2013 ) by Michael McLaughlin

Routing the ASP.NET WayASP.NET MVC is built on top of ASP.NET's HTTP handlers and ad hoc URLs. The process of routing a URL to the correct controller/action pair makes it far easier to create any website that plays a more versatile role than merely serving file-based pages. ( 20 Nov 2012 ) by Dino Esposito

The Value of Professional AssociationsIf you're a technical professional, it is a good idea to belong to a professional association. There are several to choose from, and they all provide benefits. It is worth checking what each of the associations state as being their primary goal, before deciding which ones are right for you. ( 31 Aug 2012 ) by Buck Woody

{smartassembly} software for code obfuscation {smartassembly} is a tool for ensuring that the source code your commercial .NET application isn't visible to anyone with .NET Reflector. Matteo, who writes for us about encryption in .NET, asked if he could write a review of {smartassembly} for Simple-Talk. Because we like the product too, and Red Gate Software had recently taken over the product, we were happy to agree. ( 28 Jan 2010 ) by Matteo Slaviero

A TDD Journey: 3- Mocks vs. Stubs; Test Frameworks; Assertions; ReSharper AcceleratorsTest-Driven Development (TDD) involves the repetition of a very short development cycle that begins with an initially-failing test that defines the required functionality, and ends with producing the minimum amount of code to pass that test, and finally refactoring the new code. Michael Sorens continues his introduction to TDD that is more of a journey in six parts, by implementing the first tests and introducing the topics of Test doubles; Test Runners, Constraints and assertions ( 01 Aug 2014 ) by Michael Sorens

Automate the Complete Windows Environment Setup and ConfigurationBoxstarter is an open-source application that enables you to do the unattended install of everything required to turn bare metal, Azure VM or Hyper-V VM into a working Windows Server. It is built on top of Chocolatey, Nuget, and PowerShell to make the repeated installation of windows-based machines into an automated error-free process. Matt Wrock, Boxstarter's creator, explains how to use it. ( 25 Mar 2014 ) by Matt Wrock

Managing Test Data as a Database CI Component - Part 1Constructing a test environment for your databases can be a difficult task at the best of times. Once you've actually acquired the hardware needed and architected the environment, you still have to arrange and securely transport the data. And with the rising demand for fast feedback and continuously integrated processes, having all of this automated and operating at speed is a challenge all of its own. ( 03 Feb 2015 ) by Tim Hidalgo

Adding Public Domain Data to your Software Demos with RWith all the extensions that are available, it is astonishing how little R code is required to achieve impressive BI graphics. You can even use R to take the latest data from a table in a website and apply it to a map in just a few lines of code: and here they are, with Sergei's explanation.. ( 27 Nov 2013 ) by Sergei Dumnov

Using partial classes to make intelligent datasetsThis article looks at how partial classes can be used to implement business logic into datasets so that they are more business aware and intelligent. ( 13 Jul 2005 ) by Amirthalingam Prasanna

Geek of the Week: Tom IgoeArduino is cheap and simple way that desktop computers can monitor the physical world, and control devices. It is an open-source platform based on a simple microcontroller board, and a software development environment, ideal for teaching. We decided to find out more from Tom Igoe, from Arguino's team. ( 30 Mar 2012 ) by Richard Morris

Database Cloud Backup CribsheetA secure cloud-based file system that can provide offsite backup is better than no offsite backup, but is there a beter way? Are there more opportunities in offsite backup for improving disaster recovery, or providing a scalable archive? ( 06 Mar 2013 ) by William Brewer

Exceptionally MysteriousIf you are adept in puzzling over the cryptic messages in your stack trace, when a .NET exception is thrown, you may be surprised when they start talking complete nonsense. Is it really possible that two threads could build the stack trace on the same exception object at the same time? ( 11 Sep 2008 ) by Robert Chipperfield

Revisiting Hosting ReflectorYou can automate .NET Reflector processes, and run .NET Reflector from within a .NET application, from within ASP.NET or even within ASP.NET MVC. What is more you can host a reflector Add-in. This opens up many possibilities as Nick Harrison points out. ( 23 Feb 2012 ) by Nick Harrison

Voting Paradoxes: a SQL StumperVoting systems can become very complex, and some of them are easy to manipulate by tactical voting. Joe takes a couple of voting systems and wonders how you would implement them in SQL. He's even more curious as to how you, the reader, would do so. ( 28 Oct 2011 ) by Joe Celko

Implementing Cluster Replication - Part 1Imagine that you're researching Continuous Cluster Replication, looking for a simple, direct guide to the basics of getting it set up and running. What do you do if everything you find is either too specialised, or goes into far more detail than you need? If you're Brien Posey, and you can't find that practical, to-the-point article, you roll up your sleeves and write it yourself. To kick off, he tackles the rather tedious task of setting up a Majority Node Set Cluster. ( 23 Sep 2009 ) by Brien Posey

SQL Enlight for SQL Server Management StudioThe process of doing SQL code-reviews used to be tedious and error-prone. Until SQL Enlight, it was a process that was difficult to automate for release and deployment. As it is now both a Command-line utility and an SSMS add-in, the database developer can see immediately the parts of the code that would raise eyebrows with the vigilant production DBA. ( 10 Dec 2013 ) by Grant Fritchey

SQL Server TackleboxInside the SQL Server Tacklebox you'll find day-to-day tools, scripts and techniques to automate and standardize SQL Server installation, document and report on your servers, migrate data and manage data growth, troubleshoot performance issues, receive notifications of impending issues, secure access to your servers and fight off the data corruption monster ( 15 Jul 2009 ) by Rodney Landrum

Release Testing Is Risk Management Theatre"You cannot inspect quality into a product" - Harold Dodge. The adoption of˙Continuous Delivery˙often leads to the discovery of suboptimal practices˙within an organisation, and the˙Release Testing antipattern is a˙common example. Steve Smith explores the questions: what is Release Testing, and why is it an example of Risk Management Theatre? ( 21 Jan 2015 ) by Steve Smith

The Importance of CachingPerformance tuning and optimization definitely have their place in minimizing SQL Server Licensing costs - by helping keep CPU utilization low. But it's important to remember that the fastest and most efficient query possible is the one that you never execute against your SQL Server. That might sound trite, but it's at the heart of caching - which is key to helping organizations save significant money on SQL Server licensing costs while simultaneously enabling better application performance and increased scalability. ( 04 Feb 2015 ) by Michael K Campbell

StreamInsight Service for Windows AzureStreamInsight is an important technology for tracking streams of data from several sources to spot significant trends and react to them. It now runs as an Azure service as well. Roger Jennings describes how to install it and try it out. ( 24 Jan 2013 ) by Roger Jennings

Bowled Over by SQL Window FunctionsWhat better way to learn how to construct complex CHECK CONSTRAINTs, use the SQL 2012 window frame capability of the OVER clause and LEAD analytic function, as well as how to pivot rows into columns using a crosstab query? Create the SQL code to score Ten-pin Bowling, of course. Dwain Camps explains the how, what and why. ( 26 Jan 2015 ) by Dwain Camps

Automated Deployments: The Tester's TaleWhy should an automated deployment process be such an advantage? Once a process is scripted reliably, it can be repeated without human error, and is therefore testable. It also means that it is less tiresome, and is therefore done more often. Problems surface quicker and are caught more easily. That's not all, as Ben the Tester explains. ( 23 Nov 2012 ) by Ben Adderson

On Remembering Secure PasswordsTroy Hunt believes that it is time that we stopped kidding ourselves that we are capable of remembering different secure passwords for all the sites we use. We can't use the same password in more than one site, and passwords must be fit for purpose. So what's the solution? ( 08 Sep 2011 ) by Troy Hunt

Capturing Screenshots for Automated Error-ReportingSo often, a screendump will explain a great deal about a bug, and prevent much frustration in the process of error-reporting. For EAP testing or user-acceptance testing, it can speed up the whole process dramatically. Including a screendump with an automated error-report isn't hard either, as Jonathan Evans explains ... ( 01 Mar 2011 ) by Jonathan Evans

Extending Exchange 2010 Shadow Redundancy Cross ForestWhen a customer asks for an Exchange Server feature that you have no idea how to implement, and you just get one item coming up on Google, then you've got the blues. Antoine relates the struggle from that point to successful delivery of the feature. ( 01 Dec 2011 ) by Antoine Khater

Shouldn't Your ASP.NET MVC Apps Support Localization?An increasing number of applications are being designed to be configurable by the user to display content in a one of a number of alternative languages, currencies, date formats and other cultural aspects. It is better and easier to make such localization support intrinsic to the design rather than to retro-fit it. So what is the best way of doing so in ASP.NET MVC? ( 19 May 2014 ) by Dino Esposito

The JavaScript Landscape in Broad BrushstrokesJavaScript has come a long way from its humble origins as a simple interpreted object-oriented language for browser-side scripting of web pages. It's many inadequacies, poor debugging and testing, and its design weaknesses, have now been circumvented by frameworks and libraries. JavaScript is now ubiquitous, but is it now suitable for a central role in corporate applications? ( 30 Jul 2014 ) by Konrad Lukasik

How to Avoid Software Projects FailingAlthough it is necessary to deliver a software project on budget, to schedule, to the right quality, it isn't, by itself, sufficient to ensure success. It has to be be what all the participants expect and want. To achieve all this requires a balancing act, with tradeoffs and compromises, but it is great when you get it right. Dwain gives advice from hard-won experience. ( 02 May 2013 ) by Dwain Camps

Generating Test Data in TSQLTo test SQL, you need test data. There are usually many reasons why you can't use production data. Although it is usually enough to use a utility to generate test data, sometimes your requirements will compel you to resort to code to supplement this. Hugo shows how he used SQL and C# to generate large volumes of test data involving related columns and complex distributions. ( 14 Jan 2014 ) by Hugo Kornelis

Using SignalR to Create Mobile ApplicationsSignalR isn't just for web applications. It can also provide the basic real-time communications for a connected Windows Universal Application or even iOS and Android applications. Christos Matskas demonstrates how to get started with creating applications across a range of platforms that require real-time communication using SignalR ( 16 Nov 2015 ) by Christos Matskas

PowerSMO at Work Part 2In part 3 of Dan Sullivan's in-depth exploration of PowerSMO, the versatile command line utility for managing SQL Server databases, he describes how to control the identity that SMO uses to login to SQL Server, how to set up Server activity monitoring, and how to create standalone PowerSMO scripts, suitable for use in a production environment. ( 12 Mar 2007 ) by Dan Sullivan

Falling off the Web LogGetting statistics out of website usage isn't a real problem. There are many ways to do it and plenty commercial packages that provide a 'turnkey' solution. The real problem is getting your hands on those elusive, meaningful statistics that will give you true insight into the effectiveness of your website and advertising campaigns. ( 18 Jan 2007 ) by William Brewer

Jorge Segarra: DBA of the DayJorge Segarra, also known on Twitter as 'SQLChicken', was one of the finalists of the Exceptional DBA award this year. He lives and works in Tampa, Florida. As well as working as a DBA, he's a Hypervisor for the PASS Virtualization Virtual Chapter and chapter leader of the PASS Professional Development Virtual Chapter, and has also co-authored the book from Apress "Pro SQL Server 2008 Policy-Based Management". ( 26 Nov 2010 ) by Richard Morris

Online Exchange BackupsIn the third of Jaap's popular series on Exchange Backups he explains Online backups. These have major advantages over offline backups since the backup application does all the logic, and work, for you. ( 18 Oct 2008 ) by Jaap Wesselius

Building an Exchange Server 2007 environmentOf course, changing a 32,000 mailbox system, based in 40 Exchange Servers, to a centralised 25,000 mailbox solution is not a difficult task as long as you follow the Microsoft guidelines; It just takes patience, and time to understand Exchange's storage design principles. Jaap describes the design process and shares his experiences with the chosen server hardware. ( 29 Jun 2009 ) by Jaap Wesselius

Silverlight-Speed LoopJohn Bower steps up a gear, produces a Lamborghini, and examines the process of using a high-speed function loop to create a fast-paced Silverlight application. ( 18 Jan 2008 ) by John Bower

SQL Backup 6: Wind of ChangeOne could be forgiven for thinking that there is little more you can do with any third-party Backup software than just backup databases. It takes a DBA who has to use such software every day in a real commercial setting to appreciate the full implications of the improvements that have been made to SQL Backup for version 6. It is the hard-working DBAs who are best-placed to judge whether it is all worth-while. So we asked DBA Shawn McGehee to give us his true thoughts on SQL Backup 6. ( 03 Aug 2009 ) by Shawn McGehee

David Atkinson: The who, what, when, where, why and how of software testingRed Gate Software's approach to testing is famous for its precision and thoroughness. So what's it like to be a tester in such an exacting environment? David Atkinson, Red Gate's test manager, gives us a glimpse behind the scenes. ( 16 Apr 2007 ) by Bob Cramblitt

An Introduction to Unified MessagingFor many years, everyone involved in the administration of offices has wished that there was a way of combining the voicemail, fax, the PBX with the Exchange Email system, particularly for highly mobile users. . With Exchange Server 2007, this has now become a reality. Even though it forces the Exchange Administrator to become familiar with telephony, the benefits are such that it is well worth the effort. ( 26 Mar 2009 ) by Brien Posey

Restricting Outlook Client Versions in Exchange 2007There are good reasons for preventing old versions of Outlook from connecting to Exchange Server. You'll probably, at least, want to do it for security. Before you do so, you'll also need know what versions are out there being used so you can make sure that blocking of legitimate users is prevented. Ben Lye explains how it is done. explains ( 29 Jul 2009 ) by Ben Lye

Book Review: The Phoenix ProjectAfter hearing from Grant Fritchey that "Anyone who wants to know what DevOps really means should read this" Claire Brooking picked up a copy of The Phoenix Project. This parable of an IT project on the brink of destruction is told with humor and insight. Claire reviews the book, finding that conflict, incidents and mistakes are inevitable - what counts is how the team members grow to manage and resolve them. ( 15 Oct 2014 ) by Claire Brooking

SQL Server Performance Troubleshooting with SQL Monitor 5Any SQL Server monitoring tool must gather the metrics that will allow a DBA to diagnose CPU, memory or I/O issues on their SQL Servers. It should also provide a set of accurate, reliable, configurable alerts that will inform the DBA of any abnormal or undesirable conditions and properties, as well as specific errors, on any of the monitored servers. This article provides an in-depth guide to the monitoring and alerting functionality available in one such tool, Redgate SQL Monitor. It focuses on the latest edition (5.0), which includes several key new features, such as performance diagnosis using wait statistics, the ability to compare to baselines, and more. ( 10 Sep 2014 ) by Tony Davis and Grant Fritchey

A Generic ASP.NET MVC TemplateWhen you start an ASP.NET MVC project, you choose one of a number of project templates or starter kits. The ones that Visual Studio provide are very useful, but you can create your own if you want, and Dino finds that the generic one that he presents in this article works well to rapidly create MVC applications. ( 19 Mar 2012 ) by Dino Esposito

Creating and Configuring a Custom Offline Address book with Web-Based Distribution in Exchange 2010 Using PowerShellThe offline address-book (OAB) of Exchange is available when the user is not connected, Since Exchange 2007, it is updated via a Web-based distribution point. But what if you need to set up several Offline address-books for a variety of sites or geographical regions, each to be distributed by a different point? How would you do that? Krishna demonstrates. ( 04 Mar 2012 ) by Krishna Kumar

OCS Disaster Recovery Part 1Office Communications Server stores its data in a variety of locations, which can make backing it up and disaster recovery a slightly tricky business. Thankfully, Johan Velduis is here to tell which databases and fileshares we need to worry about, and give us peace of mind. ( 16 Jun 2010 ) by Johan Veldhuis

Data Science Laboratory System - Distributed File DatabasesDistributed File Databases manage large amounts of unstructured or semi-structured data. They are designed on the principle of splitting up the data into multiple locations, and then placing the code that processes each fragment close, or directly on, that location. Buck Woody shows how to install Hadoop in your Data Science lab to experiment with an example of the breed. ( 21 Mar 2014 ) by Buck Woody

A TDD Journey: 6- Mini-Factory Pattern; Don't Care Terms Michael Sorens wraps up his TDD journey by discussing a number of tools and techniques, such as the mini-factory design pattern and the 'don't care' capability, that can be used in TDD (Test-Driven Development)t to increase the likelihood that you can approach 100% code-coverage. ( 01 Aug 2014 ) by Michael Sorens

Data Science Laboratory System - Testing the Text Tools and Sample DataAnyone who is frequently faced with preparing data for processing needs to be familiar with some industry-standard text-manipulation tools. Awk, join, sed, find, grep and cat are the classics, and Buck Woody takes them for a spin in his Data Science Laboratory ( 15 Jan 2013 ) by Buck Woody

SQL Source Control - no more database development without itJohn Rummell had a problem that is shared by most database developers. How can one use SQL Server Management Studio to put source control files into a source control system such as SubVersion? The processes he tried were all error-prone and awkward to use. And then he found a solution. ( 03 Aug 2010 ) by John Rummell

Monitor Server Tasks with ASP.NET SignalR and BootstrapDespite the fact that browsers were designed specifically to get information from the server only by requesting or 'pulling' it, developers have always yearned to be able to push data to browsers from the server. Typically, it would be to display, within a web page within the browser, the progress of a long-running task. Now ASP.NET SignalR and Bootstrap make it possible, with care. Dino explains how. ( 14 Sep 2015 ) by Dino Esposito

Configuration Management with PowerShell and XMLFor the rapid delivery of any software application, there must be an effective configuration management system that is scripted. As the application increases in size it becomes more important that configuration information is kept in one place, without repetition, in version control. How to achieve this in practice? Konrad Lukasik explains a working solution. ( 03 Jun 2014 ) by Konrad Lukasik

Introduction to Continuous Integration ServersSo you've got your database under source control, and now you want to start running automatic tests and builds with it. Welcome to the world of continuous integration. Rob Chipperfield guides us through the fundamentals of continuous integration servers, with advice on what to think about when choosing one, and insights into how your database and application structures can affect your choice. ( 19 Jun 2014 ) by Robert Chipperfield

SQL Server and .NET Training and Career Development (part 2)In Part I of this series, I discussed the role and value of conferences in the career development of SQL Server and .NET developers. In this article, I move on to discuss online technical forums, focusing on what to do before you post on a newsgroup or forum in order to derive maximum benefit from them, and avoid trying the patience and goodwill of the forum community. ( 22 Mar 2006 ) by Douglas Reilly

How to Become an Exceptional DBA, 2nd EditionA 2nd edition of Brad McGehee's popular "career guide" for DBAs, designed to help new and prospective DBAs find their feet in the profession, and to advise those more-experienced on how they can excel at their jobs, and so become Exceptional DBAs... ( 30 Jul 2009 ) by Brad McGehee

Missing Date Ranges- the SequelAlex Kozak returns with another Date puzzle. A readers question gives Alex the inspiration to see if is possible to list unused date ranges in one Select statement. ( 16 Jun 2008 ) by Alex Kozak

An Introduction to Messaging Records ManagementThere are a number of features in Exchange that can be used in creative ways to solve problems in Exchange as they crop up. Ben Lye recently found a great use for Messaging Records Management when hit hit the problem of a meeting-room mailbox that stopped replying to booking requests. Here he shows how to apply policies that apply to all folders of a particular type, and how to schedule a regular task to do it. ( 07 Jul 2009 ) by Ben Lye

An Introduction to Microsoft Office 365 Microsoft Office 365 is the hot new Cloud suite coming out of Redmond, but information about it is either hard to come by, or a little fragmented. We asked Brien to take a look, and boil it all down to the essentials that everyone, including non-technical managers, needs to know. ( 13 Jan 2011 ) by Brien Posey

Upgrading to Exchange Server 2007: Part 2Jaap completes his series on the necessary steps to migrate an existing installation of Exchange to Exchange Server 2007. He deals with the problems of installing the Hub Transport server, moving policies and mailboxes and decommissioning the old servers ( 26 Mar 2009 ) by Jaap Wesselius

The SQL of Parts ExplosionsParts explosions present a classic IT problem. How can one calculate such things as weight or cost of assemblies in SQL? Joe shows how it can be done using nested sets, with not an IDENTITY or GUID in sight.. ( 30 May 2013 ) by Joe Celko

SQL Server backupStrategies for keeping data available - second in a series exploring major facets of SQL Server backup. ( 08 Aug 2005 ) by Douglas Reilly

Custom Metrics for Monitoring Database MirroringSQL Monitor comes with plenty of metrics, but there are always going to be things that you want to measure that can't be done 'out of the box'. Taking database mirroring as an example, Grant shows that custom metrics can be used to monitor and alert whatever aspect of SQL Server or database that you need. ( 16 Apr 2013 ) by Grant Fritchey

Centralizing and Analyzing SQL Backup Pro Backup and Restore DataThe more servers that a DBA is responsible for, the more important it is to have an automated way of documenting and reporting the admin events and activity in these servers. It is particularly useful to know about the outcomes of backups and restores. ( 16 Jan 2013 ) by Rodney Landrum

Debugger visualizersDebugging is an important process for any level of programming to ensure programs function as expected. Most productive developer environments provide tools and utilities to assist with the debugging process. Visual Studio.NET 2005 is equipped with a number of debugger visualizers, but users can also create their own based on an individual project. ( 05 Sep 2005 ) by Amirthalingam Prasanna

Database Branching and Merging StrategiesSource control will allow you to maintain branches in the development of your database, but the subsequent merge isn't pain-free. How, from the practical perspective, can the database developer support the rapid development and delivery of features in an application? Versioning, branching and merging is part of the solution, but what about the rest of the solution? ( 18 Jun 2014 ) by Tony Davis

Developing for Delivery, a Practical ExampleRichard Morris interviewed Michael Stoop, a database developer at Calvi, Europe's leading provider of Telecom Invoice Management software. The discussion focused on how Calvi transformed their database delivery process to accommodate massive database growth, statutory regulations, and developments in their application. Here's their story. ( 17 Sep 2013 ) by Richard Morris

Clive Sinclair: Geek of the WeekAlthough most of the geeks of the IT industry are famous for their software, it was the geeky entrepreneurs that changed society by bringing cheap microcomputers to the market. Sir Clive Sinclair is most famous for applying his background in electronic engineering to provide a whole generation, both in America and Europe, with their first taste of programming. ( 21 Jan 2016 ) by Richard Morris

Conrad Wolfram: Geek of the WeekConrad Wolfram is the 'younger Wolfram' of Wolfram Research, the company behind Wolfram|Alpha and Mathematica. He wants to transform the way in which we engage with mathematics. In particular, he would like to reform mathematics education to make greater use of information technology, and he is also leading the way with interactive publishing technology. ( 06 Feb 2015 ) by Richard Morris

The cost of poor website performanceThe business impact of varying page download time has not, until now, been defined. This article provides data that allows website owners to understand the business impact of their web application performance. ( 13 Mar 2006 ) by Simon Galbraith

The Mindset of the Enterprise DBA: Delegating WorkA lot of the routine jobs demanded of a DBA can be automated, but a tougher prospect is to automate these jobs in a way that the requestor rather than the DBA can actually set of the job running themselves without compromising security and without risk. Is it true to say that some tasks can be made self-service? In the final part of his series, Joshua considers delegation. ( 17 Oct 2014 ) by Joshua Feierman

PowerShell Day-to-Day SysAdmin Tasks: Events and MonitoringThe automation of routine admin tasks isn't the end of the story. You have to be aware of whether they have succeeded, and how long they've taken. When you have a lot of tasks, you have to consider how you can oversee logs and results from a single console that provides both detail and overview, and warns of problems. Nicolas explains how. ( 12 Jan 2016 ) by Nicolas Prigent

Practical PowerShell Unit-Testing: Mock ObjectsPester allows you to automate the testing of PowerShell scripts. It can test the output of a function as you develop it by validating simple data (scalars) and arrays, Pester allows you to focus on the one function you want to test by using 'mocking' to fake all the other functions and Cmdlets, It also uses Parameterized tests save you from writing essentially the same test over and over with just a different input value ( 04 Nov 2014 ) by Michael Sorens

Connected Development with SQL Server Data ToolsAlthough SQL Server Data Tools (SSDT) encourages 'disconnected' database development, it also provides the SQL Server Object Explorer (SSOX) tool in SSDT's Visual Studio shell to connect to a live development instance or view an SSDT project once all references have been resolved. ( 26 Jan 2016 ) by Edward Elliott

Og, Sumerian DBAA tale from the days when civilization was young and everything was harder than it is now ( 30 Dec 2009 ) by Larry Gonick

Raw Materials: InsatiableYou can never have enough (fill in the blank). ( 26 Aug 2009 ) by Larry Gonick

How to Get Management Buy-In for Software purchasesThere is a good chance that the process of purchasing software or hardware in your organization involves several people. DBAs will often initiate a request, but are not normally trained in the arts of influencing the management decision process to ensure that essentials get purchased. It is becoming essential to understand how to get Management support for software purchases. Dan offers nuggets of wisdom. ( 02 Mar 2009 ) by Dan McClain

.NET Reflector FAQ (Frequently Asked Questions)Bart tackles all the commonly asked questions about .NET Reflector. Each answer is done as a separate blog post so that your comments, contributions and or supplementary questions can be put as comments to the various blog posts. ( 13 Aug 2009 ) by Bart Read

Non-Breaking Online Database DeploymentsFor an experienced database developer, the idea of doing non-breaking database deployments while the database is still online holds respect but only a little fear. If your test procedures are good, you attend to the detail, and the application interfaces are properly managed, it can be achieved. Ed Elliott explains some of the issues to tackle. ( 21 Jul 2015 ) by Edward Elliott

Beginning Distributed Version Control with MercurialThe move from client-server version ontrol systems (VCS) to distributed version control systems can be bewildering. Tom uses his experience of moving to Mercurial to explain those aspects of the move that are liable to cause confusion to anyone steeped in the culture of the traditional VCS. Rebase, Push, Pull and Merge explained! ( 02 Apr 2013 ) by Tom Fischer

View-Models with Flags in WPFEnums in .NET are strongly-typed constants that allow you to share a multi-valued property across applications. When used in a XAML application with view-models it can provide a design choice that greatly simplifies the handling of related boolean attributes. ( 29 Oct 2012 ) by Tom Fischer

.NET Memory Management and FinalizationIn this excerpt from his new book, Practical Performance Profiling: Improving the Efficiency of .NET Code, Jean-Phillipe Gouigoux discusses the Dispose mechanism and the finalization process in the context of .NET Garbage Collection ( 02 May 2012 ) by Jean-Philippe Gouigoux

Improving Web Page PerformanceVisitors to a website are put off by having to wait for pages to load. Additionally, Google uses the metric to rank your site. Why, when there are tools and techniques around to help reduce web page lethargy, do we still experience slow page-loads? David Berry provides the simple ways of finding and fixing the problems. ( 21 Aug 2015 ) by David Berry

High Availability or High Recoverability?Having pierced the veil of confusion surrounding High Availability, Wesley David finds himself asked (and being asked) whether HA is worth the money it burns through. Perhaps it's more cost-effective to have a recovery process that moves like greased lightning? ( 01 Aug 2011 ) by Wesley David

Using the T-SQL PERCENTILE Analytic Functions in SQL Server 2000, 2005 and 2008Percentiles give meaning to measurements by telling you the percentage of the population being measured who get higher or lower values. They are now easier to calculate in SQL, and are useful for reporting; but are the new analytic functions faster and more efficient than the older methods? Dwain Camps demonstrates, and investigates their relative performance performance. ( 18 May 2015 ) by Dwain Camps

Windows Store App Contracts Windows Store Apps use contracts to declare the interactions that they support with other apps and with the 'Charm Bar'. They bind your app to other 'Metro' style apps and to the system user-interface: They provide a great deal of functionality for little programming effort. ( 14 Jan 2013 ) by Ambily Kavumkal Kamalasanan

Scott Shaw: DBA of the DayScott Shaw was one of the finalists to the 2011 Exceptional DBA Award (XDBA). The award was founded in 2008 to recognize the essential but often overlooked contributions of DBAs, the unsung heroes of the IT community. In this interview, Scott describes the challenges of being a DBA in a busy Healthcare company, and his work for the DBA community. ( 24 Jan 2012 ) by Richard Morris

Raw Materials: The NightmareIt's good to identify with your work, isn't it? ( 07 Jul 2009 ) by Larry Gonick

Exchange backups on Windows Server 2008NTBackup lives no more, replaced by VSS backups. Unfortunately, "Windows Server Backup" didn't work with Exchange Server 2007 until now. Exchange Server 2007 Service pack 2 contains a backup plug-in that makes it possible. Although pretty limited compared to full backup application like Microsoft Data Protection Manager or Symantec Backup Exec it does what you want it to do: create backups. Jaap explains... ( 24 Aug 2009 ) by Jaap Wesselius

Update: Exchange Server 2010 Release CandidateExchange Server 2010 Release Candidate is now available for download from Technet, so we asked Jaap to review it for us. ( 18 Aug 2009 ) by Jaap Wesselius

Virtual Exchange ServersMicrosoft now supports running Exchange Server 2007 in server virtualization environments, not just on Hyper-V, but on any virtualizing solution that is validated in the Server Virtualization Validation Program. Before virtualizing Exchange Server, you will need to be clear about the business advantages, and consider the size of the installation, otherwise the results can be a disappointment ( 20 Nov 2008 ) by Jaap Wesselius

Optimizing Exchange Server 2007Brien Posey ponders an 'off the cuff' remark that Exchange 2007 runs so well with a default configuration that you don't even have to worry about optimizing Exchange any more. He decides that there is actually plenty that can be done to help Exchange to perform even better ( 24 Nov 2008 ) by Brien Posey

Azure Data LakesThe Data Lake is basically a large repository of data for 'big data' analytic workloads, held in its original format. The Azure Data Lake adds Data Lake Analytics, and Azure HDInsight. Although the tools are there for Big Data Analysis, it will require new skills to use, and a heightened attention to Data Governance if it is to appeal to the average enterprise. ( 20 Nov 2015 ) by Robert Sheldon

Configuring Exchange Server 2007 to Support Information Rights ManagementIn Exchange Server 2007, Information Rights management is easy to set up once you have set up the prerequisites. It is also much cheaper, and easier to use. This is just as well, because of the increasing statutory regulations to prevent the mishandling of confidential information in emails ( 02 Oct 2008 ) by Brien Posey

VALUES() and Long Parameter Lists - Part IIThe use of the comma-separated list of parameters to a SQL routine, that Phil Factor calls the 'comedy-limited list, is a device that makes seasoned SQL Database developers wince. The best choice of design for passing variable numbers of parameters or tuples to SQL Routines varies according to the importance to you of SQL Standards. Joe Celko discusses the pros and cons of the front-runners ( 28 Oct 2010 ) by Joe Celko

James Hong: Big in the IT BusinessJames Hong was one of a generation of entrepreneurs who fell into the role almost accidentally by creating an application purely for their own age-group. Unlike many others, James has learned from his experiences and has become a successful advisor to, and investor in, startups, Here, he gives sage advice about surviving in the technology business. ( 28 Jun 2012 ) by Richard Morris

SQLTAC A workhorse for database choresIn which William Brewer, our software reviewer, goes through the spectrum of emotions whilst using SQLTAC until deciding that, quirks and all, it is very useful. He ends up feeling that the world of Software Tools will be enriched by this maverick offering, one that tackles a series of database chores, and does them rather well ( 03 Feb 2008 ) by William Brewer

Rapid SQL Server Database DeploymentWith the right tools, it is possible to rapidly deploy upgraded databases. By deploying early in development, it's easier to iron out any potential problems that the new deployment could cause in production long before it's time to actually release the software. Tony Davis explains. ( 21 Feb 2014 ) by Tony Davis

Supporting Large Scale Team DevelopmentWith a large-scale development of a database application, the task of supporting a large number of development and test databases, keeping them up to date with different builds can soon become ridiculously complex and costly. Grant Fritchey demonstrates a novel solution that can reduce the storage requirements enormously, and allow individual developers to work on their own version, using a full set of data. ( 16 Mar 2011 ) by Grant Fritchey

What is Behaviour Driven (Database) Development?Behaviour Driven Development is not always clearly understood, and the term is particularly unfamiliar in database circles. Seb Rose introduces us to the fundamentals of BDD, and make some suggestions for how it might be relevant to database development. ( 05 Mar 2015 ) by Seb Rose

MongoDB vs. Azure DocumentDBIf you are familiar with MongoDB you may be wondering how Azure's DocumentDB service compares. In this article David Green gives us a look. Note that Azure DocumentDB is evolving very quickly, so some of the limitations mentioned in this article may have already been removed. ( 21 Apr 2015 ) by David Green

Migrating to Microsoft BPOS - Part IBy now, you've probably heard of Microsoft's latest foray into the PaaS arena - Office 365 - but you might not know that Microsoft's BPOS offering is going to be a component of this latest incarnation. If you're considering either of these platforms, Johan Veldhuis' clear and comprehensive guide to Migrating from Exchange to BPOS is essential reading. ( 16 Dec 2010 ) by Johan Veldhuis

ANTS Profiler Saves Me From A Sordid FateA bit of string concatenation never hurt anybody, right? Think again. Carl Niedner has been designing software since 1983, and was shocked to find his latest and greatest creation suddenly plagued with long loading times. After trying ANTS Profiler, he discovered one tiny line of forgotten concept code was causing his pain. ( 18 Feb 2010 ) by Carl Niedner

Performance Optimization in Bastion Using ANTS Performance ProfilerSmooth performance is vital in videogame design. Andrew Wang explains how ANTS Performance Profiler has helped him to track down misbehaving code and optimize performance in Bastion, the debut game from Supergiant Studios. ( 07 Jun 2011 ) by Andrew Wang

When to Run and When to BlockWhen you are developing a multi-threaded application, you will need to understand how the operating system decides which threads are to be blocked, and which should run. Performance comes from running the optimum number of threads at all times, getting the maximum benefit from the computers processing resources. ( 21 Apr 2009 ) by Andrew Hunter

Raw Materials: Preparing for DisasterWhere does annoyance leave off and catastrophe begin? ( 14 Oct 2009 ) by Larry Gonick

The Zen of Code Reviews: Pre-Review CommentsCode Reviews can have a great deal of benefit if they are done well and thoroughly. They are done best if it it isn't a chore for the reviewers. If you make as easy as possible for them by explaining the background to the edits and pointing out the significant changes, then the process goes far better for all: But how would you go about doing that? Michael Sorens explains. ( 10 Mar 2015 ) by Michael Sorens

TortoiseSVN and Subversion Cookbook Part 9: Server, Repository, and StatisticsIn the ninth installment of his popular series on using Subversion, Michael describes how to set up a simple Subversion server for a multi-user project and describes some of the reports, charts and tables you can get about the activity in your project ( 11 Feb 2013 ) by Michael Sorens

The JavaScript Overload and Micro FrameworksYou can achieve a lot with HTML5 and CSS, but only if you employ JavaScript libraries as well. It used to be possible to restrict down to one or two libraries, but nowadays, the pressure is on to do more with a web page with such features as touch gestures, dynamic DOM updates or CSS switches. Is there such a thing as too much Javascript? Are we near the limits of what we can do with this technology? ( 21 Nov 2014 ) by Dino Esposito

Mission Critical: SQL Server UpgradeYou're faced with the task of doing a SQL Server Upgrade? Do you know all the steps, and the right order to do them? You do? Even with interruptions and distractions? Maybe, but it is wise to be able to refer to the Mission-Critical Task checklist. ( 13 Apr 2010 ) by Buck Woody

SQL Server, PostgresSQL and Fish CurryAn interview with Adam Machanic, discussing hot new features of SQL 2005, stored procedures, fish curry and more ( 16 Aug 2006 ) by Tony Davis

Agile Techniques for developing SQL Source ControlIn this interview, Stephanie Herr, Development Manager for SQL Tools at Red Gate, talks about the recent SQL Source Control development project. As a certified Scrum Master, Stephanie was keen to use Agile techniques throughout the development process, and she explains how the team maximized user feedback and ensured that customers got what they wanted, as quickly as possible. ( 03 Aug 2011 ) by Richard Morris

SQL Response: Choosing Our Words CarefullyHistorically, the profession of "technical author" emerged from the nascent aerospace and technology industries following the war, and brought with it a military-style rigidity of approach to standards and formality. But documenting (and putting words into) software in 2008 is very different from documenting the wiring of a cockpit in a fighter jet in 1952; perhaps we need to relax more. and be more like Google. ( 17 Sep 2008 ) by Brian Harris

Operations Manager: A Big Tinker SetTo illustrate the great possibilities of Systems Center Operations Manager 2007, Thomas shows how to create a Custom Monitor for SQL Agent Jobs, and concludes that Operations Manager is nothing more than a big tinker set with all the pieces available to make your working life easier. ( 28 Oct 2008 ) by Thomas LaRock

The Bejeweled Puzzle in SQLAlex Kozak provides another SQL puzzle to hone your SQL Skills with. ( 09 Oct 2008 ) by Alex Kozak

AuguriesRaw Materials: In his quest for certainty, Arthur plays chicken with common sense. ( 23 Apr 2009 ) by Larry Gonick

Raw Materials: Order! Order!Leibniz breaks out of a buyer's dilemma that might defeat a subtler mind. ( 23 Jun 2010 ) by Larry Gonick

Book Review: Defensive Database Programming With SQL ServerIt distils a great deal of practical experience; the writing of it was a considerable task; It packs in a great deal of information. Alex's book shows how to write robust database applications, and we can all learn from it. We took the book to a critic who never minces his words, and were relieved to find that Joe Celko liked it. ( 10 Jun 2010 ) by Joe Celko

Bertrand Meyer: Geek of the WeekBertrand Meyer, the author of 'Object-oriented Software Construction', renowned teacher, and designer of the Eiffel programming language, believes in simple elegant computer languages. Java, C# and Python all owe much to his pioneering work with Eiffel. He was also deeply involved with .NET from the outset. ( 17 Sep 2012 ) by Richard Morris

Measuring and tracking usabilityCan you define usability in a single score? And if you are to measure and track an attribute, you must first define it. ( 09 May 2005 ) by David Travis

A Developer's Look at the SharePoint 2013 App MarketplaceSharepoint has been redesigned to allow independent third-party developers to provide 'apps' that extend SharePoint's functionality, either via client-side execution or by using a separate server. They're available via an 'apps store'. Sounds familiar? Yes, just like a phone, but for SharePoint developers. ( 27 Nov 2012 ) by Damon Armstrong

Tips and Tricks about Razor Partial ViewsPartial views in ASP.NET MVC allow you to reuse and customise components to act like user controls. They consist of both code and markup. They are an idea that is easy to grasp but they have great potential for the more adventurous developer who is prepared to experiment. Dino Esposito explains. ( 23 Nov 2015 ) by Dino Esposito

Looking Back; or How to Improve Your Team with RetrospectivesInstead of waiting until the end of a project to ask 'what worked and what didn't, why not use regular retrospective analysis as part of the development process to find out what is, and isn't, working, and learn from the conclusions there and then? ( 23 Aug 2012 ) by Jeremy Jarrell

Remote Debugging in Visual Studio: Squashing Bugs in their Native EnvironmentThere are already third-party applications that help you to debug .NET applications remotely, or at least get enough information to diagnose the fault successfully. However, VS2010 allows you to debug remote applications. Is this the ideal way of doing it? How do you set it up? What are the pitfalls? Clive Tong explains. ( 05 May 2011 ) by Clive Tong

Eliminating Viruses with UAC and AppLockerIt is important to prevent computer viruses from infecting a network within an organisation; Joseph Moody walks us through the setup and management of User Account Control (UAC) and AppLocker, which together provide network administrators with a powerful defense against malicious applications. ( 23 Apr 2013 ) by Joseph Moody

Creating a custom Login page for federated authentication with Windows Azure ACSWindows Azure Acess Control Service (ACS) provides a way of authenticating users who need to access web applications and services without having to factor complex authentication logic into the application itself. It is surprisingly easy to create a custom login page that delegates the authentication process to an identity provider ( 29 Aug 2012 ) by Anton Staykov

Software Engineering: Just How Immature is it?"Facts and Fallacies of Software Engineering" by Robert L. Glass has become a classic of Software Engineering as cherished as 'The Mythical Man-Month: Essays on Software Engineering' by Frederick P. Brooks. They seem as radical today as when first written, mainly because the software industry repeatedly fails to learn from its mistakes. Dwain Camps reviews the book. ( 12 Jun 2015 ) by Dwain Camps

Archiving Hierarchical, Deleted Transactions Using XMLWhen you delete a business transaction from the database, there are times when you might want to keep a record of the data for posterity. This can become somewhat complicated if the transaction you need to delete is in a table that is the parent of a deeply nested hierarchy of dependent tables based on the foreign key relationships. In this article, Dwain Camps looks at a tidy means of doing just that. ( 30 Dec 2014 ) by Dwain Camps

Continuous integration for databases using Red Gate toolsOnce databases are placed in source control, it is possible to integrate them into the existing build automation process.  This will ensure that the whole development project, including the database, can be  integrated regularly and tested by an automated build system. This, in turn, leads to opportunities for more frequent, reliable deployments. ( 07 May 2013 ) by David Atkinson

PowerShell Desired State Configuration: The Basics'Desired State Configuration (DSC) is an essential part of the configuration, management and maintenance of Windows-based servers. It allows a PowerShell script to specify the configuration of the machine using a declarative model in a simple standard way that is easy to maintain and understand. Nicolas introduces the basic DSC concepts and provides a simple example of using the 'Push' model of DSC. ( 10 Feb 2016 ) by Nicolas Prigent

Jodie Beay and the Deployment of the Cross-Database DependencyWhen you use AdventureWorks as a practice database, have you ever looked at the code and thought 'what idiot did this', or 'what did the DBAs think when they saw that?' Subconsciously, you occasionally forget it isn't real and 'fill in the back-story'. The SQL Release Team at Redgate did the same with their own practice database, and imagined a cast of characters wrestling with the difficulties of deploying it. ( 03 Nov 2015 ) by Peter Gerrard

Wherever I Lay My Hat: Release Management in TeamCity with Redgate DLMWhere you have multiple services, applications and databases in your environment, and perhaps with high levels of scrutiny and governance, you'll probably want a Release Management system for deploying database and application code together: You can, alternatively, use a separate Release Management component. But for simpler applications, you can use your existing build system such as TeamCity to deploy changes. Using a database deployment example, Richard Macaskill shows how. ( 23 Dec 2015 ) by Richard Macaskill

Raw Materials: Mediocrity DefendedSomebody Has to Do It, Apparently. ( 11 Nov 2009 ) by Larry Gonick

Raw Materials: Mirror, Mirror, on the DeskSeeing ourselves as we see ourselves. ( 17 Mar 2010 ) by Larry Gonick

Responsive Web Design: Relying on the Form-FactorFor visitors to get a good experience from your website irrespective of the device they use, you need to do more than just accommodate to the dimensions of the browser in pixels. To take it to the next level, you need to know about the device and its capabilities and characteristics. If we are facing ever-more diverse devices that can access the web, is it time to understand how to serve web-pages based on the 'form-factor'? ( 07 Oct 2014 ) by Dino Esposito

Top Six SQL Monitor Metrics for AnalysisMany SQL Server metrics tell their story best when displayed together on the same graph, so you can see how the things you're measuring vary against each other, over time, in order to gain a summary of the stresses on the server. So what six metrics should you choose? Grant comes up with his six favourite diagnostic metrics. ( 03 Apr 2013 ) by Grant Fritchey

Dr Byron Cook: Geek of the WeekOn moving to Cambridge University after developing the SLAM model checker used by Microsoft's Static Driver Verifier, Dr Bryan Cook's new computer locked up with what turned out to be a faulty driver. The result was TERMINATOR, the first practical tool for automatically proving that any application would always terminate. ( 27 Sep 2010 ) by Richard Morris

Audit CrosschecksIn this short article, the second of a 2-part series, William suggests a solution, using SQL Data Compare 6.1, for providing an independent cross-check of database transactions to determine whether they have been retrospectively altered. ( 24 Jan 2008 ) by William Brewer

Mimicking Network Databases in SQLUnlike the hierarchical database model, which created a tree structure in which to store data, the network model formed a generalized 'graph' structure that describes the relationships between the nodes. Nowadays, the relational model is used to solve the problems for which the network model was created, but the old 'network' solutions are still being implemented by programmers, even when they are less effective. ( 26 Sep 2011 ) by Joe Celko

Implementing Cluster Continuous Replication, Part 2Cluster continuous replication (CCR) helps to provide a more resilient email system with faster recovery. It was introduced in Microsoft Exchange Server 2007 and uses log shipping and failover. configuring Cluster Continuous Replication on a Windows Server 2008 requires different techniques to Windows Server 2003. Brien Posey explains all. ( 19 Nov 2009 ) by Brien Posey

Females ExplainedRaw Materials Comic Strip:Language can mean more than we intended, or less. ( 22 Mar 2009 ) by Larry Gonick

Integrating Database Lifecycle Management into Microsoft's Application Delivery ProcessIn order to automate the delivery of an application together with its database, you probably just need the extra database tools that allow you to continue with your current source control system and release management system by integrating the database into it. If you're using the Microsoft stack, then Redgate's tools can help with some of the difficult database parts of the process, as Jason demonstrates. ( 09 Mar 2015 ) by Jason Crease

Moving to Office Communications Server 2007 R2 Office Communications Server 2007 R2 has some exciting new features, which make its deployment well worth considering. Desmond focuses on using the side-by-side method to migrate existing OCS RTM servers and clients over to R2, which you can likewise adopt to create an entirely new R2 installation. ( 05 May 2009 ) by Desmond Lee

Memory Profiling: Turning the Scarily Complex Into the Ingeniously SimpleThere are user interfaces that just seem to work naturally, such as Spreadsheets, email clients, or word processors. Even some development tools have reached a shared maturity. What about memory profilers? How can you represent the way that memory is being used in an application? How can you make it simple to use, yet sophisticated enough to track down complex memory problems? ( 22 Apr 2009 ) by Stephen Chambers

TortoiseSVN and Subversion Cookbook Part 3: In, Out, and AroundSubversion doesn't have to be difficult, especially if you have Michael Sorens's guide at hand. After dealing in previous articles with checkouts and commits in Subversion, and covering the various file-manipulation operations that are required for Subversion, Michael now deals in this article with file macro-management, the operations such as putting things in, and taking things out, that deal with repositories and projects. ( 16 Jan 2012 ) by Michael Sorens

Self-maintaining, Contiguous Effective Dates in Temporal Tables'Temporal' tables contain facts that are valid for a period of time. When they are used for financial information they have to be very well constrained to prevent errors getting in and causing incorrect reporting. This makes them more difficult to maintain. Is it possible to have both the stringent constraints and simple CRUD operations? Well, yes. Dwain Camps patiently explains the whole process. ( 10 Mar 2015 ) by Dwain Camps

Refactoring CSS with Sass and CompassCSS is still a valuable way of specifying the rendered style of HTML objects. By using a preprocessor to assist in generating the CSS, it can make it much simpler to develop and maintain a consistent style in a web development, despite the increasing complexity of the CSS standard. Sass and Compass, for example, can deliver clean, organized, and efficient CSS code, as Edward demonstrates. ( 16 Apr 2013 ) by Edward Charbeneau

Installing Third Party Software on Windows Azure - What are the options?Sometimes it is the simple questions about Azure that are hard to answer. A typical one is how to install third party software on Windows Azure. Altrhough it is possible, it isn't quite as intuitive as one might expect. ( 09 May 2012 ) by Wely Lau

Going to Extremes to Release Bug Fixes and New Features XP is no general panacea; but for the right team, and for a product that needs to release bug fixes and new features as fast as possible, its benefits are obvious. Working on one of Red Gate's most popular tools, SQL Prompt, Aaron Law and David Priddle use Extreme Programming (XP) . But is their adherence to XP a personal preference or does it bring real benefits? We sent Matt Hilbert to find out. ( 06 Jan 2015 ) by Matt Hilbert

Maintaining T-SQL Code Quality Using SQL Code GuardSometimes you need some functionality in your database build process that isn't quite available. Visual Studio Database projects don't have great ways of reviewing SQL code for potential errors, but is it possible to adapt a good command-line tool like SQL Code Guard that does the job well? Lukasz shows how to do it by using NuGet packages to integrate such tools with the project and the build process. ( 26 Jan 2016 ) by Lukasz Swiatkowski

Using the Filtering API with the SQL Comparison SDKRed Gate's SQL Comparison SDK provides a means to compare and synchronize database schemas and data from within your own applications, with a greater degree of control than the command line interfaces. Filters, introduced in V8.0, provide an easy way of limiting which database objects you deal with, and can be created with any arbitrary expression in a SQL-like syntax. ( 17 Apr 2009 ) by Simon Cooper

Handmade Claims-based Authentication for Old-fashioned ASP.NET SitesASP.NET's identity framework gives you everything you need for using Claims-Based identities. However, claims-based identities can be simulated in plain old ASP.NET by means of a custom principal if you have an internal username/password login provider, and need to be able to display more information about a user. ( 13 Apr 2015 ) by Dino Esposito

The ASs of Distributed ComputingWhat's The 'Cloud'? nothing more than one or more of three different types of distributed service, conceptually similar to any other service such as telephone or gas. These services provide Infrastructure, Software and platform. Buck Woody cuts a trail through the jungle of marketing verbiage to reveal the technology behind the Cloud.. ( 27 Feb 2012 ) by Buck Woody

Obfuscating Silverlight with SmartAssemblyIf you are in the .NET Software business, you have a problem. .NET assemblies can be read, and debugged, by the purchaser with almost the same ease as if you'd distributed the source code. This isn't always what you wanted or intended, so you'll need an application such as Smart Assembly. Khawar explains the simple process of protecting your company's assets. ( 02 Jun 2010 ) by Khawar Yunus

SQL Source Control - Less Pain for Red JungleAs a dedicated 'twitcher', Michael's eye is caught by a 'tweet' from Red Jungle. In this case, it was not an exotic species, but a user of SQL Source Control who was pleased with the way that it had saved them considerable time in the development process. Out of curiosity, Michael contacted them to find out more. ( 26 Nov 2010 ) by Michael Francis

Redesigning Red Gate's SQL Server Performance Monitoring and Alerting ToolIt isn't easy re-designing a successful tool, but it is fascinating work. Andrew Clarke talks about the challenges with Tom Randle and Adam Walker, the user experience designer and usability test coordinator, behind Red Gate's SQL Server monitoring and alerting tool SQL Response v2. ( 08 Jul 2010 ) by Andrew Clarke

The Wardrobe Compatibility MatrixThe Theoretical foundations of wardrobe security are little understood. ( 05 Apr 2009 ) by Larry Gonick

Taking ExceptionsSteve looks at the requirements that are usually in force for the support of a team-based 'production System' and suggests a way that exception-handling in C# can be used to provide robust error reporting ( 19 Jan 2008 ) by Steven R. McCabe

Philip Greenspun: Geek of the WeekPhilip Greenspun is probably best known to other geeks for his Tenth Rule of Programming: "Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp." Amongst the general public, he is most famous for founding ArsDigita and suffering the subsequent miseries that came from accepting venture capital. ( 14 Jul 2015 ) by Richard Morris

Database Deployment: The Bits - VersioningAlthough databases have no inherent way of recording their version numbers, SQL Server provides the means of doing so, and much more besides. This is a great advantage to anyone faced with the task of deploying databases without errors. ( 04 Feb 2013 ) by Phil Factor

Annotating Code with .NET Reflector and Review Add-InBen Hall takes a look at a simple add-in to .NET Reflector that helps team development work in a number of ways, and show how useful it can be in understanding how an API to a third-party assembly works. ( 27 Jan 2009 ) by Ben Hall

Towards a Better BetaDavid Connell describes how the team that developed Red-Gate's SQL Data Generator tool came to realise that database developers and DBAs already knew what they wanted for their test data. The team wanted to use the Beta version of the program to get a clear message from them. . And then came the daunting task of working out the best way of incorporating all this wisdom into the final product. ( 31 Mar 2008 ) by David Connell

Mission Critical: SQL Server General ConfigurationYou know how to set up a SQL Server instance, but it is great to have a list of all the necessary checks and procedures: even better is to have the link to in-depth explanations for every stage by the renowned SQL Server Expert Buck Woody. ( 24 May 2010 ) by Buck Woody

We don't need Source Control: we're Database DevelopersAs part of our long-running series of articles where we ask working database developers how database source control improves their work within development teams, we made the mistake of asking Hugh Bin-Haad, Database dev and relational theorist. ( 01 Apr 2014 ) by Hugh Bin-Haad

Raw Materials: Alternative EnergyRevenge is a dish best served cold, but body temperature's OK, too. ( 22 Jul 2009 ) by Larry Gonick

TortoiseSVN and Subversion Cookbook: Part 8: Log MessagesThere should always be a reason for a commit to source control, so why not make a log message mandatory when you commit, and make it easy add a link to a record in a bug-tracking system, or to another Log message? Michael Sorens explains how. ( 11 Sep 2012 ) by Michael Sorens

The Polyglot of Databases: How Knowledge of MySQL and Oracle Can Give SQL Server DBAs an AdvantageAlthough switching between different RDBMSs can be the cause of some culture shock for the Database Administrator,it can have its advantages. In fact, it can help you to broaden your perspective of relational databases, refine your problem-solving skills and give you a better appreciation of the relative strengths of different relational databases ( 14 Mar 2011 ) by Hugo Shebbeare

Application Security with Azure Key VaultThe name 'Azure Key Vault' hides a valuable Azure service that allows us to easily protect our Cloud data by putting sound cryptography in Cloud applications without having to store or manage the keys or secrets. This makes it far easier to manage cloud data in applications in a way that that complies with industry-standards for sensitive data. ( 08 Jan 2016 ) by Christos Matskas

Introduction to Bower, Grunt, and Gulp in Visual StudioDevelopers are now spending much more time writing and debugging JavaScript, CSS, HTML templates etc. Microsoft have responded by adding better tools for front-end development into their development environment, Visual Studio. In this article Jon Smith uses a sample application to demonstrate how he converted an existing ASP.NET MVC5 application to use these new tools ( 23 Feb 2016 ) by Jon Smith

Cloud Storage Replication Is Not BackupThe options that you need to select when setting up an Azure Storage service account allow you to specify the durability and high-availability of your data, but they don't provide for data recovery to a point-in-time. In fact, it means that some of the bad things that can happen to data are more efficiently replicated to all copies. Backup is quite a separate issue. ( 03 Feb 2015 ) by Mike Wood

Raw Materials: WaitingLeila learns patience ( 29 Jul 2009 ) by Larry Gonick

Raw Materials: Medical RecordsData security, meet national security. ( 18 Aug 2009 ) by Larry Gonick

Raw Materials: Ultimate UnionThe Brave New World of Virtual Romance. ( 09 Dec 2009 ) by Larry Gonick

The Poster of the Plethora of PowerShell PitfallsOne of the downsides of learning a new computer language is that transfer of training doesn't always work to your advantage. In fact, the habits you picked up in the past may now cause confusion. In this poster or wall-chart for long walls, Michael Sorens selects the thirty-six most common causes of confusion for anyone getting to grips with PowerShell. Forewarned is forearmed. ( 25 Jun 2015 ) by Michael Sorens

Mission Critical: Engine Pre-InstallationEven with a task you're entirely familiar with, it is always great to have a checklist to make sure it is all done. No? Have you never forgotten your car-keys? ( 31 Mar 2010 ) by Buck Woody

Data Science Laboratory System - InstrumentationIt is sensible to check the performance of different solutions to data analysis in 'lab' conditions. Measurement by instrumentation makes it easier to develop systems that are efficient. ( 18 Feb 2013 ) by Buck Woody

Jonathan Allen's Top 10 Favourite Simple Talk ArticlesWe asked several well-known readers of Simple-Talk to write about their all-time top ten favourite articles from Simple-Talk, and why these articles had particularly appealed to them.  First off the blocks is Jonathan Allen, a working DBA who has done so much for the community of SQL Server users in the UK. ( 06 May 2014 ) by Jonathan Allen

Simulating Web API - JSON Formatters in ASP.NET MVCThe Web API framework is a useful tool for building RESTful ASP.NET MVC4 applications, but it's not essential. Dino Esposito demonstrates how you can use MVC3 to simulate several of the really useful web API framework features, and still maintain a nice, clean controller method. ( 23 Jul 2012 ) by Dino Esposito

An Interview with James MooreJames Moore on why he insists that his devleopers use the appropiate third party tools in their work, the problems with Visual Studio, and what's happening in Red Gate's new .NET tools division. ( 22 Aug 2007 ) by Simple Talk

Raw Materials: Surface AreaSome surfaces are easy to overlook. ( 07 Jul 2010 ) by Larry Gonick

Minimizing the need to restore a backupIn the third part of this series, see how to configure your hardware to minimize the need to restore a backup. ( 15 Sep 2005 ) by Douglas Reilly

Don Woods: Geek of the WeekOf all the original thinkers in IT, few are as original or as amusing as Don Woods. INTERCAL, Colossal Cave Adventure, the Jargon file and the New Hackers' Dictionary all owe much to his irresistible brand of humour, and his immense knowledge and experience in IT. ( 13 Jul 2010 ) by Richard Morris

The Paradox of the Middle ManAs we get swamped by more and more information, and more and more choices, we're going to need more and more help filtering the data and making our choices...It's a paradox: the more we can remove middle men, the more we need them. ( 23 Apr 2008 ) by Neil Davidson

Giancarlo Niccolai: Geek of the WeekFalcon isn't exactly new. It is a scripting language that is designed with a number of programming paradigms for multi-threaded applications. It is growing rapidly in importance. Richard Morris decided to contact Giancarlo, the language's creator, find out why there was so much interest in it. ( 07 Jun 2010 ) by Richard Morris

Raw Materials: Data Revisions Raw Materials Comic Strip: A deleted table leaves some ghostly data behind... ( 28 May 2009 ) by Larry Gonick

Book Review: Pro SQL Server 2012 Relational Database Design and ImplementationA book on Relational Database Design and Implementation is always welcome, especially when written by one of Simple-Talk's most popular authors, Louis Davidson. Bob Sheldon casts the critical eye on the book and smiles upon what he sees. ( 28 Nov 2012 ) by Robert Sheldon

Business Intelligence and MicrosoftMicrosoft have a lot to offer for anyone who is engaged in using Business Intelligence. The problem is in pulling together all the products in order to paint a picture of the entire landscape. Three book shed light on several different aspects, but there is plenty more to discover. ( 05 Mar 2013 ) by Robert Sheldon

Team Foundation Server on Azure: First impressionsTeam Foundation Service, the hosted TFS service on Azure, together with Visual Studio 11, has now provided much of the functionality that was missing from the previous incarnation of TFS. Bahadir gives a summary of the new features as seen in the test service, and demonstrates why they are so useful for team-based development ( 29 Sep 2011 ) by Bahadir Arslan

SQL Monitor - Using the performance data smartlyHow does a Database Consultant use a tool such as SQL Monitor? The seasoned expert doesn't just dive into DMVs before considering baseline information, application stress and the interrelation of different factors over time, to understand what's changed. It is the art of putting performance data in context. ( 05 Feb 2013 ) by Feodor Georgiev

Windows Azure from a Data PerspectiveBefore creating a data application in Windows Azure, it is important to make choices based on the type of data you have, as well as the security and the business requirements. There are a wide range of options, because Windows Azure has intrinsic data storage, completely separate from SQL Azure, that is highly available and replicated. Your data requirements are likely to dictate the type of data storage options you choose. ( 22 Mar 2012 ) by Buck Woody

Data Science Laboratory System - Interactive Data ToolsData tools interact directly with data and are great for automating data data-aquisition, but they aren't always the best way to prototype or pilot a process. Interactive data tools also allow you to test and refine the process, until it is ripe for automation. ( 18 Mar 2013 ) by Buck Woody

Build Your Own Resource Monitor in a JiffyIt's great to be able to monitor a counter or any other changing metric while engaged in development work. You'd think that the two alternatives would be using a third-party tool or hacking a PowerShell script. Well no, because there could be an existing open-source PowerShell module that would do it for you, and with a little customization could give you precisely what you need. ( 14 Sep 2015 ) by Michael Sorens

Book Review: Windows Server 2012 Hyper-V CookbookWindows Server 2012 Hyper-V Cookbook is a comprehensive resource for administrators and consultants looking for practical examples of Hyper-V technology. Beginners unfamiliar with Hyper-V and those who have worked with earlier versions can benefit from this book. ( 15 Feb 2013 ) by Nirmal Sharma

Raw Materials: The Virtual AttendeeDo You Know Where Your Virtual Computers are Living? ( 02 Dec 2009 ) by Larry Gonick

Raw Materials: Rights RestoredDon't forget to watch your language ( 12 Aug 2009 ) by Larry Gonick

Simple-Talk Source ControlThere are a large number of articles on Simple-Talk that tackle the subject of Source Control, and the extension of source control into the practicalities of build and the deployment of application code and database together. Together, they cover a wide range of topics and contain a great deal of information and experience. ( 24 Sep 2013 ) by Simple-Talk Editorial Team

The Mindset of the Enterprise DBA: Harnessing the Power of AutomationAfter you have done the necessary groundwork of standardizing and centralizing your database administration processes, you are now in a position to implement some effective automation of some of these processes. Which ones do you choose, and how do you set about automating these tasks? ( 02 Sep 2014 ) by Joshua Feierman

Automating the Retrieval of SQL Backups from Windows Azure BLOB StorageIf your database server is in Azure, then it makes sense to do backups into Azure too. SQL Server 2014 supports backups to the cloud, and particularly well with Managed Backup. Once your backups are safely in an Azure BLOB, then what? Mike Wood takes up the story. ( 14 Feb 2014 ) by Mike Wood

On Creating a Live Style Guide for MVC Application DevelopmentBefore developing any browser-based application, you can both accelerate and coordinate development by creating a live style guide that displays the standards for layout, colour, widgets, typography, navigation, forms and structure. As it is itself an MVC application, it can help with implementation details as well as style. ( 28 Aug 2014 ) by Edward Charbeneau

SQL Test: Seeing Red Change to GreenNow that we have some very good test frameworks for SQL Server, particularly tSQLt, all that was missing was a way of running your unit tests from within SQL Server Management Studio, and 'seeing red change to green'. Now the wait is over, with the arrival of SQL Test in preview. Rob Sullivan is one of those users who are helping shape the way that SQL Test develops, and explains what is going on, and why. ( 13 Dec 2011 ) by Rob Sullivan

Installing SQL Backup on Multiple Servers using SQL Multi ScriptJason Cook shows you how you can use SQL Multi Script to install or upgrade your SQL Backup server components across the network in one go, rather than installing the components manually for each server. ( 06 Jun 2008 ) by Jason Cook

The Hybrid Cloud: Having your CakeAlthough the Cloud gives us the freedom of using, and paying for, computing resources only when we need them, the public cloud isn't a universal panacea. Private clouds can harness all that cloud technology whilst avoiding those security and bandwidth issues, but at a cost and commitment. Can one therefore get the best of both worlds with a Hybrid Cloud? Robert Sheldon explains all the ins and outs. ( 29 Jul 2014 ) by Robert Sheldon

Geek of the Week - Rebecca RiordanRebecca Riordan has written several books on database design, and understands how to present data for both the database and end users. ( 08 Jun 2005 ) by Douglas Reilly

Application Containers For Cloud ComputingContainers promise to make applications more portable and efficient. The technology, originally based on Linux's cgroups, provides a way of running several applications as modular, platform-agnostic packages in isolation on the same server. Docker's open-source approach to containers has dominated the market, and Microsoft is producing its own equivalent Windows system. What next? Will Containers replace VMS? Robert Sheldon investigates. ( 11 Feb 2015 ) by Robert Sheldon

Raw Materials: Four NinesJill's cloud looks like a winner. ( 14 Jul 2010 ) by Larry Gonick

Raw Materials: Og, Sumerian DBA, Part 2A disruptive innovation raises an old, old question. ( 05 May 2010 ) by Larry Gonick

Raw Materials: Recurses!An argument goes as far as it can and no further. ( 10 Feb 2010 ) by Larry Gonick

Raw Materials: Special Delivery AttemptBased on Numerous True-Life Experiences. ( 16 Dec 2009 ) by Larry Gonick

TortoiseSVN and Subversion Cookbook Part 10: Extending the reach of SubversionSubversion provides a good way of source-controlling a database, but many operations are best done from within your database-development environmant. Fortunately, several products provide this integration ( 12 Feb 2013 ) by Michael Sorens

A TDD Journey: 5- Tests vs. Code; Refactor Friendliness; Test ParameterizationTest-Driven Development (TDD) has a workflow of writing some test code, and then writing some production code to make the test pass. That is necessary but not sufficient-you must also make sure the test and the code together are doing what you think! Michael Sorens continues his series by introducing Test case parameterization for avoiding code duplication with no additional code complexity. ( 01 Aug 2014 ) by Michael Sorens

The Art of SQL Server Filestream - eBook Download ( 22 Oct 2008 ) by Jacob Sebastian and Sven Aelterman

A Comprehensive Introduction to Cloud ComputingSo what is a PaaS, an IaaS or a SaaS? why would one need one? If you are still wondering about what the cloud can do for you, then it is time to read this indroduction ( 16 Dec 2011 ) by Wely Lau

Azure Active Directory Part 1: An IntroductionRick Rainey provides an Introduction to Azure Active Directory in this first article in a series on the cloud user directory service from Microsoft. ( 15 Oct 2014 ) by Rick Rainey

The SQL Server 2016 Query Store: Accessing Query Store Information Using DMVsThe SQL Server 2016 Query Store provides several new ways of troubleshooting queries, studying their plans, exploring their context settings, and checking their performance metrics. In using the Query Store to ensure that performance is as good as possible, it isn't long before it becomes important to be familiar with the DMVs that are associated with the query store, and using them in custom queries. ( 26 Jan 2016 ) by Enrico van de Laar

Implementing Continuous Integration for DatabasesContinuous integration (CI) is becoming more and more common in application development. It ensures code and related resources are integrated regularly and tested by an automated build system, and highlights problems early in the development process. But what about database development? Can the same advantages of CI be applied to production databases? Where do you start? How do you tackle it? Sjors Takes relates his experience. ( 02 Nov 2015 ) by Sjors Takes

Documenting SQL Server with PowerShellSQL Server instances are generally poorly-documented. How easily can you tell if something has changed? How easily can you check that there is adequate space for growth? Are you up-to-date with licenses? What errors are happening? Who has accessing the system? Before PowerShell, it was difficult to be on top of all this. Now you can, with the help of Sander's database documenter. ( 11 Feb 2016 ) by Sander Stad

Who Broke the Build?Continuous Integration and automatic builds are fantastic tools for software teams, but only if developers take responsibility for their code. Karsten Kempe explains how to use Team Foundation Server to drive better continuous integration, and walks through a simple (open source) tool he built to make nightly builds more transparent, and more valuable. ( 29 Aug 2014 ) by Karsten Kempe

8 Essential Best Practices in Windows Azure Blob StorageBinary Large OBject (BLOB) storage is the usual way of storing file-based information in Azure. Blobs are charged according to outbound traffic, storage space and the operations performed on storage contents. This means that the ways that you manage Blob Storage will affect both cost and availability. ( 27 Jan 2012 ) by Nuno Godinho

An Introduction to Windows Azure (Part 1)Windows Azure is the Microsoft cloud computing platform which enables developers to quickly develop, deploy, and manage their applications hosted in a Microsoft data center. As a PAAS provider, Windows Azure not only takes care of the infrastructure, but will also help to manage higher level components including operating systems, runtimes, and middleware. ( 19 Jan 2012 ) by Wely Lau

A TDD Journey: 4-Tests as Documentation; False Positive Results; Component IsolationIn Test-Driven Development (TDD) , The writing of a unit test is done more to design and to document than to verifiy. By writing a unit test you close a number of feedback loops, and verifying the functionality of the code is just a minor one. everything you need to know about your class under test is embodied in a simple list of the names of the tests. Michael Sorens continues his introduction to TDD that is more of a journey in six parts, by discussing Tests as Documentation, False Positive Results and Component Isolation. ( 01 Aug 2014 ) by Michael Sorens

Ins and Outs of the PowerShell PipelineFor many developers, understanding pipelining in PowerShell is like understanding reductive physicalism: you think you've just about got it, and then the brain blue-screens. Michael Sorens is inspired by his several efforts to explain pipelining on StackOverflow to attempt the definitive simple explanation for the rest of us. ( 22 Oct 2015 ) by Michael Sorens

Raw Materials: The Sensitive DBADerek is replaced, briefly. ( 13 Jan 2010 ) by Larry Gonick

Aiming for a Truly Responsive Web ExperienceResponsive Web Design (RWD) is starting to take off as a lightweight way to adapt websites for different screen sizes and resolutions, but does it do enough? Dino Esposito thinks we can go further, and offer a better experience to all users, by combining RWD with a server-side approach. ( 26 Sep 2013 ) by Dino Esposito

Raw Materials: Transportation Management Transportation Management is an information technology problem in more ways than one. ( 29 Apr 2009 ) by Larry Gonick

Expecting the WorstOptimists are often disappointed ( 23 Jun 2009 ) by Larry Gonick

Celko's SQL Stumper: The Class Scheduling ProblemWhat can we use in SQL instead of E. F. Codd's T theta operators for best-fit? Joe Celko returns with another puzzle that isn't new, in fact it already features "Swedish", "Croatian" and "Colombian" solutions in chapter 17 of Joe's 'SQL for Smarties' book. These were all written before CTEs or the new WINDOW functions. Is there now a better solution? Was there one even then? We leave it to the readers to provide the answer! ( 19 Jan 2010 ) by Joe Celko

Message Classifications in Exchange 2007In Exchange 2007, you can now classify your messages in any way you wish, so that, for example, you can flag messages as being sensitive information that should not be sent outside the company. You can also create transport rules for all messages of a particular category. It is an easy way of implementing email policies within a company: Neil Hobson shows you how ... ( 18 Sep 2008 ) by Neil Hobson

Mastering SQL Server ProfilerBrad McGehee's "from the ground up" guide to SQL Server's most powerful performance diagnostic tool... ( 30 Jan 2009 ) by Brad McGehee

The SysAdmin Handbook - The Best of Simple-TalkOf almost a hundred Simple-Talk articles on topics of interest to System Adminstrators, we've chosen the best and most popular ones for an essential collection that packs a great deal of information about common tasks for the working System Adminstrator. ( 07 Jun 2010 ) by Michael Francis

A case for canned SQLLike a Phoenix, the dynamic SQL versus canned procedures and user functions argument has resurfaced on the SQL newsgroups. Many of the proponents of the dynamic argument are web or Access developers, or developers of some other front end. Arthur takes another look at the argument. ( 18 Jan 2006 ) by Arthur Fuller

Backup to the Cloud: The Silver LiningOffsite backups are vital to data integrity, allowing for preservation and backup of data in catastrophic circumstances. Cloud backups have been around for a while, but are now really coming into their own. Tony Davis looks at how to get set up with cloud backups for restores and disaster recovery. ( 03 Sep 2013 ) by Tony Davis

Chet Ramey: Geek of the WeekThe BASH shell is the most popular UNIX command-line scriptable shell. It became the inspiration for PowerShell. As with so many standard components of the Open Source movement, there is a hard-working and dedicated individual who quietly supports the tool over many years. Chet Ramey maintains and extends BASH by himself, and we all give thanks to him for his dedication. ( 14 Dec 2015 ) by Richard Morris

Book Review: Troubleshooting SQL Server: A Guide for the Accidental DBA by Jonathan Kehayias and Ted KreugerExperienced DBAs have a wealth of experience to rely on when it's time to troubleshoot a problem, but it can be harder if you're just starting out. Brad McGehee reviews a book designed to get new and accidental DBAs up to speed on their troubleshooting skills. ( 22 Oct 2012 ) by Brad McGehee

Behind the scenes with the developers of .NET Reflector 6 and .NET Reflector ProLutz Roeder handed over responsibility for development of .NET Reflector to Red Gate nearly eighteen months ago. "What's been happening since then?", one might ask. The answer is "Rather a lot," as we found out when we sent Bob Cramblitt to the .NET team, also known as the "Managed Heap," to find out. ( 12 Feb 2010 ) by Bob Cramblitt

Green EnterpriseHow to Profit from saving the world, or not ( 17 Jun 2009 ) by Larry Gonick

Raw Materials: Beyond GlobalThere's more than one way to be green. ( 18 Aug 2010 ) by Larry Gonick

Moving to Office Communications Server 2007 R2 -Part 2In the second part of his article on Moving to Office Communications Server 2007 R2, Desmond looks into recommendations to standardize the client desktop to support the different R2 applications, other infrastructure concerns and migration of the remaining internal server roles before moving out to the Edge servers in the screened network. ( 24 Aug 2009 ) by Desmond Lee

Quick and Dirty Web Data-BindingSometimes, the sheer byzantine complexity of the typical JavaScript frameworks underlying a typical web application can give you pause for thought. If all you need is a simple way of creating a mobile-first application that involves creating simple markup templates, loading them into a DOM fragment and dynamically populating them with JSON data, then maybe a lean micro-framework like Mustache.JS would provide a better, leaner approach. ( 04 Feb 2015 ) by Dino Esposito

Raw Materials: Launch PartyDerek tries to augment the draw by adding features. ( 01 Oct 2009 ) by Larry Gonick

How to Build and Deploy Azure IaaS VMs with PowerShellThe whole point of using a cloud service is to be able to use it intensively for a brief period just when it is needed and then clear out all your work when you've finished. This means automation to make the process as quick and easy as possible. It is likely to mean creating a VM, provisioning it from scratch and spinning it up using PowerShell. Relax, grab the popcorn, and let Adam Bertram show you how he does it in Azure. ( 26 Jan 2016 ) by Adam Bertram

The Art of SQL Server FILESTREAM by Jacob Sebastian and Sven AeltermanFILESTREAM is implemented as an extension to the VARBINARY(MAX) data type and allows large object data to be stored in a special folder on the NTFS file system, while bringing that data under the transactional control of SQL Server. This book describes both the way it works and the implementation, adminstration and troubleshooting of it. ( 16 Oct 2012 ) by Jacob Sebastian and Sven Aelterman

Using Chrome and Visual Studio for Real Time CSS DevelopmentAlthough CSS editing tools exist that give you a measure of WYSIWYG, it is often more convenient to make small adjustments using the browser's built-in inspection tool and then repeating the changes back in your source. Now, there is a way to update the source automatically, faster and more reliably ( 10 Jan 2013 ) by Edward Charbeneau

SQLXML Bulk Loader: The SequelSQLXML isn't exactly new technology, and parts of it aren't pretty, but if you need to heave vast quantities of XML data into a SQL Server database then you may come to appreciate the raw speed of which it's capable. Adam Aspin shows how to configure the SQL XML Bulk Loader tool for optimal data loading performance. ( 25 Sep 2015 ) by Adam Aspin

Raw Materials: A Frank Exchange of ViewsDifferent Strokes for Different, um, Robots. ( 28 Oct 2009 ) by Larry Gonick

Making IT Work in the Public SectorThe Information Technology Reform Act, commonly known as the 'Clinger-Cohen' act, spelled the end of the 'Wild West days of federal IT'. By contrast, in the UK, the cowboys are everywhere in the public sector since the British Labour Government decided to bypass the Civil Service and use their favorite management and IT systems consultants to implement a host of unmitigated and shameful IT disasters. ( 30 Mar 2009 ) by David Craig

Acceptance Testing with FitNesse: Documentation and InfrastructureFitNesse is a popular general-purpose wiki-based framework for writing acceptance tests for software systems, including databases. It is intended to be easy for the tester to learn and use. In this article, Michael Sorens gives a 'view from the trenches' of Fitnesse's documentation and infrastructure. ( 23 Aug 2013 ) by Michael Sorens

Responsive Web Design: the CostsResponsive Web Design is devised to help you render your website or web-based application appropriately on different sizes and aspect ratios of browser windows. Adopting it as a solution comes at a cost: It can't help to render a particular design on a specific device such as a model of smartphone. It also can require considerable refactoring of an existing site design, its navigation and testing. It has to be done right. ( 26 Aug 2014 ) by Dino Esposito

The Road to Professional Database Development"In this Comunity Book project, I will describe everything that I believe a developer, versed in the art of procedural programming, needs to understand in order to write fast, efficient SQL Code. Your feedback will help shape the book, and determine exactly what is covered, and in what depth!" - Peter Larsson. ( 06 Jun 2012 ) by Peter Larsson

Practically Cloudy: SQL Server Disaster Recovery to Microsoft Azure - BackupsIn the first in a series on the practicalities of using the Microsoft Azure Platform for the SQL Server professional, Buck Woody shows that, whatever your version of SQL Server, there is a way of storing offsite backups in the cloud. ( 28 Jul 2014 ) by Buck Woody

Raw Materials: The Temptations of a DBADerek hears voices. ( 17 Feb 2010 ) by Larry Gonick

Raw Materials: TeamworkDerek suffers from fragmentation. ( 29 Sep 2010 ) by Larry Gonick

SQL Response: Does Everything Need a Name?Our overriding goal at Red Gate is to make our software more usable by "doing whatever works". That means to do whatever users are most likely to instinctively understand. As we analyse and consider every use of language in our applications, this sometimes leads me as a writer to ask the following question: ( 17 Sep 2008 ) by Brian Harris

SQL Search- The Search and the SequelIt started out as an experiment to try to explore different ways of creating a software tool that people would want. It ended up as a tool that Red Gate is giving away to the SQL Server community in return for the contribution to the project of so many of Red Gate's friends within the community. But was it easy to do? Bob Cramblitt and Richard Collins went to find out by talking to Tanya Joseph, who managed the project that turned the concept into a product. ( 02 Feb 2010 ) by Bob Cramblitt

Tracy Hamlin, Exceptional DBA of 2010, on what it means to go the extra mileTracy Hamlin has been elected by judges and the SQL Server community as the Exceptional DBA of 2010. The annual awards program, hosted by SQL Server Central and sponsored by Red Gate Software, drew the largest number of community votes in its three-year history. In the interview, Simple-Talk contributor Bob Cramblitt talks to Tracy to uncover the essence of an exceptional DBA. ( 18 Aug 2010 ) by Bob Cramblitt

Who Tests the Tester? It is scarcely surprising that it can take up to five years to release a new version of SQL Server when one understands the extent of the effort required to test it. When enterprises depend on the reliability of an application or tool such as SQL Backup, the contribution of the tester is of paramount importance. It is an interesting and enjoyable role as well, as Andrew Clarke found out by chatting to testers at Red Gate. ( 19 Feb 2010 ) by Andrew Clarke

IT Compliance and Software DevelopmentWhat is IT Compliance and is it really necessary for contemporary Agile applications to be constrained by the requirements of compliance? William Brewer argues that if the objective is rapid delivery of applications, then compliance controls must be understood as early as possible in development. ( 06 Feb 2015 ) by William Brewer

.NET Performance Testing and Optimization - The Complete GuideIn the Complete Guide .NET Performance and Optimization, Paul Glavich and Chris Farrell offer a comprehensive and essential handbook to anybody looking to set up a .NET testing environment and get the best results out of it, or just learn effective techniques for testing and optimizing their .NET applications. ( 08 Mar 2010 ) by Paul Glavich

Rob Malda, Geek of the WeekRob Malda, aka CmdrTaco and founder of Slashdot, achieves his elevation to being Simple-Talk's Geek of the Week through his unerring instinct for tracking down what is interesting for his Geek community, and through having the wisdom to continue to immerse himself in deeply technical matters whilst steering the good ship Slashdot. ( 18 Jul 2007 ) by Neil Davidson

Brain Teaser for Pi DayAlex has come up with a great idea for Pi Day. We should celebrate by trying to come up with a way, in SQL, of generating a an accurate value for Pi. If only Archimedes had possessed a laptop, his work would have been easier! ( 02 Mar 2009 ) by Alex Kuznetsov

Raw Materials: Recipe for DisasterA hardware problem disrupts a culinary algorithm. ( 06 May 2009 ) by Larry Gonick

Writing Build vNext tasks for Visual Studio OnlineHosted TFS, now called Visual Studio Online (VSO), has a new way of writing build processes called Build vNext. Agent tasks are the building blocks of processes and you can supplement the built-in ones with custom build tasks defined in JSON that use targets written in node.js or PowerShell. Jason Crease shows how to develop custom build tasks for building, testing, publishing and synchronizing databases. ( 09 Sep 2015 ) by Jason Crease

Distributed Computing - Hybrid Systems ConsiderationsWhen the Cloud was new, it was often presented as an 'all or nothing' solution. Nowadays, the canny Systems Architect will exploit the best advantages of 'cloud' distributed computing in the right place, and use in-house services where most appropriate. So what are the issues that govern these architectural decisions? ( 11 Jul 2012 ) by Buck Woody

Using C# to Create PowerShell Cmdlets: The BasicsAlthough PowerShell Cmdlets are usually written in PowerShell, there are occasions when the level of integration with existing C# or VB libraries is awkward to achieve with PowerShell. Yes, you can write Cmdlets in C# perfectly easily, but until now it has been tiresome to discover how. Now Michael Sorens shows you the simple route to writing effective C# Cmdlets. ( 19 Feb 2016 ) by Michael Sorens

Free Download of David Craig's book Simple Talk gives their subscribers an exclusive Ebook, Rip Off! by David Craig worth ś8.50 ( 30 Jan 2009 ) by David Craig

Monitoring SQL Server: An Interview with David BickSimple-Talk sat down with David Bick, a Red Gate Product Manager, to discuss his work on SQL Monitor and why passively monitoring SQL Server just doesn't cut it anymore. ( 10 Apr 2014 ) by Simple-Talk Editorial Team

Raw Materials: True LoveThe object of Derek's affection is, well, an object. ( 08 Sep 2009 ) by Larry Gonick

The Art of XSDWhen information is exchanged in XML format, you need an agreement between the sender and receiver about the structure and content of the XML document. This "agreement" takes the form of an XSD (XML Schema Definition Language) Schema. Jacob Sebastian's book explains all... ( 30 Apr 2009 ) by Jacob Sebastian

MySQL Data Compare: The Manual that Time ForgotMySQL Data Compare can both compare the data in MYSQL databases and also synchronise them. It is handy for a number of tasks for which MySQL has no built-in tools. Although it is intuitive to use and has online help, there has never been a manual; until now! ( 28 May 2013 ) by Michael Sorens

Acceptance Testing with FitNesse: Debugging, Control Flow, and TracingFitNesse is an automated testing tool for software. based on Ward Cunningham's Framework for Integrated Test. It is designed particularly for acceptance testing and works with both applications and databases. In part 4, Michael Sorens shows you how to debug with Visual Studio, manage control flow and enable tracing. ( 15 Nov 2013 ) by Michael Sorens

10 Items that should be in Every SysAdmin's Backpack, Episode 6 - From the Ministry of Silly ToolsWesley David has been doing a lot of thinking about what tools (both physical & virtual) every good SysAdmin should have on hand. He's shared some of those thoughts with us already, and now he rounds everything off with some more light-hearted necessities. ( 14 Dec 2010 ) by Wesley David

Raw Materials: Robotic ResourcesDerek is judged by a jury of his peers. ( 10 Mar 2010 ) by Larry Gonick

Raw Materials: The TerminatorI'm big and impersonal. Are you? ( 21 Apr 2010 ) by Larry Gonick

.NET Reflector Saved their Bacon: The Gremlins strike backQuite often, .NET Reflector is downloaded in an emergency. Whereas most of the users are developers who use it as a routine to explore objects and methods inside Assemblies, the occasional user is getting it because they are in desperate straits. We've always felt that we, and other NET Reflector users, would like to hear more about these real-life emergencies, so we sent Richard Morris to investigate. ( 24 Apr 2009 ) by Richard Morris

Database Deployment: The Bits - Copying Data OutOccasionally, when deploying a database, you need to copy data out to file from all the tables in a database. Phil shows how to do it, and illustrates its use by copying an entire database from one server to another. ( 15 Nov 2012 ) by Phil Factor

SQL Virtual Restore and the Sandbox Development EnvironmentIt is a problem to provide enough data for database development work, especially when it has to be managed, and has to comply with the conditions for using live data. Added to that are the constraints of disk space and the problem of providing risk-free deployment. Grant explains how three Red Gate tools and work together to provide a neat solution to providing the ideal sandbox development environment. ( 15 Jul 2011 ) by Grant Fritchey

Raw Materials: The Trojan HorseExcuse me, was that geek or Greek? ( 03 Mar 2010 ) by Larry Gonick

Raw Materials: Command-Line NostalgiaArthur finds philosophy deep in a dialog box. ( 28 Jul 2010 ) by Larry Gonick

Smelly CodeSometimes viewing a problem from a distance can clarify matters ( 10 Jun 2009 ) by Larry Gonick

Book Review: SQL Server Hardware by Glenn BerryBrad finds Glenn Berry's 'SQL Server Hardware' book to be a valuable reference, not so much for the actual hardware recommendations which will always go out of date, but more for the methodology for selecting hardware, and the wisdom that comes from long experience in doing so. ( 25 Sep 2012 ) by Brad McGehee

An Introduction to the OpenPOWER Foundation In a bid to challenge Intel's dominance of high performance computing environments, IBM have introduced OpenPOWER, a flexible open-source framework based on their POWER processor architecture. Robert Sheldon looks at the potential of this new platform. ( 03 Aug 2015 ) by Robert Sheldon

OCS Disaster Recovery, Part 2There are several possible disasters which might happen to your Office Communications Server environment. This will be everything from a file share which becomes corrupted, all the way over to a complete OCS server recovery. None of these will present a problem if you've prepared for disaster recovery beforehand. Johan explains what to do when disaster strikes. ( 31 Aug 2010 ) by Johan Veldhuis

Readying your Oracle Database for Your First Apex ApplicationAPEX can be a great way to create an application rapidly on an Oracle Database. Although it is generally straightforward, there are just a couple of things you have to watch out for. ( 14 Jun 2011 ) by David Njoku

Practical PowerShell: Pruning File Trees and Extending CmdletsOne of the most radical features of PowerShell is amongst the least known. It is possible to extend the buit-in Cmdlets to provide extra functionality. One can add or remove parameters to make subsequent scripting simpler. Michael shows how this is done to meet a practical requirement:, excluding entire subtrees from a recursive directory trawl for automating source control. ( 23 Apr 2012 ) by Michael Sorens

Raw Materials: Minds on FireAs some things cool down, others heat up. ( 06 Jan 2010 ) by Larry Gonick

PHP and Git on AWS Elastic BeanstalkBeanstalk provides a good way of deploying an application in the AWS infrastructure because you have the full control of underlying resources and you only pay for those that you use. It also supports Git, making development of AWS Elastic Beanstalk applications faster. ( 26 Mar 2012 ) by Shameer

Bureaucracy-Free Software DevelopmentCould it be that, if you adopt Test Driven Development, Continuous Integration and Continuous Deployment, then much of the bureaucracy of team-based software development becomes redundant? It is an intriguing idea which has led to a creative experiment. ( 27 Feb 2013 ) by Phil Wise and Michael Williamson

Azure BizTalk Services: Connecting to On-Premises ResourcesBy moving applications to Azure, you can't always avoid the requirement for accessing data from applications that are based within your intranet. You have a wide range of choices for doing this. Matt Milner explains that there are several technologies that can achieve this for BizTalk, but that will apply more generally. ( 04 Sep 2015 ) by Matt Milner

Debugging and Profiling in Visual Studio 2015Visual Studio 2015 has some greatly improved features for debugging and troubleshooting .NET applications. Probably the most significant one is in the diagnostic tools hub that allows profiling while debugging. Manuel Meyer explains all these useful new features ( 05 Jan 2016 ) by Manuel Meyer

Raw Materials: The CubeArthur takes some data for a spin. ( 25 Nov 2009 ) by Larry Gonick

Raw Materials: Hoop DreamsDerek has an 'accident' ( 04 Aug 2009 ) by Larry Gonick

Raw Materials: The Corrupt VendorEveryone has something to offer. ( 22 Oct 2009 ) by Larry Gonick

The Art of XSD - eBook DownloadWhen information is exchanged in XML format, you need an agreement between the sender and receiver about the structure and content of the XML document. This "agreement" takes the form of an XSD (XML Schema Definition Language) Schema. Jacob Sebastian's book explains all. Download the eBook. ( 07 Oct 2009 ) by Jacob Sebastian

Profiling SharePoint with ANTS Performance Profiler 5.2Using ANTS Performance Profiler with SharePoint has, previously, been possible, but not easy. Version 5.2 of ANTS Performance Profiler changes all that, and Chris Allen has put together a straight-forward guide to profiling SharePoint, demonstrating just how much easier it has become. ( 24 Dec 2009 ) by Chris Allen

Documentation: Shoulda, Coulda, WouldaEvery sysadmin knows that they should be documenting everything they can; not only is it good practice, it can be the difference between a speedy recovery and a lost job when something does go wrong. Barry Morrison delves into just what you should be covering, even if you think you can't spare the time. ( 04 Nov 2011 ) by Barry Morrison

Migrating to Microsoft BPOS - Part IIIn his last article, Johan gave us a crystal clear guide to preparing to migrate from an on-premises Exchange environment to a Cloud-based BPOS (Business Productivity Online Suite) environment. With the preparations complete, he now walks us through the final steps of the migration, and correctly configuring the environment. ( 14 Jan 2011 ) by Johan Veldhuis

Azure Event HubsIf you need to receive and process a large volume of packets of data, such as telemetry, or event-log items, it may be worth considering Azure Event hubs. They aren't like traditional messaging but represent more of a stripped down one-way event processing system for large volumes of data. It could represent a good solution to an ever-present problem, but is it ready for production use? Rob Sheldon investigates. ( 08 Jul 2015 ) by Robert Sheldon

The Logical Data Warehouse - Towards a Single View of All the DataWhat is wrong with the Enterprise Data Warehouse? Quite a lot, it seems. By taking the narrow view that the struggle is that of accommodating and interrogating huge quantities of data, then initiatives such as the Virtual Data Warehouse and Logical Data Warehouse could make sense. But what about data quality, security, access control, archiving, retention, privacy and regulatory compliance? ( 09 Nov 2015 ) by Robert Sheldon

Raw Materials: To Sleep, Perchance to GreenDerek drops off. ( 01 Jul 2010 ) by Larry Gonick

Raw Materials: Performance MetricsDerek adds some bells and whistles to the system. ( 19 May 2010 ) by Larry Gonick

The SQL of The Game of LifeJoe finds a reference to Conway's Game of Life whilst clearing out his desk, and is suddenly gripped with nostalgia. It wasn't just flares, mullets and disco, but simple computer games in interpreted basic. Somehow, Conway s Game of Life was too intriguing to be abandoned in the attic. Can it be implemented in SQL? Joe sets up a challenge. ( 05 Jun 2014 ) by Joe Celko

A Beginner's Guide to Virtualizing Exchange Server, Part 2 It isn't easy to measure the consumption of physical resources by servers in virtual machines, since each partition has its' own virtualised view of system resources. Not only that, but there is a subtle difference between virtual processors and physical processors. Brien Posey explains the special performance counters that can be used to get an accurate assessment, and goes on to describe how to test your physical servers to see if they are good candidates for virtualization. ( 10 Jun 2009 ) by Brien Posey

Using Exchange 2007 Transport Rules to Protect the First Entry in the Address BookGlobal Address Lists in MS Exchange can cause problems because the first person in the list often gets the reply. Ben Lye shows how one can eliminate any such problems with Global Address lists by creating a mail contact, a transport rule and a custom Delivery Status Notification. ( 08 Jun 2009 ) by Ben Lye

SQL Backup Pro for the Accidental DBAIf you've suddenly found yourself responsible for maintaining and backing up your company's servers, you're an 'accidental DBA'. If you've been dropped in the deep end, let Grant Fritchey show you through the backup and restore functionality of Red Gate's SQL Backup Pro, showing you how to schedule regular backups, compress, restore and document your backups with ease. ( 10 Jun 2011 ) by Grant Fritchey

Attack of the predatory sales forceLow-cost software is almost always a better solution, but if you must purchase the high-cost stuff, don't get caught with blood in the water. ( 15 Jul 2005 ) by Simon Galbraith

Mysteries of the NET Framework: The ChallengeWe're very aware that some of the brightest NET programmers want to use ANTS 4, but are on tight budgets. Have no fear, as we have ten copies to give away to those who can illuminate the dark mysteries of the NET Framework. ( 22 Sep 2008 ) by Chris Massey

Raw Materials: No Man is an IslandNot in a Networked World, No Indeed! ( 09 Jun 2010 ) by Larry Gonick

Raw Materials: Efficiency UnitLeila's layoff generates an innovative workflow strategy. ( 11 Aug 2010 ) by Larry Gonick

A Prompt Use for XSLTJohn Spears, of the SQL Prompt team at Red-Gate, Shows us how easy it is to use XSLT to transform an XML file such as the SQL Prompt snippets, to print it out, or share snippets across a development team. ( 02 Jun 2008 ) by John Spears

Syntactic Sugar and the Async PillAsynchrony is essential for scalability and performance on the server side. Although it has always been possible to write asynchronous code, there has, up to now, been a downside: it is difficult to understand and maintain. Now, with the async/await. keywords, the whole approach is radically simplified for the programmer. ( 18 Oct 2012 ) by Dino Esposito

Raw Materials: The World at Your FingertipsFor the geek who has everything. ( 30 Mar 2010 ) by Larry Gonick

Staying Ahead of the GameMatt Hilbert has noticed a term that keeps popping up: The Next Generation DBA. He believes it's been coined because change is afoot, and a lot of change that will transform the way DBAs work. But what exactly is going on - and what can you do to actually become a Next Gen DBA? ( 30 Oct 2014 ) by Matt Hilbert

Encrypting Your SQL Server 2012 AlwaysOn Availability DatabasesIt is likely that you'll want to add a database with TDS Encryption to your AlwaysOn Availability Group. If you do so you'll find that you can't use the SSMS wizard to do so. So, how do you achieve it? Read on... ( 04 Jul 2012 ) by Warwick Rudd

Comparing IAAS and PAAS: A Developer's PerspectiveIn the Cloud, services come in the form of Software (SaaS), Infrastructure (IaaS) and platform (PaaS). when moving a service to the cloud, IaaS and PaaS provide two different service models and provisioning steps of solutions. A PaaS providers has more responsibility for your solution than an IAAS provider. wherase an IaaS solutionmay offer more flexibility at lower level. Wely Lau explains. ( 13 Jan 2012 ) by Wely Lau

Using the Windows Azure Content Delivery NetworkBy caching static content on the Content Delivery Network CDN, the web server can offload the serving of content that doesn't change, and so will have more resources for processing requests for active content. Browser-based users of your application will get static content delivered with less latency from a server that is closer to them. ( 05 Apr 2012 ) by Maarten Balliauw

Snapper's Sweet Source ControlCorrin Lakeland's busy role as a Data Manager includes supervising the work of all database development. Although he was already a keen user of SQL Compare, the arrival of SQL Source Control came as a godsend to him. He explains why. ( 12 Oct 2010 ) by Corrin Lakeland

OpenStack: The Good and Not-So-Good BitsOpenStack holds a great deal of promise as a cloud platform built on open standards, and has support from the major players in cloud services. It has the potential for allowing organisations to set up their own private cloud services that are designed to inter-operate. Is it ready yet for companies that want the convenience of cloud solutions, but with more control, and without the large subscription fees? Robert Sheldon finds out. ( 03 Sep 2015 ) by Robert Sheldon

Virtualizing Exchange: points for discussionWith the increasing acceptance of the use of Virtualization as a means of providing server infrastructure, this technology is being applied to production Exchange servers. This is a  solution that is not just limited to the small shop, Nathan Winters discusses the pros, cons and challenges that lay ahead in providing a flexible and highly available email system ( 20 Nov 2008 ) by Nathan Winters

Raw Materials: RefugeesWhy are they here? Why is anyone? ( 21 Jul 2010 ) by Larry Gonick

Raw Materials: Personal SpaceArthur enhances his intelligence. ( 13 Oct 2010 ) by Larry Gonick

Raw Materials: Deep DataIn Which "Data Mining" Acquires a Whole New Meaning. ( 22 Jan 2010 ) by Larry Gonick

A Beginner's Guide to Virtualizing Exchange Server, Part 1The advantage of virtualizing your servers is that it helps you make better use of your hardware resources, and reduces some of your licensing costs, However, there are disadvantages: With Exchange server, it isn't always obvious as to which server roles are suitable for virtualization, and it is rather hard to work out what system resources a virtual server is actually using. Brien Posey explains ( 05 May 2009 ) by Brien Posey

Implementing Cluster Continuous Replication, Part 3Cluster continuous replication (CCR) uses log shipping and failover to provide a more resilient email system with faster recovery. Once it is installed, a clustered server requires different management routines. These are done either with a GUI tool, The Failover Cluster Management Console, or the Exchange Management Shell. You can use Powershell as well for some tasks. Confused? Not for long, since Brien Posey is once more here to help. ( 12 Mar 2010 ) by Brien Posey

Return on investmentHow to justify the purchase of a new software development tool. You might believe the benefits are obvious, but others can easily view such a purchase as little short of indulgence. ( 13 Apr 2004 ) by Phil Basham

Doing Eighty Things at OnceRodney Landrum is a SQL Server DBA for a large company, with at least eighty SQL Servers to look after. He is now a great fan of SQL Multiscript and explains why ... ( 25 Jan 2008 ) by Rodney Landrum

SQL backup encryption ( 29 Jun 2005 ) by Simon Galbraith

Importing PST File Data into Exchange ServerHaving read Brien's previous article describing PST Horror Stories, you should now be well aware of the dangerous pitfalls of rogue and unmanaged PST files. Thankfully, 3rd party tools offer us a painless away to entirely avoid these problems, as Brien now explains. ( 14 Dec 2010 ) by Brien Posey

Raw Materials: Disapproval"It is a narrow mind that cannot see things from more than one point of view." -George Eliot ( 20 May 2009 ) by Larry Gonick

Raw Materials: Dinner OutDerek sees all, knows all, won't say how. ( 16 Feb 2011 ) by Larry Gonick

Proactive Data Growth Management: Reducing your Storage FootprintThere are plenty of detailed step-wise ways in which you, as DBA, can reduce the escalating cost of data storage for your organisation, but to get a radical effect, you'll need to apply some powerful compression techniques. Brad explains more... ( 05 Jul 2012 ) by Brad McGehee

DBA:M and the SQL Backup 6.0 pre-releaseRodney Landrum, DBA manager in Pensacola, Florida, puts the pain of DBA:M into context as we learn about how SQL Backup can evolve to keep pace. Take a look at the changes we've got planned to help time-pressed DBAs in the forthcoming pre-release of version 6.0, including a new compression level and network resilience. ( 29 May 2009 ) by James Moore

Mission Critical: SQL Server 2008 Engine Post-InstallationEven an experienced DBA finds it safer to double-check that all the tasks have been done, and in the right order. Buck Woody continues his series with another handy checklist, army-style. ( 03 Mar 2010 ) by Buck Woody

Raw Materials: Time WarpEddies in the organizational flow chart may destabilize a naive observer. ( 23 Sep 2009 ) by Larry Gonick

Raw Materials: The Low BidWhen a job is too simple to be done in-house, how far down the phylogenetic tree should you go? ( 16 Sep 2009 ) by Larry Gonick

Debugging or Running an ASP.NET Application without Windows Azure Compute EmulatorThere are more steps involved in debugging or running a Windows Azure Project than a typical ASP.NET project, so it takes longer. Although you can debug or run the ASP.NET project more quickly when developing a Windows Azure project, there are some restrictions and caveats, as Wely Lau explains. ( 08 Jun 2012 ) by Wely Lau

Raw Materials: Psychiatric ScienceAn oxymoron, you say? No argument here! ( 30 Sep 2009 ) by Larry Gonick

Multi-Tier Performance Tuning with ANTS Performance Profiler 6When you are developing a database application that, by its very nature, suffers from I/O bottlenecks, you need to get a complete picture of how all the tiers of your application work together. By quickly determining whether the problem is code-related or part of a database process, you will be well on the way to getting a fix, especially if you can see immediately which stored procedure is taking too long to execute. Science Fiction? No. as Jeremy Jarrell found out when he discovered ANTS Performance Profiler 6. ( 23 Jun 2010 ) by Jeremy Jarrell

SQL Scripts Manager and IronPythonAs well as running TSQL and PowerShell, the free SQL Scripts Manager tool can also run Python scripts. This allows even more sophisticated scripting possibilities for managing automated database tasks. ( 04 May 2012 ) by Timothy Wiseman

Customize Automated Error Reporting In SmartAssemblyDespite being, for some time, a keen user of SmartAssembly for the .NET components that he produces, Matteo hadn't discovered the Automated Error Reporting feature until recently. As he reports, it has enabled him to be much quicker and more effective in dealing with any problems that one of his users might experience, and it keeps his customers happy too ( 21 Jun 2011 ) by Matteo Slaviero

Route Validation and Controller Validation in ASP.NET MVCThe ASP.NET MVC controller is a good friend of web developers. There are a host of features in it that can be used to reduce the amount of coding you have to do, and to make the logic simpler. ( 13 Dec 2012 ) by Dino Esposito

Raw Materials: Harmonious ConnectionsIn which Arthur makes some changes for the sake of another. ( 13 May 2009 ) by Larry Gonick

Raw Materials: Decisions, DecisionsCenturies ago, the philosopher Leibniz had a dream that all decisions could be made by machine. Today, his vision comes to life, more or less. ( 16 Jun 2010 ) by Larry Gonick

Raw Materials: Healthy Caution or Something Else?Derek slips a cog. ( 01 Sep 2010 ) by Larry Gonick

Raw Materials: Wake-up CallA robot's reaction may be a little different from yours or mine. ( 25 Aug 2010 ) by Larry Gonick

Raw Materials: SpywareEyes are everywhere, but what do they see? ( 28 Apr 2010 ) by Larry Gonick

Raw Materials: The Eyes of DerekKeeping Developers in the Proper Frame of Mind. ( 22 Sep 2010 ) by Larry Gonick

Raw Materials: Consultant, SuperstarDoes success in one field transfer to another? ( 04 Aug 2010 ) by Larry Gonick

Raw Materials: Derek Digs DeepThe intrepid DBA knows no obstacles but one. ( 14 Apr 2010 ) by Larry Gonick

Raw Materials: Redundancy and FrugalityBacking up is hard to do. ( 07 Apr 2010 ) by Larry Gonick

Raw Materials: Derek in TherapyOur DBA gets in touch with his inner circuits. ( 02 Feb 2011 ) by Larry Gonick

William Durkin, Serial Red Gate Beta TesterAn interview with William Durkin. When he has the time, William finds it useful to work as a pre-release software tester. His most recent testing work was for Red Gate's SQL Backup 6.0, just released this month. ( 09 Jul 2009 ) by Bob Cramblitt

The Road to Beta - Exchange Server Archiver speaks!Richard, Robert and Marine at Red Gate Software talk about designing, developing and testing Exchange Server Archiver (ESA) to beta. Not to mention the copious amounts of user input to the project, and the use of Nerf shotguns in a software development context. ( 10 Nov 2008 ) by Michael Francis

Swizec Teller : Geek of the WeekWhy do programmers work best at night? Is this related to the idea that drinking alcohol improves cognitive ability? Is programming a young person's game? How do you tackle spaghetti code and avoid job-burnout? Swizek Teller has achieved fame in providing a wry commentary on these questions, and the way that computers have come to dominate our lives. ( 09 Apr 2015 ) by Richard Morris

Alex Payne: Big in the IT BusinessAlex Payne worked on developing Twitter for three years. When he started, it was a small side-project: When he left, it had become an international cultural phenomenon. Since then, he has worked with several early-stage start-ups. He has been researching a book on the history of programming languages, and is co-author of a book on Scala. ( 15 Oct 2012 ) by Richard Morris

Database Geek of the Week: Kent TegelsKent Tegels is the man behind the Enjoy Every Sandwich blog on He is also an author and an instructor for DevelopMentor. ( 07 Oct 2005 ) by Douglas Reilly

FUD (fear, uncertainty, doubt)FUD (fear, uncertainty, doubt): Where does Access fit in Microsoft's future? And why is that question important? ( 10 Oct 2005 ) by Arthur Fuller

Feature Usage Reporting in Early Access ProgramsAfter doing Web development, you can get very used to the luxury of having basic information about your users' machines and browsers. With their permission, you can also get the same information from an application, and can even get more targeted anonymous information that will tell you how the features are used. Kevin explains how this can be used with early access builds to improve the reliability and usability of applications. ( 05 Oct 2011 ) by Kevin Boyle

A Testing Perspective of Controllers and OrchestratorsThe neat separation between processing and rendering in ASP.NET MVC guarantees you an application design that is inherently teastable. It doesn't guarantee that your application will be well-designed and quick to test. For that, attention to use-cases and the structure of your code is essential. ( 14 Feb 2012 ) by Dino Esposito

Data Science Laboratory System - Document Store DatabasesA Document Store Database (DSD) is similar to a Relational Database Management system with the exceptions that a DSD allows for unstructured data and sharding a single database across multiple machines. So when or why would you choose a document database over a relational one? Buck Woody has the answer and an example using the DSD MongoDB on his lab system. ( 07 Oct 2013 ) by Buck Woody

Documenting Your PowerShell Binary CmdletsWhereas it is easy to provide inline documentation for a normal scripted PowerShell cmdlet or function so as  to provide comprehensive help at the command-line or IDE, the same isn't true of binary cmdlets written in C#. At last, there is an open-source utility to assist with this that is being actively maintained and updated. At last, binary cmdlets need no longer be the poor cousins of scripted cmdlets in their documentation ( 03 Dec 2015 ) by Michael Sorens

The Zen of Code Reviews: The Reviewer's TaleWhen you are reviewing your colleagues' code, it is a good idea to look closely at the unit tests to check that they match the requirements, test just one thing, and cover every branch in the main code. Do their names tell you what they test? Are they at the right level of complexity? Code reviews are about looking for patterns, absent or present. ( 16 Nov 2015 ) by Michael Sorens

Database Source Control Basics: Getting StartedIt makes a lot of sense to do it, but how do you get started? Whatever you use to build Applications with SQL Server, there is a good way of using source control and many reasons for doing so. ( 09 Oct 2012 ) by Michael Sorens

Creating a Date Dimension in an Analysis Server (SSAS) CubeA walk-through can be a great help to understanding SQL Server Analysis Server, especially when it solves the problem of providing an effective date dimension to a cube. Dennes takes Adventureworks, and demonstrates all the twists and turns of creating a cube that provides meaningful historical information. ( 24 Feb 2016 ) by Dennes Torres

PowerShell Day-to-Day SysAdmin Tasks: Securing ScriptsAlthough PowerShell is popular, for malicious intruders it represents a very attractive attack vector into your system. The obvious way of preventing this type of penetration is to detect when a script is altered. Not only must any script that is used for system or data administration be properly secured, but also any script that is used to maintain a PowerShell profile. ( 01 Dec 2015 ) by Nicolas Prigent

Exploring HTML Prototypes with GitGit isn't just for source code, but it also helps with the prototyping of the user interface. It allows for faster iteration and a better structure for making and recording design decisions. GitHub for Windows provides an way to visualize what decisions are available and to work on several possible alternatives independently. ( 14 Dec 2012 ) by Edward Charbeneau

TortoiseSVN and Subversion Cookbook Part 2: File Operations and Subversion FilteringThe second part of Michael's series of articles gives more recipes for Subversion Source Control. This time he explains how to add files, highlights tools and techniques for determining what to include in source control and shows how to quickly and efficiently filter out the "noise". ( 21 Nov 2011 ) by Michael Sorens

Data Science Laboratory System - Relational Database Management SystemsThere is no better way of understanding new data processing, retrieval, analysis or visualising techniques than actually trying things out in a lab system. Buck Woody continues his series by explaining why an RDBMS is essential for a lab, what that is, and how to install SQL Server into the lab. ( 14 Jun 2013 ) by Buck Woody

The One Way That High Availability Will Help YouHigh Availability (HA) is a term that is beloved of the marketing people, with its connotations of an unspecific sense of reassurance. However, service reliability cannot be bought like bath salts: But, explains a seasoned and cynical expert in the field, HA can be more than the start of 'HAHA!'. There is a role for HA in keeping your services running, if used as part of a broader solution. ( 29 Jun 2011 ) by Wesley David

RWD, Mobile-first, JavaScript and PerformanceThe easiest way to make a responsive web application perform well is to minimize requests and the amount of data that is downloaded. The most dramatic way of doing this, for mobile applications particularly, is to download just the data you need to use. There are additional ways of doing this, such as 'Mobile first', Prioritized content, Intelligent markup and Compression, but the most important task is to minimize the data-download requirements. ( 28 Feb 2015 ) by Dino Esposito

Bill Baker: Geek of the WeekBill Baker had a considerable influence on the way that SQL Server evolved to deliver reporting services and business intelligence. Until 2008, Bill Baker headed the Data Warehouse Product Unit within the SQL Server product development group. His team designed Analysis Services, Integration services, Data Transformation Services and the Admin tools that ship with SQL Server. ( 04 Dec 2012 ) by Richard Morris

Anatomy of an Acquisition: Inside Cerebrata / Red GateThe sale of a favourite software company can be disheartening for users, creating concern that the tools and team you love will vanish. Red Gate's Luke Jefferson and Matt Dickens, and Cerebrata's Gaurav Mantri, discuss how they plan to avoid acquisition pitfalls. ( 27 Oct 2011 ) by Bob Cramblitt

Raw Materials: Gurgle, IncorporatedDerek Encounters Intelligent Plumbing. ( 02 Jun 2010 ) by Larry Gonick

Raw Materials: Derek on AlertArthur's security blanket lulls him to sleep. ( 31 Mar 2010 ) by Larry Gonick

The SQL of Membership: Equivalence Classes & CliquesIt is awkward to do 'Graph databases' in SQL to explore the sort of relationships and memberships in social networks because equivalence relations are classes (a set of sets) rather than sets. However one can explore graphs in SQL if the relationship has all three of the mathematical properties needed for an equivalence relationship. ( 28 Jul 2014 ) by Joe Celko

An Administrator's First Look at PowerShell in Lync Server 2010 (Communications Server '14')With Communications Server "14" on the horizon and promising extensive support for PowerShell, you'll need to know what works and what doesn't, and how to find out more. Desmond Lee gives a distilled overview of what you'll need to know. ( 29 Jul 2010 ) by Desmond Lee

Raw Materials: Blame GameYou can't please all the people all of the time, because, after all, some of them are jerks. ( 09 Feb 2011 ) by Larry Gonick

Encouraging .NET Reflector Add-insJason Haley is well-known for the resources he's provided to developers who wish to extend Reflector's usefulness by writing Add-ins, so we decided to sit him down for a chat. ( 19 Nov 2008 ) by Chris Massey

Kohsuke Kawaguchi: Geek of the WeekJenkins, formerly called Hudson, is an open-source server-based Continuous Integration tool that works with all the major Source Control Management (SCM) tools including TFS, and can even script in PowerShell. It is clever software written by a clever geek, Kohsuke Kawaguchi. ( 17 Jul 2012 ) by Richard Morris

Geek of the Week - Ken HendersonKen is a consultant who often works for high-profile customers, including the U.S. Navy and Air Force, as well as H&R Block. In addition to books, Ken writes articles covering all aspects of SQL Server. ( 25 Apr 2005 ) by Douglas Reilly

Acceptance Testing with FitNesse: Symbols, Variables and Code-behind StylesAlthough FitNesse can be used as a generic automated testing tool for both applications and databases, it excels at unit testing since it is designed with a Wiki-style interface that makes it very easy to set up tests. In part 5, Michael Sorens explains how to use symbols and variables effectively, and why those terms are themselves rather problematic ( 16 Jan 2014 ) by Michael Sorens

Fundamentals of Vendor ManagementCreating and maintaining mutually beneficial relationships with external vendors is one of the pillars of good project management. Dwain Camps goes through what to expect and allow in your client-vendor relationship during the various stages of a given project to ensure its success and secure that all important win-win outcome. ( 28 Oct 2013 ) by Dwain Camps

Microsoft Azure Cloud Services Part 1: IntroductionSandrino Di Mattia introduces this series on the Microsoft Azure Cloud Services platform (previously called Hosted Services). ( 30 Apr 2014 ) by Sandrino Di Mattia

Database Geek of the Week - Glenn JohnsonMeet Glenn Johnson; he runs Glenn Johnson Technical Training and has just written "Programming Microsoft ADO.NET Applications - Advanced Topics". ( 04 Apr 2006 ) by Douglas Reilly

Editorial: a Guided Tour of the new Simple-TalkA whirlwind tour of some of the Simple-Talks's new features, including article commenting, blogs and forums. ( 14 Jul 2006 ) by Tony Davis

Raw Materials: To Delete or Not to Delete?A Sumerian DBA's Dilemma. ( 06 Oct 2010 ) by Larry Gonick

Managing Test Data as a Database CI Component - Part 2Once you're clear about what data the developers and testers need to be able to be effective, you have several alternatives approaches to providing them exactly the data that will give you rock solid database tests that will allow deployments with far less risk. Tim goes through some practical demos to show you how you can automatically keep your testing environments up to date, and thereby ship more robust databases. ( 28 May 2015 ) by Tim Hidalgo

.NET Reflector Through the Looking Glass: The Cheese CoursePart 4 describes how you can extend reflector further by describing how reflector can be used to compare or manage assemblies and exercise the code in front of you or even any arbitrary code on the fly. ( 21 Jan 2013 ) by Michael Sorens

Selective Updates with ASP.NET SignalRSignalR is great for all those tasks that one would otherwise need to rely on AJAX. However, it is much more versatile than this: it allows, for example, a server process to update users' browser windows selectively rather than broadcast to all, and can treat groups of users in different ways. Dino explains how this magic works. ( 13 Aug 2015 ) by Dino Esposito

Data Science Laboratory System - Object-Oriented DatabasesObject-Oriented Databases (OOD) avoid the object-relational impedence mismatch altogether by tightly integrating into the user-level OOP code to the extent that they are simply an engine that ships with the code itself. The developer is able to instantiate OOD objects directly into the code. Buck Woody explores the Object-Oriented breed of database in his Data Science lab. ( 31 Jan 2014 ) by Buck Woody

Building a Customised ALM Platform with TFS and VSOThe latest versions of Team Foundation Server are not only sophisticated, but extensible. Continue their course of openness, Microsoft have opened up TFS, and are making it possible to build custom systems on top of it. Karsten Kempe points out three new features that make it possible to build an ALM system to exactly suit you needs, using TFS as the underlying platform, and demonstrates what's possible with an open source dashboard and work-tracking system. ( 22 May 2015 ) by Karsten Kempe

Expanding AlwaysOn Availability Groups with Replication PublishersSQL Server 2012 AlwaysOn Availability Groups provide a high-availability and disaster-recovery solution for you SQL Server 2012 environments. Replication has been around in SQL Server for quite some time and allows you to scale out your environment. Warwick Rudd explains how to join these technologies together ( 14 Jan 2013 ) by Warwick Rudd

Highway to Database RecoveryDiscover the best backup and recovery articles on Simple-Talk, all in one place. ( 01 Feb 2013 ) by Simple-Talk Editorial Team

Using Azure KeyVault with Node.jsSome of the most intractable problems of application design are concerned with how to store credentials for accessing sensitive application data, keys and, configuration settings in code. With Azure Key Vault you don't have to. You can, instead just authorise an application to access and use a Key Vault and perform operations that require authentication against a KeyVault. Christos Matskas shows how an application can interact with the service, using a node.JS application as an example. ( 18 Feb 2016 ) by Christos Matskas

Raw Materials: The Meaning of LifeWho needs DBAs, and why? ( 12 May 2010 ) by Larry Gonick

Releasing Databases in VSTS with Redgate SQL CI and Octopus DeployYou can still do Database Lifecycle Management (DLM) workflows in the hosted version of Team foundation Server (TFS) in Visual Studio Team Services (VSTS) . If you are doing your database development in SSMS, you can use a mix of tools to set up the functionality in VSTS. Jason Crease demonstrates how to build and deploy a simple database into the test environment using SQL CI, SQL Source Control, Octopus Deploy, tSQLt, SQL Cop and SQL Release, all with the minimum of hassle and effort. ( 09 Feb 2016 ) by Jason Crease

The PostmastersThe Exchange Team introduces themselves, and keeps you up-to-date ( 08 May 2009 ) by Michael Francis

Top Tips for Exchange AdminsMichael Francis hands out imaginary Olympic medals to the winner of the August 'Top Tips for Exchange Admins' ( 22 Aug 2008 ) by Michael Francis

Azure DocumentDB Server-Side ScriptingDocumentDB only uses SQL for querying data. To create procedures and functions, you have to flex your JavaScript skills to create JavaScript functions that are saved to a DocumentDB collection. Robert Sheldon shows how it is done. ( 07 Jan 2016 ) by Robert Sheldon

SQL Server Source Control BasicsFor efficient team-based database development, and reliable and repeatable database deployments, source control is not optional. This book provides just the right combination of theory and practical example to get you started quickly. ( 01 May 2014 ) by Robert Sheldon

Database Geek of the Week: Adam MachanicAdam is a Microsoft MVP and a Microsoft Certified Professional. He speaks at Code Camps and has just become an independent consultant for SQL Server. ( 22 Nov 2005 ) by Douglas Reilly

Don't Just Roll the Dice - eBook DownloadNeil Davidson has created a short handbook with the theory, practical advice and case studies, to enable you to successfully price your software. ( 26 Oct 2009 ) by Neil Davidson

On Microsoft CTPs and long release cyclesMicrosoft's CTP program can result in higher quality, more usable, and more secure products- but when badly managed, it can also cause confusion and fuel doubt. ( 13 Apr 2006 ) by Tony Davis

Tech-Fest of Champions: How to run a community IT conferenceEverybody who attended seems to speak well of the IndyTechFest. It is a great example of how to organise a free local conference for IT people who wish to increase their skills and knowledge. So how is it done? Brad McGehee decided to find out by talking to one of the organisers, John Magnabosco who blogs here on Simple-Talk. ( 04 Nov 2008 ) by Brad McGehee

When Email Collaboration Could Have Changed HistoryIn our mission to make history relevant to the busy IT executive, we speculate how Email might have helped pivotal events in history. Could the War of Independence have been due to a misunderstanding? ( 26 Aug 2008 ) by Owen Sanderson

Regional Office Virtualization - Less Can Be MoreThe dream of an 'office in a box' has been around for years, but the increasing sophistication of virtualization software has turned the dream into reality. Ben Lye explains the problems and benefits of reducing the amount of physical hardware that were deployed in his organisation's regional offices. ( 14 Jan 2010 ) by Ben Lye

Setting Up and Configuring an Azure Key VaultNo longer do developers need to store sensitive application data, keys and, configuration settings in code - Azure Key Vault can store them for our applications on the cloud. Christos Matskas shows how to provision a new Key Vault in Azure using the Azure PowerShell cmdlets, and how to authorise an application to access and use a Key Vault. ( 12 Jan 2016 ) by Christos Matskas

Writing Outstanding ProposalsOftentimes you will be forced to learn how to write proposals without a whole lot of help. You can learn, and be taught, the skill of writing an outstanding proposal, but you can't do it without a fair amount of practice. Today, Dwain explains how to write proposals that can be judged to be outstanding and what, specifically, that means. ( 20 May 2014 ) by Dwain Camps

On Organising Technical Community EventsSQL Relay was a great success. The UK SQL Server community managed to pack thirteen SQL Server User group events into one week, and they were on offer absolutely free, It gave everyone a great opportunity to get involved in the SQL community in their local area. Jonathan Allen lists the lessons that were learned by the organisers, so as to help anyone else who is planning this sort of community-based event. ( 18 Nov 2011 ) by Jonathan Allen

Rethinking the Practicalities of RecursionWe all love recursion right up to the point of actually using it in production code. Why? Recursion can illustrate in code many of the excellent 'divide and conquer' algorithms, but