489 posts categorized under “Uncategorized”

  • Presentation Zen

    Presentation Zen

    Date Published: 20 December 2010

    I picked up Presentation Zen by Garr Reynolds earlier this year, and finally managed to finish it. It comes highly recommended by many excellent presenters, and there are quite a number of positive reviews of it on Amazon. Naturally some of them refer to the PresentationZen blog, which if you haven’t read you may wish to check out (there’s a great Hans Rosling post and recent TED-India video at…


  • Books

    Books

    Date Published: 26 July 2010

    Sadukie tagged me with her books post a couple of weeks ago and I’ve been meaning to respond with a post of my own. I have a post I update periodically that includes some of my most recommended developer books(where I’ve been meaning to add Agile Principles, Patterns, and Practices in C# by Robert and Micah Martin) – if you’re looking for ways to improve yourself as a software developer I would…


  • Software Engineering 101 in Cleveland

    Software Engineering 101 in Cleveland

    Date Published: 06 July 2010

    Next week I’ll be one of several speakers at a free one-day event being held at the Microsoft office in Independence, Ohio. The event is designed for Microsoft developers who are seeking to improve their skills in software engineering, including object-oriented design, design patterns, and automated testing. The event is being hosted by Microsoft and organized by the Hudson Software Craftsmanship…


  • Budding Versus Festering Code

    Budding Versus Festering Code

    Date Published: 28 June 2010

    This is in response to Michael Feathers’ recent post on Festering Code Bases and Budding Code Bases. Certainly the default tooling in the Visual Studio space has, until recently, made it dramatically easier to add code to an existing class than to create a new class. However, tools like ReSharper have a large impact on this, and can make it extremely easy to create new classes, put them in their…


  • Disable Hibernation on Servers

    Disable Hibernation on Servers

    Date Published: 27 June 2010

    Here’s a quick tip if you should find several GB of your system drive taken up with hiberfil.sys on a production server machine (as I recently did with a virtual server with a very small C partition) – Disable Hibernation. Disable Hibernation Open a command prompt as administrator Run this command: powercfg –h off Done! The hiberfil.sys file should immediately disappear. This also works on desktop…


  • Default Encoding of Strings in ASP.NET MVC 2

    Default Encoding of Strings in ASP.NET MVC 2

    Date Published: 23 June 2010

    If you have ASP.NET MVC 1 code you are moving to ASP.NET MVC 2 (and ASP.NET 4) you are likely to encounter a problem in which your application starts displaying encoded HTML on the page rather than the actual results of that HTML (e.g. you see <a href … /> instead of a hyperlink). One of the greatest features added to ASP.NET 4 is a new way to render content that is encoded by default in your…


  • SQL Server Error User Group or Role Already Exists in the Current Database

    SQL Server Error User Group or Role Already Exists in the Current Database

    Date Published: 18 June 2010

    If you restore a database and then try to login to it, you’re likely to run into this wonderful SQL Error: User, group, or role ‘whatever’ already exists in the current database (Microsoft SQL Server, Error: 15023). Unfortunately, using Sql Management Studio alone doesn’t seem up to the task of correcting this problem. You have to drop down to calling esoteric stored procedures (who needs a GUI to…


  • DevConnections Spring 2010 Speaker Evals and Tips

    DevConnections Spring 2010 Speaker Evals and Tips

    Date Published: 17 June 2010

    As a conference speaker, I always look forward to hearing from attendees whether they felt my sessions were valuable and worth their time. It’s always gratifying get a high score, but of course it’s the (preferably constructive) criticism that’s key to continued improvement. I’m by no means the best technical presenter around, and I’m always looking for ways to improve. I’ve recently spoken at a…


  • TechEd 2010 Important Events

    TechEd 2010 Important Events

    Date Published: 26 May 2010

    If you’ll be attending TechEd in New Orleans in a couple of weeks, make sure the following are all on your calendar: Party with Palermo – TechEd 2010 Edition Sunday 6 June 2010 7:30-9:30pm Central Time RSVP and see who else is coming here. The party takes place from 7:30pm to 9:30pm Central (Local) Time, and includes a full meal, free swag, and prizes. The event is being held at Jimmy Buffett’s…


  • Custom Configuration Section Handlers

    Custom Configuration Section Handlers

    Date Published: 04 May 2010

    Most .NET developers who need to store something in configuration tend to use appSettings for this purpose, in my experience. More recently, the framework itself has helped things by adding the section so at least these are in their own section and not adding to the appSettings clutter that pollutes most apps. I recommend avoiding appSettings for several reasons. In addition to those listed there…


  • Could not load type System.Configuration.NameValueSectionHandler

    Could not load type System.Configuration.NameValueSectionHandler

    Date Published: 04 May 2010

    If you upgrade older .NET sites from 1.x to 2.x or greater, you may encounter this error when you have configuration settings that look like this: Once you try to run this on an upgraded appdomain, you may encounter this error: An error occurred creating the configuration section handler for CacheSettings: Could not load type ‘System.Configuration.NameValueSectionHandler’ from assembly ‘System…


  • Detect Unicode Usage in SQL Column

    Detect Unicode Usage in SQL Column

    Date Published: 28 April 2010

    One optimization you can make to a SQL table that is overly large is to change from nvarchar (or nchar) to varchar (or char). Doing so will cut the size used by the data in half, from 2 bytes per character (+ 2 bytes of overhead for varchar) to only 1 byte per character. However, you will lose the ability to store Unicode characters, such as those used by many non-English alphabets. If the tables…


  • Government Mandates and Programming Languages

    Government Mandates and Programming Languages

    Date Published: 28 April 2010

    A recent SEC proposal(which, at over 600 pages, I haven’t read in any detail) includes the following: “We are proposing to require the filing of a computer program (the “waterfall computer program,” as defined in the proposed rule) of the contractual cash flow provisions of the securities in the form of downloadable source code in Python, a commonly used computer programming language that is open…


  • Determine All SQL Server Table Sizes

    Determine All SQL Server Table Sizes

    Date Published: 27 April 2010

    I’m doing some work to migrate and optimize a large-ish (40GB) SQL Server database at the moment. Moving such a database between data centers over the Internet is not without its challenges. In my case, virtually all of the size of the database is the result of one table, which has over 200M rows of data. To determine the size of this table on disk, you can run the sp_Table Size stored procedure…


  • Clone a VirtualBox Machine

    Clone a VirtualBox Machine

    Date Published: 23 April 2010

    I just installed VirtualBox, which I want to try out based on recommendations from peers for running a server from within my Windows 7 x64 OS. I’ve never used VirtualBox, so I’m certainly no expert at it, but I did want to share my experience with it thus far. Specifically, my intention is to create a couple of virtual machines. One I intend to use as a build server, for which a virtual machine…


  • Run MSTest Without Breaking on Exceptions in VS2010

    Run MSTest Without Breaking on Exceptions in VS2010

    Date Published: 19 April 2010

    Quick tip I just figured out (no R# installed yet) when using VS2010’s test runner. If you want to just use the keyboard, then you can use ctrl-R T to Run Tests in Current Context. But if like me you tend to just leave ctrl held down when you hit the T, your test run will stop at any/every exception. Why? Because ctrl-R T is not the same as ctrl-R ctrl-T which is the shortcut for Debug Tests in…


  • How To Move or Rename a File using MSBuild

    How To Move or Rename a File using MSBuild

    Date Published: 07 April 2010

    MSBuild is a very powerful tool, and it’s relatively easy to get started using it. You can run a “hello world” example of MSBuild in no time, and it’s easy to build up the files incrementally as your needs (and knowledge of the tool) increase. Here’s a handy list of the tasks that are built into MSBuild. Move File Task or Rename File Task One thing that is missing from the built-in list of tasks…


  • Simple Branching and Merging with SVN

    Simple Branching and Merging with SVN

    Date Published: 16 March 2010

    It’s a good idea not to do too much work without checking something into source control. By “too much work” I mean typically on the order of a couple of hours at most, and certainly it’s a good practice to check in anything you have before you leave the office for the day. But what if your changes break the build (on the build server – you do have a build server don’t you?) or would cause problems…


  • Could Not Load Type Microsoft.Build.Framework.BuildEventContext

    Could Not Load Type Microsoft.Build.Framework.BuildEventContext

    Date Published: 10 March 2010

    Setting up a TeamCity build and got this error: C:Program FilesMSBuildMicrosoftVisualStudiov9.0TeamDataMicrosoft.Data.Schema.SqlTasks.targets(80, 5): error MSB4018: The "SqlSetupDeployTask" task failed unexpectedly. System.TypeLoadException: Could not load type ‘Microsoft.Build.Framework.BuildEventContext’ from assembly ‘Microsoft.Build.Framework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b…


  • Fix: SqlDeploy Task Fails with NullReferenceException at ExtractPassword

    Fix: SqlDeploy Task Fails with NullReferenceException at ExtractPassword

    Date Published: 10 March 2010

    Still working on getting a TeamCity build working (see my last post). Latest exception is: C:Program FilesMSBuildMicrosoftVisualStudiov9.0TeamDataMicrosoft.Data.Schema.SqlTasks.targets(120, 5): error MSB4018: The "SqlDeployTask" task failed unexpectedly. System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.Data.Schema.Common.ConnectionStringPersistence…


  • SQLite Error IDbCommand and IDbConnection implementation in the assembly System.Data.SQLite could not be found.

    SQLite Error IDbCommand and IDbConnection implementation in the assembly System.Data.SQLite could not be found.

    Date Published: 26 February 2010

    I just ran into a problem with SQLite and NHibernate, which was giving me this error message: The IDbCommand and IDbConnection implementation in the assembly System.Data.SQLite could not be found. The strange thing was, it worked fine from within Visual Studio, but it died when I used my ClickToBuild.bat file, which calls msbuild and runs my tests from the command line. A bit of searching led me…


  • Untrusted Projects and Blocked Files in Visual Studio

    Untrusted Projects and Blocked Files in Visual Studio

    Date Published: 25 February 2010

    I was just trying to open a project I was emailed as a zip file from a colleague. VS2010 opens up saying: Which is fine… but in this case I know the project is OK so I click the box and tell it to get on with it. Next, I try to run the project, but I am faced with this: Error 1 The "ValidateXaml" task failed unexpectedly. System.IO.FileLoadException: Could not load file or assembly ‘file:///C…


  • Silverlight Tools

    Silverlight Tools

    Date Published: 12 February 2010

    As we approach the launch of Silverlight 4 and today the 2010 Winter Olympics begin (which are streaming via Silverlight!) I thought I’d post about some Silverlight Tools you may find useful as you build Silverlight applications. Some of these are also good WPF or general XAML tools. I haven’t used all of these personally – some are on the list because people I respect have vouched for them. If…


  • Moving SVN Repositories to new Server

    Moving SVN Repositories to new Server

    Date Published: 12 February 2010

    Recently I had to move some SVN repositories from one server to another. Here are the steps that worked for me, courtesy of Pete Freitag: Step 1: Back up SVN Repository Back up your existing repository with the following command. Note that if you are using VisualSVN Server as I blogged about previously, you should be able to right-click within the VisualSVN server manager and get a command prompt…


  • Hiring Inbound Marketing Score CARD

    Hiring Inbound Marketing Score CARD

    Date Published: 05 February 2010

    In their book, Inbound Marketing(review), authors Shah and Halligan use a couple of acronyms that, maybe due to my military background, I thought could be improved. The first one was VEPA, which I thought made a lot more sense as PAVE. PAVE relates to qualities of a call to action, and it is easy to remember that if your call to action has these qualities it will PAVE the way to better results…


  • PAVE the Way to Effective Calls to Action

    PAVE the Way to Effective Calls to Action

    Date Published: 04 February 2010

    In their book, Inbound Marketing(review), authors Shah and Halligan describe some key traits of effective calls to action. The four important qualities of killer calls-to-action are that they be Valuable, Easy-to-Use, Prominent, and Action-Oriented (chapter 8). The authors go on to suggest that this be referred to as “VEPA”, but I think we can do better than that. By simply shifting the letters by…


  • How to set up TRIM with Win7 and SSD Drive

    How to set up TRIM with Win7 and SSD Drive

    Date Published: 31 January 2010

    I have an Intel X-25M SSDin my developer workstation machine (and it’s quite fast). However, I’ve heard from others that over time SSD performance can degrade due to sub-block level fragmentation that occurs as a result of write combining. Fortunately, newer SSD drives (like mine) support the TRIM command, but of course this only works if your system is sending the command to the drive. How Do I…


  • Party with Palermo: MVP Summit Edition

    Party with Palermo: MVP Summit Edition

    Date Published: 27 January 2010

    The Code Project is sponsoring the next Party with Palermo in a few weeks at the MVP Summit. If you haven’t already, sign up. The cost is a nominal $5, just to try and keep the RSVPs accurate. You can see who else is coming on the sign-up page (via EventBrite), so check it out. Hope to see you there!


  • Product Idea: Polarizing Plate Covers

    Product Idea: Polarizing Plate Covers

    Date Published: 20 January 2010

    I’m one of those people that is always coming up with crazy business or product ideas. The problem is always that there just aren’t enough resources to go after every idea, and I at least know that An Idea is Not a Business so at least I don’t pretend that maybe some day I’m going to capitalize on these things. So on the way to CodeMash last week talking to Brendan about Mythbusters, apparently…


  • Coding Katas

    Coding Katas

    Date Published: 18 January 2010

    Last week at CodeMash I helped host a Software Craftsmanship PreCompiler on Wednesday afternoon. I also helped organize a coding dojo for the event, but it was very last minute and didn’t have a lot of instructions for developers new to performing katas. Having a room where people could get together and work through a problem together, perhaps in a new language, was still very worthwhile and…


  • Software Craftsmanship at CodeMash

    Software Craftsmanship at CodeMash

    Date Published: 08 January 2010

    This week at CodeMash I will be co-hosting a Precompiler session on Software Craftsmanship with Brendan Enrick on behalf of the Hudson Software Craftsmanship group(@HudsonSC on twitter). The Software Craftsmanship session will take place Wednesday afternoon on 13 January 2010. This will be a chance to improve your skills as a software developer, regardless of your language preference or level of…


  • Whew! Made It Through 2009

    Whew! Made It Through 2009

    Date Published: 08 January 2010

    So, 2009 is over. It was an interesting year, wasn't it? Talking to many of my friends and peers, especially entrepreneurs like other Regional Directors, I share a sense of relief that the year is behind us. We made it. For many, 2009 was a year with a lot of financial dread, and often loss. For me, the whole year was “ninjas on fire” – there never seemed time to take a breath, and it felt like I…


  • Personal Goals and Transparency 2009

    Personal Goals and Transparency 2009

    Date Published: 08 January 2010

    I find that if I commit to things in writing, they have a much higher chance of getting done. And if I commit to them in writing on the Internet where everybody in the world can see it, even though I realize that nobody in the world cares, it gives me even more motivation to follow through. So with that in mind, I’ve been posting my annual resolutions to my blog, and in 2009 I resolved to do the…


  • Is Extreme Programming Dying? Is Agile Growing in Popularity?

    Is Extreme Programming Dying? Is Agile Growing in Popularity?

    Date Published: 08 January 2010

    It’s interesting to compare the interest over time in various software development methodologies and practices. Google Trends is a great tool for this, although it’s not without limitations, especially since so many programming terms have other meanings. For instance, you can use it to visually show how interest in eXtreme programming has (sadly) been waning for many years now: xp trend Meanwhile…


  • Using RAMDisk to Speed Build Times

    Using RAMDisk to Speed Build Times

    Date Published: 20 December 2009

    Now that computers with 64-bit operating systems and 8 or 12 GB of RAM are pretty affordable, there are some fairly easy things you can do to speed up your build time for large project. Jeffrey Palermo wrote about six months ago about a few options for using RAM drives to speed up builds, and at the time my primary laptop only had 3GB of RAM so I wasn’t able to take advantage of his advice…


  • DEVLINK 2010 Call For Speakers

    DEVLINK 2010 Call For Speakers

    Date Published: 20 December 2009

    The call for speakers for DEVLINK 2010 is now open. They are opening the call earlier this year to allow everyone ample time to consider the best session ideas. If you don’t know about the devLink Technical Conference, please visit the website (www.devlink.net). The conference will take place August 5 – 7, 2010 in Nashville, TN, and had over 675 people at the event in 2009 from across the United…


  • Microsoft Will Ship When VS is Ready

    Microsoft Will Ship When VS is Ready

    Date Published: 17 December 2009

    I’m very pleased to see Microsoft respond to customer feedback requesting a little bit more time before the release of Visual Studio 2010. There has been concern with the current beta release that its performance is not where it needs to be, especially in certain specific scenarios. Microsoft is aware of these issues and has a number of fixes under way or already checked in, but the concern among…


  • Joining The Code Project

    Joining The Code Project

    Date Published: 09 December 2009

    Those of you who follow my blog (both of you) may have noticed an absence of posts of late. The reason for the lapse was simple: Michelle and I were in the process of selling two of our business properties, Lake Quincy Media and ASPAlliance.com, to The Code Project. It’s been almost a month since we announced the acquisition at PDC, so this isn’t exactly news, but if you want the full story, check…


  • Which Visual Studio 2010 is Team Suite?

    Which Visual Studio 2010 is Team Suite?

    Date Published: 19 October 2009

    The new VS 2010 has a new lineup of versions which you can find described on the Visual Studio 2010 Products page. Some things to note: Ultimateis the newSuite The “Data Dude” SKU is now fully incorporated in the Premium and Ultimate versions Premium and Ultimate come with a production license for Expression Studio 3, as well as Visio and Project 2010. All versions now come with some Windows Azure…


  • How to Install Windows 7 from USB Drive

    How to Install Windows 7 from USB Drive

    Date Published: 13 October 2009

    I decided to reinstall Win7 on one of my laptops because it was acting up – turns out that’s not helping and I think at this point it’s a hardware problem (either memory or hard drive – I’m going to try memory next). In the course of troubleshooting the problem, I decided to rule out a bad installer DVD for Windows 7 (the installer was failing, saying it couldn’t access certain required files). So…


  • Find String in Files with Given Extension Using PowerShell

    Find String in Files with Given Extension Using PowerShell

    Date Published: 10 October 2009

    This week I found myself wanting to search within files of a given extension for a particular substring. I often find myself missing UNIX’s grep tool. In any event, I tried using the default Windows Vista file search dialog, but found that if I wanted to search for “connection” or “database” within all files ending with “.cs” or “.config” I was unable to do so. I’m guessing there actually *is* a…


  • N Tier Design Lessons Learned Part 1

    N Tier Design Lessons Learned Part 1

    Date Published: 09 October 2009

    Eight years ago this month I gave my first presentation at a conference. It was DevConnections' Fall 2001 show, and it was held in Scottsdale, Arizona at the Princess Resort. The show was delayed a couple of weeks from its originally scheduled dates, and took place Sep 30 to Oct 3rd, as a result of the events of 11 September 2001. I still vividly remember the alarm with which my seatmate on the…


  • Don’t Repeat Yourself

    Don’t Repeat Yourself

    Date Published: 09 October 2009

    (this is a submission I made to the upcoming 97 Things Every Programmer Should Know book) Of all the principles of programming, Don’t Repeat Yourself (DRY) is perhaps one of the most fundamental. The principle was formulated by Andy Hunt and Dave Thomas in The Pragmatic Programmer, and underlies many other well-known software development best practices and design patterns. The developer who learns…


  • Principles, Patterns, and Practices of Mediocre Programming

    Principles, Patterns, and Practices of Mediocre Programming

    Date Published: 07 October 2009

    This is my first pass at a list of anti-principles, anti-patterns, and anti-practices that make up mediocre programming. I’m hoping to refine this list and update this listing based on community feedback, so please leave a comment or contact me to let me know what I’ve missed, and I’ll gladly credit you with a name and a link if you’d like. Principles Fast Beats Right (FBR)– It’s more important to…


  • Gmail Problems

    Gmail Problems

    Date Published: 26 September 2009

    Hmm, GMail has been increasingly inconsistent both for POP3 and browser usage for me lately. Is anybody else seeing the same thing or is it just me (twitter seems to indicate it’s not just me). I guess I shouldn’t expect much from a 0.5.32 release (of Gears), though…


  • GiveCamps Get a new Sponsor

    GiveCamps Get a new Sponsor

    Date Published: 25 September 2009

    If you haven’t heard of Give Camps before, they’re a way for developers to give back to local charities and non-profits by providing their services over the course of a weekend. GiveCamp was an idea hatched by Chris Koenig, a Developer Evangelist for Microsoft, a few years ago and now there are many GiveCamps organized around the country, including several in the Ohio-Michigan area (Ann Arbor…


  • SQL Divide By Zero Error Solved

    SQL Divide By Zero Error Solved

    Date Published: 25 September 2009

    Recently a report that had been running fine for months began failing with a Divide By Zero exception. This report is a summary of a lot of data and is contained in a stored procedure which uses quite a few table variables to do its job. Here’s part of it: Ultimately, after a bunch of such tables are created, all of the results are pulled out using a final select that joins together each of the…


  • The Ultimate Developer Desk

    The Ultimate Developer Desk

    Date Published: 21 September 2009

    team war room setup Recently we moved from one end of our office building in Hudson, Ohio to the other, and while we wait for some space to open up and get renovated, a few of us are working out of a conference room with a 10' or so long heavy duty table in the middle of it. So we decided to deck it out with as many computers and hi-res flat screens as possible. Sitting on one side, there are…


  • Imitation is the sincerest form of

    Imitation is the sincerest form of

    Date Published: 14 September 2009

    My SOLID Principles of OOP and ASP.NET MVC talk from this year’s TechEd is seeing some new life this week in Vancouver, Canada. Daniel Flippance is giving a presentation based on my session’s powerpoint and code. Good luck, Daniel, and thanks for letting me know. Let me know how it goes and if you have any suggestions for making the presentation better.


  • Use LINQ Aggregate to Multiply a Series of Digits

    Use LINQ Aggregate to Multiply a Series of Digits

    Date Published: 05 September 2009

    The LINQ Aggregate() extension method uses a Func<int, int, int> to operate on items in a series. If you want to use it, for example, to return the product of each value with its successor, you can do something like this: Of course, you don’t need the intermediate value. You can simply use a lambda directly for the Aggregate()’s parameter: With a loop to keep track of the largest result returned…


  • Euler 7 Trivial with LINQ and Generators

    Euler 7 Trivial with LINQ and Generators

    Date Published: 04 September 2009

    Euler problem 7 requires returning the 10001st prime number. It notes that the 6th prime number is 13 in the problem description. Having already done some work with iterators and various number generators, including a Primes generator for previous Euler problems, the base case given in the problem can be reduced to this NUnit test: Replacing the 6 with 10001 takes care of the rest. I’m really…


  • Windows Auto Sign On In Locked Mode

    Windows Auto Sign On In Locked Mode

    Date Published: 03 September 2009

    Earlier this week, after enduring yet another windows update, I came up with a feature request for Windows that would make me a much happier user. We’ve all heard about requests for speeding up boot times and there has been some progress on this (and of course there are hardware solutions like SSDs that can help here). What I’m looking for is related, but not quite the same. Background I had just…


  • PDC 2009 Sessions Posted

    PDC 2009 Sessions Posted

    Date Published: 01 September 2009

    They’ve recently updated the list of sessions for PDC09. You can read the full list of PDC sessions here. A few highlights include: Scrum for Microsoft Visual Studio Team System Patterns for Building Scalable and Reliable Applications with Windows Azure Developing Advanced Applications with Windows Azure Windows Azure Monitoring, Logging, and Management APIs SQL Azure Database: Under the Hood…


  • SQL Azure Database Deployment Tool

    SQL Azure Database Deployment Tool

    Date Published: 01 September 2009

    If you’re playing with SQL Azure, the current (pre-release) process of moving an existing local SQL Server to SQL Azure can be greatly improved using a new SQL Azure Migration Wizard tool that’s being hosted at CodePlex. Wade Wegner blogged about the tool yesterday, and his post includes a screencast showing how to use the wizard. Check it out if you’re interested in hosting your data in the Azure…


  • Iterators, Expressions, and LINQ for Euler

    Iterators, Expressions, and LINQ for Euler

    Date Published: 25 August 2009

    Recently I’ve been doing some Project Euler problems as exercises to help improve my coding skills. We do this internally at NimblePros periodically and also at last weeks Hudson Software Craftsmanship meeting, which I co-run. In doing these problems, I’ve been trying to approach them both from a traditional C# 1.0 standpoint as well as using newer constructs such as lambda expressions, LINQ, and…


  • Practice, Code Exercises, and Code Katas

    Practice, Code Exercises, and Code Katas

    Date Published: 25 August 2009

    One of the ways we improve as software developers is through practice. Practice isn’t just something that’s done as you go about your job – it has to be focused on improving your skills. Practice can take many forms, but two of them include practicing doing something the right way and practicing something new that is outside of your comfort zone. Often in our day-to-day work, our focus is on…


  • Caching Key Generation Considerations

    Caching Key Generation Considerations

    Date Published: 24 August 2009

    Recently I was reviewing some code and ran across this – can you spot the problem? There are actually a couple of different issues with this approach. The first one is that the serverTime parameter is literally sending in the current time (not date), which means that when it is .ToString()’d and joined into the cacheKey, it’s going to have information down to the second. Since this method is being…


  • MSDN Subscription Installer

    MSDN Subscription Installer

    Date Published: 12 August 2009

    As I write this, I’ve just installed Windows 7 on my development/presentation laptop, and it’s currently installing a bunch of apps using the Web Platform Installer. If you haven’t tried this tool, you should definitely check it out. It’s free and easy to use and available here. Basically, instead of hunting around in 15 different places online and on your various CDs or DVDs to install your basic…


  • Thrive for Developers

    Thrive for Developers

    Date Published: 19 July 2009

    Recently, Microsoft launched a new developer community aimed at helping career software developers facing challenges in the current economy. The site is called Thrive, and I think the idea is that not only should you be able to survive the current economic climate, but if you play your cards right, you canthrive. There’s a lot of good material here from folks you probably already know (or should…


  • Free eBook Developers^4

    Free eBook Developers^4

    Date Published: 19 July 2009

    Recently, Microsoft released an eBook called Developer Developers Developers Developers which you can download for free or order a print copy from Lulu for under $10. In the book are over 15 useful articles written by Microsoft MVPs, Regional Directors, and other experts. From the site: In the book: Working with Brownfield Code by Donald Belcham (Microsoft MVP) Beyond C# and VB by Ted Neward…


  • Microsoft PDC 2009

    Microsoft PDC 2009

    Date Published: 14 July 2009

    PDC 2009 will once again be held in Los Angeles, but rather than October the event will take place in mid-November (17-19 November 2009). The web site hasn’t been completely updated yet, but you can see the new logo and dates and sign up to learn more about sponsors and “Partner Opportunities.” Lake Quincy Media will once again be a Silver Media Sponsor for the event, which tends to coincide…


  • Principle of Least Surprise

    Principle of Least Surprise

    Date Published: 08 July 2009

    When developing software, and especially when building user interfaces, it’s a good idea not to surprise the end user. This is known as the Principle of Least Surprise (or Astonishment if you want to go for maximum drama). It may seem obvious, but in practice it’s often easier said than done. This is why user interfaces are often difficult to work with, especially if they’re built according to how…


  • Silverlight Contest

    Silverlight Contest

    Date Published: 07 July 2009

    ComponentArt recently announced their Summer Silverlight Coding Competition, running June 22nd to September 22nd this summer. Already there are a bunch of submissions to the contest, although there’s still lots of time left before the contest is over. The winner will be determined based on the results of community voting combined with a panel of judges, so you can help decide which of these apps…


  • INVESTing in User Stories

    INVESTing in User Stories

    Date Published: 22 June 2009

    User Stories describe features from the standpoint of the user, and should identify small units of work that can reasonably achieved within a short (1 or 2 week) iteration by a programming pair. A useful acronym for remembering how to write good user stories is INVEST (more elsewhere and here). A “good” user story is one that serves the needs of all of the stakeholders in the software development…


  • Determine Whether an Assembly was compiled in Debug Mode

    Determine Whether an Assembly was compiled in Debug Mode

    Date Published: 17 June 2009

    I’m working on a little application right now that provides some insight into the assemblies in use for a given application. One of the things that I want to be able to show is whether or not each assembly was built in Debug or Release mode. As you’re no doubt aware,running applications in production that were built in Debug mode can be a major performance problem(at a minimum – depending on what…


  • The Fibonacci Blog Post Formatter

    The Fibonacci Blog Post Formatter

    Date Published: 11 June 2009

    Sarah suggested Tuesday that I write a blog PostFormatter that only changed the format of blog posts created on days that were Fibonacci Sequence days (e.g. 1, 2, 3, 5, 8…). I’d hoped to code something like that up during my Ann Arbor talk last night but ended up not having the time, so just to show how easily this could be done, I threw something together today. First, this is for a demo…


  • Binding in ASP.NET MVC

    Binding in ASP.NET MVC

    Date Published: 10 June 2009

    At my ASP.NET MVC + SOLID Principles talk in Cleveland last night, I had a couple of questions about binding in ASP.NET MVC. For instance: Can you still do something like <%= Bind(“Foo”) %> in your form? How does the controller that receives a POST get back the Model that was used in the form that was posted? Does it have to be serializable? What if I need to bind custom types to my Model class…


  • Speaking in Cleveland and Ann Arbor this week

    Speaking in Cleveland and Ann Arbor this week

    Date Published: 08 June 2009

    This week I’ll be presenting my TechEd session on SOLIDifying ASP.NET MVC applications to the Cleveland .NET SIG in Independence and the Ann Arbor .Net Developer’s Group(in Ann Arbor, MI). The talk’s main purpose is to introduce developers to “Uncle Bob” Martin’s principles of software design (which can be arranged into the acroacronym SOLID) and to drive home the point that just because you’re…


  • DRY – Don’t Repeat Yourself – Motivator

    DRY – Don’t Repeat Yourself – Motivator

    Date Published: 08 June 2009

    I’ve been meaning to create a DRY (Don’t Repeat Yourself) motivational poster for a while now, ever since seeing Derick Bailey’s SOLID posters. To me, DRY is at the heart of many software patterns and principles, and sums up much better the similar Once and Only Once principle (which, to me, violates DRY right in its own name). Duplication is waste. Repetition in process calls for automation…


  • Regular Expressions Cookbook

    Regular Expressions Cookbook

    Date Published: 28 May 2009

    I just received a notice that O’Reilly is publishing a new Regular Expressions Cookbook. It’s not available yet, so I can’t offer a review, but I’m certainly a fan of Cookbook style books (like this one), because of their simple, problem-solution organization. The authors are notable regular expression experts, so I expect there will be some good material here. Other regular expression resources…


  • TechEd 2009 Session Aftermath

    TechEd 2009 Session Aftermath

    Date Published: 27 May 2009

    I’m a bit later than usual in posting my slides and demos from my talks, and for that I apologize. TechEd this year was a lot of fun, albeit a little disappointing due to its being a smaller show than in past years. However, it was great to see a lot of my friends whom I typically only interact with electronically, and to meet a few new people as well. I do wish that this show would have had a bit…


  • XmlSerializer FileNotFoundException

    XmlSerializer FileNotFoundException

    Date Published: 21 May 2009

    Recently a buddy of mine ran into this problem trying to serialize a custom object. The error message he got back was the ever-so-helpful An unhandled exception of type ‘System.IO.FileNotFoundException’ occurred in mscorlib.dll Additional information: File or assembly name uwzg3j_w.dll, or one of its dependencies, was not found. After a fair bit of research, he found the answer, which I thought…


  • IgnoreRoute in ASP.NET Routing is Order Dependent

    IgnoreRoute in ASP.NET Routing is Order Dependent

    Date Published: 12 May 2009

    I’m wiring up the IoCController Factory from MVCContrib into an MVC application and I kept running into an issue where a request was coming in looking for a ContentController. The reason for this is that in my CSS file I have a property like this: background: transparent url(images/logo.gif) no-repeat scroll left top; which is in the Content folder. The resulting request for “/Content/images/logo…


  • Stir Trek

    Stir Trek

    Date Published: 11 May 2009

    Last Friday I presented at the Stir Trek event held in Columbus, Ohio. This event was by far one of the best local events I’ve been a part of, and I’m eagerly looking forward to a similar event already scheduled for next year. You can learn more about it at its web site, but the event’s primary goal was to provide local developers with content that was presented at MIX09. My talk was on What’s New…


  • TechEd 2009 Sessions

    TechEd 2009 Sessions

    Date Published: 11 May 2009

    This week I’m at TechEd 2009 in Los Angeles. I’m giving two talks and would love to get some feedback from attendees on them. Naturally you can use Comment to add your evaluation (and I hope you will do so, unless you’re one of those cruel all 1s people), but if you have anything constructive to say, I’d love it if you’d post comments here or contact me directly. It’s a challenge to present topics…


  • Moving a Business

    Moving a Business

    Date Published: 27 April 2009

    This week we’re moving our businesses from an office in Kent to one in Hudson, Ohio. I thought I’d write a little bit about some of the things we’re having to deal with as part of this process, and some lessons learned. In our case, this is going to be a multi-step move, in that we are moving in to space that is not yet full renovated so that we can be onsite while further renovations are…


  • Cloud Computing with Force.com

    Cloud Computing with Force.com

    Date Published: 24 April 2009

    Lake Quincy Media uses SalesForce.com as our CRM to manage our leads and customers and keep our salespeople organized. Overall we’ve been very pleased with the solution, and we know plenty of others who swear by SF. So when I heard about their foray into Cloud Computing via Developer.Force.com (DFC), I figured I should check it out. Similar to Azure, you need to register to get an account and the…


  • Space Coast ASP.NET MVC and SOLID Principles Talk

    Space Coast ASP.NET MVC and SOLID Principles Talk

    Date Published: 19 April 2009

    Last week I visited the Space Coast .NET user group in Florida (courtesy of INETA) to talk about ASP.NET MVC and SOLID software development principles. If you’re interested, you can grab the slides and demos from the link below: Download slides and demos Big thanks to Robert “UncleBob” Martin,Mark Nijhof, and Derick Bailey for many of the slides and ideas in this talk.


  • Speaking at Kent State University ACM Chapter

    Speaking at Kent State University ACM Chapter

    Date Published: 06 April 2009

    I’m giving a talk this week at Kent State University on ASP.NET MVC and SOLID principles. It will be at 3:45pm on Wednesday, April 8th, in room 228 of the Match and Comp Sci building. It’s sort of a dry run for a session I’ll be giving at TechEd in May, but also geared more toward students. I’ll be sure to post the slides and demos here as usual afterward. If you’re a student at KSU or are in the…


  • Use HttpApplication.CompleteRequest Instead of Response.End

    Use HttpApplication.CompleteRequest Instead of Response.End

    Date Published: 06 April 2009

    HttpApplication.CompleteRequest is preferable to use for aborting a request in an ASP.NET application over Response.End, because it has better performance characteristics. If you’re using Response.End, you’ve probably at one time or another encountered the ThreadAbortException that goes along with it. The behavior of CompleteRequest changed with 2.0, as Rick describes here. However, the reason why…


  • Stir Trek Event in Columbus Ohio

    Stir Trek Event in Columbus Ohio

    Date Published: 02 April 2009

    I’ll be attending and speaking at Stir Trek on 8 May 2009, which happens to be the date the new Star Trek movie opens (coincidentally). What is Stir Trek, you ask? Well, let me tell you (by means of cutting and pasting from the above-linked site, to save you from exercising your mouse-clicking finger): Stir Trek is an opportunity to learn about the key announcements from the Mix 09 conference, at…


  • DevConnections Spring 2009 Slides and Demos

    DevConnections Spring 2009 Slides and Demos

    Date Published: 31 March 2009

    Apologies to those in my sessions whom I promised to upload these by the end of last week. As often happens, things came up that prevented me from doing so, which is why I’m finally getting these uploaded after midnight almost a week after my talks (I also had to reset my Azure keys/tokens since I showed some of them during the talks). In any event, although I didn’t have a huge turnout for my…


  • CODE Magazine Upgrade

    CODE Magazine Upgrade

    Date Published: 29 March 2009

    If you’re a .NET developer, you’re probably familiar with CODE Magazine, which is pretty much the only industry magazine that isn’t owned by a large corporation, and which has always been known for delivering quality content. Recently, the magazine upgraded its look, as you can see at right, and a refresh of the web site is imminent as well. The most recent issue, in particular, caught my…


  • Cannot Connect to Windows Home Server Solution

    Cannot Connect to Windows Home Server Solution

    Date Published: 28 March 2009

    I have an HP MediaSmart 470 Home Server(previous post) that I like very much for its ease-of-use and simple ability to back up my home network’s computers and act as a streaming media server. However, one of my computers stopped being able to connect to it. Since it was my laptop, and I have another WHS at my office that is also backing up the same machine, I didn’t worry too much about it, but…


  • SDS Now Offering Real SQL

    SDS Now Offering Real SQL

    Date Published: 17 March 2009

    SQL Data Services (SDS) will offer “real” relational data access in the future, according to the latest MSDN Flash newsletter I received today. This is great news, since prior incarnations of SSDS/SDS have all been restricted to Astoria/REST implementations that required HTTP access to data. These are fine for some scenarios, but most apps that exist or are being built today are built on…


  • Visual Studio Silent Crash with Designer

    Visual Studio Silent Crash with Designer

    Date Published: 03 March 2009

    If you’re encountered an issue where Visual Studio 2008 SP1 crashes silently whenever you try to open a web form or master page (which by default will open the design view), there is a hotfix that will likely solve the problem. I ran into this recently while working on the Azure MVC templates that Jim Nakashima posted in November. I brought this to his attention (as I’m sure others did as well…


  • Some Code Quality Links

    Some Code Quality Links

    Date Published: 03 March 2009

    Caught a couple of nice links from @unclebobmartin via twitter this morning that I thought were worth sharing. The first one is a very nice summary of the Software Craftsmanship conference that took place last week in London. From reading this review, it sounds like there were a lot of very interesting and interactive sessions. The author,Kerry Buckley, shows off his own mind-map of software…


  • Entrepreneurs and the Economy

    Entrepreneurs and the Economy

    Date Published: 24 February 2009

    ScottW pointed me to Entrepreneurs Can Lead Us Out of the Crisis, which has some very interesting ideas. As an entrepreneur and small business(es) owner myself, I have to say that I agree with the ideas presented in the article pretty strongly. I’m not an expert on the stimulus plan that was recently passed but I can say with some confidence that thus far it hasn’t turned around the economy…


  • Craftsmanship, Quality, Dogma, and Pragmatism

    Craftsmanship, Quality, Dogma, and Pragmatism

    Date Published: 23 February 2009

    Craftsmanship In the last year or so, there has been an increasing amount of discussion on software craftsmanship, and what it means and whether or not it’s a good thing. There’s an online email list, a conference with the same name, and at least one user group devoted to the subject (in related news, I’m helping to organize a similar group in Hudson, Ohio). There is some good discussion going on…


  • Sending Mail via GMail with AspNetEmail and .NET

    Sending Mail via GMail with AspNetEmail and .NET

    Date Published: 26 January 2009

    Periodically, I need to send out announcements to a list of emails pulled from a database. This is a pretty common problem, and a long time ago I found RapidMailer from Dave Wanta aka AdvancedIntellect which does a pretty good job and has all the source. However, I’d been using it with my web host provided SMTP/POP3 provider for years, but since I recently moved my accounts to Google Apps (for the…


  • Ultimate Developer Rig 2009

    Ultimate Developer Rig 2009

    Date Published: 25 January 2009

    I’m writing this on my Ultimate Developer Rig of Jeff Atwood fame from late 2007, which a number of folks online built over the last year or so. Dustin Campbell was nice enough to provide a NewEgg wish list that included all of the requisite components, and Lake Quincy Media actually bought and built two of these things from that list. However, as you’ll see if you follow the link, a large number…


  • Copy Pictures To Folders By Date Taken with Powershell

    Copy Pictures To Folders By Date Taken with Powershell

    Date Published: 18 January 2009

    For about the millionth time, I was downloading the photos from my digital camera and organizing them into folders by date… by hand. I’ve tried a few different tools to do this in the past and have always ended up going back to a manual process for one reason or another. So this time I grew fed up (again) with the inanity of the process and decided I’d use PowerShell to accomplish the task, as it…


  • DevReach DVDs

    DevReach DVDs

    Date Published: 17 January 2009

    Earlier this week, I received a package of DVDs from the DevReach conferenceI was invited to speak at last October. I’ve already written about my experience with the conference, but the arrival of the DVDs was a welcome surprise. Sure, you usually get such things at TechEd or PDC, but a small regional conference like DevReach? I wasn’t sure what to expect. After checking out some of the content, I…


  • CodeMash 2009 Aftermash

    CodeMash 2009 Aftermash

    Date Published: 12 January 2009

    CodeMash 2009, the third annual Ohio conference (and as far as I know, the largest Ohio developers’ conference), was by all accounts a great success last week. I was privileged to be a speaker at the show but also got a lot of value out of the networking opportunities and other sessions. Mary Poppendieck was also speaking, and it was great to get the opportunity to meet her and her husband Tom, as…


  • Online Media and the Death of DRM

    Online Media and the Death of DRM

    Date Published: 07 January 2009

    In one of my recent posts I mentioned that I have a Zune and quite enjoy it as an MP3 player. Prior to it, I swore by my iRiver player, which was *tiny* and ran on just a single AA battery for about 12 hours per battery. One thing I really liked about the iRiver was that you never had to worry about whether or not it had been charged. It was always ready to go, and if it did run out of power, AA…


  • Latitude D830 Vista BlueScreen

    Latitude D830 Vista BlueScreen

    Date Published: 07 January 2009

    I’m rebuilding one or our laptops and it’s had a few bluescreens immediately upon Vista launching for the first time (it had Vista on it before I decided to pave it). Going into safe mode, I was able to identify that the last thing it tries to do is load crcdisk.sys. Searching online, I was able to find two possible solutions: The laptop has 4GB of RAM (2x2GB). Remove one of the DIMMs and try…


  • Cool Games

    Cool Games

    Date Published: 04 January 2009

    Like many others, I enjoy playing games in my short supply of free time. I used to be a bigtime PC gamer who scoffed at console gamers, but in the last few years the consoles have really caught up to the PCs in a lot of ways, and now I’m just about 100% an XBox360 gamer when it comes to video games (I still play the Starcraft occasionally, though). Luckily, my wife (mostly) shares my love of games…


  • Slow Script Loading by FireFox with Cassini

    Slow Script Loading by FireFox with Cassini

    Date Published: 30 December 2008

    Bertrand just posted about a bug I’d encountered before but never tracked down wherein FireFox (and in particular, FireBug) is extremely slow in loading scripts for a local web site running on Cassini (Dev Web Server). It turns out that the issue has to do with an FF bug trying resolve “localhost” using IPv6. Dan Wahlin follows up with the fix, describing how to disable IPv6 in FireFox. Since the…


  • Holiday Skins for .NET Controls

    Holiday Skins for .NET Controls

    Date Published: 14 December 2008

    As the end of year holiday season approaches, it's fairly common for some web sites and products to re-skin their logos and applications to make them a little more festive or seasonal. Google has long been known for their creative variations of their logo in response to various holidays throughout the year. This year, at least one .NET control vendor, DevExpress, has created a Holiday UI skin for…


  • IFileSystem Dependency Inversion Part 5

    IFileSystem Dependency Inversion Part 5

    Date Published: 10 December 2008

    The saga began here. Where I left off, I’d managed to create a new class for handling the storage of my creative files, calledCreativeFileStore. This method took in an IFileSystem as a parameter to its constructor, which provides two benefits: Testability Flexibility – I can swap between WindowsFileSystem and AmazonS3FileSystem easily In the interest of keeping the individual posts at a reasonable…


  • IFileSystem Dependency Inversion Part 3

    IFileSystem Dependency Inversion Part 3

    Date Published: 09 December 2008

    In part oneI described the problem. In part twoI worked out the details of how to save files in a platform-ignorant way by creating a spike solution. Now I’m looking back at my original ugly method from part one and extracting it into its own class that accepts an IFileSystem instance via constructor injection. Looking at the original method, it has a number of dependencies and issues. My next…


  • IFileSystem Dependency Inversion Part 4

    IFileSystem Dependency Inversion Part 4

    Date Published: 09 December 2008

    Still working on cleaning up some legacy ASP.NET code. Here’s where we are: Part 1: Define problem and demonstrate IFileSystem basic version Part 2:Spike solution to support saving files in IFileSystem that works in both Amazon S3 and the Windows file system Part 3: Initial refactoring via TDD of big ugly method Now it’s time to take the big step of pulling the main ugly method guts out into its…


  • Energy Usage

    Energy Usage

    Date Published: 08 December 2008

    Rick has an interesting post about his experiences measuring electricity use of various components in his home. I’ve been curious about this myself for some time, but haven’t had the tools or time to track it. I think I’ll pick up one of these usage monitors (like Rick did) and of course (eventually) report my findings. I’m thinking I’ll pick it up for the office, so it’ll be a business expense…


  • IFileSystem Dependency Inversion Part 1

    IFileSystem Dependency Inversion Part 1

    Date Published: 08 December 2008

    In the course of making my software more testable, I’ve attempted to eliminate a dependency on the file system (in this case, via System.IO) by creating an interface, IFileSystem. I just did a quick search for this term and came back with only one C# interface(in the first few results) that matches this, which is for CC.NET, and looks like this: ifilesystem code listing My basic version of the…


  • Installing Graffiti Extras

    Installing Graffiti Extras

    Date Published: 08 December 2008

    I’ve been wanting to add Next/Previous links to my blog’s posts to provide easier navigation for folks who come to the blog and find themselves somewhere in the middle of it. My goal is for the top and/or bottom of each post to have something like this: <<Blog Post Title|Blog Post Title>> Most likely my designer will make it look better than this, of course. A quick search revealed that Graffiti…


  • IFileSystem Dependency Inversion Part 2

    IFileSystem Dependency Inversion Part 2

    Date Published: 08 December 2008

    In my last post in this IFileSystem series, I described the problem I’m working on of removing a dependency on the System.IO Windows file system in my ASP.NET application. A bit of research on this subject revealed some help on making file uploads testable by ScottHa, but his technique still makes use of the SaveAs() method and ultimately ties the solution to the server file system. A similar post…


  • Func Mousepads

    Func Mousepads

    Date Published: 05 December 2008

    I bought an Alienware laptop a few years ago as sort of a gift to myself after coming back home from Iraq. As it turned out,that computer didn’t actually last very long because of Alienware’s crappy support policy, but it did come with a Func Industries mousepad that I still use to this day. Let me tell you why. Back in the day, I used to have time to play computer games, and I was a bit of a…


  • SEO Tip Move Hidden ASPNET Fields To Bottom of Page

    SEO Tip Move Hidden ASPNET Fields To Bottom of Page

    Date Published: 05 December 2008

    Here’s a quick SEO tip from Teemu (via email) that I’ve been meaning to mention – there’s a new feature in .NET 3.5 SP1 that lets you control where hidden form fields are rendered by ASP.NET. To set it, go into web.config and add the following: The default for this is true (which is how it’s always behaved since 1.0). You can read more about it on MSDN. What’s the point? There are pros and cons to…


  • Personal Goals 2008 Update

    Personal Goals 2008 Update

    Date Published: 04 December 2008

    My progress bar for 2008’s goals completed is resembling a Windows Vista file transfer dialog in terms of its responsiveness and accuracy. That is, it went to 20% back in January, and there it sat for 11 months until earlier this week when it moved up to 40%. Now it’s pretty much (Not responding) which doesn’t bode well for my goal accomplishment ratio… As a recap, I started off the year with…


  • CodeMash 2009

    CodeMash 2009

    Date Published: 03 December 2008

    The 2009 Conference Season kicks off early in Ohio with CodeMash 3.0. This is the third year of the event and promises to be a valuable experience with a diverse mixture of software development technologies. This year I’m happy to report that I will be speaking about techniques to improve web application performance, a topic I’ve spoken on frequently to ASP.NET audiences and one which I’ll be…


  • SQL Resources

    SQL Resources

    Date Published: 24 November 2008

    Last week, we launched SQLFeeds.com, a community-moderated site focused on providing SQL developers and DBAs with high signal-to-noise SQL content. If you have a favorite source of SQL wisdom, please add it to the site’s feed list (which you can do anonymously from the home page). If you think you’d like to help the community by moderating the site’s content, please contact me and let me know a…


  • Silverlight Resources

    Silverlight Resources

    Date Published: 17 November 2008

    Today we’re launching SilverlightFeeds.com, an aggregate site moderated by community volunteers which pulls in useful Silverlight content from many talented bloggers. The site provides a nice one-stop shopping location for very high signal-to-noise ratio Silverlight content, without the typical off-topic posts most blogs include. We’re looking for additional feeds – feel free to add yours via the…


  • CodeMash 2009 Sessions Announced

    CodeMash 2009 Sessions Announced

    Date Published: 13 November 2008

    Actually they were announced a couple of days ago, but I’ve been a bit too busy to blog. Eventually these will make it up on the CodeMash web site, but for now they are only listed on the events’mailing list. I’ve included the complete list below. CodeMash is a great developer event held at an indoor water park each January in Sandusky, Ohio. I’ve been to the previous events, and the 2009 event…


  • Installing Windows Home Server

    Installing Windows Home Server

    Date Published: 13 November 2008

    In a classic case of ensuring the barn door is closed after the animals have all left, I bought an HP MediaSmart EX470 Home Server last week for home backup purposes, and it arrived today. I decided to take a few pictures and generally document the experience. Scott Hanselman did a (probably much more thorough) writeup last year. First Impressions This thing ships and unpacks like an appliance…


  • Updating Hosts In and Out of Office

    Updating Hosts In and Out of Office

    Date Published: 09 November 2008

    We have a machine in the office that we use for source control, and it’s set up in DNS with a fully qualified name that points to the office’s external IP address. Of course, if you try and use that fully qualified name while you’re in the office, you can’t connect – you have to use the local 192.168.X.X address to get to it. Thus, the machine has different addresses depending on whether you’re…


  • SimpleCMS on CodePlex

    SimpleCMS on CodePlex

    Date Published: 05 November 2008

    ASPAlliance SimpleCMS plugin is now available on CodePlex. You can use CodePlex to submit your feature requests and such now, which will help guide future releases of the plugin. Also, if you’re interested in contributing to the project, let us know. You’ll find SimpleCms here now.


  • Unrecognized attribute 'securityTrimmingEnabled'. Note that attribute names are case-sensitive

    Unrecognized attribute 'securityTrimmingEnabled'. Note that attribute names are case-sensitive

    Date Published: 05 November 2008

    Saw this error today working with the SiteMapDataSource in ASP.NET 3.5/VS2008. Apparently this is a bug that has been around for a while, and is discussed here and logged in Connect here. The issue, however, is that the securityTrimmingEnabled attribute pops up in Intellisense in VS2008 when editing the web.sitemap file. However, using it results in the error: Unrecognized attribute…


  • VS2008 Shipping November 2007

    VS2008 Shipping November 2007

    Date Published: 05 November 2008

    It’s official now – Microsoft has announced that it will ship Visual Studio 2008 and the .NET Framework 3.5 later his month, November 2007. The announcement came earlier today at TechEd Developers in Barcelona, Spain. I expect a similar announcement will be made this week during the keynotes for DevConnections. You can read the whole announcement here (although it’s just a more longwinded and…


  • Vista Cleanup May Corrupt OS And Prevent Boot

    Vista Cleanup May Corrupt OS And Prevent Boot

    Date Published: 04 November 2008

    Ran into this gem yesterday. My intelide.sys file was corrupted and prevented Windows Vista from booting on my laptop. I found this forum and several others referencing the problem, which appears to be the result of running Vista Cleanup to free up space. A few days previously, Vista warned me that I was low on disk space and presented its little cleanup dialog with options for compressing files…


  • DevExpress TechSummit

    DevExpress TechSummit

    Date Published: 04 November 2008

    I'm in Vegas a few days early (before DevConnections) to attend DevExpress's TechSummit2007, where they've invited a bunch of MVPs, authors, speakers, etc. to come and learn more about their controls and tools. Yesterday we saw some of what they're working toward in the WPF space, with some charts and grids that are not quite ready yet, but look like they will be pretty nice. I'm not doing much…


  • Mac Ads and Vista Advertising

    Mac Ads and Vista Advertising

    Date Published: 02 November 2008

    I’m sure many of you have seen the recent Mac ads continuing to poke fun at PCs and Vista. The latest ones are just too ironic for me not to comment on, though. Since Microsoft launched their very successful “I’m a PC” campaign a while back, the latest Mac ads are accusing Microsoft of devoting money to advertising rather than toward improving their products. While I enjoy the humor of the Mac ads…


  • DevReach 2008 Speaker Feedback

    DevReach 2008 Speaker Feedback

    Date Published: 02 November 2008

    I’ve been posting feedback from my talks on my blog as a means of transparency as well as a way to get more feedback and hopefully improve my talks and topics. You can see some past posts here for instance. At any rate, a month or so ago I was in beautiful Bulgaria speaking at DevReach, and here’s how things turned out. Note that in this case I don’t have any plain text comments, which are usually…


  • Speaking in Ann Arbor November 14th

    Speaking in Ann Arbor November 14th

    Date Published: 02 November 2008

    I’ll be presenting to the Ann Arbor .Net Developer’s Group in two weeks on ASP.NET Caching Best Practices. The meeting starts at 6pm at SRT Solutions in Ann Arbor. You can find more information about the group and meeting location here: AADND.org


  • Live ID to support OpenID

    Live ID to support OpenID

    Date Published: 01 November 2008

    Last week Windows Live ID announced support for OpenID with the release of a Community Tech Preview (CTP) of their OpenID Provider. A growing number of sites have begun accepting OpenID as their means of authentication, and it’s encouraging to see that Microsoft’s Live ID will support this standard. Live ID is one of the most widely used authentication providers in use today, but previous attempts…


  • New Look for Blog

    New Look for Blog

    Date Published: 30 October 2008

    Craig, Lake Quincy Media’s Creative Director, updated my blog from the generic theme I’d been using today. Let me know how you like it (if you’re reading this in an RSS reader, click here). I like it but I’m a bit biased. I’m also curious, as a reader, do you prefer seeing full posts on the home page or just summaries (for example: Rob Howard or ScottW’s blogs). Please post a comment with your…


  • PDC 2008 Keynote Demo: Boku

    PDC 2008 Keynote Demo: Boku

    Date Published: 30 October 2008

    At Wednesday’s keynote by Microsoft Research VP Rick Rashid, one of the demos showed of Boku, a project designed to bring programming and logic to children in game form. The coolest part about it is that everything is graphical and the UI is a game controller – no keyboard. The gist of the “language” is something like this: When – Saw – Tree => Do – Move – Toward + When – Bumped – Fruit => Do…


  • Silverlight Detection and Installation

    Silverlight Detection and Installation

    Date Published: 30 October 2008

    Tim Sneath just posted some tips for optimizing the Silverlight install experience for your site’s end users. I’ve noticed many people on mailing lists and forums discussing (lamenting) the fact that Silverlight’s install process requires the user to leave the site they’re on, but this is not the case. Silverlight supports two modes of installation: direct and indirect. Direct means the installer…


  • Limit Rows In DataTable or DataSet

    Limit Rows In DataTable or DataSet

    Date Published: 30 October 2008

    I wrote some quick and dirty ADO.NET code to go against an RSS feed instead of a flat XML file today. In the process I had to figure a way to limit the number of rows returned by the function, which returns a DataTable. The simplest method I found was this one, which uses the DataTable.Select() method. Using this technique, you could also pass in a sort parameter (second parameter to Select…


  • PDC 2008 Rollup After 2 Days

    PDC 2008 Rollup After 2 Days

    Date Published: 28 October 2008

    It’s the morning of Day 3 of PDC 2008 and as I’m waiting for the next keynote to begin, I thought I’d summarize what I’ve seen announced thus far this week. On Monday, Microsoft chief software architect Ray Ozzie announced Windows Azure, Microsoft’s new cloud services platform that provides scalable, available application hosting and supporting services. Azure, combined with other services such as…


  • Windows Cloud Platform – Azure Thing?

    Windows Cloud Platform – Azure Thing?

    Date Published: 26 October 2008

    So they announced the name for the Windows cloud platform, formerly code named Red Dog (and briefly Strata) – introducing Windows Azure. I like the name, personally, although even during the keynote at PDC there were issues with pronunciation (AZ-ure or uh-ZHOOR), the fomer being the accepted one, apparently. What does this mean to you? Well that really depends and since I don’t necessarily know…


  • OlderItems

    OlderItems

    Date Published: 22 October 2008

    Older Posts \


  • Speaking at Dog Food Conference in Columbus Ohio November 2008

    Speaking at Dog Food Conference in Columbus Ohio November 2008

    Date Published: 20 October 2008

    I’m giving an overview of ASP.NET MVC at the “Dog Food” conference in Columbus, Ohio, next month. The details and schedule are as follows: Date: November 20, 2008 Location: · Floor 4: Suite 400 · Floor 5: Classroom 501 and 502 8800 Lyra Dr Columbus, OH 43240 Dogfood Developer’s Conference: A commonly used word by developers and MS employees: Click to Register ** Track 0: MS Multipurpose Room **…


  • Insidious Dependencies

    Insidious Dependencies

    Date Published: 19 October 2008

    In the last year or so I’ve really seen the light on how to really write loosely-coupled code. I thought I knew something about this concept before – I mean, I knew loose coupling was good, generally speaking, and I knew data abstraction was one of the key ways to limit dependencies between classes. However, I didn’t realize that I was unintentionally adding all kinds of coupling into my…


  • Incenting Behavior

    Incenting Behavior

    Date Published: 19 October 2008

    Ayende recently commented on Spolsky’s latest Inc. column about how commission schemes typically backfire for companies due to local optimization by those seeking to maximize their commissions. Both make good points; read them, I’ll wait. As it happens, I was just getting to my notes on this from Lean Software Development, which describe a compensation scheme that I think works very well and that…


  • Hosting Company Breached

    Hosting Company Breached

    Date Published: 18 October 2008

    Fasthosts, “the UK’s number 1 web host” (by self acclamation I’m sure) is in the news today because apparently all of their customers’ passwords (in plaintext) were compromised by a security breach. They’ve asked all of their customers to change their passwords immediately, and of course since many people use the same passwords on multiple web sites, the breadth of this breach could be quite large…


  • DevReach 2008

    DevReach 2008

    Date Published: 16 October 2008

    I spent most of the last week speaking at DevReach in Sofia, Bulgaria. This was DevReach’s third year, but was my first time speaking there, as well as my first time visiting Bulgaria. The conference is sponsored primarily by Telerik and Martin Kulov of Kulov.net. The organizers did a great job, I thought, and the sold out conference went very well by all accounts, with I think a little over 45…


  • Fiddler for Firefox

    Fiddler for Firefox

    Date Published: 16 October 2008

    In my tools talk at DevReach earlier this week I mentioned that I use Fiddler with IE and FireBug with Firefox to see HTTP traffic involved in loading and working with a given web page/site. I said in the talk that Fiddler only works with IE, but that’s not entirely true as Ivo Evtimov was kind enough to point out to me. You can configure Firefox to work with Fiddler, but you have to do so…


  • Installing VisualSVN Subversion

    Installing VisualSVN Subversion

    Date Published: 02 October 2008

    Wrapping up HeadSpring's Agile Boot Camp class this week, we're installing VisualSVN Server locally. Running the setup is just a matter of hitting Next three times – it's very simple. Running the visual server window yields this opening screen: image Next, right click on VisualSVN Server and select Properties: image These are basically the same settings you had available from the installer…


  • Favorite Developer Books

    Favorite Developer Books

    Date Published: 26 September 2008

    I’ve written a few posts recently about various books, and recently while interviewing a candidate for Nimble Software Professionals it occurred to me that for an experienced developer (e.g. not a new grad out of college), asking what their favorite (or most recently read) programming book is could tell a lot about them as a developer. If their favorite book is something like Expert Programming in…


  • Strategy Pattern With Ninject

    Strategy Pattern With Ninject

    Date Published: 24 September 2008

    This is a follow-up to my post about avoiding dependencies with design patterns. It left off with something like this as a Cart object that uses the Strategy pattern to avoid a direct dependency on SMTP emails. Note that I’ve commented out the default constructor – I’ll explain why in a moment. The next logical step in this series is to avoid the requirement of hard-coding in the class its default…


  • Probability Puzzle

    Probability Puzzle

    Date Published: 23 September 2008

    I was recently introduced to the following puzzle by another developer (from Vertigo, in fact). This is actually a fairly well-known problem and you’ll find write-ups about it on Wikipedia and elsewhere, but I’ll omit links to those sources from this post to prevent some temptation to just click and see the answer (I’ll post everything in a follow-up). The Scenario Imagine you are on a game show…


  • Probability Puzzle Answered

    Probability Puzzle Answered

    Date Published: 23 September 2008

    In a recent post, I described a Probability Puzzle that is actually known as the Monty Hall Problem. This is a fairly famous problem and has a long write-up on Wikipedia that is definitely worth reading to get a good understanding of the problem. Almost everyone fails to answer this problem correctly the first attempt, because it seems obvious that there is one prize behind one of the remaining…


  • Monty Hall Envelope Puzzle

    Monty Hall Envelope Puzzle

    Date Published: 23 September 2008

    So, recently I wrote about my introduction to the Monty Hall problem and its solution. However, in the course of thinking about this problem, I came up with a related one that is pretty tricky as well, and builds on the insight gained from the Monty Hall problem. That is, given three random chances to win a prize, if you pick one and another is revealed as a non-winner, you are better off…


  • Recursive FindControl

    Recursive FindControl

    Date Published: 21 September 2008

    I’ve been asking for a recursive FindControl() method as a method off of System.Web.UI.Control for years but so far no luck. You find yourself needing these frequently when you work with composite controls, like most of the Login family of controls introduced with ASP.NET 2.0. In particular, LoginView, CreateUserWizard, and Login frequently require a technique like this to access their contents…


  • Slack and Constraints and Optimizing Throughput

    Slack and Constraints and Optimizing Throughput

    Date Published: 21 September 2008

    This is my second post that’s related to my recent reading of Poppendiecks’ Lean Software Development– read the first one here on Delaying Decisions. A related book (and one thing I loved about Lean Software Development were the many references to other great books, some I’d read, some not) that I’ve read and recommend is Slack, by Tom DeMarco. It’s referenced on page 81 of Lean Software…


  • Graffiti CMS Extension for DotNetKicks

    Graffiti CMS Extension for DotNetKicks

    Date Published: 18 September 2008

    I’ve been manually adding DotNetKicks icons to my posts recently to try and generate more buzz for them, but that gets old quickly, so about an hour ago I decided to figure out how to make this automatic. My current blog engine is Graffiti, which I really like, and after doing some searching for a pre-existing solution, I pinged ScottW on IM about the problem and he set me down the right path…


  • Codebehind Files in ASP.NET MVC are Evil

    Codebehind Files in ASP.NET MVC are Evil

    Date Published: 17 September 2008

    With the current versions of ASP.NET MVC (Preview 5) that have shipped, the default MVC template sites all include codebehind files for the ASP.NET views. For example, here’s a screenshot of what a new project looks like the one at right. Further, adding a new ASP.NET MVC View Page will also include a .aspx.cs and a .aspx.designer.cs file by default. The question is, why is that codebehind file…


  • Interesting Slide Deck on Software Design

    Interesting Slide Deck on Software Design

    Date Published: 16 September 2008

    Just found Allen Holub’s Everything You Know Is Wrong presentation, via the Yahoo DDD group. It makes a great case for favoring interfaces over inheritance and avoiding property getter/setters in favor of delegating work to the object being referenced (such that you don’t need to know its properties – just the net result of the operation). The interface discussion is similar to some of my recent…


  • CodePlex Support For TortoiseSVN

    CodePlex Support For TortoiseSVN

    Date Published: 16 September 2008

    CodePlex is Microsoft’s open source project repository. It is built using Microsoft Team Foundation System and as such has until recently required the use of Team Explorer to access. However, due to the extreme popularity of Subversion(SVN), an open source tool for source control configuration, CodePlex has just announced support for TortoiseSVN (an SVN client). You can read the full details…


  • Delaying Decisions

    Delaying Decisions

    Date Published: 13 September 2008

    I’ve recently finished reading Mary and Tom Poppendieck’s Lean Software Development title, which I’ll write a review of in a later post. One of the points they make, devoting a all of the book’s third chapter to it in fact, is that there is tremendous business value in delaying decisions. Lean software development delays freezing all design decisions as long as possible, because it is easier to…


  • Interfaces and Testing

    Interfaces and Testing

    Date Published: 12 September 2008

    Chris Brandsma posted his thoughts on a discussion he had about interfaces as a requirement for TDD (or unit testing in general, I would say). I added a brief comment there but wanted to expand on my thoughts here, as I only fairly recently came to believe my current stance. See, I’ve heard that interfaces were a “good thing” for years and as Chris points out, plenty of authoritative Software…


  • Find Duplicate Files and Clean Up Disk Space

    Find Duplicate Files and Clean Up Disk Space

    Date Published: 11 September 2008

    I’m in file cleanup mode tonight as my laptop hard drive is consistently nearly full lately. On a side note I’m really looking at getting an HP MediaSmart Windows Home Server like the one ScottHa got a while back, but they’re a bit old at this point so I figure newer models with more RAM and larger built-in HDDs must be coming soon. But I digress. In the course of cleaning up hard drives, I…


  • Keep Vista from Changing Folder View

    Keep Vista from Changing Folder View

    Date Published: 01 September 2008

    I've been running Windows Vista since it came out in November 2006. By and large I'm happy with it and wouldn't go back to XP, which I'm still running on some other PCs. However, once annoyance that I've finally gotten fed up enough with to track down the fix is the constantly changing folder view issue. For instance, say you're a developer, which probably isn't a stretch since you're reading my…


  • Render Control as String

    Render Control as String

    Date Published: 28 August 2008

    When working with AJAX and Web Services it’s often nice to be able to render ASP.NET controls as strings, so the rendered HTML can be sent back to the client to replace the contents of a or something like that. The standard way of achieving this is to use the RenderControl() method, exposed by all ASP.NET controls. Unfortunately, the RenderControl() method doesn’t simply return a string – that…


  • Testing Legacy Code

    Testing Legacy Code

    Date Published: 27 August 2008

    vice Oren wrote today about a fun problem he’d run into with trying to TDD some changes to some code about which many of his assumptions were proving incorrect. The problem is that each test he wrote that verified one of his assumptions needed to later be fixed when he found the underlying assumption wasn’t true. The result was a lot of thrashing and not a lot of productivity. The solution in this…


  • Recent Podcasts

    Recent Podcasts

    Date Published: 19 August 2008

    My recent DotNetRocks interview with Carl Franklin and Mark Dunn is live now. The three of us discuss our experiences as small business owners. I also did a show with Craig over at Polymorphic Podcast last week that should be live next week on caching and performance with ASP.NET. I did a similar caching show last year on dnrTV that runs through some nice demos and has sample code with it, but the…


  • DotNetRocks Talk on Business and Entrepreneurship

    DotNetRocks Talk on Business and Entrepreneurship

    Date Published: 11 August 2008

    A couple of weeks ago I did a DotNetRocks show with Carl Franklin and Mark Dunn in which we discussed our collective experiences with running our own businesses. We had a good time and shared some of our lessons learned. In some ways it was similar to the discussions Julie Lerman and I have proctored a couple of times as Birds of a Feather talks at TechEd shows. Toward the end of the show, I…


  • DevExpress Earthquake Video

    DevExpress Earthquake Video

    Date Published: 31 July 2008

    DevExpress is one of several companies I work with via Lake Quincy Media, and it seems like a very fun place to work. Recently they launched a video site to help showcase their products, and earlier this week they made a video showing the reaction of some of their employees to the 5.4 scale earthquake in LA earlier this week. Check it out, and then check out some of their other videos as well…


  • There are no single developer projects

    There are no single developer projects

    Date Published: 29 July 2008

    Oren wrote today, There is no such thing as a single developer project. At first this sounds like an obviously false statement, but read on: There are always at least two people in any software project: The developer who wrote the code. The developer who read the code. They are never the same person, even if just by temporal dissonance. This is a very clever thing to point out, and worth…


  • Speaking in Toledo Tonight

    Speaking in Toledo Tonight

    Date Published: 17 July 2008

    I’ll be presenting at the Northwest Ohio .NET User Group this evening at 6pm. The talk will be a slightly modified version of my Black Belt ASP.NET Performance talk that I gave earlier this month at Tech Ed in Orlando. According to their web site, the user group will also be giving away a Zune to one of the attendees of tonight’s meeting (and I have a book and some shirts, too…), so if nothing…


  • JungleDisk as Service on Windows Server 2003

    JungleDisk as Service on Windows Server 2003

    Date Published: 15 July 2008

    I'm a big fan of JungleDisk, a $20 utility that makes using Amazon's S3 storage solution easy and backups cheap. I'm also a big fan of Red Gate's tools, and in particular SQL Backup, which makes backing up SQL Server databases much easier and compresses them down to almost nothing. I've been manually backing up my one server that isn't hosted with ORCS Web(who take care of such things for me quite…


  • How I Got Started in Software Development

    How I Got Started in Software Development

    Date Published: 13 July 2008

    Keyvan tagged me for the latest meme (started by Michael Eaton) going round the developer blogger space. I’m not sure how much people actually care to read about these things, so I’ll oblige but will attempt to keep it brief, and if you want more like this, check out my Five Things You Didn’t Know About Me post from early 2007 (wow, time flies). How old were you when you started programming? In…


  • Show Similar Posts in Graffiti

    Show Similar Posts in Graffiti

    Date Published: 10 July 2008

    I couldn’t find this with GoogleLive Search but ScottW hooked me up. If you want to show related or similar posts in your posts in Graffiti, just add this script to your post.view file (which, amazingly enough, you can do via the admin tool without FTPing any files to your blog – how cool is that?). In theory, at the bottom of this post, you now see a Similar Posts section… I’m not 100% sure what…


  • Velocity CTP1 Install

    Velocity CTP1 Install

    Date Published: 09 July 2008

    Finally have a few minutes to play with Velocity, Microsoft’s new distributed cache offering that’s currently in CTP1 status (since a month ago at TechEd Developers in Orlando). Read the official announcement here. The installation immediately asks you to configure your machine as a Cache Host: Cache Host Configuration To proceed, create a shared folder that grants Everyone Read and Write…


  • Testing Around ASP.NET Cache Features

    Testing Around ASP.NET Cache Features

    Date Published: 08 July 2008

    It’s still quite painful to try and test code that relies on ASP.NET Caching. Now, I love caching. Ask anybody. But testing around it can pretty much suck. The biggest source of pain for me at the moment is the SqlCacheDependency, which is freaking awesome in terms of functionality but freaking annoying in terms of testing around it. I have integration tests that, for some reason, occasionally…


  • Run Tests By Project With MSTest

    Run Tests By Project With MSTest

    Date Published: 08 July 2008

    An annoyance I used to have with unit testing in Visual Studio is that it was often difficult to limit the number of tests I wanted to run. In VS 2008 there are some improvements here, and the nicest one is the ability to right-click in a test and select Run Tests and have it run that unit test (or do so in a test class, and it will run all the tests in the class). However, go over to the solution…


  • Cache Access Pattern Revised

    Cache Access Pattern Revised

    Date Published: 07 July 2008

    Karl Seguin has an interesting post about using System.Func to fight repetitive code blocks, which actually addresses a pain point I’ve had for quite some time but had never acted on to fix. Whenever one access the Cache or a similar statebag that might or might not contain the value sought after, it is important to check if the value exists first, and if it doesn’t, go and retrieve it from…


  • Show Page Load Time

    Show Page Load Time

    Date Published: 07 July 2008

    When testing performance for an individual ASP.NET page, it’s often useful to be able to see how long the page took to render. The bar-none easiest way to achieve this is to simply add Trace=”true” to the <%@ Page %> directive, which will yield results like this: Trace Output However, often times this won’t play nicely with CSS on the page, so you can achieve similar results on a separate URL by…


  • Mavens in the Developer Community

    Mavens in the Developer Community

    Date Published: 03 July 2008

    Since launching DevMavens this week, I’ve had a few folks tell me they didn’t previously know what a maven was. The site shows some definitions, but the concept that led to my choosing that name is from the excellent book, The Tipping Point: The Tipping Point: How Little Things Can Make a Big Difference Mavens are one of the key players that Gladwell describes in this book about the way ideas are…


  • DDD Quickly

    DDD Quickly

    Date Published: 02 July 2008

    I picked up the print version of Domain Driven Design Quickly on Amazon recently. I didn’t realize at the time that it was also available as a free e-book, which wouldn’t have stopped me from buying except for the fact that it’s less than 100 pages and $30! That’s a bit pricey, in my opinion, for what is essentially Cliff Notes of a larger, more in-depth book (at least, that’s what I’m lead to…


  • Blog Move

    Blog Move

    Date Published: 02 July 2008

    Please join me as I move my blog to my own URL, SteveSmithBlog.com. I’ll continue to post there about more or less the same things I did here, but with a bit more control over the site layout and other features. The new blog is running on Telligent’s new Graffiti CMS, which really is as easy to get up and running as they claim. The look is currently a stock template, but should be updated to be a…


  • Setting up Windows Live Writer With Graffiti

    Setting up Windows Live Writer With Graffiti

    Date Published: 02 July 2008

    So now I’ve set up Windows Live Writer to point to my new Graffiti blog. The docs were true to the task and it was pretty painless. Assuming this post goes through, everything worked on the first try. Theoretically it will even have a custom URL of graffiti-windows-live-writer. Related Links: http://graffiticms.com/support/advanced-options/windows-live-writer-application/ http://graffiticms.com…


  • IsNull Extension Method

    IsNull Extension Method

    Date Published: 02 July 2008

    I’m strongly considering adopting the use of an IsNull extension method in my .NET 3.5 coding projects. A quick search to see what others have to say about this revealed a new web site dedicated to extension methods, which includes this IsNull method ready to go: The String class supports the IsNullOrEmpty() method now, but you have to pass it your instance yourself. This is another good candidate…


  • Search Stored Procedures

    Search Stored Procedures

    Date Published: 02 July 2008

    Sometimes, especially on very old applications that have gone through several rewrites but are still using the original database, I find myself wondering which stored procedures reference a given table, or each other, or whether changing the name of a view or column name will break something somewhere in the database. There are some tools out there to help this kind of thing, such as Red Gate’s…


  • New Blog Home

    New Blog Home

    Date Published: 01 July 2008

    I’m updating my blog’s home and moving to Graffiti and my own domain, SteveSmithBlog.com. I’m hoping that I’ll be able to be a bit better about blogging as well, as my total volume of posts has dropped off of late (10 in June, 9 in May, 16 in April for a total of 35 for the quarter – compared to 52 in Q1). Anyway, this is mainly a test post so we’ll keep it short.


  • Contact Steve

    Contact Steve

    Date Published: 01 July 2008

    I’m easy to find online: @ardalis on Twitter About.me Email Feel free to send me an email directly. If you have a technical question, you may want to ask it on StackOverflow and just email or tweet me the link.


  • DevConnections Session Feedback

    DevConnections Session Feedback

    Date Published: 30 June 2008

    Last week I just got back my summaries of attendee feedback for my three talks at DevConnections in Orlando in April (yes, they’re not quite as efficient as TechEd). I blogged about them and posted the slides and demos 2 months ago, but I’m finding it useful to also blog about the comments and feedback that I received on them, as a means of helping me to improve my future talks and, I hope, as a…


  • Software Books Ordered

    Software Books Ordered

    Date Published: 25 June 2008

    I just ordered some more books, on recommendations from a few of my peers. I’ll post my thoughts on them once they’ve arrived and I’ve had a chance to read them. The Art of Agile Development: James Shore, Shane Warden: Books Lean Software Development: An Agile Toolkit (The Agile Software Development Series): Mary Poppendieck, Tom Poppendieck: Books Domain-Driven Design Quickly: Floyd Marinescu…


  • Visual Studio Tools

    Visual Studio Tools

    Date Published: 17 June 2008

    I’ve been meaning to post something about two awesome and competing toolsets that recently have some news to report. First, my friends at DevExpress won both the Attendee’s Pick : Overall Winner and Breakthrough Product awards at Tech:Ed Developers a couple of weeks ago. DXperience won the Attendee’s Pick. CodeRush, their productivity-enhancing Visual Studio tool, won the latter award, and you can…


  • Silverlight Server Configuration

    Silverlight Server Configuration

    Date Published: 17 June 2008

    I went to throw a small Silverlight sample application up on a web site to show to a client yesterday and found out the hard way that although it is primarily a client-side technology, it doesn’t “just work” when you put the files up on the server. My first attempt was to just put the necessary bits on a static file server that has ASP.NET but doesn’t have an easy way for me to configure virtual…


  • Black Belt ASP.NET Performance Talk

    Black Belt ASP.NET Performance Talk

    Date Published: 06 June 2008

    I gave my Tech Ed presentation, ASP.NET Black Belt Performance Techniques, yesterday afternoon. The talk was well-attended, with about 300 372in the audience. I gave the talk last month in Cleveland and it was very well-received. I promised attendees the slides and demos would be available on Tech Ed’s CommNet, and right now the slides are but I’m having trouble getting the demos uploaded so I’m…


  • Customer Service Is Key

    Customer Service Is Key

    Date Published: 02 June 2008

    A few months ago I went to MIX08, which was I must say an excellent conference with a very different focus from DevConnections, TechEd, and PDC. However, the weather was against me, and I’ve been meaning to write about it for some time. Now that I’m about to head to 95 degree Orlando, I think it’s time. But the weather is really just the enabler for the real point, which is that customer service…


  • Whither NorthWind?

    Whither NorthWind?

    Date Published: 02 June 2008

    The Ha recently wrote about his desire to get away from NorthWind and perhaps start some community driven effort to come up with something else, mainly, it seemed to me, for the sake of beingsomething else. I must humbly disagree with this, but feel free to correct me if I’m wrong here. The first stated requirement for NotNorthWind is this: Complex enough to be called Real World but simple enough…


  • Tech Ed 2008 Speaker Idol

    Tech Ed 2008 Speaker Idol

    Date Published: 29 May 2008

    Next week (and the week after) at Tech Ed, several experienced speakers will compete with one another in Speaker Idol, held at the Tech Ed Online stage during lunch time and hosted by Carl Franklin and Richard Campbell. The winner gets a guaranteed speaker slot at next year’s Tech Ed. Each contestant gets to give a 5-minute presentation to a crowd of attendees and several judges, and after each…


  • GeekFest Party at TechEd 2008 June 3rd

    GeekFest Party at TechEd 2008 June 3rd

    Date Published: 17 May 2008

    Doug Seven of Microsoft is hosting a party at Howl at the Moon during TechEd on June 3rd. He has some details on his blog and the party will include (and require for admission) a rubber duck competition. You’ll need to pick up your duck for admission at the Teched Technical Learning Center at the Developer Tools & Languages information desk. One duck will admit two people so bring a friend!


  • Book: Freakonomics

    Book: Freakonomics

    Date Published: 14 May 2008

    [Freakonomics [Revised and Expanded]: A Rogue Economist Explores the Hidden Side of Everything: Steven D. Levitt, Stephen J. Dubner: Books](http://www.amazon.com/exec/obidos/ASIN/0061234001/aspalliancecom "Freakonomics [Revised and Expanded]: A Rogue Economist Explores the Hidden Side of Everything: Steven D. Levitt, Stephen J. Dubner: Books") I’ve been a bit behind on blogging but I’m trying to…


  • Black Belt ASP.NET Performance Techniques

    Black Belt ASP.NET Performance Techniques

    Date Published: 14 May 2008

    Last night I presented at the Cleveland .NET SIG on Black Belt ASP.NET Performance Techniques, which is a talk I’ll be giving in a few weeks at Tech:Ed Developers in Orlando. I was asked a couple of weeks ago if I could give a talk in May and I decided to do it so I could practice for TechEd. Since this is a new talk for me (though its material is familiar), I had to put together a new set of…


  • Visual Studio Team System 2008 White Papers

    Visual Studio Team System 2008 White Papers

    Date Published: 14 May 2008

    Microsoft has published a set of white papers which provide a good technical overview of the features available in Visual Studio Team System 2008. They’re available individually for download: Visual Studio Team System 2008 Capabilities White Papers. The papers cover the following subjects, corresponding to features sets and design goals of VSTS 2008: Communicate and Collaborate Drive…


  • Book: Working Effectively With Legacy Code

    Book: Working Effectively With Legacy Code

    Date Published: 13 May 2008

    Working Effectively with Legacy Code (Robert C. Martin Series): Michael Feathers: Books I’ve just finished the above book, which was recommended to me by Jeffrey Palermo a few months ago. It is one of the most useful software development books I’ve read since Code Complete. I wish I’d read it years ago, and I’m finding myself refactoring and rethinking my approach to current systems I’ve been…


  • Speaking in Cleveland May 13th

    Speaking in Cleveland May 13th

    Date Published: 12 May 2008

    I’ll be speaking at theCleveland .NET SIG tomorrow night. The topic is Black Belt Performance Tips for ASP.NET, which will be a dry run for a session by that same name I’ll be giving next month at Tech:Ed Developers in Orlando. Some of the primary areas covered will be advanced caching techniques and asynchronous programming techniques (for ASP.NET). The user group meets at the Microsoft office in…


  • Comments in Code Indicate Functions Trying To Escape

    Comments in Code Indicate Functions Trying To Escape

    Date Published: 01 May 2008

    I interviewed a couple of college students earlier this week for internship positions with Lake Quincy Media, and one of them reminded me of my own college days when we were graded in part based on how well commented our code was. In school, comments are typically there as a “check the block” measure to ensure that the professor doesn’t take off points for not having them, but in the real world…


  • TECHbash is Coming to PA

    TECHbash is Coming to PA

    Date Published: 30 April 2008

    In just 10 days (May 10th, 2008), TECHbash 2008 will kick off in northeastern Pennsylvania. The show has been around since 2005 and will include several hundred developers, IT professionals, and industry experts from PA and surrounding states. Joe Stagner from Microsoft will be giving the keynote and my company, Lake Quincy Media, is one of the sponsors of the show. Speakers will include MVPs…


  • Regional Director Sidebar Gadget

    Regional Director Sidebar Gadget

    Date Published: 29 April 2008

    Keep up on Microsoft Regional Directors’blogs with this Vista sidebar gadget.


  • DevConnections Spring Slides and Demos

    DevConnections Spring Slides and Demos

    Date Published: 28 April 2008

    Last week I gave three presentations at the DevConnections spring show in Orlando. I received a lot of great feedback from attendees which I definitely appreciate, especially since I was feeling a little bit bad about having run out of time in my first two talks (and overcompensating a bit on my last one, which ended a few minutes early). I definitely try to err on the side of too much content…


  • Twitter as Smoking Cessation Aid

    Twitter as Smoking Cessation Aid

    Date Published: 18 April 2008

    I was talking to a couple of friends and occasional smokers today, and both were commenting about how nice it is that Seattle is almost entirely non-smoking now, so they didn’t light up while in town for the MVP Summit. I’ve never smoked, but listening to them, clearly they were not addicts in the hard-core packs-a-day kind, but they would smoke socially or just to be doing something. So it…


  • Triskaidecaphobia

    Triskaidecaphobia

    Date Published: 17 April 2008

    Office 13 is going to actually be called Office 14, since there are some people who assign some negative significance to the number 13 (see Triskaidekaphobia). Since this is clearly a significant concern in the world of computing, it seems natural to me that other areas of Microsoft’s platform should work harder to avoid this unlucky number. On a slightly related note, I was glad to see that the…


  • Microsoft Cloud Services

    Microsoft Cloud Services

    Date Published: 17 April 2008

    One of the quietly announced (at MIX – WMV here) new things coming from Microsoft “soon” is SQL Server Data Services (SSDS). The SSDS team has a blog on MSDN. Ryan Dunn discussed it with me recently and also has been blogging about it. Last week he announced the release of PhluffyFotos, a sample site built on top of SSDS. You can sign up for the beta of SSDS here. Roger Jennings has some comments…


  • Extract Control for ASP.NET in Visual Studio

    Extract Control for ASP.NET in Visual Studio

    Date Published: 15 April 2008

    I’ve been posting about some feature requests for ASP.NET/ Visual Studio, so here’s one more in that thread. One nice feature of Blend is the ability to select a chunk of XAML and choose to “Extract User Control”. The result works very nicely, creating the separate control and inserting the reference to that control into the original XAML document. It would be very cool if ASP.NET had this same…


  • Not Working for Microsoft

    Not Working for Microsoft

    Date Published: 04 April 2008

    I thought I should post a follow-up since I’m sure many people ready my post on Tuesday about going to work for Microsoft on some code-named project and (a) didn’t remember it was April Fool’s Day and (b) didn’t then read the comments where I pointed out that it was a joke. I’m still happily self-employed and working on Lake Quincy Media, ASPAlliance.com, and a new consulting business that so far…


  • CruiseControl.NET Caching Old Project Locations SOLVED

    CruiseControl.NET Caching Old Project Locations SOLVED

    Date Published: 04 April 2008

    As I mentioned in my previous post, we’re just wrapping up a continuous integration solution for a client (and if you’re not using this for your team, you should be. If you don’t have time to do it, contact us to do it for you. You’ll thank me later.) and one of the last requirements changes was an update to where on the build server’s hard drive the project files should reside once they’re…


  • OpenXML Standardized and Sour Grapes

    OpenXML Standardized and Sour Grapes

    Date Published: 04 April 2008

    Earlier this week, the OpenXML document format was standardized by the ISO/IEC, with a huge 86% of voting countries favoring the format (news here, among other places). While this is interesting and a win for anyone using Microsoft Office document formats (who isn’t?), it’s also a bit disappointing that those who opposed the format’s standardization have opted not to accept the decision of the…


  • Silverlight Rehab

    Silverlight Rehab

    Date Published: 02 April 2008

    Check outDan Fernandez,Adam Kinney, and others in this very funny 5 minutes video aboutSilverlight Rehabon On10.net.


  • The Evolution of Status Pattern

    The Evolution of Status Pattern

    Date Published: 01 April 2008

    An interesting pattern that I see in many of the applications I’ve worked with is the notion of status, and how it tends to evolve over time. This is probably familiar to most of you, though perhaps you’ve never thought about it. Consider the following scenario: Requirement – The system should have Users, to control access via authentication. At this stage, the developer creates a User class and a…


  • TechEd 2008 Birds Of A Feather

    TechEd 2008 Birds Of A Feather

    Date Published: 31 March 2008

    If you’ll be attending Tech Ed 2008 (Developers, USA), you may want to come to some Birds of a Feather sessions, which allow you to join a discussion with peers on a topic of interest. How are the topics chosen? Well, funny you should ask that – you get to help choose them by voting for the sessions that are of greatest interest to you. The thing that differentiates BOF sessions from the usual…


  • LINQ and the new DevExpress Grid

    LINQ and the new DevExpress Grid

    Date Published: 31 March 2008

    Mehul has a couple of screencasts up on his blog that demonstrate how to use their new LINQ datasource to do optimized paging/updating of their ASPxGridView control. At just over 2 minutes, the screencast does a very good job of showing how easy it is to set up LINQ to SQL (not that that hasn’t been done before, but the more times you see it, the more likely it will stick). That’s more than half…


  • Outlook Performance Tips

    Outlook Performance Tips

    Date Published: 31 March 2008

    I’ve been living with Outlook 2007 since it shipped, and it’s been pretty painful, but my life is in it so I’m stuck with it. I’ve posted some Outlook tips in the past about how to deal with it not shutting down properly, and that has grown into a fairly sizable post with dozens of comments (and #1 for the search term outlook did not shut down properly. Nice.). Anyway, I have some additional tips…


  • Book – Cryptonomicon

    Book – Cryptonomicon

    Date Published: 30 March 2008

    One of the things I want to blog about periodically is what I’ve been reading, and a few of the things I’ve read lately have actually not been about software development (which is a good thing, if somewhat rare the last few years). One book I finished last year is the Neil Stephenson’s Cryptonomicon: Cryptonomicon This was a wonderful, very intelligent book. It did a pretty good job of making me…


  • Tweak web.config To Set Compilation Debug False

    Tweak web.config To Set Compilation Debug False

    Date Published: 30 March 2008

    ASP.NET applications should never run with in production. It can have drastic performance implications (of the negative kind). Obviously, in a perfect world, developers would always remember to verify this setting whenever they upload changes to production, but unfortunately many organizations utilize fallible humans in their deployment process, and this is something that is easily missed. As…


  • Two Kinds of Knowledge

    Two Kinds of Knowledge

    Date Published: 30 March 2008

    Rick posted earlier today about how he’s having a tougher and tougher time remembering the exact syntax and details of how to do relatively simple programming tasks, and instead finds that he’s going off to find past code he’s written (or blogged about) all the time. Is it the early onset of senility, or is this typical? It’s the same for me, and it reminds me of something I learned in high school…


  • MVC Source Code Available

    MVC Source Code Available

    Date Published: 21 March 2008

    The ASP.NET MVC library’s source code has been made available on CodePlex, ScottGu announced today. The project itself is still very much a work in progress, but with this you should be able to get a much better idea of how everything is laid out and working. I think it’s great the Microsoft is being this transparent with their development efforts, and the amount of community feedback they are…


  • Gotta Love Orcsweb

    Gotta Love Orcsweb

    Date Published: 21 March 2008

    Does your host do this? Today I got an IM from one of my support folks atORCS Web, asking me about one of my dedicated servers on which I have installed SQL Express for a few small web apps. She had noticed that I’d forgotten to set up any kind of backups for these, and wanted to know if I wanted any. When I admitted that I’d forgotten to set them up,she just took care of it for me. How cool is…


  • SQL 2005 Tools Install Experience is the suck

    SQL 2005 Tools Install Experience is the suck

    Date Published: 21 March 2008

    Just finished building a couple of ultimate developer rig machines for the office for Brendan and me, and was adding software today. So I installed Office, Visual Studio 2008, and then SQL Server 2005. I'd forgotten that installing SQL 2005 client tools seems to require sacrificing a chicken under the right lunar conditions in order to get it right! I've blogged about this same issue before, but…


  • Continuous Integration Setup with MSTest

    Continuous Integration Setup with MSTest

    Date Published: 18 March 2008

    I’m working with a client this week to set up Continuous Integration for their development environment. They’re a small shop who are using Visual Studio 2008 Professional, and don’t intend to upgrade to Team Suite or Team Edition any time soon. The build environment would therefore be running CruiseControl.NET, not Team Foundation Server. They’re not doing unit testing at the moment, but that’s…


  • Visual Studio Shortcuts

    Visual Studio Shortcuts

    Date Published: 18 March 2008

    I was doing a bunch of Silverlight last night on a new machine and once again set up my shortcut to basically arrow left in order to let me type in attributes without taking my fingers off of the keyboard and go hunting for arrow keys. I described this shortcut (and the reason for it) here, and I have to say it increases my speed in typing XAML tremendously. Whenever you find yourself within…


  • Silverlight 2 Beta 1 Installation Tips

    Silverlight 2 Beta 1 Installation Tips

    Date Published: 17 March 2008

    BradleyB has some great tips for troubleshooting installation problems with Silverlight 2 Beta 1,releasedat MIX last week. I’m trying to avoid posts that don’t do much more than link to someone else’s blog, but in this case I was running into issues with my own Silverlight 2 upgrade and Brad’s post had one of the things that I needed to get going. In my case, for some reason the first time I tried…


  • Verizon Crippled My Blackberry Pearl

    Verizon Crippled My Blackberry Pearl

    Date Published: 17 March 2008

    A few weeks ago I upgraded my phone to a Blackberry Pearl 8130. Overall I was (and am) very happy with the phone. It’s small, light, has enough battery power to last about two days given my usage, and it’s a breeze to check email and the web. However, one of the reasons I liked this phone (which I mentioned in my previous post) is that it comes with a GPS. I’m an ex-Army guy and I’ve always had a…


  • Three Requests for ASP.NET 4 and VS 2010

    Three Requests for ASP.NET 4 and VS 2010

    Date Published: 16 March 2008

    I have three things that have been on my wish list for ASP.NET and/or Visual Studio that I’m curious to know what others think. I’ve mentioned some of these before on my blog or elsewhere – they’re not exactly earth shattering and I’m not saying that I want them more than any other feature they might add. But each one would make my life at least a little bit easier, if they were included by…


  • Book Recommended To Me

    Book Recommended To Me

    Date Published: 12 March 2008

    I just ordered this book on the recommendation of a couple of MVC people: Working Effectively with Legacy Code (Robert C. Martin Series) Also testing out RoyO’s Amazoner tool, which appears to have worked correctly. Nice! What is Amazoner? Amazoner was designed to make one thing very easy if you’re a blog writer who’s also an Amazone Associate: The abilty to recommend books that you like using…


  • Finally Trying Twitter

    Finally Trying Twitter

    Date Published: 06 March 2008

    I finally gave in and got a Twitter account and have basically used it primarily to whine about cancelled or delayed flights and let people know where I am at MIX this week. I’m not sure whether I’ll stick with it but it does seem worthwhile at least for following a large group of friends at a conference. If you’re interested in my inane 140 character messages you can follow me here.


  • MIX08 Day One

    MIX08 Day One

    Date Published: 06 March 2008

    After some difficulty getting to MIX, due to freezing rain in Cleveland Tuesday afternoon that resulted in all flights being cancelled, Craig and I arrived at MIX Wednesday morning in time to catch the last 20 minutes or so of ScottGu’s keynote. It was worth watching, as Scott was being cast for a performer position in Cirque du Soleil, for which he demonstrated his mad juggling skills. The bit…


  • Software Design Best Practices Debate

    Software Design Best Practices Debate

    Date Published: 06 March 2008

    I’ve been following the discussion on Phil Haack’s blog surrounding how best to introduce polymorphic objects into the MVC framework as part of the framework’s interface for developers to work with. In .NET, there are basically two ways one can build in this polymorphism: interfaces and abstract base classes. There is a very vocal set of developers who seem to think that the answer must always be…


  • Spring ASP.NET Connections Sessions

    Spring ASP.NET Connections Sessions

    Date Published: 03 March 2008

    I’ll be speaking again at the spring ASP.NET Connections show, in Orlando, Florida. We’re driving down from Ohio with the family again, something we haven’t done since four years ago, when we returned to find out I was being called up to go to Iraq. I’m completely out of the Army now (resigned commission – honorable discharge – as of December 2005), so at least we don’t have to worry about that. I…


  • Blackberry Pearl 8130

    Blackberry Pearl 8130

    Date Published: 03 March 2008

    On Friday I finally broke down and upgraded my aging Samsung i730 PDA phone. I’ve been with Verizon for some time and have been pretty happy with their coverage and such, and they were giving me there “new every two” deal of $100 off a new phone (with a 2 year contract…) so I figured what the heck. I’m probably the last person I know who hasn’t at least tried a Blackberry, but now that I have this…


  • Money For Content – Book

    Money For Content – Book

    Date Published: 27 February 2008

    I’ve been reading a ton of books, as usual, lately. The interesting thing, to me at least, is that I’m actually trying to make time to read some books that aren’t technical, which is quite refreshing. For a while there, I was in “keep up with everything coming out” mode and so I went a long while without reading any fiction or non-computer books (with the exception of Harry Potter’s finale…


  • Use Unit Test Framework to Test Production DB Consistency

    Use Unit Test Framework to Test Production DB Consistency

    Date Published: 22 February 2008

    For Lake Quincy Media‘s AdSignia Ad Server, I wanted to be able to ensure that the database had some internal logic rules checked periodically. What kinds of rules? Well, probably an example would be best. Suffice to say up front, though, that we’re talking about more than NOT NULL or enforcing referential integrity. For example, part of the ad engine’s job is to redirect requests to ads to their…


  • Scott Guthrie Promoted to Corporate Vice President

    Scott Guthrie Promoted to Corporate Vice President

    Date Published: 16 February 2008

    Earlier this week, Microsoft announced a number of promotions, among them Scott Guthrie, who is now Corporate Vice President, .NET Developer Division (executive profile – promotion press release). Many of you know Scott from his extremely popular blog, on which me mixes news and roadmaps for the products he oversees with technical walkthroughs and tutorials on the latest and greatest technologies…


  • Stored Procedure Performance Varies Between ADO.NET and Management Studio

    Stored Procedure Performance Varies Between ADO.NET and Management Studio

    Date Published: 15 February 2008

    I ran into this very annoying issue earlier this week, that my buddy and SQL guru Gregg Stark was able to track down for me. I have a fairly intense XtraReport report that gets its data from a stored procedure. When I run that stored procedure in SQL Management Studio, it returns in less than a second. When I run it on my web site, it takes over 30 seconds and times out. WTF? I confirmed, ad…


  • Hosting Experience

    Hosting Experience

    Date Published: 04 February 2008

    I've recently completed a fairly major database server move involving about a dozen production databases running on a single server, along with a rather old Lyris installation that handles all of the mailing lists on AspAdvice.com. Both the old and new database servers are hosted at ORCSWeb, where pretty much all of my sites are hosted (with one exception noted below). I've been hosting with…


  • Windows Release Schedule 2008

    Windows Release Schedule 2008

    Date Published: 04 February 2008

    For those of you eagerly awaiting Window Server 2008 (formerly Longhorn), especially you ASP.NET types salivating over IIS7, the wait is nearly over. Today Microsoft has announced that it as released Windows Server 2008 and Windows Vista SP1 to manufacturing. When Can I Get It? That would seem to be the driving question. What does Released To Manufacturing (RTM) mean, anyway? Well, essentially it…


  • Microsoft Proposes Yahoo Acquisition

    Microsoft Proposes Yahoo Acquisition

    Date Published: 01 February 2008

    This just in – Microsoft has proposed to acquire Yahoo for $31 per share in a $44B deal. The full details, including the letter sent from Steve Ballmer to the Yahoo board can be foundhere. If this deal goes through, it should help Microsoft to compete with Google in the online space, and would seem to be a (rare) case where Microsoft beat Google to the punch on an acquisition deal.


  • Finding Untitled Page Titles

    Finding Untitled Page Titles

    Date Published: 29 January 2008

    Sadly, Microsoft decided that with the addition of the Title attribute on the @Page directive, it would make sense to include it by default with some text that one would absolutely never want to use as the title, "Untitled Page". They could have named it "Customer Reporting" or "My Britney Fan Page" and it would have been correct some small amount of the time – but instead they chose something…


  • Department of Redundancy Department

    Department of Redundancy Department

    Date Published: 29 January 2008

    I really hate repetition, especially useless repetition, in language. I guess I’ve been a follower of the DRY (Don’t Repeat Yourself) programming principle long before I knew about the acronym, but I tend to apply it in natural language as well, as much as I can. I’m a big fan of George Carlin, who shares my view on this. One of his bits goes into the overuse of the word “situation”, noting things…


  • Creating a New SQL Database

    Creating a New SQL Database

    Date Published: 29 January 2008

    Today I need to set up a new database for a new web site I'm working on. Last week, I saw Rick's post about the "mousercise" that defines the typical table set up in SQL Server 2000 and 2005's table designer. I have to admit that I completely relate to his feelings, and what made his post better still was that in addition to raising a complaint (that I share), he offered a solution! This is one…


  • Web Deployment Projects for 2008

    Web Deployment Projects for 2008

    Date Published: 28 January 2008

    Web Deployment Projects (WDP) for Visual Studio 2008 were released to the web (RTW) a couple of days ago. These didn’t make the November ship date of VS2008, but were promised to follow shortly after release, and as promised, they’re here! I haven’t looked at the 2008 version yet – personally I use PyroBatchFTP + CC.NET + MSBuild to do my deployments – but I may have a look and reconsider my…


  • Kids and Deployment

    Kids and Deployment

    Date Published: 28 January 2008

    I thought I'd post this so it isn't lost, as memory erodes. When I left to go to Iraq in 2004 my daughter had just turned 2. She's 5 now (soon 6) and doesn't remember a lot about when I was gone, but when asked last year what she did remember, she said: "I remember standing by the front door with Mommy and looking out the window, and our faces were like this…" and here she made a very sad frowning…


  • ResXFileCodeGeneratorEx and Visual Studio 2008

    ResXFileCodeGeneratorEx and Visual Studio 2008

    Date Published: 28 January 2008

    A couple of months ago I found a great Extended Strongly Typed Resource Generator that would let me use Resource files in shared libraries (Brendan blogged about it and set it up). The default resource generator in Visual Studio generates code that is marked with the internal keyword, making it difficult to share the resources between assemblies or projects. The Extended Strongly Typed Resource…


  • New Puppy!

    New Puppy!

    Date Published: 26 January 2008

    Today we brought home our new puppy, a mastiff boy with brindle coloration whom we have named Odin. So far he’s doing well, learning his way around the new home, playing with the kids, and getting to know our three cats who are completely terrified of him. Life will be fun at our house for a while. Here are some pictures for those who might care.


  • Ohio Day of .NET

    Ohio Day of .NET

    Date Published: 23 January 2008

    Several user groups in southern and central Ohio are putting together a Day of .NET event this spring. The Central Ohio Day of .NET 2008 will take place on 19 April 2008, in Wilmington, Ohio. This was originally the Cincinnati-Dayton Code camp and ran in 2006-2007, but now includes a Columbus, OH group and so has been renamed. The location is about as centrally between Dayton, Cincinnati, and…


  • Silverlight Hyperlink

    Silverlight Hyperlink

    Date Published: 17 January 2008

    Playing with Silverlight and needed a simple way to redirect the page. This isn't built-in yet but probably will be. For now, you can call out to the page's script, and for this since I don't want to rely on the page having any particular function defined, I'm just using Eval() and passing in what I need. So, in a button MouseLeftButtonDown() handler, I've got: HtmlPage.Window.Eval("document…


  • TFS Tips

    TFS Tips

    Date Published: 16 January 2008

    I’m just wrapping up a long article on Team System 2008 and its new capabilities, especially its continuous integration support and build server improvements. In the course of researching for this article, I found a couple of tips that didn’t really fit into the scope of the article, but I wanted to call attention to them. The first one addresses a pain point of mine, which is the default action…


  • Olympics With Silverlight

    Olympics With Silverlight

    Date Published: 14 January 2008

    I missed this last week, but it appears that the 2008 Olympics in China will be made available online via Microsoft Silverlight. Every minute of every event will be available on-demand. Read more about it on Soma’s blog. Obviously, this is a pretty major win for Microsoft as it tries to get penetration of Silverlight on as many browsers as possible. Millions of people will use this service to view…


  • Visual Studio XAML Editing Tip

    Visual Studio XAML Editing Tip

    Date Published: 14 January 2008

    So I’m working in XAML in Visual Studio 2008 and it has some nice statement completion features now, like automatically quoting my attributes for me (cool!). When there’s an item it knows, like Orientation=”Horizontal|Vertical” it will give me a dropdown and after selection, put the cursor after the closing double quote, as you would expect, like this (the _ represents the cursor): <StackPanel…


  • CodeMash Hanselman IIS Talk

    CodeMash Hanselman IIS Talk

    Date Published: 10 January 2008

    I’m at CodeMash today and Scott Hanselman gave the afternoon keynote on IIS7 mashups. The talk was preceded by a very funny introduction Scott gave that introduced me to the LOLCode.NET language with the help of some LOLCats and humorous sample code. The talk focused on how to hook up a PHP application in IIS7, and then enhance it with a few features by adding modules to the HTTP pipeline. For…


  • Trends in Programming Languages

    Trends in Programming Languages

    Date Published: 08 January 2008

    Al Pascual wrote about some trends he noticed using Google Trend, with regard to different programming languages. It’s an interesting tool, since it can be used to gauge general interest in particular keywords and search terms, as well as news, going back about 4 years. For instance, here’s a comparison of Visual Basic and C# using common search terms for each (VB, VB.NET vs. C#, CSharp): Given…


  • Microsoft Auto and Ford SYNC

    Microsoft Auto and Ford SYNC

    Date Published: 08 January 2008

    One of the themes of last night’s college championship football game (which, sadly, OSU lost, though not quite as badly as a year ago) during the commercials was the new SYNC technology available from Ford and Lincoln Mercury. I’ve been peripherally aware of this technology for a while, but these were the first advertisements I’d seen for the actual product. According to a recent press release…


  • Facebook and Scoble Square Off

    Facebook and Scoble Square Off

    Date Published: 04 January 2008

    Like so many others have noted, I think 2008 and the next few years will see a shakeup in some of the “web 2.0” and social networking community sites. As evidence of this, I just read that Robert Scoble has run afoul of Facebook for running an automated script to suck down all of his contacts’ information, something prohibited by Facebook. As a result, they’ve apparently disabled his account…


  • SimpleCMS for IIS7

    SimpleCMS for IIS7

    Date Published: 04 January 2008

    SimpleCMSis a (very) simple content management system I developed with Brendan for ASPAlliance.com and which is now available from CodePlex (with source). Steve Schofield recently put it to work in IIS7, a scenario we have not yet tested ourselves, and found that it worked more-or-less without difficulties. He posted his steps for setting up SimpleCMS using IIS7 and the Integrated Pipeline if…


  • Fall DevConnections Session Comments

    Fall DevConnections Session Comments

    Date Published: 03 January 2008

    I’ve been speaking at the DevConnections conferences since Fall of 2001 and have really enjoyed the experience. The speakers are a great group of people to hang out with, Shirley and Erik and Paul and the rest of the team put together a very well-organized event, and this last show was very impressive in terms of its attendance and breadth of content. Over the years, the level of feedback speakers…


  • Some 2008 Goals

    Some 2008 Goals

    Date Published: 03 January 2008

    With 2007 gone and 2008 already 1% complete I need to start thinking about what some of my goals are for the year. Last year I didn’t blog about any sort of yearly goals, but looking back at my posts from January 2007 makes me think about Michael Palermo’s recent post about his goal of total blogging for 2008 (and some tips for blogs he likes to read). He noted that he made 82 posts in 2007, and…


  • Nerdvana – Coding on a Beach

    Nerdvana – Coding on a Beach

    Date Published: 14 December 2007

    Recently on the Regional Director mailing list, the topic of Theater Glasses like these came up, which led me to express my wish for a high-res version of such goggles that would be sufficient for writing code and otherwise being productive as a developer. The ultimate goal, of course, would be to enable working in locations where even a laptop generally fares poorly, such as on a beach, sipping a…


  • Cool Apps from Microsoft

    Cool Apps from Microsoft

    Date Published: 12 December 2007

    I attended the Cleveland .NET SIG last night, where Jeff Blankenburg (my new Developer Evangelist) gave a demo-rich presentation on some cool new(ish) applications Microsoft has been working on this year. Most of them I’d already seen, but it was a good presentation and parts of it were new to me (like the Seadragon Video), and the audience was duly impressed. Here’s a rundown of what was covered…


  • It isn't working?

    It isn't working?

    Date Published: 12 December 2007

    My wife hates me because of this, and my co-workers are learning to consider their question phrasing carefully if they want to be able to understand the answer, because I have this annoying tendency to answer questions as they are given. For example, yesterday our designer asked me a question in the negative, something to the effect of, "It's not fixed yet?". My answer was "yes", which left him…


  • MVC Getting Started

    MVC Getting Started

    Date Published: 12 December 2007

    Scott Hanselman has posted a very well done screencast on getting started with Model View Controller for ASP.NET, which I watched and did all the code for last night. There was only one hangup in the code portion, which has to do with changes that were made post-production to the MvcToolkit. The code given in the screencast doesn't work, but this simple fix does: <% using (Html.Form<ProjectName…


  • RegExLib Redesign Complete

    RegExLib Redesign Complete

    Date Published: 12 December 2007

    We’ve done some design work on the Regular Expression Library, and cleaned up the code base significantly to get rid of some cruft and fix a few bugs. The site gets a surprisingly large amount of traffic, considering how esoteric a topic regular expressions are, and hopefully the new design will make it that much easier for people to search for regular expression examples. You can see some of its…


  • MVC and ASP.NET 3.5 Extensions Preview Available Now

    MVC and ASP.NET 3.5 Extensions Preview Available Now

    Date Published: 10 December 2007

    A couple of days later than expected, but the bits are available now as Brad Abrams announced a little while ago. Read his post for all the goodies, or just Download, Get Started, and Discuss


  • PDC 2008 Announced

    PDC 2008 Announced

    Date Published: 06 December 2007

    Microsoft PDC 2008 will be held October 27-30 in Los Angeles. Mark your calendar and check out the site.


  • Generic Web Controls and EnumDropDownList

    Generic Web Controls and EnumDropDownList

    Date Published: 05 December 2007

    I just published an article on ASPAlliance that shows a few different techniques for binding a DropDownList control in ASP.NET to an enumerated type (enum). As part of the article, I wrote a custom control that uses generics to bind a DropDownList to an enum. Unfortunately, I ran into problems with declaratively defining this control within ASP.NET markup, and thus far there is no support from the…


  • Save SQL Query Results With Column Names

    Save SQL Query Results With Column Names

    Date Published: 02 December 2007

    A minor frustration I've had with SQL Server for years is that when copying the results to Excel, the column names are not included. Well, Brendan blogged about this yesterday, and in a great demonstration of the value of blogging, he received a comment with the answer to this problem within a couple of hours. It turns out this can be done by going to Tools – Options – Query Results – Sql Server…


  • Silverlight 2.0 Is Coming

    Silverlight 2.0 Is Coming

    Date Published: 29 November 2007

    ScottGu today announced what many of us have been wondering and hoping would happen with regard to the next shipping version of Silverlight, which is that it will in fact be dubbed 2.0 rather than 1.1. My personal feeling on this is that it’s a very smart move, expecially given the long period of time between the releases (which most people did not realize when 1.0 Beta and 1.1 Alpha were…


  • Microsoft Download Center – Silverlight Beta

    Microsoft Download Center – Silverlight Beta

    Date Published: 29 November 2007

    Microsoft has a new Download Centeron their site which is currently in Beta, being built entirely in Silverlight. Check it out – it looks largely like a web page but the whole thing seems to be a Silverlight canvas. I’m not sure if this is the way I would go when it comes to integrating Silverlight into web applications, since one of the immediate disadvantages of this design is loss of…


  • MIX and Tech·Ed 2008

    MIX and Tech·Ed 2008

    Date Published: 26 November 2007

    I'm planning to attend MIX 2008, in its third year and being held at the Venetian in Las Vegas once more. The site has started a weekly podcast called The Signal that you can subscribe to and learn about behind-the-scenes preparations for MIX08. The show includes interviews with speakers, staff, attendees, and other notables and is a mix of technologies and topics. Tech·Ed 2008 is going to be…


  • Learn VS 2008 and .NET 3.5

    Learn VS 2008 and .NET 3.5

    Date Published: 21 November 2007

    Guy pointed out a great resource for learning the newly released Visual Studio 2008 for free: the Visual Studio 2008 and .NET Framework 3.5 Training Kit, from Microsoft. To quote the site: The Visual Studio 2008 and .NET Framework 3.5 Training Kit includes presentations, hands-on labs, and demos. This content is designed to help you learn how to utilize the Visual Studio 2008 features and a…


  • Visual Studio Team Suite 2008 Available

    Visual Studio Team Suite 2008 Available

    Date Published: 19 November 2007

    Visual Studio Team Suite 2008 is now available to MSDN Subscribers (a fact which is apparently well known, since the server seems to be suffering from the load). Anyway, when the load on the servers reaches an equilibrium, you should be able to pick up the new VS2008 – amazing that you can do so while it’s still 2007, since it seems like usually software products with years in their names struggle…


  • MIX08 Registration Open

    MIX08 Registration Open

    Date Published: 16 November 2007

    Here’s some official information on the MIX 2008 conference hosted by Microsoft in Las Vegas next March: Registration for Microsoft’s MIX08 opened on Thursday, November 8th. Slated for March 5- 7 at The Venetian Resort Hotel Casino in Las Vegas, MIX08 is the event for professionals in the consumer Web space – Web developers, designers, business and digital marketing professionals – to come…


  • Developer Acronyms for 2007

    Developer Acronyms for 2007

    Date Published: 13 November 2007

    I’ve learned a few new acronyms this year and thought I’d start this post to let others share their favorites as well. Some of these are new to me, and some are classics that I thought were worth including even though they certainly predate 2007. Where possible I’ve included a link to find more information on the acronym/topic. AJAX – Asynchronous JavaScript and XML CAPTCHA – Completely Automated…


  • DevConnections Afterthoughts and Presentations

    DevConnections Afterthoughts and Presentations

    Date Published: 10 November 2007

    I got back from DevConnections yesterday at 7am (took the redeye flight), after being gone since Saturday. I’m glad to be home, and I know it will be a few days before I’m even close to caught up on everything that fell behind while I was in Vegas. The show was great, though, and this is sort of my summary of the last week. I flew in early for DevExpress’s TechSummit, which included about 20 other…


  • TFS Beta 2 VPCs Expire November First

    TFS Beta 2 VPCs Expire November First

    Date Published: 29 October 2007

    In case you haven’t seen this news from last Friday, theTFS Beta 2 Virtual PC images have an operating system timebomb in them that is set to expire on 1 November 2007. This is not, however, the end of the world if you have been using these builds for demo or test purposes, though if you’ve got them in anything close to a production mode you’ll have problems.Jeff Beehler’s follow-up post describes…


  • One Week to DevConnections

    One Week to DevConnections

    Date Published: 29 October 2007

    The Fall 2007 DevConnections conference is next week in Las Vegas. This is definitely going to be the biggest conference in the United States for developers for the second half of 2007 (TechEd being the only larger one this year, I think), and I’m sure the show will be bolstered significantly due to a lack of a PDC event this year. This show has nearly sold out and already has nearly 5,00…


  • VaryByCustom Caching By User

    VaryByCustom Caching By User

    Date Published: 29 October 2007

    Ran into an interesting bug today with one of my applications. A user control that provides messages based on a user’s account was showing the wrong information to other users in our testing. The user control was set up with an output cache directive and a VaryByParam=”*” setting, yet it was showing other users’ messages (one in particular) to basically everybody – not good. The funny thing was…


  • Google PageRank Deductions

    Google PageRank Deductions

    Date Published: 29 October 2007

    There’s a great deal of discussion going on this month about recent deductions Google has made to Toolbar PageRank (not real PageRank) in October 2007. ASPAlliance.com, a well-respected developer site (IMHO) with a ton of content, was dropped from a TBPR of 7 earlier this month (which it’s had forever) down to a 4 (ouch!). Apparently this is shared by Forbes.com – hardly nefarious black-hat sites…


  • BrowserHawk 11 Released

    BrowserHawk 11 Released

    Date Published: 26 October 2007

    CyScape recently announced the latest version of their browser capabilities control, BrowserHawk 11. While I haven’t had a chance to review this new product yet, it touts some new features that at least appear to be pretty compelling. I use BrowserHawk and CountryHawk for LakeQuincy’s advertising solution, AdSignia, to quickly determine each ad request’s geographic location, allowing for certain…


  • Render User Control as String Template

    Render User Control as String Template

    Date Published: 19 October 2007

    Scott Guthriehas a great example ofhow to use an ASP.NET user control as a template which one can dynamically bind to data and then pull the results out as a string. One place this is useful is in AJAX scenarios in which you want to replace the contents of a region of the page with the rendered output of a user control. I’m using this very successfully inLake Quincy Media AdSigniafor our dashboard…


  • Cruise Control Configuration File Editor

    Cruise Control Configuration File Editor

    Date Published: 17 October 2007

    One of my developers is doing some work on our Cruise Control setup and found this gem that I’d somehow missed: CCNetConfig. A slick little GUI for editing your ccnet.config file (screenshots). Seems to work well enough for most of the common settings – I haven’t used it enough myself yet to really fully review or evaluate it, but the project seems to be pretty active, and it’s open source so if…


  • Sharing Resources Between Projects in .NET

    Sharing Resources Between Projects in .NET

    Date Published: 17 October 2007

    ASP.NET has some great support for Resources (for localization and internationalization, mainly), but unfortunately by default they’re limited to the same project because they’re generated with the internal keyword. I wanted to be able to share common strings for things like Exception messages, format strings, and default messages between members of my business objects and within my ASP.NET…


  • Caching Talk in Phoenix

    Caching Talk in Phoenix

    Date Published: 11 October 2007

    Tuesday night I gave a presentation on caching in ASP.NET (with a bit of async performance tips thrown in at the end) to the Arizona .NET User Group in Phoenix, Arizona. A lot of the demos were similar to ones I’ve given before, including in my recent DNRTV Show on Caching. I’ve posted the samples from Tuesday night’s talkhere, which include the async demo I did as well as an updated version that…


  • Open Source .NET in 3.5

    Open Source .NET in 3.5

    Date Published: 03 October 2007

    ScottGu just made a very exciting announcement – as of Visual Studio 2008 and .NET 3.5, the base class libraries will ship with source and debug symbols! What this means to developers is we’ll no longer need to resort to tools like Reflector to see what is going on under the covers when we use framework libraries. These libraries are being released under the Microsoft Reference License (MS-RL…


  • Caching in ASP.NET Show on dnrTV

    Caching in ASP.NET Show on dnrTV

    Date Published: 01 October 2007

    I’m on dnrTV this week with a show about Caching in ASP.NET, one of my favorite topics. I think the whole show is a bit under an hour and I go through a bunch of demos and show off some of the less-well-known features of caching, such as cache profiles, programmatic output cache invalidation, and the Substitution control that lets you have dynamic contents on a fully output-cached page. I also…


  • Nice Products for Developers

    Nice Products for Developers

    Date Published: 01 October 2007

    We have a new intern starting with us at Lake Quincy Media today, and in the course of getting him set up, I thought I would mention of a few products we’re using that work quite well for us here. The first one relates to training new interns with limited real world programming experience (Kent State University doesn’t do us any favors here – no Microsoft technology, no SQL technology, and no web…


  • Case Sensitive or Insensitive SQL Query

    Case Sensitive or Insensitive SQL Query

    Date Published: 30 September 2007

    Suppose you need to perform a SQL query and you need for it to be case sensitive or case insensitive, an either your database is set up the opposite way or you're smart and you're trying to write your query so that it will work regardless of how the database may or may not be configured. For instance, consider this query: If your database contains an email for Bill like this one: BillG@microsoft…


  • Installing SQL 2005 Management Studio

    Installing SQL 2005 Management Studio

    Date Published: 24 September 2007

    I’ve installed SQL Server on a few dev boxes in my time, and one thing I’ve noted on several occasion is that even if you check the box during the install to say you want to install all of the client tools, usually they don’t install. You think they installed, the setup dialog said it would install them, but when everything is said and done you don’t see anything in the Start-Programs menu except…


  • Using PowerShell to Automate a SQL Task

    Using PowerShell to Automate a SQL Task

    Date Published: 15 September 2007

    I have a very large table in a SQL database that I need to clean up some old data on. I’ve already copied all of the data to another table in another database with a different schema. I have a legacy application that still uses the old data, but the data goes back for years, and now that it’s in the new system, I’m willing to remove at least everything up until the new system started running…


  • Consolas Font in Vista

    Consolas Font in Vista

    Date Published: 10 September 2007

    I've recently been experimenting with other fonts for Visual Studio on Vista after reading this article on new fonts in Vista. I think I like Consolas better than Courier New for coding, if only for its novelty. It also tends to be a little bit more compact than Courier New at the same font size, which is nice to keep long lines from wrapping. Have a look at the difference, see what you think…


  • Managing XSD Files – if you must have them

    Managing XSD Files – if you must have them

    Date Published: 05 September 2007

    For an admin application I’ve been working on, we’re using a third party reporting tool to serve up reports to our users over the Internet. The reports have a nice designer that works with XSD files in Visual Studio. Not particularly fond of XSDs as a means of data access, I thought I would limit the damage by having only one of them (and worse yet, the XSD file(s) have to be in the root of the…


  • FIX Request format is unrecognized for URL unexpectedly ending in

    FIX Request format is unrecognized for URL unexpectedly ending in

    Date Published: 04 September 2007

    Adding a new web service to an application today so that I can delay loading some web user controls and ran into this 500 Error when calling the web service: Request format is unrecognized for URL unexpectedly ending in /GetHtml Found this KB article with the fix: Add the following to web.config since GET and POST are disabled by default in ASP.NET 2.0 and greater:


  • Force Refresh of DataSourceControl

    Force Refresh of DataSourceControl

    Date Published: 25 August 2007

    I had a situation where I was using a DataSourceControl (actually an LLBLGenProDataSource2,which inherits from DataSourceControl) bound to a grid, and I wanted the grid to refresh its contents whenever I added or deleted an item from it. I discovered a neat trick noted here, which is that if you touch the SelectParameters collection of the DataSourceControl, it will cause it to DataBind in its…


  • Reset Visual Studio Settings

    Reset Visual Studio Settings

    Date Published: 21 August 2007

    If you're working with Visual Studio 2008 (Orcas) Beta builds, of which there are now two, you may have run into problems if you tried to install Beta 2 on the same machine on which you had installed Beta 1. While this is generally not advisable with any beta, I'm told it's working for a great many people. Nonetheless, one behavior you may see is that after installing Beta 2 certain portions of…


  • FIX: LoginView Has No Child Controls

    FIX: LoginView Has No Child Controls

    Date Published: 07 August 2007

    We ran into this issue today: A LoginView control that has always worked just fine was failing to have any contents on a PostBack. Stepping through it and checking things in the Immediate Window confirmed that it had a Controls.Count of 0. Looking at it in ASP.NET Trace also showed that, after a postback, it had no controls below it in the control tree. This was a problem since it contained a…


  • Real World ASP.NET Performance Tuning Experience

    Real World ASP.NET Performance Tuning Experience

    Date Published: 03 August 2007

    I'm in the midst of wrapping up a multi-year long project to replace the advertising engine used to host sponsored ads on a few dozen .NET web sites. This system traces its "lineage" back to an old ASP application written in 2001 (it served its first 207 impressions on 31 March 2001), and has since been upgraded to ASP.NET 1.0 and 2.0 both as incremental ports, not full revisions (for instance…


  • Visual Studio Orcas Beta 2 WCF svcutil.exe Error

    Visual Studio Orcas Beta 2 WCF svcutil.exe Error

    Date Published: 28 July 2007

    If you run into trouble using svcutil.exe with the Beta 2 release of Visual Studio / .NET FX, try this: sn-exe -Vr svcutil.exe It wasn't signed in this drop (it will surely be at RTM). Alternately I've been told you can copy the svcutil.exe file from the previous beta.


  • Visual Studio and .NET Orcas Beta 2 Available

    Visual Studio and .NET Orcas Beta 2 Available

    Date Published: 26 July 2007

    Start yourdownloads.


  • Fixed: CCNET + MSBUILD Logger Error

    Fixed: CCNET + MSBUILD Logger Error

    Date Published: 22 July 2007

    Ran into a snag this weekend with my build server – it started throwing errors related to the path to a folder, like this: .MSBUILD : error MSB4015: The build was aborted because the “MsBuildToCCNetLogger” logger failed unexpectedly during shutdown. System.ArgumentException: The path is not of a legal form. at System.IO.Path.NormalizePathFast(String path, Boolean fullCheck) at System.IO.Path…


  • Microsoft Health Common User Interface

    Microsoft Health Common User Interface

    Date Published: 13 July 2007

    I recently heard about a set of controls that is being made freely available via CodePlex with the goal of improving the usability and consistency of medical software applications. The Microsoft Health Common User Interface (CUI) includes a suite of rich controls and guidance for building user interfaces that follow a standard approach to user interface design. The CodePlex Project for MSCUI…


  • Wait for ASP.NET AJAX Book Finally Over

    Wait for ASP.NET AJAX Book Finally Over

    Date Published: 12 July 2007

    The wait for Beginning ASP.NET 2.0 AJAX is finally over. The folks who camped outside of bookstores all night to be the first ones to own these beauties were rewarded today. Shortages were reported in some parts of the country as mobs of excited .NET developers made the iPhone launch seem like just another over-hyped gadget for sale. You can learn more about the book online here. Fortunately, as…


  • Visual Studio Break When Exception Thrown

    Visual Studio Break When Exception Thrown

    Date Published: 07 July 2007

    By default, Visual Studio will only break when an exception is unhandled in user code. This is often some distance from where the actual exception took place, as several try…catch blocks might have been involved in the meantime before the exception goes unhandled. A recent thread on the ALT.NET mailing list discussed some techniques for getting round this issue if you the developer would really…


  • Team Project Creation Failed TF30225

    Team Project Creation Failed TF30225

    Date Published: 06 July 2007

    So, I get this error now every time I try to create a new Team Project. I've checked my SQL Reporting Services configuration and it's all Green. I'm creating this project as an administrator. I've searched for help online, of course, but so far, nothing. I'll update this post when I find the answer – in the meantime if you know what kind of animal sacrifice is required, please comment. Update…


  • Small Business Developer Center

    Small Business Developer Center

    Date Published: 03 July 2007

    Soma announces the Small Business Developer Center on MSDN. One point he makes about small business solutions is: Good enough is really good enough which sounds familiar. This new resource is “focused on providing practical, actionable platform guidance for developers working with small businesses.” The sample application, WingTip Toys, sounds interesting to me. I’ll have to play around with it…


  • Some Outlook Relief Perhaps

    Some Outlook Relief Perhaps

    Date Published: 02 July 2007

    I get a lot of email, like many people in our industry. A lot of it is SPAM, but it's rare that any of that makes it to my inbox between SpamBayes and server-side anti-spam stuff running at ORCSWeb (the best hosting company around, IMHO). Nonetheless, I tend to get inundated even with real email that requires my attention, and in order to get much software development work done, I have to turn off…


  • Vista Network Connection Issue Solved

    Vista Network Connection Issue Solved

    Date Published: 28 June 2007

    I’ve had Vista running since it came out last November. I’ve had a couple of Maxtor OneTouch II drives (network type) for the last couple of years, and I noticed immediately after installing Vista that I could no longer connect to them. I would be prompted for a login and entering in the credentials would fail every time. The same credentials worked fine from my Windows XP machines, but searching…


  • Update Cache in Background Thread

    Update Cache in Background Thread

    Date Published: 28 June 2007

    Peter Bromberg recently wrote an article on refreshing the ASP.NET cache, which referenced my ASP.NET Caching Best Practices article on MSDN. In my original article, I lamented the general uselessness of the CacheItemRemovedCallback feature, and wished for a CachedItemExpiredButNotRemovedCallback. Sadly, this feature is still lacking despite the release of .NET 2.0 and 3.0 since my article was…


  • Slashdot Acknowledges Vista More Secure Than Linux

    Slashdot Acknowledges Vista More Secure Than Linux

    Date Published: 28 June 2007

    Wow, even Slashdot, anti-Microsoft capital of the Web, acknowledges that six months after its release, Vista Security is still besting Linux. From the site: “Great report on security vulnerabilities for MS/Linux/OS X. This is a revised version of the one Jeff Jones did back on March 21: Windows Vista — 90 Day Vulnerability Report. This time he did what the Linux community had asked. Everyone…


  • June 2007 Silverlight Resources

    June 2007 Silverlight Resources

    Date Published: 25 June 2007

    There’s a nice little series of tutorials at NibblesTutorials that goes through some Silverlight basics (using Silverlight). I haven’t had a chance to go through them all yet (naturally) but it definitely looks like good stuff. Also NetikaTech has announced a set of controls for Silverlight which include both free and pro versions. I haven’t played with these yet either but it looks like a pretty…


  • Sort Generic List of T

    Sort Generic List of T

    Date Published: 17 June 2007

    Plenty of others have written about this so I'll keep it brief. I needed to sort some objects based on a string property. Some quick searching led me to this post which got me close to what I wanted. My final code was this: myThings is a List collection. String.Compare done in this fashion will sort them alphabetically – reverse its parameters to sort in reverse.


  • Orcas VPC TimeBombedBase Missing

    Orcas VPC TimeBombedBase Missing

    Date Published: 13 June 2007

    I downloaded the Orcas Visual Studio Beta 1 VPC from MSDN yesterday and stitched all of the zip files together, and launched it. Ran into the dreaded: “E:VPCTimeBombedBaseBase01.vhd” could not be found message. If you run into the same thing, you can find others with the same issue easily enough. The solution is to download the VSCTPBase.exe file from here. Extract the Base01.vhd file and then…


  • WPF for ASP.NET Developers

    WPF for ASP.NET Developers

    Date Published: 13 June 2007

    Brian Noyes gave a presentation to the Cleveland .NET SIG last night on WPF for ASP.NET Developers. I took some notes, which I’ll present a few of here in case they’re helpful to anyone else. WPF Logical Pixels, not physical pixels, each 1/96 of an inch Vector Graphics based Containers Many controls are containers Support composition (images within buttons within buttons etc.) Declarative XAML…


  • Silverlight 1.1 Setup

    Silverlight 1.1 Setup

    Date Published: 13 June 2007

    I’m working on getting Silverlight 1.1 working in a VPC. A good guide for this stuff is available on the Silverlight.Net site. First, I installed the Orcas Beta 1 VPCwhich I got from MSDN. Then I went and found the base image I needed after encountering an error the first time. Once this was up and running I installed: Silverlight 1.1 Alpha – Available Here Silverlight 1.1 SDK – Available Here (it…


  • Tech Ed Skydiving

    Tech Ed Skydiving

    Date Published: 11 June 2007

    Last Tuesday evening I attended a party at Skyventure, put on my Microsoft. As I understand it, the party was Josh Holmes’ idea, and he and my DE, Drew Robbins, were key to organizing it. I have to say it was a great idea and a lot of fun. The closest thing I would compare it to, in terms of conference outings, is the Richard Petty race course. Microsoft has hosted things there before, and it’s…


  • TechEd Speaker Idol

    TechEd Speaker Idol

    Date Published: 11 June 2007

    TechEd 2007 included a Speaker Idol event hosted by DotNetRocks. The competition was modeled after American Idol, the American phenom show that basically is a rehash of that oh-so-great show, Star Search. The prize for the event was a guaranteed speaker slot at TechEd 2008, and the contestants were comprised of speakers who had submitted sessions for TechEd 2007 and were not chosen and four…


  • Silverlight Video and Camtasia

    Silverlight Video and Camtasia

    Date Published: 07 June 2007

    Some (OK, nearly ALL) of the Silverlight demos shown lately at TechEdand MIX involve hosting videos. The flexibility and customization options that are available to construct branded and unique video player controls with these tools is really quite amazing, considering how small the download is and the fact that they run on IE, FireFox and Safari/Mac. I predict (and this is happening regardless of…


  • Tech Ed

    Tech Ed

    Date Published: 03 June 2007

    I arrived in Orlando last night. I’m staying at the Disney Swan (and Dolphin). I’m planning on making it to Palermo’s Party this evening, though I may be late as I have other engagements. I’m looking forward to meeting up with a lot of friends this week, since I had to miss the spring DevConnections show due to other commitments. I’m also looking forward to seeing a lot of Lake Quincy Media’s…


  • Optimize ASP.NET HTTP Connection Limit

    Optimize ASP.NET HTTP Connection Limit

    Date Published: 30 May 2007

    Mads has a nice post on optimizing ASP.NET to utilize more than its default of 2 concurrent web connections. Here’s the relevant config info: <system.net> </system.net> [categories: performance]


  • Surface Computing

    Surface Computing

    Date Published: 30 May 2007

    A new tool coming from Microsoft soon will allow users to work on a tabletop surface as a computer interface. Watch this video – it’s very cool. I can totally see having one as a coffee table in a living room or home theater room that controls all of the media (or even the whole house), as well as in conference rooms in offices, etc. http://www.popularmechanics.com/technology/industry/4217348.html…


  • Lake Quincy Media Launches AdSignia

    Lake Quincy Media Launches AdSignia

    Date Published: 23 May 2007

    We just launched AdSignia, our new advertising management platform for online advertisers and publishers. Read the full AdSignia online advertising server press release for more details. We're still working out a few things and will have a better story for new accounts, particularly publishers, in a couple of weeks. For now this is most interesting for existing publishers and new and existing…


  • Oh *** Outlook Email Rule

    Oh *** Outlook Email Rule

    Date Published: 15 May 2007

    I have a rule in Outlook that I call my “Oh shit” rule. It delays all messages from being sent for 1 minute, which is plenty of time for me to realize that I said the wrong thing, sent the wrong thing, forgot an attachment, or copied the wrong people, at which point I can open the message from my Outbox and correct it before it is actually sent. But, it’s not so long that my messages take an…


  • Outlook Data File PST Not Closed Properly

    Outlook Data File PST Not Closed Properly

    Date Published: 14 May 2007

    A common problem with Outlook is the infamous data file issue that pops up when you launch Outlook and says it must check the data file for constency because it was not shut down properly. In Outlook 2003 this is annoying because Outlook is unusable until the check completes, which can take a long time for large PST files. In Outlook 2007 this is a minor issue because the task occurs in the…


  • Microsoft Fans – Raise Your Hand

    Microsoft Fans – Raise Your Hand

    Date Published: 14 May 2007

    I have trouble, as a long time Microsoft developer community member and (dare I say) community leader, believing that someone could miss the fact that there are Microsoft communities and, by extension, community members and fans. I would definitely consider myself a fan of Microsoft’s products. I’m not lacking in criticism when there are things that are broken, mind you, but overall I’d definitely…


  • New Arrival

    New Arrival

    Date Published: 11 May 2007

    I could go the total geek route and write some pseudo-code to the effect of adding a new instance of a person to the smith family, but that’s been way overdone and I’m so overloaded now that it probably wouldn’t even compile anyway… I’m proud to announce that Michelle and I have a new son! Nikita Maxim Smith was born in Russia on 20 April 2006. We first met him on 27 March 2007, and we brought…


  • Moscow User Group Presentation – Caching Best Practices

    Moscow User Group Presentation – Caching Best Practices

    Date Published: 09 May 2007

    In my last post I wrote that I would be speaking in Moscow this week – well, I did so Monday night and it went quite well I thought. I have uploaded the presentation and demo code from the presentation as promised – sorry it took a couple of days but I didn't get back online until I returned home to Ohio, USA. Thank you Gaidar Magdanurov for inviting me to speak and for getting me to and from my…


  • Mr. Smith Goes to Moscow

    Mr. Smith Goes to Moscow

    Date Published: 30 April 2007

    I’ll be in Moscow next Monday, presenting to a .NET user group there. The topic will be .NET Caching Best Practices. The meeting place and time are as follows: Moscow dot NET Alliance (MDNA) Group Microsoft Russia, Building 1, 17 Krylatskaya Str., Moscow, Russia 19.00 May 7, 2007 Thanks to Gaidar Magdanurov, Microsoft DE for the area, for helping to set this up on relatively short notice. I hope…


  • Speaking at Connection in Vegas in November

    Speaking at Connection in Vegas in November

    Date Published: 24 April 2007

    I found out that I should be speaking at the DevConnections show this fall. The show is being held in Las Vegas again, November 5–8th. I apologize to anybody that had hoped to see me present last month in Orlando at the spring show – I was unfortunately out of the country due to circumstances beyond my control (but which you’ll see more details on in a future blog post very soon). At the Fall 200…


  • The Region for Microsoft Regional Directors

    The Region for Microsoft Regional Directors

    Date Published: 24 April 2007

    There is a new web site which aggregates content from Microsoft Regional Directors call The Region, which went live last week. Keep an eye on it to keep tabs on Regional Directors as a whole, and to see what they’re collectively doing and talking about. [categories:regional director]


  • Old Team System News

    Old Team System News

    Date Published: 24 April 2007

    This is all from last month, but I’ve been busy so it’s been in my queue. Sorry for the late “news”: Microsoft acquired TeamPlain, makers of TeamPlain Web Access for connecting to TFS via a browser. TeamPlain will be free to anybody with a TFS CAL. Full announcement. Patterns and practices announced the publication of prescriptive guidance for TFS/VSTS. JD Meier had the details. In related news…


  • Silverlight Resources

    Silverlight Resources

    Date Published: 24 April 2007

    Here are some useful links related to Microsoft Silverlight: Microsoft Silverlight Home Silverlight Forums Official Community MSDN for Developers [categories: silverlight]


  • Outlook 2007 POP3 Slowness

    Outlook 2007 POP3 Slowness

    Date Published: 13 April 2007

    Outlook 2007 has a number of issues with performance, one of which relates to downloads taking a very long time with POP3 email accounts. Microsoft has recently published a KB article that should fix some scenarios where this occurs, specifically on Windows Vista, which may be caused by network hardware device(s) that do not support a networking feature called TCP Window Scaling. The short version…


  • Display Current Bin Folder Content Information

    Display Current Bin Folder Content Information

    Date Published: 10 April 2007

    As part of my automated build and test process, I wanted to be able to confirm that my third party components were the proper version and, more importantly, that they were fully licensed. For some components, I can create a new instance of the control or component and test its IsLicensed property. For others, the assembly itself is different for evaluation versus professional versions, and another…


  • Free Remote Desktop Manager Tool

    Free Remote Desktop Manager Tool

    Date Published: 04 April 2007

    If you remote into many machines, this should appeal to you. Terminals is a free, open source project on CodePlex that allows much better management of remote desktop connections than the default XP/Vista experience. Check it out today, it’s a quick download. http://www.codeplex.com/terminals Tags: Free+Tools, Cool+Tools


  • Expression Added To MSDN

    Expression Added To MSDN

    Date Published: 03 April 2007

    Initially it seemed that the Expression suite of products would not be included in the MSDN subscription, which caused a fair bit of uproar among developers who will be charged with working with designers and, often times, mocking up their own designs of WPF apps. Well, Microsoft took this feedback and acted on it, announcing today that some SKUs in the Expression line (but notably not the full…


  • VS2005 Data Pro Dies on Compile Fix

    VS2005 Data Pro Dies on Compile Fix

    Date Published: 22 March 2007

    I had an issue with VS2005 For DB Pros (the Data Dude SKU) where every time I would build my solution (or that project), VS2005 would simply die. This was on Vista. After looking for the answer, I contacted Gert Drapers who informed me of the fix — install the RTM of SQL 2005 SP2 (or just the XMO redist) and the problem’s solved. Thanks, Gert – I hope this helps some others who had a CTP of SP…


  • SimpleCMS Update Released

    SimpleCMS Update Released

    Date Published: 22 March 2007

    Today, Brendan updated SimpleCMS, the no-impact ASP.NET CMS add-on available for free from ASPAlliance.com. The new release uses the RTM builds of MS AJAX And the AJAX Control Toolkit. If you haven’t tried it, please do. Note that the big FAQ for the registration page is that you need to have a nonalphanumeric character in your password. Since someone asks me about this at least once a week, let…


  • Lake Quincy AdSignia Announced

    Lake Quincy AdSignia Announced

    Date Published: 21 March 2007

    Lake Quincy Media, which I co-own, has announced initial availability of its new online promotion management software, AdSignia. Lake Quincy Media specializes in the promotion of products and services of interest to our network of dozens of Microsoft developer community web sites. AdSignia has been something I’ve been working on for several years, and will replace the advertising software I wrote…


  • MS Money Vista Issues

    MS Money Vista Issues

    Date Published: 20 March 2007

    This is a summary of some problems my wife experienced recently upon installing Microsoft Money 2007 on Windows Vista: Here is what I did: 1.Installed Vista 2.Installed Money 2007 Deluxe 3.Opened Money – it wanted to install a service pack. No prompting for restart of computer when installation was complete. No suggesting that there needed to be a restart. 4.Opened the Money file from the backup…


  • Columbus Ohio .NET Positions Available

    Columbus Ohio .NET Positions Available

    Date Published: 14 March 2007

    Quick Solutions in Ohio is looking for a bunch of .NET developers with solid skills for the Columbus, Ohio office. Here’s the job posting: Work with experienced, knowledgeable professionals who are passionate about technology. Quick Solutions, Inc., a leader in the successful delivery of information technology solutions, is currently looking for exceptional Microsoft .NET development…


  • Use RedGate ANTS Profiler with Vista and ASP.NET

    Use RedGate ANTS Profiler with Vista and ASP.NET

    Date Published: 02 March 2007

    Found these two forum poststhat show how, as well as how to wire up ANTS to Webdev.WebServer.exe (aka Cassini). Here’s the summary: Start ANTS Profiler Select either Profile memory or Profile performance Select .NET desktop application as the type of project Click the elipsis (…) to the right of .NET desktop application and browse to c:windowsmicrosoft.netFrameworkv2.0.50727 and select Webdev…


  • Plasma v1.0 Release Available

    Plasma v1.0 Release Available

    Date Published: 01 March 2007

    Plasma is an ASP.NET in-memory web server emulator that can be used for ASP.NET unit testing or automation. Its initial codebase was written by Microsoft and its current incarnation is a community project licensed under the Microsoft Permissive License. I’ve been working on the project with several others and have just put the initial release out on the CodePlex project site. There are a lot of…


  • Spam Countermeasures

    Spam Countermeasures

    Date Published: 27 February 2007

    Spam is an increasingly annoying and expensive part of our lives as computer users. In the last week, I’ve been forced to take measures to deal with spam on several of my web properties. On RegExLib.com, an online library of regular expressions, it was brought to my attention that a large amount of comment spam was being added to expressions. After some analysis, I ended up cleaning out over 3…


  • Dell Dimension SATA Drive Windows Installation

    Dell Dimension SATA Drive Windows Installation

    Date Published: 17 February 2007

    Last week I had to rebuild a Dell Dimension 9150 with an SATA hard drive and when I tried to install Windows XP I received an error saying txtsetup.oem not found when I tried to provide the drivers on a USB floppy drive. I searched for a while and found nothing terribly helpful so I contacted Dell via phone and chat (sat on hold on both – chat answered quicker). Via chat they were able to solve my…


  • ObjectDataSource could not find a non-generic method Update Error

    ObjectDataSource could not find a non-generic method Update Error

    Date Published: 17 February 2007

    So I’m writing a quick demo for a book chapter, and I want to use something close to best practices, so I’m eschewing the SqlDataSource and favoring the ObjectDataSource. Because this is meant to be a quick example I don’t want to spend a lot of time helping the reader get the database set up, so I’m using the built-in ASPNETDB.MDF database that gets created in App_Data when you select the Web…


  • MVP Live Chat Tonight

    MVP Live Chat Tonight

    Date Published: 16 February 2007

    Join Scott Guthrie, myself, and numerous other MVPs for a live chat this evening sponsored by StrongCoders. The chat starts at 8pm EST this evening, 16 February 2007. http://community.strongcoders.com/blogs/ryan/archive/2007/02/03/february-16-2007-mvp-live-chat-experts.aspx http://community.strongcoders.com/blogs/ryan/archive/2007/01/25/don-t-miss-the-continuation-of-the-1st-mvp-live-chat.aspx


  • SQL Reporting Services 401 Error

    SQL Reporting Services 401 Error

    Date Published: 09 February 2007

    If you just installed SQL Server Reporting Services and you are getting a 401.1 Unauthorized error when you try to go to the http://localhost/reports this post may help. I ran into this and was having a heck of a time figuring it out, since I assumed that since my Reporting Services Configuration Tool was all GREEN that I was good to go. Not so. In my searching I eventually found this post which…


  • Need Work – Cure Cancer

    Need Work – Cure Cancer

    Date Published: 07 February 2007

    Fellow RDStephen Forte is hiring for a project that promises to help accelerate a cure for cancer. The work will be performed remotely using the latest Microsoft tools and technologies. If this sounds like something you might be interested in, please read his complete requirements and get in touch with Stephen.


  • Murach SQL Server 2005 For Developers

    Murach SQL Server 2005 For Developers

    Date Published: 06 February 2007

    Recently I picked up a copy of Murach's SQL Server 2005 For Developers, and while I haven’t had a chance to really read it through cover to cover, I have read the first few chapters and skimmed the rest. It’s a meaty book, and is actually not a first edition as the name might imply but is a third revision book (with a new title) — meaning that there are no glaring holes in it that first-time…


  • Reporting Services Plus Vista Equals Pain

    Reporting Services Plus Vista Equals Pain

    Date Published: 05 February 2007

    I spent quite a few hours yesterday trying to get Reporting Services to work on my Vista laptop. It didn’t end up working. For quite a long time I got a login prompt when trying to go to localhost/reports, which would bomb after 3 tries and had references to several KB articles, including this one: http://support.microsoft.com/?id=907273 None of the ones listed helped. I found plenty of others…


  • Offering Remote Assistance on Vista

    Offering Remote Assistance on Vista

    Date Published: 02 February 2007

    Julie showed me how to do this on XP/2003, which helped me figure it out on Vista. Following her lead, I created some screenshots… First go to your Start/Windows icon and click on Help and Support. Click on Windows Remote Assistance under Ask Someone. Next click Offer to help someone Now you can type in the IP address of the user you’re looking to help, and if they accept your request, you can…


  • Samsung i730 As Laptop Modem

    Samsung i730 As Laptop Modem

    Date Published: 29 January 2007

    I got this working once a year or so ago when I first got my phone but then haven’t messed with it since. So recently I thought about it again and now I’m using Vista so I wasn’t sure how challenging it would be. Turned out to be pretty painless following the instructions from this post. Go to the phone app and then press: **PATH (which is **7284) You can then select USB and then plug the i730 in…


  • .netCHARGE Notes One Year Later

    .netCHARGE Notes One Year Later

    Date Published: 29 January 2007

    About a year ago, I was setting up a new site and wanted to be able to accept credit cards via an existing Authorize.Net account. One of my long-time partners and ASPAlliance.com sponsors is DotNetEcommerce, and one of their products is .netCHARGE. We picked up a copy of .netCharge and installed it into our site. Initially I had a small challenge because the server version of the control (which I…


  • Historical Perspective on Iraq and Afghanistan

    Historical Perspective on Iraq and Afghanistan

    Date Published: 27 January 2007

    Like most of the media, my local paper tends to have a pretty strong bias against the conflict in Iraq (and, generally, any conflict) in its own editorials and those it chooses to print from national syndication, along with most Letters to the Editor. However, last week there was a letter that made me want to just stand up and cheer "Yes! Somebody actually gets it!" and write in to the paper…


  • Coding Optimization Tip: Avoid Repeated FindControl() Use

    Coding Optimization Tip: Avoid Repeated FindControl() Use

    Date Published: 27 January 2007

    In a project I’m working on I have a recursive FindControl() which is quite useful for finding controls that are hiding inside of templates like LoginView or CreateUserWizard. I’m working with some junior developers and trying to instill best practices into them. This is an example of a code optimization technique I’m applying today to some code one of them wrote. Problem Code: The big problem…


  • Could not load file or assembly Microsoft.ReportViewer.WebForms

    Could not load file or assembly Microsoft.ReportViewer.WebForms

    Date Published: 24 January 2007

    Ran into this error while deploying an application to production: Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message: Could not load file or assembly ‘Microsoft.ReportViewer.WebForms, Version=8.0.0.…


  • CodeFile or CodeBehind

    CodeFile or CodeBehind

    Date Published: 24 January 2007

    I just fixed a problem on a coworker’s machine that was quite odd in that the fix involved simply changing CodeFile to CodeBehind in a user control (.ascx) file. The issue was that in the ASPX page I was doing a FindControl within a Repeater’s ItemDataBound event, and casting the resulting control to the type of the codebehind of the user control. So for example if the user control was foo.ascx…


  • Web Application Project Conversion Tips

    Web Application Project Conversion Tips

    Date Published: 23 January 2007

    I upgraded a major website (Visual Studio Web Site Project) to a Web Application Project on VS2005 SP1 today. I ran into three snags that are worth mentioning. Before I get to those, however, make sure if you’re going to do this conversion yourself that you follow these steps. After conversion, I was getting errors with all of my (formerly) App_Code files. They had been moved to Old_App_Code by…


  • Zune Wishlist

    Zune Wishlist

    Date Published: 22 January 2007

    Zunes, or some similar device, would work great with Windows Media Center. It would be sweet if they worked as Media Center Extenders, and could use their WiFi capability to play (but not store, necessarily, except in a temporary cache) anything that was on the Media Center server. So, for instance, I could maintain all of my music on my home Media Center appliance, and then I could use this WiFi…


  • Outlook Feature Request

    Outlook Feature Request

    Date Published: 19 January 2007

    A heavy Outlook user had the following suggestion for Outlook improvement. She’s currently using Outlook 2003 but will likely upgrade to 2007 very soon, however she’s seen Outlook 2007 and it doesn’t address this yet. One thing that I would like to see in Outlook is the ability to change folder colors. Because Outlook has been one of my primary tools for organizing and tracking my business…


  • CodeMash Day One Thoughts

    CodeMash Day One Thoughts

    Date Published: 19 January 2007

    Well, to start, Josh Holmeshas said he’ll shave his head if Technorati has indexed at least 500 codemash blog posts by the end of the show this evening. So, this will bring him 0.2% closer to that… I didn’t make it to CodeMashquite as early as I’d have liked, but I did have the opportunity to use the water park with my family for a little while, and then to meet up with Scott Guthrieand several…


  • CodeMash Scott Guthrie LINQ Keynote

    CodeMash Scott Guthrie LINQ Keynote

    Date Published: 19 January 2007

    One of the points in Scott’s keynote at CodeMash was the idea that declarative programming (saying “what I want”) has many advantages over imperative programming (“how I want to do it”). One advantage he noted is that as we start to move more and more toward multi-core computers, rather than faster and faster single cores, the need for applications to be partitionable over multiple processors will…


  • COPY One Table Row in SQL

    COPY One Table Row in SQL

    Date Published: 18 January 2007

    I have a table with a bunch of columns in it that I wanted to be able to duplicate so that I could just change a couple of columns and not have to re-enter all of the columns and their values. I did some searching and the closest I came to what I wanted wasthis. So, working withGreggon IM we came up with a more flexible solution that doesn’t require typing in the 20–some column names one might…


  • More DotNetNuke Installation Notes

    More DotNetNuke Installation Notes

    Date Published: 17 January 2007

    Went with the 4.4 Source this time instead of the starter kit. Ran into an FAQ item regarding Name ‘Config’ is not declared but found the answer in this blog. Since I’m running this on Vista it had some issue with the app pool that was being used, but it offered me the following command line to fix the issue, which worked: c:windowssystem32inetsrvappcmd.EXE set app “Default Web Site/DotNetNuke_…


  • DotNetNuke 4 Experience

    DotNetNuke 4 Experience

    Date Published: 16 January 2007

    I want to create a quick, simple club website for a club I’m in. It’s been on my TODO list for a couple of years now and tonight I thought I’d just grab the latest DNN starter kit, set a few properties, add/remove a few modules, and throw it out there. Here’s a recap of my experience thus far (quitting for tonight): Downloading DNN. There’s 5 different things you can download (after registering…


  • History of ASP.NET AJAX

    History of ASP.NET AJAX

    Date Published: 16 January 2007

    As we approach the long-awaited RTM (or RTW – Release to Web) of ASP.NET AJAX (formerly “Atlas”), here’s a brief history of the project: June 2005 – Development on what would become “Atlas” begins. Most of the ASP.NET team is focused on delivering ASP.NET 2.0 and VS 2005, however, so the initial team is pretty small. October 2005 – First Atlas Community Tech Preview (CTP) is released. November…


  • Real World Application Performance Tuning Example

    Real World Application Performance Tuning Example

    Date Published: 15 January 2007

    Many of you know that I’m very much into high performance and scalability techniques. One thing you need to remember when applying performance tweaks is that as your application changes, your performance optimizations may need to change and evolve with it. Let me demonstrate this with a case in point. On ASPAlliance.com, a fairly busy web site with about a thousand articles and tutorials on…


  • Interview with Scott Guthrie

    Interview with Scott Guthrie

    Date Published: 15 January 2007

    I had a chance to watch this interview with Scott Guthrie on Channel 9 this weekend. It’s worth a watch. Scott talks about some various technologies his teams are working on, but to me the more interesting parts of the interview had to do with Scott as an individual (like the time his car was towed while he was working late at Microsoft). If you’ve never met him, he’s very approachable, down to…


  • CodeMash – An Ohio Tech Conference

    CodeMash – An Ohio Tech Conference

    Date Published: 08 January 2007

    What's that you say? Ohio has no tech conferences? Well, we do now! Register quickly for CodeMash, happening next week in Sandusky, Ohio (not too far from Michigan and Indiana). CodeMash – I'll be there! CodeMash


  • Zune Links

    Zune Links

    Date Published: 05 January 2007

    [categories: zune] I’ve accumulated some links, mostly for video encoding stuff, for the Zune that I’d like to share here. PQDVD– commercial software for DVD ripping. Also will do DivX and other format converting, but I haven’t used that feature because I didn’t know about it and I only bought the DVD converter. They offer video and DVD for $39.95, and based on my experience with the DVD tool that…


  • Zune Doesn't Play When Connected to PC

    Zune Doesn't Play When Connected to PC

    Date Published: 05 January 2007

    [categories: zune]If you have a Zune player that won’t play music while it’s charging (connected to the PC) and instead simply says ‘Connected’ you can correct the problem very easily. Simply close the Zune software on the PC and the Zune device will wake up and resume functioning as normal (while still charging).


  • MIX07 Registration Open

    MIX07 Registration Open

    Date Published: 05 January 2007

    I’m planning on attending MIX this year – last year I had to miss out due to an earlier speaking commitment. This year’s event will be held at the Venetian in Las Vegas. Here’s some more info: Registration opened today the Microsoft MIX07. This is public news that you can blog. This event is geared toward Web developers, designers, online advertising professionals and includes a broad set of…


  • Free Office Professional 2007 and Office Groove 2007

    Free Office Professional 2007 and Office Groove 2007

    Date Published: 05 January 2007

    Here’s an exciting announcement related to the upcoming launch events for Windows Vista and Office 2007: Receive your FREE copy of Microsoft Office Professional 2007 and Microsoft Office Groove 2007 when you attend a Windows Vista, 2007 Microsoft Office system, and Microsoft Exchange Server 2007 launch event near you!* At a launch event you’ll be able to: · Attend breakout sessions for IT…


  • VS2005 SP1 Update for Vista Beta Available

    VS2005 SP1 Update for Vista Beta Available

    Date Published: 05 January 2007

    Visual Studio 2005 Service Pack 1 Update for Windows Vista Beta Now available, this update fixes a bunch of issues with VS2005 (with SP1) running on Windows Vista.


  • What is a Microsoft Regional Director

    What is a Microsoft Regional Director

    Date Published: 19 December 2006

    Jonathan Goodyear wrote a column in asp.netPRO magazine this month on what being a Regional Director is all about. You can read it here: Demystifying the Microsoft Regional Director


  • PDC 2007 Announced For LA

    PDC 2007 Announced For LA

    Date Published: 13 December 2006

    PDC will be back in 2007 in Los Angeles. October 2–5, 2007. Not much information yet but keep an eye on the PDC 2007 Events Page for more details as they come.


  • Microsoft Robotics Studio Released

    Microsoft Robotics Studio Released

    Date Published: 13 December 2006

    Officially this morning, Robotics Studio was released. With Microsoft Robotics Studio, robotic applications can be developed using Microsoft Visual Studio, Microsoft Visual Studio Express C# and VB as well as Microsoft IronPython. Read the Press Release and the PressPass Q&A with Tandy Trower. Feature Highlight Supported Hardware This is just a sample list of some of the supported robots from…


  • C# 3.0 Feature Notes

    C# 3.0 Feature Notes

    Date Published: 06 December 2006

    Anders Heljsberg has been giving us an overview of new C# 3.0 features this morning. I’ve made a few notes. Most of this info is available elsewhere, and I’m not re-typing the code from his demos, but there might be some useful tidbits here for some folks. First by way of background, Anders noted the evolution of C# and the key feature that defined each version: C# 1.0 – Managed Code C# 2.…


  • Seattle Bound and Zune First Thoughts

    Seattle Bound and Zune First Thoughts

    Date Published: 04 December 2006

    I’ll be in Redmond this week for a Microsoft meeting. I expect there will be some cool new things, some of which I’ll be able to discuss, and much socializing with my ASPInsider buddies. I’ve been slacking on the blogging front lately. I taught an ASP.NET class last week in Columbus, OH, which went pretty well despite having been set up to use course materials from pre-release of ASP.NET 2.0 (not…


  • Web Deployment Projects for VS2008

    Web Deployment Projects for VS2008

    Date Published: 02 December 2006

    Yesterday, Microsoft released a CTP for Web Deployment Projects for Visual Studio 2008. I don’t use these in my own projects, having built a robust system that revolves around CruiseControl.NET and PyroBatchFTP, but it sounds like they have fixed some of the pain points with the new release, which has these new features: Full migration support from WDP for VS 2005 WDP output is replaced only if…


  • Vista, DotNet3 Available

    Vista, DotNet3 Available

    Date Published: 16 November 2006

    Just announced: Today Microsoft achieved another significant Vista milestone: the 32-bit and 64-bit versions of Windows Vista Business and Enterprise Editions are now available to business and enterprise customers in English. This is exactly one week after the signing off on the RTM bits. The German and Japanese versions of Vista will go out tomorrow, followed by French and Spanish on Friday. Also…


  • Vista on MSDN

    Vista on MSDN

    Date Published: 16 November 2006

    Windows Vista Ultimate is now available on MSDN Subscriber Downloads. Nuff said.


  • WebDevHelper Now Has Atlas Support

    WebDevHelper Now Has Atlas Support

    Date Published: 14 November 2006

    Nikhil has updated his WebDevHelper utility to include direct support for Atlas. His original WebDevHelper is a nice plug-in for the browser that provides a lot of similar functionality to the FireFox development toolbar combined with the Fiddler utility. His new update includes some nice parsing features that make it much easier to see what is being passed on the wire for MSAJAX UpdatePanels and…


  • Speaking in Arizona in March 2007

    Speaking in Arizona in March 2007

    Date Published: 13 November 2006

    I’ll be speaking at the Arizona .NET user group on 7 March 2007 about Caching and Performance. More information here. The session’s description is: This session focuses on fundamentals of performance and scalability design, testing, and optimization, with an emphasis on distributed architectures and data driven applications. The special case of caching will be given extra attention, and a number…


  • DevConnections Fall 2006 Summary

    DevConnections Fall 2006 Summary

    Date Published: 10 November 2006

    Got back home last night from DevConnections in Las Vegas. It was a very good show this year in terms of content, products being launched, and numbers of attendees and exhibitors. I think I had more people in my sessions than usual, too, and they all went well (i.e. the demos worked, nobody threw tomatoes at me). The keynote on Monday night suffered a bit from some audio issues and in general wasn…


  • DevConnections Keynotes

    DevConnections Keynotes

    Date Published: 07 November 2006

    Scott Guthrie’s keynote this morning covered a few ASP.NET AJAX features. It was impressive to see how quickly he was able to move around during his demo and literally create the sample applications from scratch. He also showed some screenshots of the upcoming Expresion Suite, which looks sweet (pun intended) and, more importantly, will have a large amount of its functionality included in Visual…


  • SqlDependency Issue Resolved

    SqlDependency Issue Resolved

    Date Published: 06 November 2006

    I’m doublechecking my demos for my sessions at DevConnections this week and I think I finally fixed an issue that has plagued me off and on for the last year or more when I’ve been demonstrating the new SQL 2005 SqlDependency features. It seems like almost half the time, the notifications don’t work when it’s time for me to give the demo, though they work fine when I test them prior to the user…


  • CSModules Added

    CSModules Added

    Date Published: 02 November 2006

    I’ve added the MetaBlogExtender and ShareIt modules from ScottW’s CSModules pack. Let me know if you have any other requests for modules or add-ons and if you have any problems with this one. [categories:CS, MetaBlog]


  • Excel Pivot Chart from Reporting Services Video

    Excel Pivot Chart from Reporting Services Video

    Date Published: 02 November 2006

    Last week I wrote about some fun I was having with Pivot Tables and Pivot Charts in Excel. Well, yesterday I got around to recording a screencast video of how to create Pivot Chart reports using Reporting Services, Excel, and SoftArtisans Officewriter. You can view it here: Using Reporting Services to Create Excel Pivot Chart Reports with OfficeWriter Check out our list of .NET videos, too — we’re…


  • Excel, Pivot Tables, and OfficeWriter

    Excel, Pivot Tables, and OfficeWriter

    Date Published: 27 October 2006

    I’ve been playing around with trying to analyze some performance data that spans numerous periods over time as well as multiple channels. Using SQL I’m able to get some results that look something like this: Channel | Period | Activity A | 1/2006 | 1342 B | 1/2006 | 3433 A | 2/2006 | 1543 B | 2/2006 | 3785 However, going from this to a chart or something useful is not terribly easy. SQL 2005 has a…


  • ReportViewer Showing No Data – Solved

    ReportViewer Showing No Data – Solved

    Date Published: 24 October 2006

    I had a really weird issue with a ReportViewer. It would show the little green AJAX Loading… image but it wouldn’t show any data, just a blue background where the output should be. I knew the data was there because exporting to Excel or PDF showed the data just fine. So I eventually tried it in FireFox instead of IE and managed to see a few rows of data, but not much. That got me thinking that…


  • Modify Contents of SortedDictionary or Dictionary in foreach

    Modify Contents of SortedDictionary or Dictionary in foreach

    Date Published: 20 October 2006

    So I’m working with a Dictionary (and later a SortedDictionary) today and I want a simple list of URLs and their HTTP status codes, so I create the dictionary as Dictionary<string,int> urlStatuses. Then I write some code that looks like this: foreach(string url in urlStatuses) { urlStatuses[url] = GetStatus(url); } Of course this doesn’t work, because you cannot modify a dictionary within a…


  • SimpleCMS Updated For Microsoft AJAX Beta

    SimpleCMS Updated For Microsoft AJAX Beta

    Date Published: 20 October 2006

    ASPAlliance.com just published a new version of SimpleCMS which now uses the current Beta of Microsoft ASP.NET AJAX. Download it, check it out, and report any bugs you may find in the forum. Kudos to Brendanfor getting this ready so quickly.


  • Team Build TF42046: The Build Service used in the build process is not reachable

    Team Build TF42046: The Build Service used in the build process is not reachable

    Date Published: 20 October 2006

    Ran into this error today trying to kick off a team build. Found this linkthat I’m using to try and troubleshoot. One note so far is that the Team Build install is now found in the “build” folder, not the “BB” folder, on the Team Foundation Server installation CD. I think that when I rebuilt the machine, I neglected to reinstall the build service, which is why it hasn’t been running for a while…


  • MVPs and Losing or Keeping One's MVPness

    MVPs and Losing or Keeping One's MVPness

    Date Published: 13 October 2006

    Frans Bouma weighed in on the recent discussion revolving around several prominent .NET developer types who did not receive MS MVP awards for this year (awards were given October 1st). If the Microsoft MVP program, or this recent discussion, interests you, you should really read Frans' post. I couldn't have said it better myself.


  • SQL Reporting Services Tutorial Video Published

    SQL Reporting Services Tutorial Video Published

    Date Published: 10 October 2006

    Last week I recorded a quick (< 10 min) video showing how to use SQL Server Reporting Services to create reports. Since learning SSRS was something that was on my TODO list for a long time, but I held off because I didn’t know where to start, I figured a short walkthrough like this one would help others who hadn’t taken the Reporting Services plunge because they needed a little hand holding. I…


  • New Army Slogan

    New Army Slogan

    Date Published: 06 October 2006

    Army Times wrote last week that the Army is going away from the awful "Army of One" slogan. The new slogan is still top secret, apparently, but we should see it all over when the media blitz commences in a few weeks. Personally I'm a fan of "Lead the Way". If they go with that, perhaps I'll get some small commission… yeah right.


  • No More DLL Hell – the song

    No More DLL Hell – the song

    Date Published: 06 October 2006

    Dan Wahlin, an ASP.NET and XML guru and friend of min, just released a song called No More DLL Hell which you can download as an MP3 and listen to. If you’ve had any experience in the COM world, you’ll appreciate this song. You’ll find the lyrics and download here.


  • Tip: Share User Controls Between Applications in ASP.NET

    Tip: Share User Controls Between Applications in ASP.NET

    Date Published: 05 October 2006

    This recently came up on an email list I’m on. There basically three ways to share user controls in ASP.NET (1.x or 2.0). Note that since Master Pages are User Controls, these techniques apply to them as well (and, in case you were unaware, you can’t share user controls or master pages between appdomains by default). Workaround 1: XCOPY Basically, copy the .ascx and/or .master files to whatever…


  • Debuggin Failed Because Authentication is not enabled

    Debuggin Failed Because Authentication is not enabled

    Date Published: 04 October 2006

    I ran into this prompt while trying to launch debugging in VS 2005 using IIS. I quickly found this MSDN online article to solve the problem. Posting here to help anybody else find it quickly. Basically, go into IIS and turn on Windows Authentication under Directory Security. Here’s detailed steps: To enable integrated Windows authentication Log onto the Web server using an administrator account…


  • CSharp C# Feeds Help Wanted

    CSharp C# Feeds Help Wanted

    Date Published: 02 October 2006

    CSharpFeeds is a simple community site dedicated to keeping up with the latest goings-on in the C# world, while eliminating the noise and personal/social posts from the various C# blogs out there. This task involves individually touching each post to approve or reject it as on-topic, and while this is not a terribly arduous process, we could use some help. If you are a C# guru and would like to…


  • ComponentArt Atlas Controls

    ComponentArt Atlas Controls

    Date Published: 29 September 2006

    ComponentArt just released a version of their Web.UI suite, which is built for ASP.NET AJAX (aka “Atlas”). Web.UI 2006.2 for ASP.NET AJAX is “the most advanced AJAX framework available. ComponentArt Web.UI for ASP.NET AJAX is the first commercial control suite designed to fully utilize this new framework.” I haven’t had a chance to do more than view the demos but they look pretty slick. The line…


  • Your Computer On Your Thumb Drive

    Your Computer On Your Thumb Drive

    Date Published: 28 September 2006

    Something I’ve wanted for a while now is the ability to keep my computer, or at least my email and some other critical files, on a USB drive — the ultimate in “ultra-portable” — which I could then use from any computer. I’ve been considering VirtualPC for this but any reasonable VPC image with Windows, Office, etc. is upwards of 6GB and requires that VirtualPC be installed on the host machine to…


  • Source Control Structure

    Source Control Structure

    Date Published: 25 September 2006

    How do you like to set up your source control for a project? My personal preference is sort of a work in progress, and I do not have a great deal of experience with branching and versioning, so my design doesn’t take this into account, but I would like to hear what approaches work well for others. Here is a very simple example: $/ $/Project $/Project/Libraries/ $/Project/References/ $/Project…


  • Temporary Post Used For Style Detection (e3d843b1-a1dd-4d7f-849e-13d424d94655)

    Temporary Post Used For Style Detection (e3d843b1-a1dd-4d7f-849e-13d424d94655)

    Date Published: 16 September 2006

    This is a temporary post that was not deleted. Please delete this manually. (f57df40f-2ff7-4942-9d90-d7bd327f8b2a)


  • Strange Issue with HttpContext.Current with WebDevServer

    Strange Issue with HttpContext.Current with WebDevServer

    Date Published: 16 September 2006

    I’m working with a Trace class that I wrote back in .NET 1.1 that wraps System.Diagnostics and System.Web tracing. The class looks like this: publicstaticclassTrace { privatestaticHttpContextcontext =null; staticTrace() { context = HttpContext.Current; } This worked fine in 1.x, but testing it with Cassini / Test Web Server I was seeing unusual behavior. The first load of a page, the trace…


  • Conditional Attribute and TRACE in ASP.NET 2.0

    Conditional Attribute and TRACE in ASP.NET 2.0

    Date Published: 16 September 2006

    In ASP.NET 1.x I had created some helper classes that wrapped the ASP.NET Trace class. These included methods like this one: [Conditional(“TRACE”)] public static void Write(string category, string message, Exception myException) { context = HttpContext.Current; if (context != null) context.Trace.Write(category, message, myException); } In VS2003, I would simply mark my project as having the TRACE…


  • Ultimate ASP.NET Base Page Class

    Ultimate ASP.NET Base Page Class

    Date Published: 15 September 2006

    I'm working on a base page for a new application and it seems like this is about the 5th or 6th time I'm building one of these things, so it's getting a bit repetitive. In this case, it's for an ASP.NET 2.0 app, but I have base pages in use in 1.x apps as well, where they are arguably more useful (or at least, lacking built-in master page support, they are more necessary). I'd like to know what…


  • Microsoft Shrugs Off Atlas Name

    Microsoft Shrugs Off Atlas Name

    Date Published: 11 September 2006

    Scott Guthrie today announced that the "Atlas" code name for the ASP.NET team's rich client framework and set of server controls and JavaScript extensions will be retired and replaced with not one, but three separate names: As part of releasing “Atlas”, we have also finally locked on an official set of product names that we will begin using moving forward. What was formerly called “Atlas” will now…


  • Windows Principles Editorial

    Windows Principles Editorial

    Date Published: 07 September 2006

    An editorial piece of mine was published in a local paper Tuesday: Microsoft opens a window to entrepreneurs


  • Windows Principles Editorial

    Windows Principles Editorial

    Date Published: 07 September 2006

    An editorial piece of mine was published in a local paper Tuesday: Microsoft opens a window to entrepreneurs


  • Upgrading TFS from RC to Workgroup Edition

    Upgrading TFS from RC to Workgroup Edition

    Date Published: 06 September 2006

    Today I came into work and my build/source control server, which I thought I remembered installing the RTM of TFS Workgroup Edition, was complaining that my license had expired. When this happens, the error message looks something like this: “TF30072: The Team Foundation Server trial period has expired or its license is otherwise invalid. Install a licensed edition of Team Foundation Server to…


  • Upgrading TFS from RC to Workgroup Edition

    Upgrading TFS from RC to Workgroup Edition

    Date Published: 06 September 2006

    Today I came into work and my build/source control server, which I thought I remembered installing the RTM of TFS Workgroup Edition, was complaining that my license had expired. When this happens, the error message looks something like this: “TF30072: The Team Foundation Server trial period has expired or its license is otherwise invalid. Install a licensed edition of Team Foundation Server to…


  • Caching in O/R Mappers and Data Layers

    Caching in O/R Mappers and Data Layers

    Date Published: 01 September 2006

    Frans Bouma, creator of LLBLGen, MVP, and all around very smart guy, wrote yesterday about the ‘myth’ that caching inside an Object-Relational (O/R) mapper makes queries run faster or makes the O/R mapper more efficient. I think he’s missing a few key usage scenarios (and, what’s more, I think he generally has a dislike of caching for whatever reason, which may bias his opinion), which I’d like to…


  • Caching in O/R Mappers and Data Layers

    Caching in O/R Mappers and Data Layers

    Date Published: 01 September 2006

    Frans Bouma, creator of LLBLGen, MVP, and all around very smart guy, wrote yesterday about the ‘myth’ that caching inside an Object-Relational (O/R) mapper makes queries run faster or makes the O/R mapper more efficient. I think he’s missing a few key usage scenarios (and, what’s more, I think he generally has a dislike of caching for whatever reason, which may bias his opinion), which I’d like to…


  • Passed Green Belt Test Today

    Passed Green Belt Test Today

    Date Published: 29 August 2006

    I try not to post too much non-technical stuff on this blog, but this is one of those rare occasions where I’m doing so. I’ve been training in karate with a club at Kent State University for a while now, probably 5 or 6 years, and have (finally) achieved my green belt this evening. Normally if one were dedicated to a martial art, they would advance much more quickly than I have, but I have very…


  • Passed Green Belt Test Today

    Passed Green Belt Test Today

    Date Published: 29 August 2006

    I try not to post too much non-technical stuff on this blog, but this is one of those rare occasions where I’m doing so. I’ve been training in karate with a club at Kent State University for a while now, probably 5 or 6 years, and have (finally) achieved my green belt this evening. Normally if one were dedicated to a martial art, they would advance much more quickly than I have, but I have very…


  • Unrecognized tag prefix or device filter 'asp'

    Unrecognized tag prefix or device filter 'asp'

    Date Published: 29 August 2006

    This error was bugging me today so I finally went searching for an answer. I found it here. The short version – if you’re using nested master pages and you’re seeing all of your <asp: … /> tags underlined and complaining with “Unrecognized tag prefix or device filter ‘asp’.” the solution is to keep your nested master page open in Visual Studio. That’s right – it sounds stupid – but that’s the fix…


  • Unrecognized tag prefix or device filter 'asp'

    Unrecognized tag prefix or device filter 'asp'

    Date Published: 29 August 2006

    This error was bugging me today so I finally went searching for an answer. I found it here. The short version – if you’re using nested master pages and you’re seeing all of your <asp: … /> tags underlined and complaining with “Unrecognized tag prefix or device filter ‘asp’.” the solution is to keep your nested master page open in Visual Studio. That’s right – it sounds stupid – but that’s the fix…


  • Free .NET CMS Plugin ASPAlliance.SimpleCMS Launched

    Free .NET CMS Plugin ASPAlliance.SimpleCMS Launched

    Date Published: 28 August 2006

    Last week SimpleCMSwas released as a beta. Please download it and give it a try in your ASP.NET 2.0 application, and post your feedback in the forum. Some background posts: http://aspadvice.com/blogs/ssmith/archive/2006/08/21/HttpModule-Breaks-SubApplications-Problem-Solved.aspx http://aspadvice.com/blogs/ssmith/archive/2006/07/19/19797.aspx http://aspadvice.com/blogs/name/archive/2006/06/29/1910…


  • Free .NET CMS Plugin ASPAlliance.SimpleCMS Launched

    Free .NET CMS Plugin ASPAlliance.SimpleCMS Launched

    Date Published: 28 August 2006

    Last week SimpleCMS was released as a beta. Please download it and give it a try in your ASP.NET 2.0 application, and post your feedback in the forum. Some background posts: http://aspadvice.com/blogs/ssmith/archive/2006/08/21/HttpModule-Breaks-SubApplications-Problem-Solved.aspx http://aspadvice.com/blogs/ssmith/archive/2006/07/19/19797.aspx http://aspadvice.com/blogs/name/archive/2006/06/2…


  • Community Server Upgrade

    Community Server Upgrade

    Date Published: 22 August 2006

    Yesterday we upgraded AspAdvice (and the other Advice Sites) to Community Server 2.1. If you find any bugs or things that don't look right, please contact me and let me know and we'll work on getting them fixed. One of the biggest changes from 2.0 to 2.1 is the implementation of tags rather than categories, and the tag clouds that you'll now see in several places on blogs and blog listings on the…


  • Community Server Upgrade

    Community Server Upgrade

    Date Published: 22 August 2006

    Yesterday we upgraded AspAdvice (and the other Advice Sites) to Community Server 2.1. If you find any bugs or things that don't look right, please contact me and let me know and we'll work on getting them fixed. One of the biggest changes from 2.0 to 2.1 is the implementation of tags rather than categories, and the tag clouds that you'll now see in several places on blogs and blog listings on the…


  • HttpModule Breaks Sub-Applications Problem Solved

    HttpModule Breaks Sub-Applications Problem Solved

    Date Published: 21 August 2006

    Recently I’ve been working on a number of HttpModule-based plug-in tools for ASP.NET applications, such as the ASPAlliance CacheManager. The idea being that these kinds of tools can provide added functionality to existing applications without the need for the application to be changed, recompiled, or migrated to some new architecture (as is required with heavier application frameworks like DNN, CS…


  • HttpModule Breaks Sub-Applications Problem Solved

    HttpModule Breaks Sub-Applications Problem Solved

    Date Published: 21 August 2006

    Recently I’ve been working on a number of HttpModule-based plug-in tools for ASP.NET applications, such as the ASPAlliance CacheManager. The idea being that these kinds of tools can provide added functionality to existing applications without the need for the application to be changed, recompiled, or migrated to some new architecture (as is required with heavier application frameworks like DNN, CS…


  • Live From Redmond ASP.NET Webcasts

    Live From Redmond ASP.NET Webcasts

    Date Published: 20 July 2006

    Here’s a list of a bunch of webcasts that are coming up in the next few months (starting next week), related to ASP.NET: Date: 25-Jul Title: ASP.NET: An Overview of ASP.NET and Windows Workflow Foundation Integration Speaker: Kashif Alam Registration URL: Click here Date: 3-Aug Title: ASP.NET: Building Real-World Web Application UI with Master Pages, Themes and Site Navigation Speaker: Pete LePage…


  • Code Query Language

    Code Query Language

    Date Published: 12 May 2006

    http://www.practicaldot.net/en2/main.htm Have you ever wanted to run some metrics on your code base, to try and gauge its quality or to try and find bad practices? There are some tools out there for such static analysis, such as FxCop and the built in tools in VSTS, as well as SSW’s regular expression based Code Auditor Tool. However, another approach, using a Code Query Language, seems to have a…


  • PromptSQL – RedGate SQL Prompt

    PromptSQL – RedGate SQL Prompt

    Date Published: 04 May 2006

    I love Red Gate Software. Their tools rock. If you use SQL Databases, I highly recommend them. I just saw that they recently bought Prompt SQLand will soon be releasing it as SQL Prompt. You can download the SQL Prompt betaif you like. What is it? Basically it provides Intellisense in Query Analyzer, something I’ve been wanting for years. I was extremely disappointed that this feature did not make…


  • Kent Ohio

    Kent Ohio

    Date Published: 03 May 2006

    I live in Kent, Ohio, which is a pretty small community in northeast Ohio, about 20 minutes east of Akron or 45 minutes south of Cleveland. It’s known to many as home to Kent State University (yes, that Kent State, which depending on whom you ask might be “the place where those students got shot in 1970” or “the university that had the pretty good basketball team a couple of years ago”). I grew up…


  • Update to CS 2.0

    Update to CS 2.0

    Date Published: 01 May 2006

    Yesterday we updated ASPAdvice.com to Community Server 2.0. So far it seems to be a lot nicer. Please let me know if you have any problems with the new site.


  • Caching Domain Objects Article

    Caching Domain Objects Article

    Date Published: 27 April 2006

    My DotNetSlackers news pointed me to this article on Domain Objects Caching Pattern in .NET. This is actually a pretty good article on caching best practices, but I did want to take exception to one statement that is clearly in error: And, your options are ASP.NET Cache, Caching Application Block in Microsoft Enterprise Library, or some commercial solution like NCache from Alachisoft. Personally…


  • IronSpeed and My Custom Reports App

    IronSpeed and My Custom Reports App

    Date Published: 26 April 2006

    I’m working on a quick little data warehouse application that I’m using as a testbed for some products and components I’m playing with. Basically it has 3 tables, one with connection strings, one with queries, and one that logs query results. Anyway, I threw together the SQL tables about an hour ago and then decided I’d try out the latest Iron Speed Designer for some quick web-based administration…


  • Tech Editing AJAX and Atlas Book

    Tech Editing AJAX and Atlas Book

    Date Published: 24 April 2006

    I’m almost done with tech editing an upcoming book from Wiley by Wally, Paul, Craig, and Scott, on Beginning AJAX and Atlas. It’s been a very educational experience but I’m glad it’s wrapping up (and hopefully the book will be on shelves before this whole AJAX fad wears off). Update: Oops, forgot an author. Sorry Craig, I was zoning out.


  • General Batiste Funny Story

    General Batiste Funny Story

    Date Published: 24 April 2006

    Retired General Batiste has been in the news a bit lately for his criticism of Rumsfeld, but seeing his photo lately reminds me of a rather humorous anecdote that occurred during my deployment in 2004 under the 1st ID. You can read the story as I originally wrote it here: http://armyadvice.org/blogs/armysteve/archive/2004/10/03/9259.aspx That was as much contact as I had with General Batiste, but…


  • Caching Birds of a Feather at TechEd — VOTE FOR ME PLEASE

    Caching Birds of a Feather at TechEd — VOTE FOR ME PLEASE

    Date Published: 29 March 2006

    I’m trying to organize a Birds of a Feather session on one of my favorite topics, Caching, at Tech Ed 2006 in Boston. Whether you’re going to TechEd or not you can vote for BOF sessions here: https://www.msteched.com/cfp/bofvoting.aspx If you’re so inclined, I’d appreciate any votes I can get for my session: Caching Patterns and Best Practices Come share your experience with using Caching in…


  • Made In Express Contest

    Made In Express Contest

    Date Published: 20 March 2006

    Want $10,000? Microsoft is hosting a contest to promote its Express product set. Sign up at http://www.madeinexpresscontest.com/ You can also download flairto put on your blog if you’re interested:


  • Team Hanselman Diabetes Walk

    Team Hanselman Diabetes Walk

    Date Published: 20 March 2006

    Scott Hanselman is one of my heroes. His .NET knowledge is tremendous and he’s just a really good guy. He has diabetes, on May 6th he’s going to be walking to fight diabetes with Team Hanselman. The goal is to raise $10,000 for the cause. If you want to learn more, or learn how you might help, see Scott’s post: Team Hanselman and Diabetes Walk 2006


  • Microsoft Atlas Contest

    Microsoft Atlas Contest

    Date Published: 20 March 2006

    I only mentioned the Made In Express Contest a few minutes ago and now I see there is a contest for Microsoft Atlas, their new AJAX / Web 2.0 framework. You have a chance to win an XBOX 360 premium and Windows Mobile 5.0 smartphones! What is it? This contest is all about creating awesome Mash-up applications using “Atlas” technology. Nothing fancy about it. Download “Atlas” and build a rockin…


  • Microsoft Atlas Update Released

    Microsoft Atlas Update Released

    Date Published: 20 March 2006

    This week Microsoft has updated the latest version of Microsoft Atlas. You can download the March CTP from http://atlas.asp.net/. You’ll find step-by-step installation instructions, documentation, and sample applications here. And of course if you do build something cool, don’t forget to enter it in the Mash It Up With Atlas Contest. I’ve heard it rumored there’s a Go Live license with this…


  • Speaking in Greenville Spartanburg on Caching Best Practices

    Speaking in Greenville Spartanburg on Caching Best Practices

    Date Published: 20 March 2006

    Tomorrow I’m going to give a presentation on Caching Best Practices in ASP.NET 2.0 at the Greenville Spartanburg Enterprise Developer Guild. If you’re in the area, please come by. I’ll put the slides and samples up on the ASPAlliance Resource Directory‘s Presentations File Galleryafter the presentation. Update: Slides and demosavailable now.


  • Does Microsoft Buy In To .NET?

    Does Microsoft Buy In To .NET?

    Date Published: 16 March 2006

    Every now and then some high profile personality, perhaps one who once had close ties to Microsoft, about how .NET is really a total failure. How it’s clear that it isn’t going anywhere. That, as proof of these assertions, Microsoft cannot even manage to use it for its own products, so why should we? Personally I think these kinds of articles are rather easy to debunk, and show that their author…


  • Visual Studio 2005 ASP.NET Web Deployment Projects

    Visual Studio 2005 ASP.NET Web Deployment Projects

    Date Published: 16 March 2006

    ASP.NET now supports something called Web Deployment Projects, which are an add-in for Visual Studio 2005 that is currently still in beta. You can download the installer from here: http://msdn.microsoft.com/asp.net/reference/infrastructure/wdp/ I recently took them for a spin with a site of mine. The key benefit I was after was the ability to swap out web.config sections as part of the deployment…


  • Continuous Integration Using Team System

    Continuous Integration Using Team System

    Date Published: 15 March 2006

    I’d like to get continuous integration (CI) working for my TFS server here at the office as my next step. A little googling led to Khushboo’s post on doing just this with the RC bits that I’m using at the moment. The instructions were pretty simple to follow and with minimal headache (aside from the need to install VS on the build box in order to run tests, a stupid requirement but one I already…


  • KBAlertz TextPayMe Promotion for Charity

    KBAlertz TextPayMe Promotion for Charity

    Date Published: 13 March 2006

    KBAlertz is giving away XBox 360s to two Arizona Children’s centers and could use your help. Basically if you sign up for a TextPayMe account through their promotion page, you’ll get $5 and they’ll get 1/36 of an XBox 360. The promotion ends March 18th. KBAlertz XBox Giveaway Page


  • VSTS Team Suite Product Key From MSDN

    VSTS Team Suite Product Key From MSDN

    Date Published: 10 March 2006

    I noticed that my Visual Studio Team Suite install on my dev machine was down to less than 60 days for its trial. I’d completely forgotten that I’d installed it as a trial back in October or whatever when it was not quite RTM’d, so I threw in my MSDN Visual Studio Team Suite DVD and went into the Repair option, where it prompted me for a key to upgrade it to a “real” license. No problem – I went…


  • VSTS TFS Install Notes

    VSTS TFS Install Notes

    Date Published: 10 March 2006

    As I wrote yesterday, I’ve just gone through my first real install of VSTS Team Foundation Server. For the most part it went without a hitch. A big part of that was due to the excellent documentation, which really must be followed step by step. Even trying to do so, I ran into a couple of minor hitches, but I was able to get back on track in each case. Here’s a basic log of what I did. I’m…


  • Team System Delete Project

    Team System Delete Project

    Date Published: 10 March 2006

    If you need to delete a Team System Project you need to do it through a command line utility that is installed with Team Explorer. In my case, I created a test project but wanted to also test project deletion. There is no way to delete a project from Team System except through the command line tool, TFSDeleteProject.exe. This utility is in the c:program filesMicrosoft Visual Studio 8Common7IDE…


  • Installing TFS RC

    Installing TFS RC

    Date Published: 09 March 2006

    I had to buy a new box to install Team Foundation Server — apparently it just won’t work on my old Dell Inspiron laptop from around 2001 (P3, 866Mhz). Seems it requires at least a P4 2.2GHz. The complete system requirements can be found in the latest Visual Studio 2005 Team Foundation Installation Guide. I also found this TFS success story, which I hope to duplicate myself (though I’m installing…


  • VS 2005 Code Snippets

    VS 2005 Code Snippets

    Date Published: 21 February 2006

    I’ve recently been learning more about code snippets in VS 2005, and I’ve found some nice resources online. Basically, if you haven’t done anything with Code Snippets, they are a simple, extensible way for you to perform a relatively complex task within the IDE with just a few keystrokes. For example, let’s say you want to write a try-catch-finally block. Normally there’s a lot of repetitive code…


  • Deceptive Marketing

    Deceptive Marketing

    Date Published: 14 February 2006

    I’ve recently received a few emails from a component vendor announcing their new product, which includes this quote: And finally, the component developers have been eagerly awaiting for months… [productname will remain anonymous-ish]is the first-ever collection of a full suite of validation controls with built-in security, for the ASP.NET platform. Now, I’m sorry, but that’s pretty far from true…


  • UrlRewriter Bug Fix

    UrlRewriter Bug Fix

    Date Published: 13 February 2006

    Some of you may know that I’m pretty interested in caching as a means to improving performance. I also try to tell everybody that will listen that the default method of accessing the ASP.NET cache, as taught in most online tutorials and courses, is wrong. I blogged about the proper caching pattern a while ago, and it’s helped others including my friend Scott Cate for kbAlertz.com. So, given all of…


  • Coming Soon – Web Projects in VS 2005

    Coming Soon – Web Projects in VS 2005

    Date Published: 05 February 2006

    Scott Guthrie has just posted an update on the new VS 2005 Web Application Project Template and VS 2005 Web Deployment Projects. You can always learn more about this project on hiswebsite dedicated to vs 2005 web projects. Says Scott: The refresh build of the VS 2005 Web Application Project we are putting out this week contains a lot of new feature functionality support.There are still some…


  • TextPayMe – The Next PayPal

    TextPayMe – The Next PayPal

    Date Published: 03 February 2006

    SignUp at TextPayMe TextPayMe is a new service that I just learned about from Scott Hanselman. Basically, it lets you send money to anybody via your cell phone. You just send a text message to the number of the person you want to pay. You will get back a confirmation phone call during which you enter your PIN to verify that you really wanted to send the money. This is very secure, because only…


  • Cache Manager Released

    Cache Manager Released

    Date Published: 30 January 2006

    Those of you who subscribe to the ASPAlliance Times weekly newsletter already know that Cache Manager 1.0 was released earlier this week. You can download it from ASPAlliance.com here: ASP.NET Cache Manager This plug-in allows for the viewing and removal of any Cache API entries or output cached ASP.NET pages within an ASP.NET application. It has been compiled under 1.1 and so my hope is that it…


  • C# Code Snippets

    C# Code Snippets

    Date Published: 30 January 2006

    David Yack just pointed me to the C# Code Snippets that should have been in VS 2005 but weren’t. Download them now from MSDN. C# Code Snippets David’s also got them broken down by categories if you prefer.


  • Microsoft Mix 2006 Conference in Las Vegas

    Microsoft Mix 2006 Conference in Las Vegas

    Date Published: 30 January 2006

    If you’ve been suffering withdrawal from Microsoft conferences since you left PDC 05 last September after going to TechEd 05 last summer, you can kick off the 2006 Microsoft conference season with a new one: MIX.06. Microsoft’s other two big conferences do not specifically target web developers, although certainly there is plenty of relevant information for webheads like myself (go ASP.NET! woo…


  • Outlook Calendar Default Month View

    Outlook Calendar Default Month View

    Date Published: 29 January 2006

    Can somebody tell me how to alter Outlook so that the default calendar month view shows me a useful time period (e.g. the future, not the past)? For instance, today is the 29th of January, 2006. When I open up my calendar, I’m going to expect to see things that are coming up that I should be thinking about. Instead, I get 5 rows of dates starting on December 26th, 2005, and ending on January 29th…


  • Google Duplicate Content Filter Loses To MSN Search

    Google Duplicate Content Filter Loses To MSN Search

    Date Published: 27 January 2006

    SEOChat recently ran an article pitting Google, Yahoo, and MSN Search up against one another in the are of handling dupliate content. Google has serious issues in this area, as many have discussed, blogged, and ranted about recently. In this article, the author has conducted an experiment with duplicate content and compared the search results from each of these three search engines over a period…


  • MS TechEd Europe 2006 in Amsterdam Cancelled

    MS TechEd Europe 2006 in Amsterdam Cancelled

    Date Published: 25 January 2006

    According to Bink.nu (and confirmed by my secret sources), Microsoft TechEd Europe 2006 has been rescheduled into two separate events. From Bink’s post: “To better serve the developer and IT professional communities in the Europe, Middle East and Africa region, Microsoft is evolving its pan-European technical events (Tech Ed Europe and IT Forum) in 2006.” “Microsoft Tech Ed 2006: Developers” will…


  • Spring DevConnections Sessions

    Spring DevConnections Sessions

    Date Published: 25 January 2006

    The next DevConnections conference will be held April 2-5, 2006 in Orlando, Florida at the Hyatt Regency Grand Cypress Resort (where it has been a couple of times in recent years — very nice hotel). I will be hosting three sessions, and for the first time I’ll have two sessions in the Visual Studio Fundamentals Track (normally I’m strictly an ASP.NET guy). Sadly, my favorite talk on Caching Best…


  • Enterprise Library 2 Available For Download

    Enterprise Library 2 Available For Download

    Date Published: 20 January 2006

    Enterprise Library for .NET Framework 2.0 is now available. It includes the Caching Application Block, Cryptography Application Block, Data Access Appliation Block, Exception Handling Application Block, Logging Application Block and Security Application Block. Definitely worth checking out. From the website: The patterns & practices Enterprise Library is a library of application blocks designed to…


  • Go Live Licenses for Windows Communication Foundation and Windows Workflow Foundation

    Go Live Licenses for Windows Communication Foundation and Windows Workflow Foundation

    Date Published: 19 January 2006

    Yesterday Microsoft announced the availability of Go Live licenses for Beta 2 of Windows Communication Foundation (formerly Indigo) and Windows Workflow Foundation. There are also two Microsoft community sites at http://windowscommunication.net http://windowsworkflow.net


  • Google Optimization Tools and Permanent Redirects

    Google Optimization Tools and Permanent Redirects

    Date Published: 17 January 2006

    A recent forum thread on AspAdvice.com dealt with this issue. It’s far better to use 301 redirects than 302 redirects within your applications if the page in question is permanently at the new location. One example of this would be when handling site moves from an old architecture to a new architecture — you want to avoid tons of 404 errors and keep you search indexes, so you redirect users…


  • Honorable Discharge

    Honorable Discharge

    Date Published: 06 January 2006

    Today is a good day. I submitted my resignation back in July 2005 when my 8 year commitment expired (I was commissioned in 1997). They told me at the time that it would take 4-6 months for the resignation to process and they were not exaggerating. The orders and certificate were received today, although technically I should have gotten them a week or two ago since they were addressed to my…


  • Determine if ASP.NET Page is running in Cassini or IIS

    Determine if ASP.NET Page is running in Cassini or IIS

    Date Published: 05 January 2006

    Sometimes you’d really like to know whether your web application is running in IIS or Cassini (ASP.NET Developer Server or whatever it’s called now). For example, I’ve heard there are certain scenarios that do not work under the latter and therefore must run under the former, so during automated test suites using Cassini you might want to avoid executing some blocks of code that you know will fail…


  • Cool Tool – Free Code Highlighter

    Cool Tool – Free Code Highlighter

    Date Published: 04 January 2006

    http://www.dreamprojections.com/syntaxhighlighter/Examples.aspx Check out this syntax highlighter. I haven’t had a chance to play with it myself yet but it claims it will work with .Text and other blog engines, so I’m assuming there’s a way to easily integrate it. I’m just posting it here so I’ll remember the URL… (thanks, Dave) Oh, and check out SystemNetMail.com if you have questions about using…


  • Cruise Control Bug Fix

    Cruise Control Bug Fix

    Date Published: 30 December 2005

    I’ve been using Cruise Control for a few weeks now and noticed a recurring problem where it would just error out and not recover periodically. The issue was a timeout checking my source control server, which is runningVaultand hosted remotely. Anyway, Jonathan Cogley at Thycotic pointed me to a fix they’d come up with when they encountered the same problem. Specifically, John Morales created a…


  • NUnitASP to Find Broken Links

    NUnitASP to Find Broken Links

    Date Published: 22 December 2005

    I’m considering having my web-page tests, currently implemented using NUnitASP and some Cassini-implants, test for broken links (prompted by someone reporting one from one of my sites). I haven’t gone any further than to have the idea that this might be a good idea, so I’m wondering if anybody has done it and would care to comment? If unit-tests are not the right place (I can see something…


  • December Updates to Microsoft ATLAS

    December Updates to Microsoft ATLAS

    Date Published: 22 December 2005

    NikhilK has a lot of good information about changes that have been made in the direction of Microsoft Atlas, an AJAX-like technology that will enable richer user experiences with ASP.NET 2.x applications. If you’re doing anything with AJAX or Atlas, check it out. http://www.nikhilk.net/Entry.aspx?id=100


  • Disk Output Cache

    Disk Output Cache

    Date Published: 14 December 2005

    DmitryR writes about an implementation of using Output Cache to Disk (instead of memory) via an HttpModule. Definitely an interesting topic (and a similar feature was in v2 through beta2 but ended up getting cut) and one that could be useful in certain scenarios, especially to avoid the dreaded “application-restarting-and-maxing-out-resources-filling-data-caches” effect that happens when many…


  • The Next P2P Revolution – Napster for Television

    The Next P2P Revolution – Napster for Television

    Date Published: 14 December 2005

    This is a bit off-topic from my usual .NET stuff, so I apologize. Recently Clemens showed me an application he’d written that allowed me to watch and control his television from Windows Media Player on my PC. The quality was great and I could change the channels myself by simply clicking on logos for the various networks — no need to channel surf. Clicking on each network also loaded up the…


  • Shipping from Fog Creek Software

    Shipping from Fog Creek Software

    Date Published: 14 December 2005

    Joel writes about his experience shipping many, many DVDs: How to Ship Anything. An interesting read, especially since this is the time of year that ASPAlliance sends out a few hundred items to friends and contributors for the holidays. Thankfully, we’re not in the business of shipping anything year-round, so we shouldn’t need all of Joel’s toys any time too soon, but it’s a good read just the…


  • Test Page is Valid XHTML using NUnit

    Test Page is Valid XHTML using NUnit

    Date Published: 09 December 2005

    http://www.artima.com/forums/flat.jsp?forum=152&thread=82646 I’m wrapping up some tests of AspAlliance Cache Manager (no URL yet) and wanted to ensure that my output was valid XHTML. So I did some googling and found this thread which led me to create this technique in my unit test: I copied this class from the thread above: I declare a class level variable int errorCount and define the delegate…


  • Cache Manager Almost Ready

    Cache Manager Almost Ready

    Date Published: 03 December 2005

    I’m almost done with my Cache Manager application, which is modeled after ELMAHand uses an HttpHandler model to add cache management functionality to any ASP.NET application. At the moment it’s built using VS 2005 and v2 of the framework, but doesn’t really use any 2.0 functionality (except for .resx files, which are AWESOME for managing string resources within a project!). Here’s a screenshot…


  • Visual Studio 2005 Web Deployment Projects Public Beta

    Visual Studio 2005 Web Deployment Projects Public Beta

    Date Published: 15 November 2005

    I blogged about the upcoming web deployment projects last month– now you can download them and try them out yourself! They’re in public beta mode now. Visual Studio 2005 Web Deployment Projects Public Beta


  • Comparing .Net and J2EE

    Comparing .Net and J2EE

    Date Published: 14 November 2005

    This is a common theme, especially in IT departments at larger companies where the religious wars rage. Microsoft, in support of their recent new product launches, has compiled a set of “materials designed to help you evaluate Microsoft .NET vs. J2EE application server technologies”. .NET vs. J2EE Reports and Evidence


  • Extending the ASP.NET Cache Object: Cache.Clear()

    Extending the ASP.NET Cache Object: Cache.Clear()

    Date Published: 14 November 2005

    The built-in Cache object in ASP.NET does not support a Clear() method. This method would be useful if you ever just wanted to invalidate all cache entries and start fresh. In a utility object I’m working on, tentatively called SuperCache, I’ve implemented a Clear method using the following code: This is interesting mainly because of the reference to the IDictionaryEnumerator documentation, which…


  • Sessions at DevConnections

    Sessions at DevConnections

    Date Published: 07 November 2005

    I’m leaving in the morning for Las Vegas for ASP.NET Connections, where I understand attendance is extremely high relative to expectations, no doubt related to the fact that Microsoft is launching many of their new dev products this week. I’m going to be hosting three sessions this week and look forward to meeting folks in person whom I’ve only gotten to know through my blog, mailing lists, forums…


  • Generics FAQs on MSDN

    Generics FAQs on MSDN

    Date Published: 06 November 2005

    Juval Lowy has recently published a series of FAQs on Generics on MSDN. Find them here: ·Fundamentals ·.NET Framework ·Tool Support ·Best Practices There’s over 100 pages of content there with code samples in C#, VB, and MC++ (not just translations, but coded specifically in each language).


  • New Google Service – BlogSearch

    New Google Service – BlogSearch

    Date Published: 06 November 2005

    Google seems to be at it again with more new services. I just ran across BlogSearch, which might not be totally new but this is the first I’ve seen it. There are a lot of Steven Smith’s out there and I’m nowhere near the top in main Google Search, but I’m the top 2 hits (at the moment) in BlogSearch:Steven Smith. I haven’t used the tool enough to know if it’s very useful, but I like the idea.


  • VSTS and TFS Info

    VSTS and TFS Info

    Date Published: 06 November 2005

    I’m working on installing TFS Beta 3 Refresh and have been told by Cindy that these links are all helpful: Installation Guide WSS Service Pack 2 I’m hoping my version of SQL Server 2005 will work, since it’s not quite the build number it says it wants – more on that later.


  • FolderShare — Soon to be MS FolderShare — and SyncToy for XP

    FolderShare — Soon to be MS FolderShare — and SyncToy for XP

    Date Published: 04 November 2005

    I finally started playing with FolderShare earlier today, and it’s working beautifully However, my specific scenario I want is to keep two folders on Maxtor OneTouch network drives in two separate locations (home/office) in sync. Sadly, FolderShare doesn’t work on network shared folders/drives. However, I have a fix for that, I think (keep reading)… Totally coincidentally, I read that FolderShare…


  • Technical Difficulties and Hard Drive Recovery

    Technical Difficulties and Hard Drive Recovery

    Date Published: 27 October 2005

    Drove to Findlay to speak at their user group last night (about 2.5 hrs away). Was working on my computer until the mid-afternoon, when I packed up and left. When I arrived, I started plugging everything in and booted up my laptop to get this message: Windows could not start because the following file is missing or corrupt: windowssystem32configsystem** You can attempt to repair this file by…


  • Caching Presentation – Findlay, Ohio

    Caching Presentation – Findlay, Ohio

    Date Published: 27 October 2005

    As I mentioned in my previous post, I presented on Caching in Findlay last night. The presentation was remarkable because I did it without my laptop, which sadly decided to die as I was booting it up for the meeting. I was ill-prepared in that I failed to have a backup of my slide deck on a USB drive or online somewhere, so I ended up grabbing an older version of the slide deck from my training…


  • New Phone – Samsung i730 PocketPC Phone

    New Phone – Samsung i730 PocketPC Phone

    Date Published: 10 October 2005

    My wife’s phone broke recently, so Friday we went and bought a new phone – a Samsung i730. I wanted to try something that would sync with my email and calendar, and she liked what she had before, so she got my previous phone and I got the new phone. Thus far it’s been a pretty frustrating ordeal which has included a corrupt Outlook profile (for which I found scanpst.exe to be useful), a bluescreen…


  • New Site: DotNetSlackers

    New Site: DotNetSlackers

    Date Published: 10 October 2005

    A new site I’m using to push me updates of interesting blogs is DotNetSlackers.com. Sign up for their mail service, and you’ll get a single daily email with that day’s posts arranged by keyword category. I’ve been pretty lax in firing up my RSS aggregator client, so this is a good way for me to at least make sure I’m not missing anything big in the .NET blogging world. Another similar site worth…


  • Friendly Error Page App_Offline.htm

    Friendly Error Page App_Offline.htm

    Date Published: 06 October 2005

    In ASP.NET 2.0, while you’re in the process of updating your site, you can expose a friendly error page by including a file called app_offline.htm in your site’s root. If this file exists, all requests to the site will be redirected to this page. The only way to get around this is to delete the file. The usage scenario for this is for site maintenance, and it can be easily included as part of a…


  • Visual Studio 2005 Web Deployment Projects

    Visual Studio 2005 Web Deployment Projects

    Date Published: 05 October 2005

    The ASPInsiders were just introduced to an upcoming and as-yet-unannounced addin for Visual Studio 2005 that should ship with or close to RTM. The feature is called Web Deployment Projects, and will extend VS 2005’s capabilities for building and deploying ASP.NET web projects. VS 2005 did away with web project files, and there has been some pushback in the community on this because there are many…


  • Cool Features in VBNext

    Cool Features in VBNext

    Date Published: 04 October 2005

    I was a VB developer for several years (VB5/6) before .NET came on the scene, and I started doing most of my work in C# (though I still can do VB in a pinch, and often need to translate to/from it for articles, etc.). I’ve been learning all about LINQ this summer at Tech Ed, PDC, MVP Summit, etc. and it’s largely being pushed by Anders and the C# team, which kind of implies that it’s mainly a C…


  • SuperCache – Extending and Wrapping System.Web.Caching.Cache

    SuperCache – Extending and Wrapping System.Web.Caching.Cache

    Date Published: 03 October 2005

    I’m nearly finished with my cache wrapper object, which I’ve named SuperCache for lack of a better name (Cache being taken, naturally). I’ll be releasing it with source and a small article describing how to use it, most likely on ASPAlliance.com, but before I call it done I want to solicit some feedback and see if there are any features people are interested in that I could add in. Currently it…


  • Spang – Web 4.0 Is Coming

    Spang – Web 4.0 Is Coming

    Date Published: 03 October 2005

    Plip already let the cat out of the bag, but I feel obliged to blog about Spang as well. Sadly, beyond the name, we aren’t allowed to share any more, but if you’re a web developer you should expect to hear more about it “soon”. Update: WhatIsSpang.com announced.


  • Interesting Caching 'Feature'

    Interesting Caching 'Feature'

    Date Published: 30 September 2005

    You may know that I’m a big fan of caching. My latest pet project is the creation of a cache wrapper object that extends the capabilities of the standards HttpRuntime.Cache (or System.Web.Caching.Cache) object. One feature that I’m implementing is capability to insert an entry into the Cache and specify both a sliding and an absolute expiration. This scenario is not supported using the standard…


  • VSTS Code Coverage Customization

    VSTS Code Coverage Customization

    Date Published: 30 September 2005

    VSTS originally used intuitive colors for code that was covered, code that was not covered, and code that was partially covered. In beta 2, these was changed to a bunch of pastel colors, as others like Dave Donaldson notes. Dave explains how to switch this back to the more obvious primary colors: To do this, go to Tools, Options, Environment, Fonts and Colors. Under the Display Items list, look…


  • PDC Birds of a Feather Forums

    PDC Birds of a Feather Forums

    Date Published: 22 September 2005

    I was lucky enough to attend a few Birds of a Feather sessions at PDC05, including one hosted by Julia Lerman on Going Solo. At many of these, the time goes by very quickly and many of the attendees have additional questions for the host or for one another that must go unanswered. Further communication is usually limited to a few hastily exchanged business cards, but the group itself disintegrates…


  • Cool AJAX Implementation

    Cool AJAX Implementation

    Date Published: 21 July 2005

    ComponentArt has launched the a public beta of their new charting component, WebChart. With it, they have an online chart gallery that takes advantage of AJAX-style code to provide a very rich user interface. Check it out, it looks like the end results are very pretty. Hopefully I’ll make time for a review soon.


  • Rebuilding Alienware M7700 with FastTrak RAID and Windows XP

    Rebuilding Alienware M7700 with FastTrak RAID and Windows XP

    Date Published: 17 May 2005

    This is a note for myself and anybody else who finds themselves frustrated when it comes time to reinstall Windows XP on their Alienware laptop with RAID (this advice applies to more than just the M7700). Basically, the behavior I ran into was that I would boot to the Windows XP CD and it would ask me if I had any drivers, press F6. I did so and installed the FastTrak drivers using a USB Floppy…


  • Playing with PostXING

    Playing with PostXING

    Date Published: 11 April 2005

    I downloaded PostXING for desktop blog posting. This is basically my first test to see if it works with this blog.


  • Archive

    Archive

    Date Published: 08 June 2004

    Pages: Architecture eBook Archive Ardalis is Steve Smith Assessments Blog Cloud Native eBook Contact Us Dev Tips Weekly Interviews Landing Test Mentoring Software Craftsmanship 2016 Wall Calendar Sponsorship Tools Used Training Classes Categories: Iraq Personal Productivity Security Software Development Uncategorized Recent Posts: Never use the same value for two IDs (or other values) in your…


Browse all categories