November 2004 Entries

Arrogance

Richard Morin wrote in the Washington Post: “…perhaps people will start ignoring the bloggers, who proved once more that their spectacular lack of judgment is matched only by their abundant arrogance.” This line from the article “Surveying The Damage” spent time bashing bloggers who released early exit poll data on the U.S. presidential race. I read this line thinking Richard Morin had blogging envy and was taking a few shots at the competition. Then I listened to two IT Conversation podcasts and started to agree. The podcasts were the Election 2004 session from BloggerCon III, and the Gillmor Gang’s interview with eBay...

BI and SQL Server 2005

Just to finish up the story I started a few days ago (and get the albatross off my neck, so to speak), here is how the exploration of SQL 2005 DTS and OLAP features turned out. The end result was a cube of all domestic commercial flights for January 2003 (about 560,000 records) with delay, cancellation, flight time, taxi time information and more. There were a few disappointments, like the handful of unhandled exceptions that crashed the Business Intelligence Development Studio. I have a feeling some of the problems were related to the source control features of the beta, as...

Give Me More Text

To continue with my previous post (Give Me Text), I wanted to show a little UI from the SQL Server 2005 Business Intelligence Studio. There are obvious improvements in the feature set formerly known as Data Transformation Services. The toolbox is brimming with tasks and transformations you can drag and drop into the Data Flow designer. Stuff like “Pivot”, “Aggregate”, and “Fuzzy Grouper”. There are parts, however, that remind me why I still prefer programming with keyboards and text files to GUIs. GUIs do not scale. In order to perform multiple operations I need to perform multiple actions. Like the...

Give Me Text

Every now and then someone will talk about the sad fact that we still use text files and text editors to build software. I used to think about this when I was in the DTS or OLAP cube designers of SQL Server 2000. I’d think about how writing software with a GUI wasn’t all it was cracked up to be. UI designers can be tedious, and in the Microsoft world they usually save data in opaque blobs. Because of the blob factor, both DTS and OLAP resist attempts at serious configuration management. The deployment strategy for an OLAP cube is...

Array Size

During my occasional forays into the land of Dim, Sub, and IsNothing, I’ve needed to remind myself that the number in an array definition represents the upper bound. Dim months(11) As String 'an array with upper bound 11 has 12 elements It feels weird, but as long as I kept telling myself the number represented the upper bound, and not the length of the array, everything seemed OK. Then one day I needed an array of 0 elements. Dim foo(-1) As String 'an array of 0 elements is declared with 0 – 1 = -1. I can’t get this statement out...

In Search Of Raw Data

Perhaps if Samuel Taylor Coleridge were alive today, he’d write verse like the following: Data, data, every where,And all the disks did shrink;Data, data, everwhere,Nor any bit to think. Then again, if Coleridge were alive today maybe he’d be spending all of his time watching reenactments of Mongol military campaigns on cable TV’s History Channel and never write a single poem. Who knows? At least he had the foresight to end lines with semi-colons. I’ve wanted to experiment with the new DTS and Analysis Services offerings in SQL Server 2005 for some time. I’ve spent a fair amount of time with...

Remoting Over TDS

This week saw the release of a long awaited white paper: Using CLR Integration in SQL Server 2005. This white paper is the first step in what I am sure will be an ongoing stream of best practice information for using the common language runtime inside the database engine. One area in need of some additional guidance will be the design and usage of user defined types (UDTs). In SQL 2005, if you need a columnar data type outside of the normal varchar, int, and datetime etc. types, you can write your own. As the paper outlines, UDTs are not...

Indigo Day

VSLive! just added an entire day of Indigo content to the conference schedule for San Francisco. February 8th is looking like a busy day. I wonder if it will snow in the Northeast while I am away. It's always fun to call up snowbound  colleagues back in the office and ask them how the weather is. Last February was so cold here I had soda cans exploding in my car. Brrr.

Virtual Machine Freestyle Battle

I’m driving through the streets today when I pull up beside a car with a personalized license plate: “JAVA VM”. I’m obviously beside a developer who is fanatic about the Java virtual machine. I guess I’ve been reading too many of the accidental freestyle battles on Bill’s blog lately. I tossed in a CD with some bass thumping action, wound down my window, and started screaming out loud: Yo, VM boy, you got a queued up packet, You better call Receive and prepare for the racket.You didn’t hit return before the left curly bracket,    gonna send you upstate, in a straight...

New User Group In Town

The BaltoMSDN .NET User Group is just getting started. This month’s meeting is Wednesday, November 17th in Hunt Valley, Maryland. Lonnie Wall from RDA Consultants will be giving an overview of Service Oriented Architecture. If you are in the Baltimore / D.C. area, keep an eye on their calendar and drop in often.

64 bits

I think 2005 will be a big year for AMD in the 64 bit server market. Dell has only shipped Intel chips for the longest time, but they are hinting about building 64 bit servers and workstations with AMD CPUs in the future. The move to AMD would make sense. From everything I’ve read, the 64 bit AMD chips are giving Intel a pretty thorough trouncing in performance and Intel is not catching up soon enough. Most of our customers have a data warehouse in the 40GB – 300GB range, and some are growing at 100 MB a day. Not...

SSRS Report Builder

Reporting Services in SQL Server 2005 will introduce a new ad-hoc reporting control – the Report Builder. You can view a demo of the new features in a Microsoft On-Demand Webcast: End-User, Ad Hoc Reporting in SQL Server 2005 Reporting Services with Brian Welcker and Carolyn Chau as the presenters. The Report Builder is not available in the current beta release (beta 2) of 2005, but should be available for beta 3. Some interesting features include: - The Report Builder will give end users a way to edit and create reports in Reporting Services. You can restrict who can use...

VSLive! 2005

In February I’ll be giving a presentation at VSLive! in San Francisco. The talk will focus on how to coax SQL Server Reporting Services to do your application’s bidding with URL Access and Web Services. No report designing in this presentation, just code, code, and then a bit more code. I’m looking forward to the conference. In addition to the usual VBITS, C#, ASP.NET, and SQL tracks there are two co-located events: the Software Architecture Summit and the Microsoft Windows Anywhere track for Tablet PC and mobile PC development. Who’s gonna be there?

Disposal Anxiety

I came across this again in the newsgroups today: sqlConnection.Close(); sqlConnection.Dispose(); sqlConnection = null; There has been plenty of debate about the confusion resulting from aliasing the Dispose method. There has also been heaps of information to explain finalization, garbage collection, connection pooling, and IDisposable. Still, none of the debate or information addresses the fundamental problem in this scenario. For some developers, the instantiation of a disposable object results in high levels of anxiety. The anxiety produces the obsessive-compulsive behavior demonstrated in the above code snippet. I have a solution to propose. The using keyword only works well for the passive-aggressive types...

Crunch Time

There is nothing like an upcoming release to knock you out of a blogging rhythm. Last minute tweaks. Build engines humming. Hours feeling like minutes. The growing anticipation to give the baby a spank on the butt and send it out into the cold, cruel world of users, customers, clients. Then of course, the best part. The sigh of relief. The satisfaction of a job complete. The … Oh, crap. Be right back.