Timothy Stall

Subscribe to Timothy Stall: eMailAlertsEmail Alerts
Get Timothy Stall: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories by Timothy Stall

Automating processes is critical to the success of any software project. Because computers can perform redundant tasks faster and more reliably than people, automation becomes more necessary as the processes become larger and more complicated. This is one of the main drivers behind Test Driven Development - constantly rerunning an automated build with Unit Tests. This article will provide techniques to affectively automate large processes, with a case study using NAnt. Figure 1 shows a simple process with four tasks and various flow controls. This illustrates how a process has two parts: the tasks that do work, and the scripting that connects those tasks. Automating a process requires automating both the tasks and the scripts. For ease of explanation we'll first illustrate scripting techniques with .NET, and then show how to call almost any task from the command li... (more)

Refactoring Your MSBuild Scripts

Some things change how you fundamentally program. Automation is one of those things. It is what will save you from wasting your weekend stepping through tedious and error-prone processes like regression testing (unit, integration, performance, functional, etc.), builds, deployment, or even documentation. Automation is one of those buzzwords we all know our projects should have (like "performance," "security," "maintainability," etc...), but the question is how? Microsoft gave us a huge answer with .NET 2.0's MSBuild - its new build platform with a process-oriented scripting lang... (more)

ASP.NET 2.0 Callbacks

Web sites are based on a client-server model. While the client (usually a browser) can use client-side script such as JavaScript to do simple tweaking of existing data, getting new data requires a request to the server. The server does the heavy processing and makes a response back, which redraws the entire Web page. Most development required these interactions to be atomic so that each request to the server returns a completely new page. The Problem with Postbacks Postbacks, which are perhaps the most common way to communicate between the client and server, do exactly that. While... (more)

Beyond Just Getting It Done

Most developers just focus on getting the initial code done, ignoring the important questions that ultimately affect the total cost of development. This article will address how to handle these issues in a way that will benefit the total cost of development. Beyond Just HelloWorld In enterprise development, the ability to program the design doc is taken for granted. Managers and senior developers expect you to step up to other problems that focus on the entire life cycle as well as enabling teamwork. Beyond just getting the design spec for the initial beta, you should ask yourse... (more)

Database Unit Testing with the MassDataHandler

After years of nearly every tradeshow, magazine, and technologist saying how wonderful unit tests are, developers know that they're supposed to write unit tests. But it's not always that easy. For example, while most developers can write tests for a trivial class library, it's much harder to write tests for the database. There is much value in testing the database - it can contain complicated stored procedures, transactions, and functions that could easily cause errors. Preventing those errors can be worth the time it takes to write the test. This article will explain some of t... (more)