I started planning this commentary over the long holiday weekend here in the United States, during which we celebrated our Independence Day. On Friday, July 4th, I had a chance to read some newsgroup postings and was amused to see that some of my British friends actually refer to the day as "Good Riddance Day." The same day, I stumbled across an older posting in which someone from Microsoft confirmed that SQL Server was completely independent of the original Sybase product, with every single line of code written by Microsoft developers.
I was working at Sybase in the Technical Support group when SQL Server was introduced on OS/2, and I remember feeling a sense of "good riddance" when it was announced that Microsoft would be doing all the support for that product. At the time, our team already had to support SQL Server on a dozen different OSs, and PCs were so new and strange that it felt like too much to expect that we would understand all the nuances of installing the product, configuring the connectivity, and running it in such a foreign environment.
A few years later, when I became an independent consultant, I was actually extremely happy about the relationship between Sybase and Microsoft. It meant that the expertise I had developed while working at Sybase would be valuable to customers running either Sybase or Microsoft. It wasn’t until a few years later, when Microsoft formally announced its independence from Sybase and the two database products started diverging, that I had to choose one product or the other if I wanted to maintain my deep internal focus.
I’ve used the word "independent" twice now when referring to Microsoft’s independence from Sybase and my own independence. But what does being independent really mean? What does it mean that I was independent as a consultant? No one exists in a vacuum. I considered myself to be independent because I was no longer on someone’s payroll, but I was very dependent on the goodwill of my clients and the students who registered to take the classes I was teaching. I was dependent on Microsoft’s software and the fact that the company made it very easy for "independent" consultants to access its database product and development tools. I was dependent on other consultants and SQL Server professionals who helped provide a forum in which I could read about what other people were doing with SQL Server, such as the problems they had encountered and the solutions they had developed. I continue to be very dependent on the engineers at Microsoft who provide feedback on my writing, as well as information about new SQL Server features and behaviors. I couldn’t write my books without them. So it turns out I’m not really independent at all.
And is Microsoft SQL Server really independent from Sybase’s relational database engine? Certainly, Microsoft and Sybase's relational database products are more similar than any other two on the market. The learning curve for someone moving from one database product to the other is much less steep than for someone moving from Oracle to SQL Server, for example. Although the code itself might be pure Microsoft, many of SQL Server's features exist because of its roots in Sybase. Yes, Microsoft is independent in that it can continue to develop SQL Server without regard to what Sybase might be doing. However, the company can't escape the fact that many of SQL Server's features behave the way they do because of the past relationship.
And is the United States really independent of Great Britain? There are two separate governments and two separate currencies, but the languages we speak are extremely similar. Do the British wish we were truly separate? The United States could have adopted German as the national language when it was new, and in that case, the majority of technical writings and software development in the world would be in German. However, I doubt that my friends and colleagues in the UK actually wish for that, and I believe that they, and most of their countrymen, are glad to be able to benefit from the shared history.
Independence is all in your point of view, and dependence (or interdependence) isn't always a bad thing.
Read Kalen's previous commentary "SQL Server Inside Editions."