Archive for the 'dotnet' Category

Additional Preparations to Install Visual Studio 2008

Wednesday, November 28th, 2007

There are many events coming up where you can get a free Visual Studio 2008 installation. These events have filled up quickly, as Dave Bost explains. You can get a 90 day trial for Visual Studio 2008 from MSDN right now but when you get the fully licensed version you will need to uninstall the trial. The special installations for these events, however, do not require the uninstall which is a good reason to get into one of these events. But before you attend one of these "installfest" events you will want to prepare your computer with the following tips.

(more...)

Another Reason to Upgrade to Visual Studio 2008

Wednesday, November 21st, 2007

I cannot believe I neglected to mention the new code metrics features in Visual Studio 2008 along with previous list of worthwhile features. Code metrics will scan your project and show you a Maintainability Index at the class and method level based on Cyclomatic Complexity, Depth of Inheritance, Lines of Code and other values. Knowing how your code looks from this perspective should help you in refactoring it into a more simple form that should save you many headaches in the future. The details are presented to you with an easy to read grid that is ideal for quick code reviews.

You can read more at the Visual Studio Code Analysis Blog.

(more...)

Service Factory: Modeling Edition

Wednesday, November 21st, 2007

You can now get a stable release of the Service Factory for Visual Studio 2005. The release page shows a summary with many useful links for tutorials and videos as well as screenshots of the service diagrams. If you attended my presentation on code generation last month I mentioned that the modeling was not quite all there yet. Now it is. It is time to try this out and make use of it to rapidly build services (ASMX or WCF) as well as maintain them with this powerful tool.

Reasons to Blog and Tips to do it Well

Friday, November 9th, 2007

As a developer I find that writing for this blog has been extremely helpful. I do it for selfish reasons as well as to help others who come along who are experiencing a problem I have already overcome. And whenever I do solve a common problem I make sure to write it up in tutorial form to help others. I find that I also help myself down the road.

(more...)

Hiring!

Tuesday, November 6th, 2007

I know of a few great companies that are hiring and I would like to hook them up with some great developers. I am looking for experienced .NET developers who are interested in exploring these open positions. Two of them are downtown at two separate companies. Actually, one of them may want to take on a few new developers depending on who steps forward. Then I know a couple of other companies hiring in the Wauwatosa area.

If you would like to be considered, drop me a message through my contact form.

And if your company is hiring, let me know that as well. I am planning on starting a monthly posting of open positions. It seems things are heating up in Milwaukee. If you are not happy with your current job, then now is a good time to explore.

Visual Studio 2008: New Features Worth Mentioning

Monday, November 5th, 2007

There are tons of new features in Visual Studio 2008. If you have been paying attention, you know it comes out this month. Of the many new features, I would put the following at the top:

  • Multi-Targeting Support
  • Javascript Debugging
  • Javascript Intellisense
  • Web Design and CSS Support
  • Performance Improvements
  • Access to .NET Framework Source Code

(more...)

Improving Visual Studio Performance: Additional Tips

Thursday, November 1st, 2007

I have seen a few blog entries related to boosting performance while using Visual Studio recently. The newest entry is by Scott Guthrie. He makes a similar point so what I suggested last year. The hard drive speed is very important. However, I would like to point out some additional details to augment what Scott is suggesting.

(more...)

Code Generation, Software Factories and Visual Studio Extensibility

Wednesday, October 17th, 2007

Last night I presented Code Generation, Software Factories and Visual Studio Extensibility at Direct Supply. Below is the project download with all of the source followed by many useful links related to the various topics.

[ Download the sample project: SmallSharpTools.VisualStudioPlugins.zip ]

(more...)

Writing Queries with LINQPad

Friday, August 24th, 2007

I just discovered LINQPad. You can install .NET 3.5 Beta 2 and start writing LINQ queries against your databases. It does not require the LINQ CTP for Visual Studio 2005 or Visual Studio 2008. It is still a beta but I can see that it will become an invaluable tool once .NET 3.5 is released even though I will have Visual Studio 2008.

LINQ Performance versus ADO.NET

Sunday, August 19th, 2007


Last week I presented Deeper in LINQ for the Wisconsin .NET User Group and concluded with a speed test. The speed test compared ADO.NET to LINQ. The ADO.NET method called a stored procedure while the LINQ method generated the query inline. The results showed that LINQ is not as fast. The overhead is due to the LINQ for SQL provider that has to parse the query within the CLR and then generate the SQL that it sends over to SQL Server. The generated SQL is identical to what is in the stored procedure used by the ADO.NET method. The difference in timing is purely from preparing the query. And since LINQ to SQL uses ADO.NET once it generates the SQL it cannot possibly run faster than a direct ADO.NET implementation. The speed test was simply to show the difference.

[ Download the sample project: DeeperInLINQ.zip ]

In the attached screenshot you can see three tests. I wanted to make a LINQ sample that runs much faster so I added the second test to show how long it would take to have LINQ call the stored procedure just like the ADO.NET method and avoid the overhead of preparing the query. It seems that even though the original LINQ method is running the same query over and over it still has to carry out the preparation for the query each time. This is clearly an area that could be tuned prior to the .NET 3.5 release. In the meantime, the call to the stored procedure allows the new LINQ method to perform nearly as well as the ADO.NET version. If this particular method was performing poorly in a real application, breaking out the work to a stored procedure would be a good tuning option. But most of the time you will want to continue with inline LINQ queries so you get the productivity benefits that it provides through Intellisense and other features.

(more...)