“Heavy Heap Allocation is like drinking alcohol; it’s not the drinking that hurts; it’s the hangover that hurts.”, Lucian Wischik, Microsoft Channel9. What does that have to do with Fast Path async optimization? The final goal of Fast Path optimization is to reduce the number of objects stored on the Heap, thus reducing the amount of work necessary by the […]
Author: Ben Taylor
How much should we tune
I was reading an editorial by Denny Cherry entitled, “How much is that query costing”. Denny expresses the cost of a poorly tuned query in terms of the cost of lost productivity. Extended out for a whole year, tuning a query by as little as .4 second can possibly cost thousands of dollars in productivity. Usually we determine if something […]
Skill Hunt
It seems like software tools and required skills are exploding making it even more difficult to predict what skills you need to maintain, and what skills you need to acquire to continue to be marketable. Today I put together a simple list of skills for which I continue to see demand. Some of the demand is based on specific languages […]
Materialized View Clarification
I introduced Materialized Views as a Resilience technique, but referenced Microsoft’s version of a Materialized view with the intention of saying that an SQL Materialized View does not enhance Resilience in an application. Enhancing resilience is obtained by having different services fulfill applications requests. When one service fails, it is possible for the other services to continue to perform. If […]
Distributed Version Control
Writing code is the skill needed for every developer. Patterns and Software Development Lifecycle practices along with version control enhance the code writing skills. It is the version control capabilities that enable developer collaboration. Most of the version control systems for the first few years were essentially the same. They had a central repository from which all checkout and check […]
Testing for Failure
Testing for failure is just as important as testing for success. Sometimes it is easy to forget to test for failure. Often we perform validation for data entry forms. This is a great place to test for failure. There may be many permutations for which you must test. In order to have reasonable confidence you need to test for any […]
Optimize TempDB for SQL Server Performance
Often SQL Server works just fine with the configuration that comes right out of the box. But when it doesn’t, adjustments to Temp DB are a great place to start when performance is not what is expected. There are a few things you can do. First it helps to isolate the tempDB database files onto separate drives…the fastest ones available. […]
Schema Refactoring
I inteded to publish this last Friday. Sorry for the delay. I wanted to take a high level look at refactoring databases as it applies to Code Smells. Scott Ambler in his book “Refactoring Databases” identifies different categories of database refactoring: Database Schema – Table and View definitions Data Quality – Conforming data to the intended design Referential Integrity – […]
Code Smells ? Refactoring
Yesterday I introduced the concept of “Code Smells”. Code smells are those areas of code you don’t like, but don’t have time right now to address. At the core, a code smell is some kind of code you want to refactor. So, I thought it would be helpful to talk about refactoring briefly. Refactoring is the process of modifying code […]
Code Smells
Code Smells is something I picked up from an Agile group. I don’t know if the concept was formalized as a term in the Agile SDLC or not; I guess it really doesn’t matter where it came from. The concept works effectively in both Agile and Waterfall SDLCs. If you’re like me, you never write code where you are completely […]