Getting near completion of the (yet another) ground-up rewrite of MessageBase (This is the third or fourth time, since starting out with the whole thing running ASP.old and using Access as a back-end database.)
The first rewrite (MessageBase 2.x) a few years ago was done originally in VB.NET running under .NET 1.1. (Then eventually recompiled under .NET 2.0) This included the data now being hosted on a SQL 2000 Database Server. MessageBase 2.x was from my days of little experience - writing all the database access as dynamically generated in-line code.
This newest version (MessageBase 3.0) is a complete rewrite in C#, running under .NET 3.5, with the data hosted on a separate SQL 2005 Database Server and accessed through a web service. All database activity is done via calls to stored procedures. (Standard T-SQL, not utilizing any of the .NET functionality provided by SQL 2005. However, the back end might end up on SQL 2008 before it's fully complete, as the full-text search of SQL 2005 doesn't seem to work very well. I guess that depends on the improvements to the full-text search, as right now it's pretty frustrating - messages I know for sure are in the database are not always found, and strange stuff like it will find replies to a message, but not the actual parent message itself.)
Already see that there will eventually be a MessageBase 3.1, where I go back through all the code that talks to the database, and convert it to use LINQ, but for now just getting it done using what I know the best. It seems every time I do this, by the time it's done, there's a whole new "best way" to do things, such as now it's looking like the new "best" way is to use the new MVC.net (Model View Controller) approach instead of the WebForms approach. It's an unending race. (And SALT instead of SOAP for talking to web services, and so on...) I'm not totally sold on any of these new approaches, it's sometime better to just wait a while and see which approach actually ends up the preferred way. (For instance, look at the way a Visual Studio project changed from 2003 to 2005, and then back to the 2003 way for Visual Studio 2008. Some times these people seem a bit confused and too impatient to use the "Latest/Greatest" ways of doing thing, rather than using the BEST ways of doing things. [Wise man say you sometimes get more done by doing nothing.]
But it's looking pretty good:
Will be entering public beta pretty soon, all the main functionality is complete, just doing some additions right now before going beta. It looks and acts so much better now.