22 Nov
So I’ve downloaded & installed Visual Studio 2008. First impressions: nice. It seems faster than 2005, but that may just because I haven’t installed ReSharper yet :). The multi-targeting feature that allows you to specify which version of the .NET framework to compile the project as is awesome. It makes migration so much easier. I’ve now been able to migrate our whole web solution to Visual Studio 2008 but keep the framework version at 2.0. We’ll upgrade to 3.5 later.
Very glad Microsoft decided to keep Web Application Projects built in to 2008, makes it all really simple. Everything ran fine except for one little gotcha with the web project itself. It’s not a big deal, but it was really annoying and the error messages were not overly helpful. It’s basically around Visual Studio trying to create the required virtual directory for the website in IIS. The error I was getting was:
Creation of the virtual directory http://dev.drive.com.au failed with the error: Could not find the server ‘http://dev.drive.com.au’ on the local machine. Creating a virtual directory is only supported on the local IIS server
See below for steps to reproduce & how to resolve this:
20 Nov
Microsoft has released Visual Studio 2008 with .NET 3.5. The full version is up on MSDN now, and the express edition can be downloaded here. I’ve been really looking forward to this, LINQ, Lambda expressions and extension methods, plus built in JavaScript debugging & intellisense. But one of the best features IMHO is that we’ll be able to step into the .NET framework code while debugging. That’s going to be awesome.
To download the Visual Studio releases, you need to do it from the ‘Top Subscriber Downloads’ section, it’s not actually available in the normal subscriber downloads section. Probably to reduce server load. VS2008 Professional is a 3.81GB download, so make some room.
29 Oct
So most people know LOLCats now right? If not, drop over to ICanHasCheezburger.com for a minute & check it out. Leave your brain at the door.
So then some genius came along and designed a LOLCode specification, that is, a programming language that uses LOLCats language as its syntax. That specification is now in its 4th revision (yes, you read that right, people have that much free time on their hands).
But wait, there’s more. The specification has now been implemented in a number of languages & platforms including .NET.
So you can now write your next ground-breaking social networking startup site in LOLCode.NET. Yes, you can write software in LOLCode & debug it using Visual Studio. The compiler was written by Arachnid, very smart guy by the way. I highly recommend reading his series on Damn Cool Algorithms if you’re interested in such things. The compiler has been rather well received by the .NET community, so much so that Nick Hodge featured it in a presentation he gave at TechEd07. Nice.
Still, I’m almost certain that this is one of the signs of the apocalypse.
4 Oct
I already posted this on the tumblelog, but I think it bears repeating: With the next release of Visual Studio, the common .NET assemblies will be provided with source code.
Today I’m excited to announce that we’ll be providing this with the .NET 3.5 and VS 2008 release later this year.
We’ll begin by offering the source code (with source file comments included) for the .NET Base Class Libraries (System, System.IO, System.Collections, System.Configuration, System.Threading, System.Net, System.Security, System.Runtime, System.Text, etc), ASP.NET (System.Web), Windows Forms (System.Windows.Forms), ADO.NET (System.Data), XML (System.Xml), and WPF (System.Windows). We’ll then be adding more libraries in the months ahead (including WCF, Workflow, and LINQ). The source code will be released under the Microsoft Reference License (MS-RL).
You’ll be able to download the .NET Framework source libraries via a standalone install (allowing you to use any text editor to browse it locally). We will also provide integrated debugging support of it within VS 2008.
21 Sep
Visual Studio 2005 & .NET 2.0 introduced a bunch of new concepts to .NET development, probably the most well known being Generics. One of the possibly less well know & certainly less well understood was the introduction of nullable types, specifically nullable value types.
For the uninitiated, I’ve got a very brief intro below. Here’s a more in-depth article on Nullables.
Value types (int, long, float, double, etc.) are not able to be set to a null value, they’re set to their default value (for numeric value types this is 0). To make an int nullable, you append the type with a question mark, i.e. int? This means that you can now do this:
1: int? x;
2: //Some processing
3: if (x == null)
4: {
5: //Do something
6: }
Actually the nullable type wrapper gives you a more elegant way of checking for null with the HasValue property. All nullable types have this property & if the object is not null it will be true. The nullable type specification is actually a bit of syntactic sugar: int? is just a compiler shortcut for the real Nullable type of Nullable<int>.
Right, nifty, but so what? How do we use this? Well a simple use is when you need to pass through an optional value to a SQL Server stored proc. Previously you’d have to write an overloaded version of the method that didn’t have the optional parameter and just create a null sql parameter for the command. With a nullable int, you can just pass the parameter through as null.
22 Jun
JetBrains have released ReSharper 3.0, but I think they may have to re-brand it, as it now has extensive VB.NET support too:
ReSharper is proud to enable Visual Basic .NET development, providing full support and a host of productivity features. Visual Basic developers will be sure to enjoy a truly enhanced Visual Studio experience thanks to ReSharper’s quick navigation and search, all the important code refactorings, full-fledged code assistance, code completion & generation, code templates, and a lot more.
Maybe they can call it ReCLR or ReNetter or something like that…