"Enterprise Manager will need to consume the entire recordset
to have the locks released. You need to scroll to the last
record in Enterprise Manager to have the locks
released. You would have an IS lock on the table and a
shared lock on the specific page you are on until moving to
the end of the result set."

So...the SQL Server Enterprise Mangler will hold onto table locks when the result-set is longer than one "page" until you either 1) scroll to the bottom of the result-set, or 2) close the query window.

This bit me in the ass today when I ran "SELECT TOP 1000 * <TableName>" against a table that logs every web request. We immediately started logging SQL-Timeout errors which immediately stopped the moment I closed the result-set. I had to try it a few times just to convince myself it was truly happening. I felt like a two year-old learning that flames from lighters make ouches.

Why have we, the general M$ development public, not been warned of this before? This is yet one more tally in the column that the Enterprise Manager does not belong in an enterprise environment.

What's the lesson here? Delete your cookies before and after hacking somebody's network. Better yet, don't even use your own operating system -- use something like Puppy Linux instead.

This is pretty much the same as the guy who robbed a bank with a note written on a deposit slip for his wife's account. Or the guy who robbed 7-11 and ran from the police into the woods, wearing sneakers which flash a red light with every step.

Are you getting this error message when trying to connect to a shiny new instance of SQL 2005 Express?

"An error has occurred while establishing connection to the server.
When connecting to SQL Server 2005, this failure may be caused by the
fact that under the default settings SQL Server does not allow remote
connections. (provider: Named Pipes Provider, error: 40 - Could not
open a connection to SQL Server)"

Backed into a corner, I'm needing to install SQL Server 2005 Express on my home computer. Like so many of us, I installed a few MS beta products during '05 and '06 while trying to keep abreast of changes to the tools of my Trade.

Unfortunately, the installer for the final version of SQL Server 2005 Eggs-press won't uninstall conflicting pre-releases of itself -- it simply complains and exits.

Of course, many of the pre-releases won't uninstall, complaining of various problems. My problem was that the ".NET Framework 2.0 is not installed." Bullshit!

After six different installer repairs and reboots (sigh), I ran across this tool buried in the Microsoft website:

I found it here, on Aaron Stebner's WebLog, where a warning is given that it mistakenly also uninstalls the final versions of SQL Server 2005 Express. Hey it's all good, so long as it lets me finally install the working version!

Rob Chartier is excited about discovering the Subversion script hooks.

I wrote a post-commit hook program in C# for our subversion server that generates a detailed commit notification email using the svnlog command. The program then uses a config file to determine which users get the message depending on the name of the repository. It was very easy to do and hasn't caused any problems in the two-months and 350+ commits that we've been using it. Knock on wood...

The "script hook" system is a great way to integrate disparate
systems. It is used extensively and ingeniously in Qmail, a super-fast
and extremely stable and secure mail transport system for Unix.
Qmail's script hooks make it very easy to automate almost any process
when emails are sent, received or queued. It also helps reduce code
bloat and memory usage by separating steps into small programs. For
example, compare the amount of bugs and security vulnerabilities in
Qmail with those in Sendmail or Exchange Server. Qmail has almost
none, while the other two have more than I could ever read.

I've been working with ASP.NET since March 2005, having come to it from a devoutly open-source background. I first began building web applications in 1999 using PHP3 and MySQL. After a few years of PHP I discovered object oriented programming, and Extreme Programming quickly thereafter. I immediately longed for a more robust language than PHP and moved to Java Servlets, primarily using the Jakarta Turbine framework. It was here that I learned about the Model-View-Controller design pattern, N-tiered applications, object-relational mapping data layers, and many other advanced web application concepts.

I remember reading about ASP.NET before version 1 was released. My reaction was, "Sounds great, but that's a great deal to accomplish." Most of it sounded like the typical Microsoft marketing gibberish whose premise is something like "Over-promise, over-sell, lock our customers into our products, and no one will question someone as large as we."

Fourteen months ago, a close programming friend of mine eventually got a semi-permanent contract working with .NET and seemed to think pretty highly of it. With that recommendation, I decided to look into it again and immediately went to the new features in the upcoming 2.0 release. I was impressed with the features like a plug-able ViewState, a portal framework, etc., and started to fiddle with it at home.

In March, I left the world of contracting for a job within a financial technology provider working entirely with ASP.NET. I'm loving the job, and the technology. My ASP.NET friend also now works beside me.

And thus, my blog will discuss topics relating to .NET and the Agile Programming approach written from the perspective of an open-source believer.