Geeks With Blogs

News



Microsoft Store

Support This Site


AddThis Social Bookmark Button

Locations of visitors to this page

Subscribers to this feed

TwitterCounter for @sdorman

Creative Commons License


Scott Dorman ephemeral segment .NET There are 406 entries for the tag .NET
Microsoft Small Basic
If you have children and want them to learn programming at an early age (recommended age is between 10 and 16), you should check out Microsoft Small Basic, which combines a simple language and a rich set of libraries together with a friendly development environment. The Small Basic language draws its inspiration for an early version of BASIC but it is actually based on the .NET Framework. Like the early variants of BASIC it is based on, Small Basic is imperative and doesn't use or expose beginners ......

Posted On Sunday, October 10, 2010 2:54 PM

Light Blogging Activity
Regular readers may have noticed that my blogging activity has slowed down considerably. I’m hoping to pick back up and start posting more soon, but until then I wanted to make sure everyone knows that I am still active…there have been other things that have been consuming my time. First, my Sams Teach Yourself Visual C# 2010 in 24 Hours book came out, officially on the shelves in August although content was complete in late February. Shortly after the book came out, I started working on an article ......

Posted On Saturday, October 9, 2010 11:53 AM

Florida Technical Communities (October 2010 Update)
It has been over a year since the last time I updated my list of Florida technical communities and a lot has changed since then. Joe Healy, our Florida Microsoft Developer Evangelist, maintains a list for each of the main areas in Florida, but this only covers the .NET-focused groups. Taking what he has started, I have put together a similar list (based on the information Joe maintains) that covers the other technical communities that I know of. If you are part of a technical user group community ......

Posted On Saturday, October 9, 2010 11:21 AM

Code Camps and Speaker Feedback
Code camps are a great resource for the local development community. They provide developers and speakers (who are almost always local developers as well) a way to interact and learn about topics they otherwise might not have an opportunity. As a speaker, it is always great to see new people in my talks and answer questions since in almost every talk, someone asks a question I haven’t heard before. One of the things that most speakers, including myself, like getting is feedback. We want to know what ......

Posted On Saturday, September 18, 2010 11:09 PM

Providing Feedback for Speakers
As most of you know, I do a lot of presentations each year, mostly at local code camps. As a speaker, it is always great to see new people in my talks and answer questions since in almost every talk, someone asks a question I haven’t heard before. One of the things that most speakers, including myself, like getting is feedback. We want to know what you thought of the presentation, both the material and the delivery. It used to be that most code camps passed out evaluation forms to provide this feedback. ......

Posted On Tuesday, September 7, 2010 11:02 AM

Determining if a type is defined in the .NET Framework
There have been several questions on StackOverflow about how to determine if a type is defined in the .NET Framework or is a third-party or custom type. Based on the answers provided to these questions, this can be accomplished using some reflection to retrieve the public key token of the assembly in which the type is defined and compare it to a public key token known to be used by Microsoft to sign the .NET Framework assemblies. Update: Based on some additional research and a Twitter conversation ......

Posted On Saturday, September 4, 2010 10:24 PM

Interesting .NET Framework 4 Statistics
Last September while I was working on my Teach Yourself Visual C# 2010 in 24 Hours book for Sams Publishing, I posted some interesting statistics for the .NET Framework 3.5 SP1. Now that the .NET Framework 4.0 has been released, I thought I would update these statistics (and thanks to Lisa for asking about them). There were a total of 44,346 types (loaded from 130 assemblies), with 33,152 classes, 2,398 interfaces, 4,828 enums, and 8,796 value types. The complete breakdown is shown below. Of the ......

Posted On Saturday, July 10, 2010 10:39 PM

Favorite Visual Studio 2010 Extensions, Update
With the release of the Visual Studio Pro Power Tools (and many other new extensions having been released), my list of favorite Visual Studio extensions has changed. All of these extensions are available in the Visual Studio Gallery. Here is the list of extensions that I currently have installed and find useful: Bing Start Page CodeCompare Collapse Selection In Solution Explorer Collapse Solution Color Picker Completion Extension Analyzer Find Results Highlighter Find Results Tweak (Available from ......

Posted On Friday, June 11, 2010 10:08 PM

TechEd 2010 Twitter Book Give Away
If you’re going to TechEd North America this year, Sams Publishing will be giving away 9 advanced reader copies. In order to win a copy, be sure to follow the InformIT Twitter account and the #TechEd hash tag. Sporadically throughout the day a tweet will be sent out stating that the first person who comes to the booth and mentions my book will get a copy. The give away will probably occur over multiple days, so be sure to keep an eye on Twitter. Technorati Tags: Books,Sams Teach Yourself C# 2010 ......

Posted On Thursday, June 3, 2010 9:34 PM

Interview with Joe Healy
Earlier today, Joe Healy interviewed me about the upcoming book. The video is now up on YouTube and will be on Channel 9 shortly. Technorati Tags: Books,Sams Teach Yourself C# 2010 ......

Posted On Tuesday, June 1, 2010 10:39 PM

TechEd 2010 Schedule and Twitter Tool
If you’re going to TechEd 2010* (North America), be sure to check out the TechEd 2010 Schedule and Twitter Tool. If you have a mobile device (Windows Mobile 6.5, Android, iPhone), a tablet (Windows 7, iPad), or even a laptop (Windows Vista or Windows 7 gadgets) then this tool is essential. It allows you to view all of the session details and build your own customized schedule. You can also keep up with all of the TechEd related Twitter traffic from the same application. By default, the #TechEd hashtag ......

Posted On Tuesday, June 1, 2010 6:19 PM

Sams Teach Yourself Visual C# 2010 in 24 Hours at TechEd 2010
We are still ironing out some contract issues with Microsoft legal to include the Express Edition DVD with the book, but in the meantime there will be about 9 galley copies of the book which Sams will be giving away during TechEd 2010. If you’re going, be sure to stop by the Sams booth for the details on the giveaway*. Once the contract issues are resolved, the book will be officially available for purchase, but you can pre-order it now from Amazon or your favorite online book-seller. Be sure to ......

Posted On Tuesday, May 25, 2010 1:27 PM

The Dispose Pattern (and FxCop warnings)
[This is actually a response to Bill’s blog post, but since it isn’t possible to leave this as a comment on his blog it’s a post here.] There are many different ways to implement the Dispose pattern correctly. Some are (in my opinion) better than others. In Bill’s blog post he presents a particular pattern, which is an excerpt from his book (Effective C#). The issue centers around the fact that a reader took the code sample presented in the book and ran FxCop (Code Analysis) on it, which generated ......

Posted On Tuesday, May 25, 2010 10:40 AM

Retrieving Custom Attributes Using Reflection
The .NET Framework allows you to easily add metadata to your classes by using attributes. These attributes can be ones that the .NET Framework already provides, of which there are over 300, or you can create your own. Using reflection, the ways to retrieve the custom attributes of a type are: System.Reflection.MemberInfo public abstract object[] GetCustomAttributes(bool inherit); public abstract object[] GetCustomAttributes(Type attributeType, bool inherit); public abstract bool IsDefined(Type attributeType, ......

Posted On Sunday, May 16, 2010 12:56 PM

CLR 4.0: Corrupted State Exceptions
Corrupted state exceptions are designed to help you have fewer bugs in your code by making it harder to make common mistakes around exception handling. A very common pattern is code like this: public void FileSave(String name) { try { FileStream fs = new FileStream(name, FileMode.Create); } catch (Exception e) { MessageBox.Show("File Open Error"); throw new Exception(IOException); } The standard recommendation is not to catch System.Exception but rather catch the more specific exceptions (in this ......

Posted On Monday, May 3, 2010 10:58 AM

Favorite Visual Studio 2010 Extensions
Now that Visual Studio 2010 has been released, there are a lot of extensions being written. In fact, as of today (May 1, 2010 at 15:40 UTC) there are 809 results for Visual Studio 2010 in the Visual Studio Gallery. If you filter this list to show just the free items, there are still 251 extensions available. Given that number (and it is currently increasing weekly) it can be difficult to find extensions that are useful. Here is the list of extensions that I currently have installed and find useful: ......

Posted On Saturday, May 1, 2010 11:04 AM

Microsoft StyleCop is now Open Source
I have previously talked about Microsoft StyleCop. For those that might not know about it, StyleCop is a source analysis tool (different from the static analysis that FxCop performs) that analyzes the source code directly. As a result, it focuses on more design (or style) issues such as layout, readability and documentation. In an interesting move (and one that I am happy to see), Microsoft has decided to make StyleCop an open source project (under the MS-PL license) available on CodePlex. (The project ......

Posted On Saturday, April 24, 2010 1:19 PM

Visual Studio, .NET Framework, and language versions
Every so often a question comes up about how Visual Studio, the .NET Framework, and a .NET programming language relate to each other. Mostly, these questions have to do with versions. The reality is that these are actually three different “products” that are versioned independently of each other but are related. Looking at how Visual Studio, the .NET Framework version, and the CLR versions relate to each other results in the following: Visual Studio CLR .NET Framework Visual Studio .NET (Ranier) ......

Posted On Friday, April 23, 2010 4:03 PM

String.IsNullOrWhiteSpace
An empty string is different than an unassigned string variable (which is null), and is a string containing no characters between the quotes (""). The .NET Framework provides String.Empty to represent an empty string, and there is no practical difference between ("") and String.Empty. One of the most common string comparisons to perform is to determine if a string variable is equal to an empty string. The fastest and simplest way to determine if a string is empty is to test if the Length property ......

Posted On Saturday, March 13, 2010 1:10 PM

Enum.HasFlag
An enumerated type, also called an enumeration (or just an enum for short), is simply a way to create a numeric type restricted to a predetermined set of valid values with meaningful names for those values. While most enumerations represent discrete values, or well-known combinations of those values, sometimes you want to combine values in an arbitrary fashion. These enumerations are known as flags enumerations because the values represent flags which can be set or unset. To combine multiple enumeration ......

Posted On Saturday, March 13, 2010 12:56 PM

Sams Teach Yourself C# 2010 in 24 Hours Facebook Page
For those of you who like/use Facebook, I have created a Facebook Fan Page for the book. I’ll try and keep this page updated with information about what’s going on with the book. Technorati Tags: Books,Sams Teach Yourself C# 2010 ......

Posted On Friday, February 26, 2010 10:28 PM

Sams Teach Yourself Visual C# 2010 in 24 Hours Available for Pre-Order on Amazon
Probably my fault for not actually checking this sooner, but my upcoming Sams Teach Yourself Visual C# 2010 in 24 Hours book is available for pre-order on Amazon.com. Technorati Tags: Books,Sams Teach Yourself C# 2010 ......

Posted On Friday, February 26, 2010 8:55 PM

Sams Teach Yourself Visual C# 2010 in 24 Hours
I am very happy to announce that the core content for my upcoming Sams Teach Yourself Visual C# 2010 in 24 Hours book is done! I still need to incorporate comments from Claudio and Eric (my technical editors) and then incorporate edits from the Sams editors, but all of the really hard work is now done. Even though I knew before starting that it would not be easy I don’t think I was really prepared for just how difficult it is to actually write a book. I started actually writing around mid-July 2009, ......

Posted On Thursday, February 25, 2010 5:15 PM

Microsoft MVPs on Twitter
Following last years post of people at MVP Summit 2009 on Twitter, I’m getting a bit of a head start and using the new Twitter Lists feature to create a list of all Microsoft MVPs that I know (or know of). I’ve started this list with the same people from last years blog post. The plan is for this list to be a complete list (or at least as complete as I can make it) of Microsoft MVPs. If you are an MVP and want to be included or if you know of any MVPs that should be included, please let me know. ......

Posted On Sunday, January 3, 2010 3:59 PM

Sams Teach Yourself Visual C# 2010 in 24 Hours
I have previously mentioned that I’m working on the upcoming Sams Teach Yourself Visual C# 2010 in 24 Hours book. Things are progressing nicely, if a bit slower than I’d prefer. I have the draft for the cover art, which looks really good. I’m also very pleased to announce my technical editors – Claudio Lasaala and Eric Lippert. Claudio is a Senior Developer at EPS Software Corp. He has presented several lectures at Microsoft events such as PDC and various other Microsoft seminars, as well as several ......

Posted On Thursday, November 5, 2009 10:01 PM

Professional Experience
Scott J Dorman [profile] Summary of Current Qualifications Software Development n Technical architecture/design/specifi... n Functional design/specifications n Design/Development methodologies n Reusable infrastructure API components and class libraries n Continuous Integration build systems n Application Development Management Programming Languages n C#, VB.NET, ASP.NET, ASP, HTML, DHTML, CSS, XML, XSL, XPATH, JavaScript, VBScript, InstallShield n CruiseControl.NET, NAnt, MSBuild, Team Foundation ......

Posted On Tuesday, October 20, 2009 9:43 PM

Visual Studio 2010 Beta 2
Visual Studio 2010 Beta 2 is now available for MSDN subscribers, and generally available on October 21. I haven’t had a chance yet to play around with it, but some of the CLR changes that are very exciting to hear about are: The new String.IsNullOrWhiteSpace method indicates whether a string is null, empty, or consists only of white-space characters. New overloads have been added to the String.Concat and String.Join methods that concatenate members of an IEnumerable<T> collections. The String.Concat<T> ......

Posted On Monday, October 19, 2009 1:09 PM

Interesting .NET Framework Statistics
I’ve been very “heads down” working on my upcoming book from Sams Publishing, Teach Yourself C# 2010 in 24 Hours, so I haven’t been blogging as much as I usually do. In doing some research for the book, I’ve been taking an in-depth look at the .NET Framework and thought I would share some interesting statistics. There are 18,435 total types in the .NET Framework 3.5 SP1, with 13,995 classes, 1,216 interfaces, 2,100 enums, and 1,124 structs. The complete breakdown is shown below. Of the 13,995 classes, ......

Posted On Sunday, September 20, 2009 8:15 PM

Premature optimization is the root of all evil
I’ve lost count how many times I’ve heard that quote. It’s a great quote said by one of the leading minds in computer programming and formal mathematics, Donald Knuth. The problem with this quote is that, like so many other things, people have only remembered (or only quote) a small portion of the entire thing. To read the full quote, you need to look at a paper published in December 1974 titled Structured Programming with go to Statements in Computing Surveys. The full quote is this (in reference ......

Posted On Friday, August 28, 2009 10:24 PM

Sams Teach Yourself C# 2010 in 24 Hours
I’m sure most of you are familiar with the Sams Teach Yourself books, at least in passing if not in owning one. I am very excited to announce that I will be joining the Sams Publishing authoring team for their upcoming Teach Yourself C# 2010 in 24 Hours book. This new edition will be quite a bit different from the previous editions since it will be much more language-focused and will take a more holistic view of the language. If you have already looked at one of the earlier editions and decided that ......

Posted On Friday, June 26, 2009 6:54 PM

Tampa Bay IASA June 2009 Meeting Reminder
Just a quick reminder that the June 2009 meeting is tonight from 6:30 PM - 8:30 PM (ET) at the Microsoft office. Please be sure to register so we have a good idea of how much pizza to order. Enterprise Architecture What is it? Why is it important? An overview of Enterprise Architecture as a discipline, its principles, methods, frameworks and tools. This session will explore the growing role and importance of enterprise architecture in the management of organizations. Speaker: Bob Otterberg is the ......

Posted On Thursday, June 25, 2009 8:39 AM

Windows 7 Bing Search Connector
Microsoft’s latest incarnation of it’s search engine, which has gone by a few different code names, is live a few days early. It’s still early, so it remains to be seen if Microsoft will be able to pull any search market share away from Google, but Bing looks like it may be a good start. The biggest difference is that Bing seems to offer better organization by putting the related searches list along the left side of the search results where you can see it without scrolling. It also provides a search ......

Posted On Monday, June 1, 2009 1:16 PM

Windows 7 Explorer Preview Pane
Windows 7 includes a lot of improvements in the Windows Explorer. Most of them are fairly obvious, but the new preview pane is likely to go unnoticed (or passed over as the same as Vista’s preview pane) by a lot of people. The new preview pane supports a much wider range of formats than the Windows XP and Windows Vista preview pane did, including the ability to preview HTML, text files, XML files, images, videos, music, and WordPad files without any additional software installed. If you have Microsoft ......

Posted On Saturday, May 16, 2009 5:18 PM

Windows 7 Search Connectors
Earlier I talked about the new Windows 7 Federated Search capabilities and mentioned that you can create your own Search connectors. Since then, I’ve been busy creating some search connector description files for the following sites: Geekswithblogs Live Search MSDN MSDN Blogs The Code Project Channel 9 Twitter All of these search connector descriptions are available from my SkyDrive Search Connectors folder. Technorati Tags: Windows 7,Federated Search,OpenSearch ......

Posted On Thursday, May 14, 2009 11:07 PM

Windows 7 Federated Search
Windows and the Windows Explorer have had search capabilities for a long time and they have gradually improved over the years. The one thing that was always lacking was an ability to search different contexts (or remote sources). There were some improvements with the Windows Desktop search, but I think the federated search capability in Windows 7 really gets it right. Federated search in Windows 7 introduces support to search different remote data stores using OpenSearch technologies and allows you ......

Posted On Thursday, May 14, 2009 7:01 PM

Windows 7 Tricks and Keyboard Shortcuts
I’ve been running Windows 7 RC for a little over a week now and can’t imagine going back to Vista at this point. I decided to start with a fresh install of Windows 7, so I’ve been in the process of reinstalling all of my applications and cleaning up my disk drives. In the process, I went searching to see if there are any interesting Windows 7 power toys or tricks available. While I didn’t find any power toys, I did discover that all of the Windows Vista tricks are still available on Windows 7. Tim ......

Posted On Sunday, May 10, 2009 9:28 PM

Microsoft Fix it Solution for Disappearing System Tray Icons on Windows Vista
About two years ago I talked about a very common problem in Windows Vista where the network, volume, and power icons in the system tray disappear. In that post, I provide a solution which involves editing the registry. Several people posted comments that provide slightly more automated ways to make the registry changes through a batch/command file and through a registry file. Jump ahead to today and Microsoft has a Fix it solution for this problem. Fix this problem Technorati Tags: Fix it,Vista,System ......

Posted On Monday, April 6, 2009 10:07 AM

Microsoft Fix it
It seems Microsoft has always had a love/hate relationship with consumers when it comes to support issues. When things are going well the general public loves Microsoft, but when things start going badly public opinion heads the same direction. For whatever reason, the Microsoft Help and Support website seems to be one of the last places a lot of people turn to for an actual resolution. One of the problems has always been that the solutions presented require more than simple knowledge about how to ......

Posted On Monday, April 6, 2009 9:55 AM

Upcoming Code Camps for the South East (April 2009 Update)
I’m trying to put together the list of upcoming code camps in the South East region. The plan is for this to be periodically (probably quarterly) updated so, if you are hosting a code camp (or know someone who is) in the South East, please let me know the date and website so I can include it in the list. (I’m also using this list to plan my speaking schedule, so if I don’t know about your code camp I can’t determine if it will fit my schedule.) I only know of a few, so if you know of others please ......

Posted On Saturday, April 4, 2009 12:12 PM

Florida Technical Communities (April 2009 Update)
Florida has a very active developer community. The biggest problem we seem to have is that all of these different groups usually don't know about each and there hasn't been a "centralized clearinghouse" listing all of the technical communities. Joe Healy, one of our Florida Microsoft Developer Evangelists, maintains a list and one-page flyers for each of the main areas in Florida. I think the eventual plan is that Joe will be updating his site to take advantage of the newer version of Live Maps and ......

Posted On Saturday, April 4, 2009 11:51 AM

New blog title
Ever since I started this blog it hasn't really had a title (or at least a subtitle) other than “blog”. Thanks to Stan Schultes, I now have a new subtitle. This was born out of watching the CLR 4 Futures talk with Joshua Goodman at MVP Summit 2009 (the majority of which is also available from the PDC 2008 site on Channel 9). Since I present a lot on .NET memory management, including a deep dive on how the GC works and how to properly implement IDisposable and the dispose pattern, he suggested the ......

Posted On Tuesday, March 3, 2009 7:47 PM

Code Contracts in .NET
I have previously talked about code contracts in .NET 4.0, and while .NET 4.0 isn’t out yet you can work with them now in Visual Studio 2008 through MSDN DevLabs. In case you aren’t familiar with code contracts in .NET, this is a feature that was actually built by the .NET CLR team to provide a language-agnostic way to express code assumptions in the form of pre-conditions, post-conditions, and object invariants. There are currently two tools provided: Runtime Checking, which uses a binary rewriter ......

Posted On Monday, March 2, 2009 6:44 PM

MVP Summit 2009 Twitters
If you’re at MVP Summit 2009 (or not at Summit) and trying to find people to follow I’ve started putting together a list of MVPs and Microsoft employees that I know who are here. Everyone should be using the #mvp09 hashtag for their tweets, so you can follow the conversations using #hashtags, Twitter Search, Twopular, TweetScan, or any other twitter search sites. If you want to be included in this list (or have updates to your information), leave a comment or message me on Twitter. Microsoft MVPs ......

Posted On Sunday, March 1, 2009 5:45 PM

Tampa Bay IASA February 2009 Meeting Reminder
Just a quick reminder that the February 2009 meeting is tonight from 6:30 PM - 8:30 PM (ET) at the Microsoft office. Please be sure to register so we have a good idea of how much pizza to order. Code Generation with T4 and Visual Studio Why write repetitive code when you can generate it? Learn about Text Template Transformation Toolkit (T4) - one of the best-hidden new features of Visual Studio 2008. T4 allows you to use simple ASP.NET-like template syntax to generate application source code, configuration ......

Posted On Thursday, February 26, 2009 10:44 AM

South Florida Code Camp 2009
I wanted to thank Dave and everyone else who helped coordinate the South Florida Code Camp this year. It was an excellent event and I believe the final number of attendees was a little over 700, which makes this the largest known code camp in the world. For those of you who attended my sessions, thank you as well. As I mentioned, the complete list of resources for my two-part memory management session is available as well as the blog posts that are related to my Code Style and Standards chalk talk. ......

Posted On Saturday, February 14, 2009 8:59 PM

Visual Studio 2008 Debugging – The Watch Window
The Watch window (actually there are four different Watch windows you can use) is easily the most powerful aspect of the Visual Studio debugger and the underlying technology it uses actually surfaces in several places: Watch Autos Locals Quick Watch “Data Tips” (the debugging tool tips that appear when you hover over a code element) The thing that most people might not realize is that you can actually call methods in the Watch window. This is useful because it allows you to see data structures that ......

Posted On Saturday, February 14, 2009 8:23 PM

Visual Studio 2008 Debugging – Advanced Tricks
We previously talked about the Location, Condition, Hit Count, Filter, and When Hit modifiers for breakpoints. These are great advanced breakpoints that will really make your debug sessions much more useful, but there are also some other advances in Visual Studio that go beyond these breakpoint modifiers. The first advance is the idea of advanced location breakpoints. How many times have you been debugging an issue and as you’re looking at the call stack you realize that you want to set a breakpoint ......

Posted On Saturday, February 14, 2009 6:45 PM

Visual Studio 2008 Debugging Tricks – Tracepoints
We have talked about the Location, Condition, Hit Count, and Filter modifiers for breakpoints which only leaves the When Hit modifier. Using the When Hit modifier allows you to change your breakpoint to a tracepoint. What is a tracepoint? Simply put, it is a breakpoint that continues execution. Why would this be interesting or even important? Tracepoints are great when you want to trace a particular path of execution, such as OnDeserialized events in your WCF DataContract classes. You are interested ......

Posted On Saturday, February 14, 2009 4:17 PM

Visual Studio 2008 Debugging Tricks – Multi-Threaded Debugging
We previously talked about the Location, Condition and Hit Count modifiers for advanced breakpoints. These are great for a lot of different debugging scenarios, but what about tricks specifically for debugging multi-threaded applications. If you have ever tried to debug a multi-threaded application you know that it isn’t always the easiest experience. Hopefully everyone is already familiar with the Treads window. If you aren’t, it is accessed through the Debug|Windows|Threads menu or the Ctrl+D, ......

Posted On Saturday, February 14, 2009 4:16 PM

Visual Studio 2008 Debugging Tricks – Advanced Breakpoints
The most basic aspect of any debugging session is the use of breakpoints, which allows you to specify a location in your application (a line of code) where program execution will stop (break) and allow you to inspect the internal state of the application at that exact moment. This is a pretty cool feature, but Visual Studio allows you to do even more with advanced breakpoints. Put simply, an advanced breakpoint is a breakpoint with one or more modifiers applied. A modifier allows you to change the ......

Posted On Saturday, February 14, 2009 4:16 PM

Windows 7 Product Lines Announced
Microsoft today announced the new product line for Windows 7. In some ways the new Windows 7 product line follows the same ideas of Windows Vista, but the big differences are that each Windows 7 edition is a superset of the previous edition (which means that each higher edition will have every feature of all lower editions) and they will be focusing primarily on two editions of Windows 7: Windows 7 Home Premium and Windows 7 Professional. The breakdown on the different editions is: Windows 7 Starter ......

Posted On Tuesday, February 3, 2009 3:01 PM

Fit in February Developer Challenge
I don’t know why or how I missed this earlier, but I just found out about the Fit in February Developer Challenge. After reading the official rules, which includes a brief explanation of why the challenge was started, I think this is an excellent way to entice us developers in to doing something to become more healthy. For my part, I’m going to start following the onehundredpushups program, which is a 6 week training program after which you should be able to do 100 consecutive pushups. I had completed ......

Posted On Sunday, February 1, 2009 3:47 PM

Adding custom assertions to MSTest
In my last post I talked about migrating from NUnit to MSTest and mentioned that there were some Assert methods that NUnit provided which did not have corresponding methods in MSTest. For reference, those unavailable Asserts are: Assert.IsNaN Assert.IsEmpty Assert.IsNotEmpty Assert.Greater Assert.GreaterOrEqual Assert.Less Assert.LessOrEqual Assert.IsAssignableFrom Assert.IsNotAssignableFrom CollectionAssert.IsEmpty CollectionAssert.IsNotEmpty StringAssert.AreEqualIgnori... StringAssert.IsMatch ......

Posted On Saturday, January 31, 2009 9:10 PM

Migrating from NUnit to MSTest
I have been writing a lot of unit tests over the past month using the Microsoft Test (MSTest) unit testing framework that is now part of Visual Studio 2008 Professional Edition (and higher SKUs). Currently I have about 223 unit tests covering 39 classes (about 18K lines of code, 325 methods and 176 properties) with a code coverage percent of 97%. The classes that I’m testing previously had NUnit tests (although not as many as I currently have) and used NCover and NCover Explorer for my code coverage ......

Posted On Saturday, January 31, 2009 12:39 PM

Upcoming Code Camps for the South East
I’m trying to put together my speaking schedule for upcoming code camps in the South East region. Right now I just want to know when the upcoming code camps are so I can determine which ones might best fit my schedule. I only know of a few, so if you know of others please let me know. Date Title Speaking? 1/24/2009 New England Data Code Camp4 N 1/31/2009 Alabama Code Camp1 N 2/6/2009 South Florida Code Camp Y 3/7/2009 Roanoke Code Camp N 3/14/2009 Atlanta Code Camp2 N 3/28/2009 Orlando Code Camp3 ......

Posted On Tuesday, January 20, 2009 12:19 AM

How to unit test this code?
This question is for all of the TDD and unit test folks, so I’m hoping someone comes up with an answer. I’ve been writing unit tests and analyzing code coverage for one of my libraries for about a week now and I’m starting to see the end, at least for this particular library. However, I’ve run in to a problem trying to ensure as close to 100% code coverage as possible. This exists in several methods in a few different classes, but I’ll take the simplest one for illustration purposes. I have cod that ......

Posted On Saturday, January 17, 2009 10:35 PM

Unit Testing and Expected Exceptions
When writing unit tests that cover methods that can throw known exceptions, you generally want to make sure that your tests actually test the conditions that can cause the exception and that you do, in fact, throw the correct exception. Most unit test frameworks, including MSTest and NUnit, use an ExpectedExceptionAttribute to decorate the test method. There are actually several problems with using ExpectedExceptions that make it more difficult to write good unit tests. The first problem is the fact ......

Posted On Saturday, January 17, 2009 1:20 PM

Microsoft Test and Code Coverage
I have been writing a lot of unit tests lately using Microsoft Test. This included converting a bunch of old NUnit tests to the MS Test format, which was relatively painless. While examining the code coverage results (after all, what good are unit tests if you don’t know what portions of the code are being tested and not tested), I have noticed that the results sometimes lie. For example, I have a class that contains some extension methods for manipulating enums. One of those methods takes an enum ......

Posted On Saturday, January 17, 2009 12:30 PM

TweeTube – Video Sharing for Twitter
There are a lot of different sites available for sharing pictures on Twitter, but it seems like there are very few that allow you to easily share videos. All of that has changed with the launch today of TweeTube. TweeTube bills itself as being “The easiest way to share videos on Twitter” and from what I’ve seen so far, it is. You can search YouTube for videos with matching keywords, or if you already know the video you can paste the URL. After you find the video (in this case I am sharing a video ......

Posted On Tuesday, January 13, 2009 8:33 PM

Florida Technical Communities (January 2009 Update)
Florida has a very active developer community. The biggest problem we seem to have is that all of these different groups usually don't know about each and there hasn't been a "centralized clearinghouse" listing all of the technical communities. Joe Healy, one of our Florida Microsoft Developer Evangelists, maintains a list and earlier this year started putting together one-page flyers for each of the main areas in Florida. I think the eventual plan is that Joe will be updating his site to take advantage ......

Posted On Tuesday, January 13, 2009 3:09 PM

Some Clarifications on my Los Techies blog
It seems there has been some confusion and concern over my decision to also blog on the Los Techies website that I wanted to clarify. The most important point I want to make is: For those of you who subscribe to my blog hosted on Geeks With Blogs (http://geekswithblogs.net/... there is no need to also subscribe to my Los Techies blog. My primary blog will continue to be here on GWB and all new posts will show up here first. What that means is that anything I blog here will eventually make its ......

Posted On Tuesday, January 13, 2009 3:02 PM

Now blogging on Los Techies
A few days ago I was invited by the Los Techies website to start blogging with them. Have no fear, I am not abandoning my home here on Geeks With Blogs, but I will be cross-posting between GWB and Los Techies. I haven’t finished setting everything up yet, but I’ve already put a few posts out there. Be sure to check out the site. It looks to be a young but thriving online community and I’m looking forward to seeing where they take things. Technorati Tags: LosTechies ......

Posted On Saturday, January 10, 2009 5:19 PM

Reading all bytes from a Stream
I was working on some Stream extensions today and added a method which will read all of the data from a stream in to a byte array. Some of the classes which derive from Stream provide a similar method (MemoryStream, for example, provides a GetBuffer() method to do this). The drawback here is that the base Stream class doesn’t provide an abstract GetBuffer() method; instead it’s up to each individual derived class to implement such a method. This is perfectly reasonable as a stream may not have an ......

Posted On Saturday, January 10, 2009 3:24 PM

XML Comments: filterpriority
I am a big fan of using XML comments in code and actually have a few Visual Studio macros which allow me to “inherit” the documentation from an overridden member. Every once in a while, I end up pulling in a comment with a filterpriority XML tag. This tag is very prevalent in the BCL but I have never been able to find documentation on what it actually means. To see what I mean, let’s take a look at part of the definition for System.Object. In the XML comments, you will see that the class itself has ......

Posted On Thursday, January 8, 2009 8:55 PM

StyleCop – Some Constructive Criticism
It’s been a while since I last talked about StyleCop. I’ve been using it a lot recently on an internal project of mine and have come to really like the idea behind the tool. After using it extensively over the last few days, however, I think there are a few glaring omissions and features that need to be implemented before this tool can become truly useful. The first issue that I ran in to was the sheer volume of violations reported. In an effort to try and trim down the violations to a workable number, ......

Posted On Wednesday, December 31, 2008 7:29 PM

More on .NET 4.0 Code Contracts
Last month I talked about Code Contracts, which are one of the new features in .NET 4.0. Earlier today I was digging around in .NET Reflector looking for something totally unrelated when I came across the Microsoft.Contracts namespace in System.Core. Looking at the Contract class reveals some custom exception types and a bunch of static methods that look surprisingly similar to what will be available in the CodeContract class in .NET 4.0. What does this mean? It means that Microsoft internally was ......

Posted On Wednesday, December 10, 2008 1:36 PM

Windows Vista Service Pack 2
Windows Vista Service Pack 2 Beta is now available for public download on MSDN and TechNet. This is a combined update for Windows Server 2008 and Windows Vista Service Pack 1. This will be the first service pack for Windows Server 2008 since it shipped and includes a lot of performance improvements for WS08. Did you notice that I specifically said Windows Vista Service Pack 1? That’s correct, if you want to install this service pack on Vista, you must first have SP1 installed. That means that SP2 ......

Posted On Friday, December 5, 2008 12:21 AM

Tampa Code Camp Sessions
Tampa Code Camp is this weekend and I’m presenting 3 sessions: Understanding Lambda Expressions Lambda expressions are an integral part of LINQ and a powerful new feature of .NET 3.0. We will explore the history of lambda expressions and how they operate in .NET, and how they can dramatically simplify your code.Lambda expressions are an integral part of LINQ and a powerful new feature of .NET 3.0. Memory Management Fundamentals – Garbage Collection Deep Dive Memory management in .NET is one of the ......

Posted On Tuesday, December 2, 2008 8:28 PM

.NET Lambda Expressions – Resources
I present at a lot of the local Florida code camps (and some out of state ones as well) and have a presentation that focuses on understanding Lambda expressions in .NET. This is not an exhaustive list, but it is a subset of the books, articles, blogs, and presentations that I used to form the content of my presentation. Books Essential C# 3.0: For .NET Framework 3.5 (2nd Edition) (Microsoft .Net Development Series) (Paperback) (Mark Michaelis) The C# Programming Language (3rd Edition) (Microsoft ......

Posted On Friday, November 28, 2008 11:58 AM

Silverlight 3
Silverlight 2 was just released a few short months ago, but ScottGu is already providing hints at what we will see in Silverlight 3 which is supposed to be out sometime next year and will be a major update. Some of the major enhancements and improvements are: media enhancements (including H.264 video support) graphics improvements (including 3D support and GPU hardware acceleration) application development improvements (including richer data-binding support and additional controls) To go along with ......

Posted On Sunday, November 23, 2008 12:51 PM

Generics in C#
Generics in C# have been around for a while (the concept of generics has been around even longer) but there are still a lot of developers who don’t have a good understanding of what they are or how to use them. Looking at the direction C# 4.0 is taking, generics are becoming more and more important and if you don’t make them a natural part of your programming tool belt you are going to find yourself falling behind the curve. Karl Seguin at CodeBetter.com has an excellent post that explains generics ......

Posted On Sunday, November 23, 2008 12:20 PM

Tampa Code Camp
Tampa Code Camp is coming up in just two weeks, so be sure to register now if you plan to attend. The speaker bios and full agenda haven’t been published yet, but the list of sessions is now available. If you’re going, be sure to check out my sessions: Coding Style and Standards (chalk talk) Code standards and styles are one of those topics that you either love or hate. Join your fellow developers as we talk about what our experiences have been, what worked, what didn't, and why having them is a ......

Posted On Sunday, November 23, 2008 11:57 AM

Windows Mobile 6.5
A few months ago, Motorola mentioned Windows Mobile 6.5 in an earnings call: "Windows Mobile 6 has not delivered the experience that I think Apple has been able to deliver, but as you look at the plan that Windows Mobile 7 and even 6.5, I think there are significant new added features which will help the platform." This sparked the fuel under the rumor mill, but apparently the rumors have now been confirmed by Steve Ballmer: With releases we'll make this year - releases we'll make with 6.5 next year, ......

Posted On Sunday, November 23, 2008 11:48 AM

Test Driven Development Firestarter
Event Date: Saturday, January 19, 2009 Event Time: 08:30 (registration), 09:00 – 17:00 Event Location: Microsoft Tampa Office If you want to learn what TDD is all about, this is the event to attend. It’s a day-long event where you will go from start to finish with a sample domain problem and learn how to write tests to drive functionality of the system. This promises to be an excellent event and will be good for both beginners and those experienced with TDD. There will be two tracks running simultaneously, ......

Posted On Sunday, November 23, 2008 11:39 AM

CodeRush Xpress for C#
Developer Express, the makers of CodeRush, have teamed up with Microsoft to make a scaled down version available for free called CodeRush Xpress. This is exclusively for C# developers working in Visual Studio 2008 and includes a selection of hand-picked features from CodeRush and Refactor! Pro. A few important things to point out are that CodeRush Xpress: does not support the Visual Studio Express Editions cannot be installed side-by-side with other CodeRush or Refactor! editions There are about ......

Posted On Sunday, November 23, 2008 11:07 AM

C# 4.0: New Features Whitepaper
I’ve blogged a lot about the new features available in C# 4.0 recently, with each feature getting a dedicated blog post. Mads Torgersen, a C# PM and member of the C# design team, together with other members of the C# team have created a document that outlines the new features in C# 4.0. This whitepaper, combined with Anders’ PDC talk is one of the best ways to get a good overview of what’s coming. There are also a set of C# 4.0 samples available which demonstrate how to use the new language features: ......

Posted On Sunday, November 23, 2008 10:55 AM

Anders Hejlsberg on C# 4.0
If you attended PDC hopefully you had a chance to hear Anders’ talk on C# 4.0; if not you can watch it on Channel 9. During that talk, one of the primary new features he focused on was the new dynamic keyword and all of the new features that come along with it. Building on that talk, Anders and C# Community PM Charlie Calvert talk about questions that have come up in the community about what the new dynamic features mean. Technorati Tags: C# 4.0, dynamic ......

Posted On Sunday, November 23, 2008 10:45 AM

Brown Bag Lunches
A while ago, Andy Warren of SQL Server Central asked if brown bag lunches/training worked. His answer was: …now to the question - do they work? I've tried it when I was managing, and sadly, it didn't work. I disagree with Andy on this one, but to be fair I understand his points and they are all valid. To make sure everyone has the same understanding of what we’re talking about, here is Andy’s definition of a brown bag lunch: I'll define a brown bag lunch as a training event held at lunch time where ......

Posted On Sunday, November 23, 2008 10:37 AM

Windows Live Sync replacing FolderShare
I have talked about both Windows Live FolderShare and Windows Live Sync in the past. In fact, the last time I talked about Live Sync it was to say that it was FolderShare rebranded. Starting next month, Microsoft will be officially announcing Windows Live Sync, which you can think of as FolderShare 2.0. It will look familiar and offer the same features as FolderShare, plus: More folders and files—sync up to 20 folders with 20,000 files each. Integration with Windows Live ID—no more extra sign-in ......

Posted On Sunday, November 23, 2008 9:52 AM

Tampa Bay IASA November 2008 Meeting Reminder
Just a quick reminder that the November 2008 meeting is tonight from 6:30 PM - 8:30 PM (ET) at the Microsoft office. We are very pleased to be holding this meeting in cooperation with the Central Florida BizTalk User Group. Since this is a joint meeting, please be sure to register so we have a good idea of how much pizza to order. Our speaker tonight is Danny Del Rio, a Senior Applications Architect specializing in enterprise integration. He brings extensive experience in various fields including ......

Posted On Thursday, November 20, 2008 11:12 AM

C# 4.0: Dynamic Programming
If C# 3.0 was all about Language Integrated Query (LINQ), then C# 4.0 is all about dynamic programming. What exactly does that mean? It means that C# 4.0 brings some of flexibility and declarative style of programming to C#. But what does that really mean? To sum it up in one keyword: dynamic. C# 4.0 is adding a new dynamic keyword which is used as a data type in much the same way the var keyword is used. Why is this important? The biggest reason is that it allows a C# program to use dynamic dispatch ......

Posted On Sunday, November 16, 2008 10:11 AM

Framework Design Guidelines, 2nd Edition
Those of you who know me know that I am a big proponent of code style and standards. One of the best resources I have found for documenting a clear and thorough set of code standards is the Framework Design Guidelines book by Brad and Krzysztof. The book was recently updated for the new language features in the .NET Framework 3.0 and 3.5 releases. Some of the existing guidelines have been expanded with new annotations and more detail, and new guidance covering such features as extension methods and ......

Posted On Saturday, November 15, 2008 10:41 PM

Tampa Code Camp 2008
Normally the Tampa Code Camp has already come and gone by this time of the year. This year, however, it’s being held on December 6. The official website and list of sessions has not been published, but it should be available soon. Be sure to register now if you plan to attend. Last year attendance was capped at 600 and we’re in a different location this time so I don’t know what the limit will be. When & Where: Saturday, December 6, 2008 Kforce Corporate Headquarters 1001 East Palm Avenue Tampa, ......

Posted On Saturday, November 15, 2008 9:12 AM

MSDN Developer Conference: The Best of PDC 2008
Did you miss PDC this year? Don’t want to watch the recorded sessions? Then register today for an MSDN Developer Conference near you! The MSDN Developer Conference (MDC) brings you the best content of the PDC presented by your local field evangelists and community influentials (mostly Microsoft MVPs). The conference is broken down in to 3 tracks: Azure Services Platform Client and Presentation Tools, Languages, and Framework The MDC is a one-day “best of” conference that costs $99.00. If you didn’t ......

Posted On Saturday, November 15, 2008 8:41 AM

CLR 4.0: Native-Managed Interoperability Improvements
Exposing a native application to a managed application hasn’t always been the easiest experience. The good news is that there are some significant improvements in the interoperability story between native and managed code. In the current versions of the .NET Framework, the process starts with running the tlbimp tool to create an interop assembly. The problem here is that tlbimp doesn’t always get everything right so you have to fix the assembly by running ildasm and then hand modify the IL or write ......

Posted On Monday, November 10, 2008 11:20 AM

CLR 4.0: In Process Side-by-Side CLR Hosting
The CLR is the core set of APIs that make up the .NET Framework. Each release of the CLR has added functionality, with the most functionality being added in the .NET 3.0 and .NET 3.5 releases. These releases used a “layer cake model” This model works reasonably well for solving application compatibility issues but does restrict the kinds of functionality that can be added. The other problem with this approach is that the hosting process (any application that hosts an instance of the .NET Framework ......

Posted On Monday, November 10, 2008 10:43 AM

CLR 4.0: Managed Languages
Over the years .NET has been a great platform for multiple languages, and actually launched with support for 16 different languages. Up until recently, however, it has been difficult (but not impossible) to create functional and dynamic languages for .NET. With the release of CLR 4.0, Microsoft is officially releasing IronPython, IronRuby, F#, and several other functional or dynamic languages. In order to do this, the CLR is gaining support for a few language features that are common in these types ......

Posted On Monday, November 10, 2008 10:26 AM

Tampa Bay IASA – Upcoming Meetings
All of the meeting times from now through the end of 2009 have been published on our meeting registration page. The topics for the 2009 meetings have not been finalized yet…so if you are interested in speaking please let me know. Online Event Registration - Powered by www.eventbrite.com ......

Posted On Saturday, November 8, 2008 9:56 AM

CLR 4.0: Corrupted State Exceptions

This post has been moved.

Posted On Friday, November 7, 2008 3:19 PM

CLR 4.0: Debugging Improvements
Debugging in .NET 4.0 has become a bit easier as well thanks to better support for dump debugging through Visual Studio. This means that dump debugging now has support via ICorDebug, which is the same API that is used to enable live debugging and will also allow you to debug Windows Error Reporting mini-dumps in Visual Studio. If you develop 64-bit applications, 64-bit mixed-mode debugging now supports both live and dump debugging. There are also new APIs to do lock inspection, which allows you to ......

Posted On Friday, November 7, 2008 3:05 PM

CLR 4.0: Code Contracts
If anyone is familiar with the Microsoft Research (MSR) project Spec# you will be familiar with the idea of contract based programming. CLR 4.0 takes the idea of contract based programming (and more specifically code contracts to ensure code validity) from Spec# and adds it to the CLR. This now means that code contracts are available to any .NET language. The premise behind code contracts is that you (the programmer) know a lot about your code, including when input arguments should and shouldn’t ......

Posted On Friday, November 7, 2008 2:58 PM

CLR 4.0: Garbage Collection Changes
The .NET garbage collector is one of the areas of the .NET Framework that is extremely important and probably one of the least understood. There are a lot of articles written about it and there have been very few changes since .NET 1.0 was first released. (There have been changes with almost each release, but they have been relatively minor.) With .NET 4.0, however, there are some fairly substantial changes to the GC that will have some interesting performance implications (in a good way). For a ......

Posted On Friday, November 7, 2008 2:37 PM

Sushi Geek Dinner @ PDC 2008
If you like sushi and are attending PDC 2008 in Los Angeles, then join us for some great sushi and networking Wednesday night. If you're attending The Underground @ PDC, be sure to join us since Oomasa (in Little Tokyo) is only a few blocks away. The registration is free, but the sushi isn't. Prices, however are very reasonable. Technorati Tags: PDC, Geek Dinner ......

Posted On Sunday, October 26, 2008 9:32 PM

Microsoft PDC Mobile
A few days ago Microsoft announced that the PDC website was going mobile. Go to: http://m.microsoftpdc.com/ for the PDC mobile experience. I think it’s great that you can get the agenda and sessions on your phone, but what is sorely lacking is the ability for me to log in and get my sessions. That would have really been useful. Technorati Tags: PDC ......

Posted On Saturday, October 25, 2008 10:47 AM

Getting Ready for PDC 2008
PDC 2008 starts in a few days. I’ve setup a preliminary schedule already, but, as always, it’s subject to change once I get there. It will be good to see the early bits for Windows 7, including a Windows 7 Application Compatibility Lab. I’m staying at the Grand Kyoto Hotel, near Little Tokyo. If anybody wants to catch up and grab some sushi, let me know. Technorati Tags: PDC ......

Posted On Friday, October 24, 2008 11:20 PM

New .NET Logos
Just in time for PDC, Microsoft has unveiled new logos for the .NET Framework. According to Chris Keonig’s blog post about the new logos, the change was made because We [Microsoft] needed a logo that was in sync with the key values that we want .NET to stand for: consistency, robustness and great user experiences. We also wanted a logo that conformed to the design principles that are driving Microsoft’s brand identity evolution and is reflected in newer brands such as Silverlight, Surface and more. ......

Posted On Friday, October 24, 2008 11:06 PM

Reminder: October 2008 Tampa Bay IASA Meeting
Just a reminder that the Tampa Bay IASA October meeting is tonight starting at 6:30 PM. "Fix the Architecture" - Open Discussion We have a great group of members with a variety of experience, so bring your architecture problems and leverage those experiences and creativity to help solve them. This is an open discussion format and depending on how many people we have and how many problems we may split up into small groups or try to solve problems one at a time. Please bring your topics to discuss. ......

Posted On Thursday, October 23, 2008 3:38 PM

PDC 2008 Schedule Builder is live
Not sure when this became live, but the schedule builder for PDC 2008 is now available. This is very different from the schedule builder tools of the past and is considerably easier to work with. As you can see, the schedule is presented as a daily calendar. Each column is a timeslot (showing only the starting time) which shows all of the sessions available. You can filter the list of sessions by clicking the appropriate tags. Underneath the calendar view is the list of sessions and the session details. ......

Posted On Friday, October 17, 2008 1:52 PM

Tampa Bay IASA – November 2008 Meeting
We are very pleased to be holding this meeting in cooperation with the Central Florida BizTalk User Group. Enterprise Application Integration (EAI) using BizTalk Server 2006R2 Enterprise Application Integration (EAI) using BizTalk Server 2006R2. Microsoft BizTalk Server 2006 R2, the latest version of BizTalk, is an exciting tool that all .NET application developers should know about. BizTalk fills two key business needs: enterprise application integration, and business process automation. This session ......

Posted On Friday, October 10, 2008 1:15 PM

Tampa Bay IASA - October 2008 Meeting
"Fix the Architecture" - Open Discussion We have a great group of members with a variety of experience, so bring your architecture problems and leverage those experiences and creativity to help solve them. This is an open discussion format and depending on how many people we have and how many problems we may split up into small groups or try to solve problems one at a time. Please bring your topics to discuss. We also have a backup topic of Tips for Performance in a Web Architecture. When & Where: ......

Posted On Friday, October 10, 2008 1:00 PM

Reminder: September 2008 Tampa Bay IASA Meeting
Just a reminder that the Tampa Bay IASA September meeting is tonight starting at 6:30 PM. SharePoint Architectural Perspectives While SharePoint does have the one-button install option, it isn't a monolithic application that just gets dropped on a server. SharePoint has a number of moving pieces that should be understood by both infrastructure and application architects. In this session, we'll review the architectural makeup of SharePoint's infrastructure, as well as the components of a custom SharePoint ......

Posted On Thursday, September 25, 2008 9:26 AM

Visual Studio Macro to Collapse Extra Vertical Space
A few days ago in one of the CodeProject disucssion forums someone was looking for a way to easily remove the extra vertical whitespace in a file. This is really handy if you copy and paste code from the web or otherwise have a file that has multiple consecutive blank lines that you want to consolidate to a single blank line. A solution was presented that used a Visual Studio macro, but that macro used pattern matching with find and replace, so it didn’t feel very stable. Taking the opportunity to ......

Posted On Thursday, September 18, 2008 12:06 PM

StackOverflow
Stackoverflow is an interesting new community site launched by Jeff Atwood and Joel Spolsky that just went into public beta yesterday. Jeff has a pretty interesting explanation of what the site is all about: Stackoverflow is sort of like the anti-experts-exchange (minus the nausea-inducing sleaze and quasi-legal search engine gaming) meets wikipedia meets programming reddit. It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming ......

Posted On Thursday, September 18, 2008 10:43 AM

Windows Live Sync
I have talked about Windows Live FolderShare in the past and have always really liked what it offers. As part of the new Windows Live Wave 3 release, although not an official part of the release yet, is the fact that FolderShare is being renamed and rebranded as Windows Live Sync. As I said, its not part of the beta releases today, but you can download the beta if you want an early look. This is looks like it is still an early beta, so a lot of features don’t appear to be working and I can’t get ......

Posted On Thursday, September 18, 2008 10:26 AM

Windows Live Wave 3 Beta Downloads
The beta downloads for the new Windows Live Wave 3 applications are here. This includes new versions of: Messenger Mail Writer Photo Gallery Movie Maker Toolbar Family Safety Microsoft Office Outlook Connector To give you an idea of what’s new in some of the products: The look and visible features have been updated in all of the products, but the ones that are most noticeable are Messenger, Writer, and Mail. There are a lot of new features in Messenger, but some noticeable ones are that “Shared Folders” ......

Posted On Thursday, September 18, 2008 10:07 AM

.NET Memory Management – Resources
I present at a lot of the local Florida code camps (and some out of state ones as well) and have a set of presentations that I do which focus on .NET memory management, specifically a "deep dive" on how the GC works and another presentation which talks about how to implement the Dispose pattern properly. I was doing some additional research today to update my list of resources in the presentations and decided to publish that list here as well. This is not an exhaustive list, but it is a subset of ......

Posted On Sunday, September 14, 2008 4:16 PM

Southwest Florida Code Camp
It looks like the first code camp to be held in the “swamp coast” of Southwest Florida was a huge success. I think John and the rest of the crew that put this together did an excellent job. I haven’t heard final numbers yet, but they had 175 registered with 26 sessions and a morning of Open Space sessions. As always, I presented two sessions on .NET Memory Management (thank you to the handful of people that attended and apologies for doing the sessions in the opposite order to how they were listed ......

Posted On Sunday, September 14, 2008 4:15 PM

Tampa Bay IASA – September 2008 Meeting
SharePoint Architectural Perspectives While SharePoint does have the one-button install option, it isn't a monolithic application that just gets dropped on a server. SharePoint has a number of moving pieces that should be understood by both infrastructure and application architects. In this session, we'll review the architectural makeup of SharePoint's infrastructure, as well as the components of a custom SharePoint solution. A thoughtfully-designed SharePoint architecture can be the difference between ......

Posted On Sunday, September 14, 2008 12:08 PM

Differences between release types
Phil has an excellent post that builds on Jeff Atwood’s explanation which very clearly describes the differences between the various release types: Beta CTP Daily Builds/Interim Releases Fully Supported Out-of-Band Releases RTM/RTW Releases Service Pack Releases Summarizing what both Phil and Jeff said: Alpha: The software is complete enough for internal testing. This is typically done by people other than the software engineers who wrote it, but still within the same organization or community that ......

Posted On Saturday, August 30, 2008 2:15 PM

Team Foundation Server – How Does Microsoft Use It?
If you’re looking at implementing Team Foundation Server, looking for ways to improve your deployment, or just want to know how one of the world’s largest software companies manages their day-to-day development, check out this “series” of blog posts. These are good posts from a management/process level perspective: Applying Value Up at Microsoft (Sam Guckenheimer) 60-minute-webcast Scenarios, Value Props, Experiences, Features Managing work for Team System (Jeff Beehler) Internal TFS Usage: Tracking ......

Posted On Saturday, August 30, 2008 1:31 PM

StyleCop 4.3 SDK
Not too long ago I mentioned that StyleCop 4.3 had been released and that the SDK documentation would be out shortly. The wait is over and the SDK documentation is now available. The documentation covers the following sections: Writing Custom Rules for StyleCop Integrating StyleCop into Build Environments StyleCop API Reference I’m looking forward to finding some time to sit down with the SDK and see what kind of custom rules I can write. Technorati Tags: StyleCop ......

Posted On Saturday, August 30, 2008 12:01 PM

CodePlex Usability Study
If you want to help provide feedback for the next big features at CodePlex and will be in Redmond (Seattle) between September 16 – 19, be sure to contact the CodePlex team to participate in some usability studies. Be sure to include your: Name CodePlex username (if you have one) Phone number where we can contact you to schedule a time. I would love to participate as I have a few projects on CodePlex and spent a great deal of time talking with the team at this years MVP Summit, but unfortunately I’m ......

Posted On Saturday, August 30, 2008 11:51 AM

FxCop 1.36 RTM
I have always been a huge fan of FxCop, especially FxCop 1.36 even though it was a beta release for a long time. I’m happy to say (a bit late) that FxCop 1.36 has finally been released. Some of the improvements are: 200+ bug fixes that reduce noise, missing analysis and rule crashes Support for analyzing anonymous methods and lambda expressions New option for skipping analysis over tool generated code Spell checker libraries now ship in the box Changes in the way references are resolved and located ......

Posted On Saturday, August 30, 2008 11:46 AM

Check In Early, Check In Often
Jeff Atwood talks about what he considers the “Golden Rule” of source control: Check in early, check in often. For Jeff, it seems, going more than 1 day without checking in code is too long and will cause integration headaches down the road. I completely agree with this sentiment, and the idea of not going dark, up to a point. Where Jeff's arguments start to fail is long-running development tasks that have large (or fundamental) impact on an existing code-base, particularly one that is heavily used. ......

Posted On Saturday, August 30, 2008 11:32 AM

Axialis IconWorkshop Lite
Axialis Software and Microsoft worked to create a free Visual Studio add-in to create an icon editing tool that allows you to create high-quality 256x256 PNG-compressed icons for Windows Vista. The editing experience, both inside and outside Visual Studio, is very easy to use and provides various tools, filters, and effects, as well as the ability to create icons from existing images or ready-to-use image objects. *IMPORTANT: Axialis IconWorkshop™ Lite installs ONLY if Visual Studio® 2008 Professional ......

Posted On Saturday, August 30, 2008 11:03 AM

Document Map Margin in Visual Studio
Earlier this month Charlie Calvert introduced a potential new feature called Document Map Margins (DMM). The idea behind DMM is to make it easier for you to find and track important features in your code by visualizing the entire file. Overall I like the idea of DMM as it can really provide you with good contextual information, particularly for really large files. While DMM isn’t here now, a very similar tool is. I came across this tool mentioned by ScottHa in this post. What RockScroll does is to ......

Posted On Saturday, August 30, 2008 10:51 AM

Visual Studio Optimizations
There are always a lot of posts about various add-ins, code snippets, macros, and other utilities that are designed to make you, the developer, more productive within Visual Studio as an editing environment. However, there seem to very few posts that talk about how to actually improve the performance of Visual Studio itself. Browsing through some of the questions on Stack Overflow, I came across a thread asking this very question. There were a lot of non-answers, but one that definitively listed ......

Posted On Thursday, August 28, 2008 3:04 PM

Reminder: August 2008 Tampa Bay IASA Meeting
Just a reminder that the Tampa Bay IASA August meeting is tonight starting at 6:30 PM. Web Service Software Factory Modeling Edition The Web Service Software Factory (WSSF) Modeling Edition focuses on building the server side of a web services infrastructure, using either ASMX or WCF services. The new release uses three Domain Specific Languages (DSLs) to model services: service contract, data contract and host models. Through use of these DSLs, WSSF helps developers construct a scalable, extensible ......

Posted On Thursday, August 28, 2008 11:08 AM

Jacksonville Code Camp 2008 Presentations
For those of you attending the Jacksonville Code Camp 2008, the presentations for my sessions are available on my public Windows Live SkyDrive folder. My sessions are: Memory Management Fundamentals – IDisposable and the Dispose Pattern 8:30 AM– 9:30 AM Code Styles & Standards (Open Space/Chalk Talk) 9:40 AM – 10:40 AM Memory Management Fundamentals – Garbage Collection Deep Dive 2:15 PM – 3:15 PM Unfortunately, it looks like most of the sessions that I want to see are at the same time as mine, ......

Posted On Saturday, August 23, 2008 1:43 AM

Visual Studio and Code Analysis
Even with the newest releases of StyleCop, FxCop, and Visual Studio 2008, there is still a lot of room for improvement in the suite of technologies and products that make up what should probably be termed “Microsoft Source Analysis”. I know that calling StyleCop that name caused a lot of confusion since it was being compared to the built-in source analysis features of Visual Studio (at least the Team Edition SKUs of Visual Studio). I think the real heart of the problem is that Visual Studio comes ......

Posted On Tuesday, August 19, 2008 1:04 PM

StyleCop 4.3 Released
A while ago I talked about a new tool from Microsoft called StyleCop. Since then, there was a lot of confusion surrounding the tool and it has undergone a lot of changes both internally and externally. Both Jason and Brian do an excellent job explaining the context behind some of the discussions and decisions leading up to these changes, but the biggest one is that the tool has been officially renamed as “StyleCop” to prevent any confusion with the built-in Visual Studio Code Analysis packages. I’m ......

Posted On Tuesday, August 19, 2008 10:25 AM

Jacksonville Code Camp IV – Hotel and Weather Information
For any one who is going to the Jacksonville Code Camp 2008 (Jax Code Camp IV) and is traveling be sure to keep an eye on the weather and on tropical storm Fay. It is supposed to be hitting Florida as early as Tuesday, but the forecasts don’t yet know exactly where. If you book a hotel through Hotwire (the only 4-star listed on Hotwire for downtown Jacksonville is the Hyatt) be sure to purchase the travel protection (it’s only about $8) since it covers natural events like hurricanes. Otherwise, you ......

Posted On Monday, August 18, 2008 12:25 AM

Southwest Florida Code Camp
Another Florida Code Camp, this time in Southwest Florida (which is the Naples area). This is the first code camp for Southwest Florida, so be sure to register. When you register, you can sign up as a speaker as well if you want to get more involved in the community…speaking at Code Camp is a great way to get started as a speaker. I’ll be there speaking and possibly attending some sessions as well, depending on when things get scheduled. Here are the details: When: September 13, 2008 - 8:00am to ......

Posted On Wednesday, August 13, 2008 3:04 PM

Subtext 2.0
Phil just announced that Subtext 2.0 is finally out. I haven’t been very active on this release (sorry guys!) but with the plans for 3.0 starting up I will be getting back into things a bit more. The new 2.0 release looks really good and includes some new features and bug fixes that will be nice to have. Now, we just need to convince Jeff and company to upgrade. Some of the improvements are: Enhanced MetaWeblog and WordPress API implementations New CSS-based admin section The ability to set a separate ......

Posted On Sunday, August 10, 2008 8:56 PM

Tampa Bay IASA – August 2008 Meeting
Web Service Software Factory Modeling Edition The Web Service Software Factory (WSSF) Modeling Edition focuses on building the server side of a web services infrastructure, using either ASMX or WCF services. The new release uses three Domain Specific Languages (DSLs) to model services: service contract, data contract and host models. Through use of these DSLs, WSSF helps developers construct a scalable, extensible web service framework from the service interfaces to the translation of domain data ......

Posted On Sunday, August 10, 2008 11:20 AM

Windows Vista UX Guidelines and Visual Studio
Whether you like Vista or not, the user interface aspects of the operating system are here to stay. Overall, I think Microsoft did a good job with the core interface guidelines, as presented in the Windows Vista User Experience Guidelines. From the guidelines, The goals for these official Windows Vista® User Experience Guidelines (or "UX Guide" for short) are to: Establish a high quality and consistency baseline for all Windows Vista-based applications. Answer your specific user experience questions. ......

Posted On Friday, July 25, 2008 9:50 AM

Outlook Connector
The last time I wrote about the Outlook Connector it was to talk about the lack of Calendar synchronization and the fact that a new version of the connector was in internal Microsoft testing. I am happy to announce that the new version is out of internal testing and is available as a public beta. This new version synchronizes with your Windows Live Hotmail or Microsoft Office Live Mail accounts, including e-mail, contacts and calendars. I installed the new version and so far it works great. It remembered ......

Posted On Thursday, July 24, 2008 8:38 PM

Updated Outlook Macro for Creating Meetings from an Email
Only a few hours ago I posted and Outlook macro for creating meetings from an email. I’ve already updated it with some new features (requested by me, of course). The new version is available on my SkyDrive account and has the following new features: You can now create either a meeting or an appointment – there are two macros now. The reminder time has been changed to 10 minutes (bug fix). The original email message is now an attachment, which means the body of the appointment or meeting is blank. ......

Posted On Sunday, July 20, 2008 11:48 PM

When Should You Use WPF?
It’s pretty clear that Windows Presentation Foundation (WPF) is here to stay. In fact, use of WPF is becoming more popular and frequent, particularly now that Silverlight 2.0 is on the horizon. The problem is that there has been very little guidance available to help you decide when to use the various UI technologies available. There is however, some unofficial help in the form of this blog post and this white paper. Here is the comparison matrix from Michael’s blog post: WPF WPF XBAP Silverlight ......

Posted On Sunday, July 20, 2008 1:52 PM

Historical Evolution of C# Code Style
Jason Allor, the developer behind the Microsoft StyleCop tool has an excellent blog post about the historical evolution of C# code style. The post came about largely in response to some criticisms about the code style enforced by StyleCop and how it doesn’t match C/C++ style or that it differs in some areas with the Framework Design Guidelines. As Jason points out, most of the differences are historical and are there because the of two reasons: The original development team for the CLR consisted ......

Posted On Sunday, July 20, 2008 1:32 PM

PDC for Novices, 2008 Edition
I started doing these a few years ago for Tech·Ed (2008 and 2007) and received a lot of good feedback so I decided to continue the series for PDC as well. Session Types This year PDC is offering a slightly different mix of session types with what they are calling “UnSessions”. The bottom line is that UnSessions are everything that isn’t an official breakout session. If you’re still a bit confused, keep reading to see the differences. There may be some other session types once the schedule has been ......

Posted On Saturday, July 19, 2008 2:51 PM

OutTwit
Twitter is an interesting phenomenon. I first started using it in April at the MVP Summit. Since then, as anyone who is following me has seen, my use has been intermittent at best. The biggest reason is that I haven’t found a Twitter client that I liked that allowed me to use Twitter in a way that was not only natural (at least for me) but from within tools that I was already using and in front of me. The other day I decided to download OutTwit and have found it to fit almost all of my needs. There ......

Posted On Saturday, July 19, 2008 11:32 AM

Product Review: uCertify PrepKit
I recently took a look at the PrepKit offerings from uCertify. If you aren’t familiar with uCertify, they make practice exams and test preparation packages for a pretty extensive range of IT certifications including Microsoft, Oracle, CompTIA, Cisco, and Sun. The interesting thing about the uCertify PrepKit is that they are completely exam/quiz oriented. You can download a trial version of the PrepKit which includes 30 questions and then purchase the full PrepKit directly from within the “PrepEngine”. ......

Posted On Saturday, July 19, 2008 11:08 AM

PDC 2008
I just registered for Microsoft PDC 2008 in LA, October 27-30. This will be my second PDC and the first one I’ve been to as an MVP. There are supposed to be a lot of really interesting things announced at this one, so it should be an exciting time. I know I will be at the Party with Palermo on October 26, and there will probably be a Florida (and Friends of Florida) MVP geek lager one night as well. Not sure what else is going on, but if you’re going look me up. Technorati Tags: PDC ......

Posted On Friday, July 18, 2008 4:41 PM

Visual Studio 2008 and TargetFrameworkVersion
A question was asked yesterday in one of the CodeProject discussion forums by someone looking for a way to easily change the Target Framework version of all projects in a solution. If you don’t know, the Target Framework version is what tells the compiler which version of the .NET Framework to compile against (more information is available here) and can be set to one of the following values: .NET Framework 2.0 .NET Framework 3.0 .NET Framework 3.5 This can be easily accomplished by editing the project ......

Posted On Friday, July 18, 2008 12:36 PM

Developer Tools
I recently went through the exercise of reinstalling all of my developer tools on my home development system. This involved uninstalling everything, including Visual Studio and SQL and then reinstalling. While this wasn’t exactly a painless experience, it was good to get back to a relatively clean slate and re-evaluate all of the various tools and add-ins I’ve accumulated. I posted a similar list about 2 1/2 years ago, so it’s interesting to see what’s changed in that time. This time, I’m just listing ......

Posted On Thursday, July 17, 2008 12:05 AM

Tampa Bay IASA – July 2008 Meeting
"Fix the Architecture" - Open Discussion We have a great group of members with a variety of experience, so bring your architecture problems and leverage those experiences and creativity to help solve them. This is an open discussion format and depending on how many people we have and how many problems we may split up into small groups or try to solve problems one at a time. If you have a question/topic to discuss please let me know by Monday, July 21 or when you register for the meeting. After the ......

Posted On Sunday, July 6, 2008 10:56 AM

Null Object pattern follow up
My earlier post on the Null Object pattern led to a few critiques about the fact that I was presenting an extension method to do what is essentially a very simple logical test, and, as a result, doesn’t provide much value. For reference, here is the original extension method from that post public static class NullObjectExtenstions { public static bool IsNull(this object source) { return (source == null); } } Yes, this is an extremely simple method and performs a very basic logical test. However, ......

Posted On Friday, July 4, 2008 9:51 AM

What is “Defensive Programming”?
My post on the Null Object pattern has generated some interesting dialog. One of the trends that I have seen is the idea that defensive programming means your code should fail as early as possible. I couldn’t agree less. According to Wikipedia, Defensive programming is a form of defensive design intended to ensure the continuing function of a piece of software in spite of unforeseeable usage of said software. The idea can be viewed as reducing or eliminating the prospect of Murphy's Law having effect. ......

Posted On Friday, July 4, 2008 9:26 AM

Reminder: June 2008 Tampa Bay IASA Meeting
Just a reminder that the Tampa Bay IASA June meeting is this Thursday night (June 26th) starting at 6:30 PM. Please be sure to register so we have an idea of how many pizzas to order, and remember that the outside doors lock and the elevators need a security key after 7:00 PM. Don't forget to sign up for our free newsletter! Dependency Injection using the Microsoft Unity Application Block The Microsoft Unity Application Block is a lightweight Dependency Injection Container that is currently being ......

Posted On Tuesday, June 24, 2008 7:52 AM

INETA Community Champions
If you are a user group leader in the worldwide community of Microsoft® .NET user groups, you probably already know about INETA. Don’t know about INETA? Then you should definitely take a look and become an INETA member group. Are you already involved with an INETA member group? Be sure to check out the new Community Champions program. This is just one of the ways INETA recognizes and rewards those who contribute to the user group community and help it grow. The Champs program was specifically designed ......

Posted On Monday, June 16, 2008 11:52 PM

Visual Studio Feature Request – Statement Outlining
If you write .NET code using Visual Studio 2005 or 2008, you’ve probably noticed the automatic outlining the IDE makes available to you. This automatically creates collapsible sections in your code for comments, regions, functions, properties, namespaces, classes, and the using block. While this is a great feature and one that I use on a daily basis, it would be great if this extended to automatically outlining control structures, such as if/then, while loops, for/foreach loops, try/catch blocks, ......

Posted On Monday, June 16, 2008 11:32 PM

BOF864 - Code Style and Standards
If you're at Tech·Ed Developers 2008, be sure to check out my Birds of a Feather session tomorrow night (6/4) at 7:45 PM. Here are the details: Technorati Tags: TechEd 2008, BOF ......

Posted On Tuesday, June 3, 2008 9:12 PM

Microsoft Community Summit 2008 ]inbetween[
If you're going to Tech·Ed Developer or IT Pro this year, be sure to come out to the Microsoft Community Summit 2008 (also known as ]inbetween[ or the Tech·Ed Tweener Weekend, since it's in between the two events). This is a 2-day free event hosted by the Florida user group communities for everyone who is attending one (or both) of the Tech·Ed events or anyone who wanted to go but wasn't able to. It's hosted at the Orlando Convention Center on June 7-8. Since it's a free event, lunch will not be ......

Posted On Monday, May 26, 2008 12:04 PM

Racing Balloon
My friend and fellow MVP Richard has a unique project that he started to help raise money for one of his local primary school's swimming pool repair fund, which needs to raise £40K. He's running a balloon race, which is being combined with Microsoft Virtual Earth to allow people to record and track where the balloons are found. Prizes are being offered (courtesy of Microsoft) for the finder of the balloon that has traveled the farthest and the person who launched that balloon. If you are interested ......

Posted On Sunday, May 25, 2008 7:00 PM

Null Object pattern
I've been trying to catch up on my reading and came across this post by Fredrik Normén where he raises the question about returning null or using the Null Object pattern. Interestingly enough, last month while I was in Seattle for the 2008 MVP Summit I had a very similar discussion. The end result of that discussion was that null objects, and nullability in general, ideally should be treated as a "first-class" citizen in the CLR. This means that if you try to execute a method on a null object you ......

Posted On Sunday, May 25, 2008 6:28 PM

Tampa Bay IASA - May 2008 Meeting
The Tampa Bay chapter of the International Association of Software Architects (IASA) is dedicated to building a community of professionals interested in topics related to software architecture. This organization welcomes all interested professionals. Whether you are a senior enterprise architect at a fortune 100 company or an aspiring architect with only a few years of experience. Please be sure to register so we have an idea of how many pizzas to order, and remember that the outside doors lock and ......

Posted On Sunday, May 25, 2008 12:16 PM

Source Analysis
As many of you know, I'm a big proponent of code styles and standards. As part of that, I'm always on the lookout for new tools that help enforce (or at least report) those standards. Some of you may have heard about a tool called StyleCop. In fact, there are references to StyleCop in some of the MSDN articles and other blogs. Since it was an internal tool, we could only imagine what features it provided and hope to find a copy of it somewhere. Well, imagine no longer. Earlier this week, Microsoft ......

Posted On Sunday, May 25, 2008 10:13 AM

Hiking for the stout hearted
It's amazing how small our world can be sometimes. I just found this video from a tweet by ScottHa, who was referring to a blog post by Roy Osherove. The views are absolutely incredible (check out the view at about 00:40 and then again at 2:55), but there is no way I would ever do a hiking trip like this. Just watching this makes me feel afraid of heights (especially at 4:46), and I'm not ......

Posted On Saturday, April 26, 2008 6:16 PM

Birds of a Feather session - "Code Style and Standards"
I am moderating a reprise of my BOF session at last year's Tech·Ed. This one is simply called "Code Style and Standards", and is BOF864. It's currently scheduled for Wednesday, June 4 from 7:45 PM - 8:45 PM. Hopefully some of the people who attended last year's session will be at this one but I hope there are a lot of new faces as well. Technorati Tags: TechEd 2008, BOF ......

Posted On Saturday, April 26, 2008 5:53 PM

Tech·Ed 2008 Schedule Builder and Internet Calendar Subscriptions
Last year when the Tech·Ed 2007 Schedule Builder came out, I complained about how cumbersome it was to use. The idea of having to pick a time period from a drop down list that contains 28 items and constantly having to scroll up and down to view the page navigation and the small calendar view down the side is very "old school" and does not make it easy to use. As a result, I took advantage of the fact that the sessions were published as an RSS feed and created a set of Internet Calendars for each ......

Posted On Saturday, April 26, 2008 5:32 PM

Book Review: Wikipedia: The Missing Manual
I have always been a big fan of the O'Reilly books, and the Missing Manual series is no exception. I recently had the opportunity to read Wikipedia: The Missing Manual by John Broughton. If you have ever thought about contributing to Wikipedia, or have done so in the past, this is the definitive book on how to contribute and become a successful Wikipedia editor. The book is broken down into 5 major sections which cover: Editing, Creating, and Maintaining Articles Collaborating with Other Editors ......

Posted On Saturday, April 19, 2008 3:43 PM

MVP Summit 2008
I just got back from attending my first MVP Summit and have to say the level of access we received to the product teams and other people within Microsoft was outstanding. Since this was my first Summit, I don't really have a frame of reference to know how it compares to previous years, but it did quickly become apparent to me that Microsoft really does listen to community as much as they are able. Obviously some groups and products are better able to do this than others, but that seems to be mostly ......

Posted On Saturday, April 19, 2008 1:05 PM

Florida Technical Communities (January 2009 Update)
Florida has a very active developer community. The biggest problem we seem to have is that all of these different groups usually don't know about each and there hasn't been a "centralized clearinghouse" listing all of the technical communities. Joe Healy, one of our Florida Microsoft Developer Evangelists, maintains a list and earlier this year started putting together one-page flyers for each of the main areas in Florida. I think the eventual plan is that Joe will be updating his site to take advantage ......

Posted On Friday, March 28, 2008 8:26 PM

Book Review: ASP.NET Data Presentation Controls Essentials
If you are an ASP.NET developer or want to become one, there are numerous books available that talk about the ASP.NET framework and/or how to build web sites using ASP.NET. Pact Publishing has a book that focuses specifically on the data presentation controls that are available in ASP.NET, including ASP.NET 3.5 called ASP.NET Data Presentation Controls Essentials by Joydip Kanjilal. The book provides a good introduction to the basics of how data binding in ASP.NET works and then expands on that introduction ......

Posted On Friday, March 28, 2008 6:52 PM

Organize your travel with TripIt
A lot of people have been talking lately about TripIt, a web-based travel organizer website created by some of the same people that brought you Hotwire. TripIt, however, isn't your ordinary travel site. With the ever increasing use of online services to make travel plans, organizing the details scattered across multiple emails and varying formats can be difficult and sometimes downright frustrating. TripIt simplifies all of that by knowing how to read the confirmation email formats of most of the ......

Posted On Thursday, March 20, 2008 10:06 PM

New Lineup of SlickEdit Tools
I have talked about the SlickEdit Tools and Gadgets in the past (here and here) and have always been impressed with both of them. Previously, the SlickEdit Tools were only available for Visual Studio 2005. Now that Visual Studio 2008 is here, SlickEdit has released an update that works with both VS2005 and VS2008. The catch here is that this is much more than a simple update. The major difference is that the tools have been organized into two products: the Editing Toolbox (datasheet), which contains ......

Posted On Thursday, March 20, 2008 4:18 PM

How big is the .NET Framework?
No, this question isn't asking how much disk space is required by the Framework. It's really asking "How complex is the .NET Framework for developers?" As you might guess, the answer is: It's pretty complex. All joking aside, this is neither an uncommon nor unreasonable question and answer. The reality of it is that the .NET Framework is a very complicated application programming interface (API) but is designed in such a way to expose that complexity gradually (at least in most cases). Brad Abrams ......

Posted On Tuesday, March 18, 2008 11:44 PM

Windows Live SkyDrive Feature Requests
I have been a big fan of SkyDrive since it was first available as a beta release. Now that it has been officially released, it has continued to get better. Just recently, the SkyDrive team announced the top list of feature requests that they are looking to implement. The list so far is: Allowing multiple downloads at once. Displaying how many times a file has been downloaded. Supporting file synchronization from the desktop. Providing an API for storing and retrieving files. Adding SkyDrive access ......

Posted On Monday, March 17, 2008 11:08 AM

NameValueCollection and .NET Configuration Files
I spent most of yesterday trying to figure out how to make use of a NameValueCollection in a .NET configuration file. After wasting almost the entire night fighting with this problem, I thought I would let everyone know that it is possible, and easier than you might think. (By the way, this was a clear case of working too long on the problem. After a good nights sleep, I solved this in under 5 minutes.) At this point you might wonder why this was so difficult. The largest and most significant problem ......

Posted On Sunday, March 16, 2008 8:00 PM

Tampa Bay IASA - March 2008 Meeting
The Tampa Bay chapter of the International Association of Software Architects (IASA) is dedicated to building a community of professionals interested in topics related to software architecture. This organization welcomes all interested professionals. Whether you are a senior enterprise architect at a fortune 100 company or an aspiring architect with only a few years of experience. When: 3/27/2008 6:30 PM - 8:30 PM Topic: My 10 Years In Identity – A Veteran’s Experience Succeeding With Identity Management ......

Posted On Wednesday, March 12, 2008 1:15 PM

Windows Live FolderShare Beta
A while ago I talked about Windows Live FolderShare. As a reminder, for those of you who don't know: FolderShare allows you to synchronize files across multiple computers and access or share files with colleagues and friends. You no longer need to send large files via email, burn them to CDs/DVDs and mail them, or upload them to a website. FolderShare allows you to share and sync important information instantly with anyone you invite, making it the perfect solution for personal or small business ......

Posted On Monday, March 10, 2008 11:11 PM

Caring about the developer community
One of my fellow GWB bloggers recently posed the question "Do you care about your developer community?" and offered some interesting ideas for user groups to adopt to help foster more community spirit. Hopefully whatever troubles D'Arcy is having will straighten themselves out, but the questions he asks and one of the responses got me thinking. I have always tried to be active in my local developer community and in the larger online community. I was active online far longer than I have been active ......

Posted On Monday, March 10, 2008 2:48 PM

IE8 Standards Mode Problems
In a previous post I talked about the new IE8 Beta 1 release and IE7 compatibility mode. In that post I mentioned that I had only run in to one site that didn't render properly in IE8 standards mode. Since that post, I took a look at my blog in IE8 standards mode and realized that it also has some problems. After doing some more quick testing, I actually noticed that the Snap preview windows and the Live Search display panel also have problems. The Live Search window actually doesn't display any ......

Posted On Thursday, March 6, 2008 9:09 PM

Silverlight 2 Beta 1
More announcements from Mix came from Scott Guthrie, who announced the release of Silverlight 2 Beta 1. (In case you don't know, Silverlight 2 was previously called Silverlight 1.1) This release provides a lot of new features and controls, including layout containers such as a Grid and StackPanel, control skinning and templating. There are improvements in both networking and general performance as well. Better integration with Visual Studio 2008 is also provided as well as a new release of Expression ......

Posted On Thursday, March 6, 2008 8:42 PM

Internet Explorer 8 Beta 1
The Microsoft MIX08 conference is going on this week and even though I didn't go this year (maybe next year or ReMix) there are enough people blogging about what's happening at the conference that you can still keep up with most of it. There were a lot of big announcements during the keynote and the first day of the conference, including the first public beta of Internet Explorer 8. This release is primarily focused on web developers and designers to give them as much time as possible to validate ......

Posted On Thursday, March 6, 2008 8:17 PM

Code Signing
Ever since the .NET Framework was first release, Microsoft has always recommended that your code be signed. Windows Vista drives this point home even more with UAC and the Windows Error Reporting (WER) features, not to mention the fact that it's a requirement for Vista logo certification. John Robbins from Wintellect provides an excellent explanation of how to sign your code. As it turns out, it's a lot easier than many of you may have thought ......

Posted On Friday, February 29, 2008 9:59 PM

The additive nature of the .NET Framework
Also from Paul's blog post and the .NET Framework Namespace poster is an excellent diagram that shows the relationship between the .NET Framework 3.5 release and the other versions of the Framework. This clearly shows the additive nature of both the .NET 3.0 and 3.5 releases ......

Posted On Friday, February 29, 2008 9:37 PM

.NET Framework 3.5 Namespace poster
Now that .NET Framework 3.5 has been officially released, you can download a PDF of the commonly used types and namespaces. Be sure to check out Paul Andrew's blog post for full details ......

Posted On Friday, February 29, 2008 9:30 PM

Team System Widgets
If you use Team System, Accentient has an excellent list of various Visual Studio Team System add-ins, add-ons, widgets, and extensibility solutions. This list is much more complete than the current Visual Studio Gallery, but it has also been around a lot longer. One benefit of the Visual Studio Gallery, however, is that you get a description of the add-in to decide if it's something that is important to you ......

Posted On Friday, February 29, 2008 9:23 PM

TFS Power Tools
With the release of TFS 2008, Team Build is getting closer to providing the same features as CruiseControl.NET. To help remove some of the shortcomings of Team Build, Microsoft has released the Visual Studio Team System 2008 Team Foundation Server Power Tools, which is a set of enhancements, tools and command-line utilities that improve the Team Foundation Server user experience. Team Foundation Server Power Tools includes the following tools: Team Foundation Power Tool command-line tool (TFPT.EXE) ......

Posted On Friday, February 29, 2008 8:54 PM

WPF Application Quality Guide
Since WPF was released it has seen a fairly rapid adoption but not much in the way of guidance. The WPF team at Microsoft is hoping to change that with the release of the WPF Application Quality Guide. The guide is going to be released in stages and will be updated based on feedback provided by the community. While the first release is still missing a lot, it does provide some good tips on setting up your application for automated testing. They also provide a good list of tools for performance profiling: ......

Posted On Friday, February 29, 2008 8:39 PM

Framework Engineering: Architecting, Designing, and Developing Reusable Libraries
At TechEd 2007, Krzysztof talked about building reusable libraries. The session abstract is below. You can download the presentation as an XPS file. The presentation was also recorded, and the WMV file can be downloaded from here. This session covers the main aspects of reusable library design: API design, architecture, and general framework engineering processes. Well-designed APIs are critical to the success of reusable libraries, but there are other aspects of framework development that are equally ......

Posted On Friday, February 29, 2008 8:27 PM

CodeCampServer
It's beginning to look like the start of the Code Camp Season, with at least 12 scheduled over the next 4 months. If you are organizing a code camp, there is a new open source project that Jeffery Palermo has started called CodeCampServer. The project aims to provide a solution that can server as the web site for a code camp and will be able to track and manage multiple conferences for a single user group. The project will use the ASP.NET MVC Framework and the MvcContrib. The project hasn't had their ......

Posted On Friday, February 29, 2008 8:15 PM

Tech·Ed for Novices, 2008 Edition
While I'm waiting to find out if I'll be able to go to Tech·Ed again this year I am still keeping an eye on what's going on with the conference. For last year's Tech·Ed, Microsoft created a "Tips for the Newbie" page (which is apparently no longer available) and I created a follow-on post called Tech·Ed for Novices. Since the conference this year is split into two separate weeks, I thought it was even more important for some tips on how to deal with the information overload and what Tech·Ed has to ......

Posted On Monday, February 25, 2008 12:21 AM

Outlook Connector Calendar Sync
One of the more irksome qualities about the Outlook Connector was the lack of Calendar synchronization, particularly with the new Windows Live Calendar. If you were an MSN subscriber it would work, but if you had just a Hotmail (or Windows Live) account it wouldn't. This also applied even if you had purchased the additional features of Hotmail Plus. According to LiveSide there is a new Outlook Connector currently in internal Microsoft testing that reportedly allows synchronization with Windows Live ......

Posted On Sunday, February 24, 2008 10:11 PM

Windows Live SkyDrive Improvements
I have talked about SkyDrive in the past and really like the service and the direction it seems to be taking. Just this past week, SkyDrive was finally officially released in 38 countries/regions. Along with the official release, the amount of space available has been increased to 5GB. I love the increased storage space, hopefully we will start to see some of these other improvements soon: Increase (or, ideally, remove) the size limit on uploading files. The ability to download multiple files at ......

Posted On Sunday, February 24, 2008 10:03 PM

Book Review: LINQ Quickly
I was recently introduced to a UK based publisher called Pact Publishing. They are a UK based publisher and have a book focused on the new Language Integrated Query (LINQ) features available in .NET 3.5 called LINQ Quickly: A practical guide to programming Language Integrated Query with C# by N Satheesh Kumar. The book provides a good overview of LINQ and it's supporting language features, such as anonymous types, implicit typing, object initializers, extension methods, and expressions. It then builds ......

Posted On Sunday, February 24, 2008 7:40 PM

Visual Studio user settings per project/solution
Last April I talked about the need to have the Visual Studio editor settings (like tab size, curly brace location, etc.) stored with each solution as well as globally. This was spurred by an email thread between some of the Subtext developers and myself. The end result was a feature request being submitted on Microsoft Connect. That feature request ended up being closed because it was submitted too late in the Orcas (Visual Studio 2008) cycle. I just received an update from the Connect site, and ......

Posted On Monday, February 18, 2008 10:47 PM

Tampa Bay IASA Newsletters
It's now been almost 2 months since I have been part of the Tampa Bay IASA chapter's leadership. In that time we've moved the meeting registration to Eventbrite and have started sending monthly newsletters. (The February newsletter was very late, and I sincerely apologize to everyone. The rest of them will be on time from now on.) The first newsletter that was sent out was managed "by hand" and it was a major headache. When I first started the newsletters, I searched around for a good email marketing ......

Posted On Saturday, February 16, 2008 11:08 PM

Post Categories and Image Galleries
You may have noticed that my post categories and image gallery lists are incorrect. I've submitted a trouble ticket to the GeeksWithBlogs technical support earlier this week, but it hasn't been resolved yet. Since I use the category list a lot to help find old posts, I decided to create a secondary category and image gallery list. Since I was recreating the lists, I have added a little bit of organization as well. The full list is available as an article since I will keep this list updated as I add ......

Posted On Wednesday, February 13, 2008 12:47 PM

Post Categories and Image Galleries
Post Categories Conferences Tech·Ed Tech·Ed 2006 Tech·Ed 2007 Tech·Ed 2008 PDC PDC 2007 PDC 2008 Open Source Projects Subtext CI Factory MSBuildContrib CruiseControl.NET .NET Related Technologies .NET (General) .NET (C#) WPF WCF Communities and User Groups Community Credit IASA Other topics General Vista Code Styles & Standards Image Galleries Conferences Tech·Ed Tech·Ed 2006 Tech·Ed 2005 Tech·Ed 2007 PDC PDC 2007 ......

Posted On Wednesday, February 13, 2008 12:42 PM

What's Important at Code Camp...clarifications
It seems my earlier post about "What's Important at Code Camp?" might have touched a few nerves and may not have been as clear as I would have liked, so here are a few clarifications. I wasn't implying in any way that sponsors aren't important. In fact, it really was the other way around. As I mentioned, Code Camp is free to the attendees but there is still a cost to the organizers. That cost is defrayed as much as possible by support from Microsoft and other sponsors. Without the sponsors, it would ......

Posted On Tuesday, February 12, 2008 4:42 PM

MSDN Code Gallery
Late last month, Soma announced the new MSDN Code Gallery site for sharing samples from both Microsoft and the community at large. When I saw this announcement, I was a little surprised that Microsoft was creating yet another community-type samples site so close on the heals of the GotDotNet (GDN) shutdown. Granted, MSDN Code Gallery isn't exactly what GDN was, but between Code Gallery, CodePlex and MSDN Downloads it starts to get confusing. Charlie Calvert posted a good explanation of the three ......

Posted On Saturday, February 9, 2008 2:20 PM

Tampa Bay IASA - February 2008 Meeting
The Tampa Bay chapter of the International Association of Software Architects (IASA) is dedicated to building a community of professionals interested in topics related to software architecture. This organization welcomes all interested professionals. Whether you are a senior enterprise architect at a fortune 100 company or an aspiring architect with only a few years of experience. When: 2/28/2008 6:30 PM - 8:30 PM Topic: Introduction to Aspect-Oriented Programming (AOP) Write less code and create ......

Posted On Saturday, February 9, 2008 11:20 AM

What's Important at Code Camp?
I've been reviewing my evaluations from the South Florida Code Camp 2008 and one of the comments brought out some interesting points. After reading the comments, I thought it might be a good time to remind some of you what a Code Camp really is. A lot of this information is from the Code Camp Manifesto and from my personal experiences as both an attendee and a presenter. Code Camps are always a free event and are about the developer community at large. They are meant to be a place for developers ......

Posted On Saturday, February 9, 2008 11:11 AM

Xobni Updates
About a month ago, I talked about a new add-on for Microsoft Outlook called Xobni Insight. Since that time, I was invited to participate in the beta and have been running it both at work and at home. So far, I have been very impressed. The installation is very simple. Once Xobni Insight is installed, the next time you open Outlook will cause it to create an index of your email. On my home system, I have over 14,000 messages from almost 3,000 different senders and it took less than 10 minutes to create ......

Posted On Saturday, February 9, 2008 10:19 AM

Community Credit Hall of Fame
I've blogged in the past about Community Credit and really love the site. As a 5 time Community Credit winner, I just received the email today (although I actually knew about it over the weekend) that I have been inducted into the Community Credit Hall of Fame for 2008. There are a total of 17 inductees, all of whom have contributed a great deal to the development community. Thanks David for all of the hard work keeping Community Credit running smoothly so we all have a place to share with the community ......

Posted On Thursday, February 7, 2008 7:19 PM

Visual Studio Gallery
I just came across the new Visual Studio Gallery site, which is a new showcase for products and extensions for Visual Studio. The gallery looks like it is mostly going to be focused on Visual Studio 2008, but there is a lot of content for VS2005 and earlier. The gallery is part of the Visual Studio Extensibility (VSX) Developer Center on MSDN. For those of you who don't know, VSX covers the Visual Studio Software Development Kit (SDK) including tools, documentation, and samples for developers to ......

Posted On Wednesday, February 6, 2008 7:37 PM

South Florida Code Camp
The South Florida Code Camp was today and there were around 600 people who showed up. I moderated a round-table discussion on code style and standards and presented an in-depth talk on memory management in .NET. For those who attended either one of my sessions (or just want to take a look at the slides) you can download copies from my SkyDrive public folder. I only managed to attend a few sessions, but talking with people at the after-party it sounds like everyone had a great time and was able to ......

Posted On Saturday, February 2, 2008 10:13 PM

Debugging the .NET Framework Library Source Code
A while ago, I talked about Microsoft releasing the source code for the .NET Framework in order for you to debug it through Visual Studio 2008. Just a few days ago, it was finally released. Shawn Burke has an excellent and detailed post explaining how to set this up and also has a trouble shooting section. Currently, the following libraries have been released: NET Base Class Libraries (including System, System.CodeDom, System.Collections, System.ComponentModel, System.Diagnostics, System.Drawing, ......

Posted On Friday, January 18, 2008 12:06 AM

Framework Engineering: Architecting, Designing, and Developing Reusable Libraries
At TechEd Developers Europe, Krzysztof Cwalina presented a talk called "Framework Engineering: Architecting, Designing, and Developing Reusable Libraries". If you weren't able to make the conference or missed his talk, you can download the video recording (in WMV format) or just the slides (in XPS format). The abstract for the session reads: This session covers the main aspects of reusable library design: API design, architecture, and general framework engineering processes. Well-designed APIs are ......

Posted On Saturday, January 12, 2008 8:31 AM

Porting an NAnt Task to MSBuild
I have been working and talking a lot about MSBuild over the last few months. As part of that work, I have implemented several custom tasks for MSBuild. Most of those tasks were ones that I had written as part of an NAnt based build system while others were part of the NAntContrib project. There is a very good basic explanation of how to write a task on MSDN, so instead I will cover how to port a task from NAnt to MSBuild. To keep things simple, I'm going to focus on creating an MSBuild v3.5 task ......

Posted On Wednesday, January 9, 2008 9:37 AM

Free Microsoft Press E-Books Offer?
I've been seeing several people blogging about the free Microsoft Press E-Book offer. All you need to do is register and you get access to 3 e-books from Microsoft Press that you can download in PDF format. If you pay close attention to the details for each book, you will notice that these aren't full copies of the books. The only one that appears to be a full copy, based on the listed chapters and the actual table of contents in the PDF, is Introducing Microsoft LINQ. The other two e-books only ......

Posted On Sunday, January 6, 2008 8:42 PM

Sync Services for ADO.NET
A few months ago I talked about the Microsoft Sync Framework. One part of that Framework is Sync Services for ADO.NET, which enables synchronization of information between database systems. Steve Lasker has some good information on the Sync Framework and Sync Services. Joe Healy did a presentation on Sync Services at the Orlando SQL Saturday and will be doing updated presentations at South Florida .NET CodeCamp IV and the Tampa SQL Saturday events in February. In the meantime, be sure to check out ......

Posted On Sunday, January 6, 2008 2:51 PM

Windows Live Tools December 2007 CTP
I just noticed this announcement from last month, but if you are doing any Windows Live development you should check out the latest CTP release.The biggest improvement is that the CTP is now compatible with Visual Studio 2008 and the ASP.NET 3.5 Extension Preview. There are a lot of other changes in the CTP so be sure to check out the release notes ......

Posted On Sunday, January 6, 2008 2:39 PM

CodeCampServer Open Source Project
Many of you know that I've participated in many Code Camps over the last year, both as a speaker and as an attendee. The one thing that I've noticed is that there seems to not be a lot of resources for planning and organizing a code camp, which leads to very different experiences for speaker signup, schedule planning, etc. Jeffrey Palermo just announced a new open source project hosted on GoogleCode that promises to do just that. CodeCampServer is a free, open source Code Camp management web application ......

Posted On Sunday, January 6, 2008 2:14 PM

CodeProject MVP Award
A few days ago, I announced that I had been recognized as a Microsoft MVP. About 4 days later, I found out that I had also been awarded a CodeProject MVP. This is certainly turning out to be a busy and exciting start to the new year ......

Posted On Sunday, January 6, 2008 12:52 PM

Framework Design Guidelines, Second Edition
I frequently blog about Code Styles & Standards. One of the references that I use a lot when trying to justify a change to a companies existing standard (or simply putting a standard in place) is the Framework Design Guidelines by Krzysztof Cwalina and Brad Abrams. Both of them today officially announced that they are working on the Second Edition, which will cover the .NET Framework v3.0 and v3.5 releases, including LINQ and the other language advances. They are both looking for feedback on ......

Posted On Friday, January 4, 2008 1:33 AM

Statistics for 2007
Even though I've been blogging since June 2006, I really started consistently blogging in November of that year with it really picking up in 2007. Borrowing a concept from many of the bloggers that I read regularly, I wanted to review how my blog did over the last year. I only started tracking blog statistics through Google Analytics since the end of September 2007. My site usage for September 2007 through December 2007 was 36,371 visits from 146 different countries. The top 5 are: United States ......

Posted On Friday, January 4, 2008 12:54 AM

Microsoft MVP Award
The new year is certainly starting off on the right foot for me. I woke up this morning to an email from Community Credit telling me that I won 4th place for December's competition. That was cool news (sorry David, but this slightly bigger news) until I saw another email from Microsoft telling me that I have received the 2008 Microsoft® MVP Award in the Visual Developer - Visual C# community. This is my first MVP Award and I'm really excited about what it will bring over the course of the year ......

Posted On Tuesday, January 1, 2008 11:52 AM

Community Credit Winner for December
I have talked about Community Credit before, and have been very impressed with the direction the site is heading. I was just notified that I won 4th place out of 7,721 members. This makes the fifth time I have won a monthly competition. The prize this time around is the T-bot Pen Drive. I'm not at all sure what to make of this one. It's a 1GB USB drive, but has beads and springs for appendages and a dust cover for a head. It's definitely a thumb drive with personality, but it's also one of the strangest ......

Posted On Tuesday, January 1, 2008 11:35 AM

Tampa Bay IASA Call for Speakers
The Tampa Bay International Association of Software Architects (IASA) is looking for speakers to present at our upcoming meetings. If you are a software architect in Tampa Bay or the surrounding areas, or are visiting from further away (or even out of state) and want to speak, please let me know. Each meeting is broken up into two presentations: Design Pattern Overview Main Topic The design pattern overview is just that - an overview of a particular design pattern. I try to find a design pattern ......

Posted On Monday, December 31, 2007 4:42 AM

Disappearing System Tray Icons on Windows Vista
I've been running Vista on my work laptop since the first quarter of this year and on my development system at home since August. So far, I haven't had too many problems with it. Actually, on my home system I've had almost no problems. My laptop, on the other hand, routinely has issues. One of the more annoying issues is that my wireless network connection periodically and randomly dies. It comes back to life after about 30 seconds to a minute, but it's still pretty frustrating. (Yes, I know I need ......

Posted On Monday, December 31, 2007 1:51 AM

Tampa Bay IASA - January 2008 Meeting
The Tampa Bay chapter of the International Association of Software Architects (IASA) is dedicated to building a community of professionals interested in topics related to software architecture. This organization welcomes all interested professionals. Whether you are a senior enterprise architect at a fortune 100 company or an aspiring architect with only a few years of experience. When: 1/31/2007 6:30 PM - 8:30 PM Topic: The Perfect Pattern Storm, where TDD meets UX and MVP As host of ARCast.TV, ......

Posted On Saturday, December 29, 2007 7:55 AM

What Is a Build System?
A few days ago, I talked about my views on MSBuild and NAnt. In that post I mentioned the phrase "build system" several times. That, combined with catching up and re-reading some blog posts that I had flagged led me to Jeff Atwood's post "The F5 Key Is Not a Build Process". While some of Jeff's post is a bit of tongue-in-cheek humor, the points he makes are extremely valid. In order to understand what a "build system" is, you must first understand how you build code. This applies not just to individual ......

Posted On Thursday, December 27, 2007 3:58 PM

Volatile Registry Keys
Up until recently, I had never heard of a volatile registry key. I cam across a post by Daniel Moth that presents an extension method that adds support for both .NET and NETCF. While I haven't looked at the projects he provides, it did get me thinking about what this support would actually mean. A volatile registry key is one whose information is stored only in memory and is not preserved when the corresponding registry hive is unloaded. For keys created under the HKEY_LOCAL_MACHINE hive, this occurs ......

Posted On Monday, December 24, 2007 5:47 PM

MSBuild or NAnt?
For the last 4 years or so I have been involved, either directly or indirectly, with creating standardized build systems that run on the Microsoft platform. Before that I was actually a Unix admin and developer and was very proficient in writing makefiles. When I first got involved in build systems for the Microsoft platform, it seemed like there were very few build script technologies available that were worth using. The best one available was the combination of NAnt and NAntContrib. There are many ......

Posted On Monday, December 24, 2007 1:06 PM

MSBuildContrib Updates
I know I just mentioned this project yesterday, but I wanted to thank those of you who have already downloaded it. Hopefully you have found it useful so far. I have already updated the project for the 1.0.2913.51352 release, which adds a few new tasks and cleans up some of the existing ones. Here is the current list of tasks: NAnt/NAntContrib Task MSBuildContrib Task Status Description attrib Attrib Complete* Changes the file attributes of a file or set of files and directories. checksum Checksum ......

Posted On Monday, December 24, 2007 10:42 AM

MSBuildContrib project on CodePlex
MSBuildContrib is the project for tasks and tools that aren't in MSBuild. This is similar to the NAntContrib project and will be incorporating as many of the NAnt and NAntContrib tasks as possible. There is still a long way to go, so if you are interested in helping out please let me know and I will add you to the project. Here is the list of NAnt or NAntContrib tasks that are planned and the current status: NAnt/NAntContrib Task MSBuildContrib Task Status Description codestats CodeStats Complete ......

Posted On Sunday, December 23, 2007 12:14 PM

Upcoming Community Events
It seems that there isn't a good source of information that consolidates all of the upcoming community events, excluding local user group meetings. While this isn't an exhaustive list, it's all of the ones I have found so far. If you know of an event that's missing or needs updating, please let me know. January Philly Code Camp: January 12, 2008 @ DeVry University in Fort Washington Day of Patterns and Practices Tampa 2008 Roadshow: January 31, 2008 @ Microsoft, Tampa Offices February Winnipeg Code ......

Posted On Saturday, December 22, 2007 12:46 PM

IASA Tampa Chapter - January 2008 Meeting
As I mentioned in my last post, we aren't holding a December meeting. Instead, the next meeting will be Thursday, January 31 from 6:30 PM - 8:00 PM at the Microsoft offices in Tampa. This is the same night as the Free Day of Patterns and Practices Tampa 2008 Roadshow, so if you are attending the PnP day be sure to stick around for the IASA meeting afterwards. The speaker is Ron Jacobs, an Architect Evangelist in the Microsoft Architecture Strategy group based at the company headquarters in Redmond ......

Posted On Thursday, December 20, 2007 10:25 AM

Free Day of Patterns and Practices Tampa 2008 Roadshow
Tampa 2008 Roadshow January 31, 2008, 8:30am - 4:00pm Microsoft - Tampa, Florida Register Join new and experienced Microsoft WinForms and Web developers for a day long FREE Developer Event covering Enterprise Library, Software Factories, and proven practices from Microsoft Patterns and Practices. Learn to increase developer productivity and application quality using Enterprise Library building blocks, code generation, and proven practices for Smart Clients, Web Clients, and Web Services. Learn how ......

Posted On Wednesday, December 19, 2007 10:10 PM

PDC 2008 Announced
October 27–30, 2008 Pre-conference October 26, 2008 Los Angeles, California For those of you who don't know, PDC is the definitive Microsoft event for software developers and architects focused on the future of the Microsoft platform. Originally, Microsoft was going to hold PDC this year (2007), but in June Microsoft announced that it was being rescheduled to align with some of the major platform milestones. At that time, they didn't have the new event date. As of last week, PDC 2008 was officially ......

Posted On Wednesday, December 19, 2007 9:45 PM

Visual Studio 2008 Rhythm Training Kit
If you are doing any work with any of the following technologies: LINQ, .NET 3.5 (C# 3.0, VB 9) WCF WPF WF CardSpace Silverlight ASP.NET Ajax .NET Compact Framework 3.5 VSTO 3.5 Visual Studio Team System and Team Foundation Server You should download the free Visual Studio 2008 Rhythm Training Kit (125MB). The training kit contains 5-days of technical content including 20 hands-on labs, 28 presentations, and 20 scripted demos ......

Posted On Wednesday, December 19, 2007 9:20 PM

Visual Studio 2008 for Architects
Jeff Barnes has made his extended talk (think "deep dive") on the following topics available: NET 3.5, Visual Studio Enhancements Lifecycle tools ALM, C#, VB9, Interop, LINQ ParallelFX PLINQ Services (WCF, WF, CardSpace) Windows Applications Web Applications Office Applications Mobile Applications Synch Services for ADO.NET Orcas_For_Architects_Jbarnes - Part_1.zip - 3.6 MB Orcas_For_Architects_Jbarnes - Part_2.zip - 4.8 MB Orcas_For_Architects_Jbarnes - Part_3_Links And Resources.zip 188 KB ......

Posted On Wednesday, December 19, 2007 9:16 PM

.NET Framework v2.0 and v3.0 SP1
Now that Visual Studio 2008 and the .NET Framework v3.5 have shipped, you may have noticed that Service Pack 1 for .NET Framework 2.0 and Service Pack 1 for .NET Framework 3.0 also shipped at the same time. Both are automatically installed with .NET Framework v3.5, Windows Server 2008 and Windows Vista Service Pack 1. For Windows XP and Windows Server 2003 they are available as a standalone update. Daniel Moth has an excellent post that describes what is actually in the service packs. Here is the ......

Posted On Wednesday, December 19, 2007 8:38 PM

Search and Replace Plugin for Windows Live Writer
I just came across Steve's blog post about a new Search & Replace plugin for Windows Live Writer written by Waldek Mastykarz. This plugin fills a pretty big gap in WLW and even has support for regular expressions. The code is available on CodePlex ......

Posted On Wednesday, December 19, 2007 8:12 PM

ASP.NET Extensions - MVC Framework
The much-talked about MVC Framework that Microsoft is working on was released last week as part of the ASP.NET 3.5 Extensions. It also has some other pretty cool stuff, including Dynamic Data controls, Ajax history support, ADO.NET Data Services, updated support for Silverlight and the ADO.NET Entity Framework. Once you download it, here are some great resources to check out: Scott Guthrie's 4 part tutorial on building an MVC based application Phil Haack (the PM for the MVC Framework) Rob Conery ......

Posted On Wednesday, December 19, 2007 8:05 PM

Ajax and .NET Developers
My friend Simone has created an interesting survey focused on .NET developers and Ajax. It's a more focused response to this survey on the Ajaxian blog. As of 2 AM (in Italy), there have been 415 responses: ASP.NET Ajax: 80% AJAX Control Toolkit: 17% JQuery: 13% raw Ajax: 12% If you are a .NET developer and are working with Ajax be sure to take the survey ......

Posted On Tuesday, December 18, 2007 8:39 PM

Silverlight 2.0
What used to be called Silverlight 1.1 has been rebranded as Silverlight 2.0 and will include a cross-platform, cross-browser version of the .NET Framework and will enable a rich .NET development platform in the browser. Scott Guthrie has a post that details what will be part of the 2.0 release, but it includes: WPF UI Framework: The current Silverlight Alpha release only includes basic controls support and a managed API for UI drawing. The next public Silverlight preview will add support for the ......

Posted On Friday, November 30, 2007 1:05 PM

ASP.NET 3.5 Extensions Release
Now that Visual Studio 2008 and .NET 3.5 have officially shipped, it's time to start looking at the additional products and tools that build on top of that foundation. Scott Guthrie has an excellent post that details the roadmap for the Web related products. The biggest announcement is that the ASP.NET 3.5 Extensions will have it's first public preview available sometime next week. If you don't know what the ASP.NET 3.5 Extensions are, here is the list (taken from Scott's post): ASP.NET MVC: This ......

Posted On Friday, November 30, 2007 10:24 AM

Multi-component Installers
With the deluge of blog posts talking about the recently releases of Visual Studio 2008 and the .NET Framework 3.5, Scott Guthrie talks about the steps to uninstall the Visual Studio 2008 Beta 2 release you should follow before installing the final release. It's great that Scott has put together this list since it not only tells you all of the components that are installed when you install Visual Studio 2008 Beta 2 but also tells you the order to uninstall them. This post also indirectly brings to ......

Posted On Thursday, November 22, 2007 12:18 AM

Windows Live FolderShare
I just came across a post today on LiveSide that talks about some of the problems faced by users of FolderShare. I have to be honest, even though FolderShare appears to be part of Windows Live, I haven't heard much about it. It's not advertised on Windows Live betas and hasn't been talked about much by any of the Windows Live bloggers. For those of you who don't know: FolderShare allows you to synchronize files across multiple computers and access or share files with colleagues and friends. You no ......

Posted On Wednesday, November 21, 2007 11:36 PM

IASA Tampa Chapter - November 2007 Meeting
The Tampa Bay chapter of the International Association of Software Architects (IASA) is dedicated to building a community of professionals interested in topics related to software architecture. This organization welcomes all interested professionals. Whether you are a senior enterprise architect at a fortune 100 company or an aspiring architect with only a few years of experience. The next meeting will be Wednesday, November 28 from 6:30 PM - 8:00 PM at the Microsoft offices in Tampa. The speaker ......

Posted On Friday, November 9, 2007 12:43 AM

MIX08: The Next Web Now
March 5 - 7, 2008The VenetianResort Hotel CasinoLas Vegas, Nevada Now in its third year, MIX is an intimate opportunity for cutting-edge technical, creative and business strategists to engage Microsoft in a conversation about the future of the web. Come explore the latest wave of opportunities and help redefine the boundaries between: content and commerce, PC and TV, Windows and the Web. The conference focuses mostly on Web technologies, such as Silverlight, but will also cover some of the desktop ......

Posted On Thursday, November 8, 2007 8:44 PM

Windows Live Messenger Presence and Messenger IM Control
The Windows Live Messenger team has just announced a new feature that allows you show your Messenger presence and receive instant messages from the web. The Windows Live Messenger IM Control lets people on the Web reach you in Messenger by showing your Messenger status on your web site, blog, or social networking profile. The IM Control runs in the browser and lets site visitors message you without installing Messenger first and is supported in IE6, IE7, and Firefox 2.0 on Windows and Firefox 2.0 ......

Posted On Wednesday, November 7, 2007 11:50 AM

Windows Live Applications Release Versions
I mentioned yesterday that the latest wave of Windows Live applications have been released. Thinking about it a little bit more, I realized that other than the "Beta" tag being removed from the splash screens and/or title bars there is no way to know if you have the latest version. Here are the release version numbers for the Windows Live applications: Windows Live Application Release Version Messenger Version 2008 (Build 8.5.1302.1018) Mail Version 2008 (Build 12.0.1606) Writer Version 2008 (Build ......

Posted On Wednesday, November 7, 2007 11:01 AM

Visual Studio 2008 and .NET Framework 3.5 November Release

During the keynote address at Microsoft TechEd Developers 2007 in Barcelona, Microsoft officially announced that Visual Studio 2008 and the .NET Framework 3.5 will be released by the end of November 2007. The .NET Framework 3.5 will also be available separately from Microsoft Update. The global launch event is still scheduled for February 27, 2008.

Posted On Tuesday, November 6, 2007 11:02 AM

Personalized Live Event web addresses
Not too long ago I talked about the Windows Live Spaces URL Confusion, and the really cryptic URLs being used for SkyDrive and Live Events. Today, I found something that makes Live Event addresses a little bit better. I'm not sure if this has always been available or if it's new, but either way it's a feature that is not obvious at all. I'm talking about the "Personalize your web address" option that is available from the event settings page (if you've already created the event) or from the create ......

Posted On Saturday, November 3, 2007 9:42 AM

Windows Live Calendar
Windows Live Calendar was just released as a Beta tonight. It features the Wave 2 UI, so it integrates nicely with the other Windows Live services. The first thing you will notice after the new interface (which is much improved over the older Calendar) is that none of your "Calendar Classic" events will be present. Unfortunately, the integration story doesn't get much better. The Calendar link in Windows Live Hotmail still sends you to the classic Calendar, even if you've selected the new Windows ......

Posted On Friday, November 2, 2007 10:56 PM

MCP 2008 Live Meeting Webcast
If you are an MCP hopefully you attended one of the two webcasts with George, Trika Harms zum Spreckel, and Bill Wall (Director of Certification Strategy) today. Some of the information has already been talked about, but there were also some new items. Those new items center around the Microsoft Certified Architect (MCA) program, and specifically the Ranger program. The Ranger program is designed to Provide top tier training and certification on Microsoft products for building a community of trusted ......

Posted On Wednesday, October 31, 2007 10:53 PM

IASA Tampa Chapter - October 2007 Meeting
Earlier this month, I talked about the inaugural meeting for the International Association of Software Architects (IASA) Tampa Chapter, which was held last night (October 30th). We had about 20 people show up, mostly from the Tampa area. Tom Fuller kicked off the meeting by talking about the IASA and what the goals are for the Tampa Chapter. After that, Jeff Barnes gave a talk on "The role of a Software Architect". I want to point out that even though this event was hosted by Microsoft and everyone ......

Posted On Wednesday, October 31, 2007 10:35 PM

Subtext and MySpace China
Phil and Steve beat me to announcing, but Phil has officially confirmed that MySpace China is using a modified version of Subtext for it's blogging engine. This is incredible news as MySpace China gets around 100 million page views, of which about 1 million go to the blog. What does that mean? Well, for starters it means that Subtext is definitely a scalable and robust blogging engine. It also means that Subtext and it's skinning capabilities can support double-byte Kanji based character sets with ......

Posted On Monday, October 29, 2007 10:06 AM

Windows Live UI Identity Crisis
A few days after I talked about the Windows Live Spaces URL Confusion, the guys at LiveSide.net talked about a related issue. Apparently, their issue stemmed from a post on Windows Live Wire announcing that Windows Live Home has been officially released. Their complaint? The lack of consistency and cohesive identity for Windows Live. They make an excellent point about the main landing pages for the various Windows Live services: Windows Live Home (home.live.com) Windows Live (get.live.com) Windows ......

Posted On Sunday, October 28, 2007 10:18 PM

Windows Live Photo Gallery Rocks!
I haven't posted too much about Windows Live Photo Gallery, but after spending a few hours with it tonight, I have to say that it absolutely rocks! I have a fairly large collection of photos from various family vacations, technical events I've been to, family, friends, and my cats. These photos had been spread across 3 different disk drives and some of them were nearly impossible to find since they were scattered across those drives into different folders. I'm not sure what prompted me to do this, ......

Posted On Saturday, October 27, 2007 3:17 AM

Microsoft is going SubSonic
Short on the heels of Phil moving to Microsoft to work on the new ASP.NET MVC Framework is the announcement that Rob Conery, the creator of SubSonic, is also moving to Microsoft. Rob will be building out SubSonic to sit on top of ASP.NET and the new MFV Framework. So, as Rob puts it, "SubSonic will be the convention-driven toolset for Microsoft's new MVC framework." Fortunately for all of us, SubSonic hasn't been bought and will remain open source under the MPL 1.1 license it currently has. This ......

Posted On Friday, October 26, 2007 9:06 PM

Windows Live Gallery Updates
In keeping with the growing number of Windows Live services that are upgrading to the Wave 2 UI, the Windows Live Gallery is the latest to receive the facelift. Just in case you aren't familiar with Windows Live Gallery, it's the online site where users can personalize their Windows Live experience. The update also adds a new area for Windows Live Events gadgets. The update has also added support for the Microsoft Points system, which is also used by the Zune and Xbox Live. It adds the potential ......

Posted On Thursday, October 25, 2007 10:46 PM

Debugging Finalizers
For the last few years, I've tried to make more .NET developers aware of the IDisposable interface, the Dispose pattern, and the importance of having at least a basic understanding of how the Garbage Collector works. I have one article on The Code Project and various blog posts (see here, here, here, or here) that talk about these topics. I have also presented an advanced Memory Management presentation at various Code Camps. In the November 2007 issue of MSDN Magazine, Stephen Toub presents a solution ......

Posted On Thursday, October 25, 2007 10:24 PM

Windows Live ID now supports Windows CardSpace
Well, this isn't actually breaking news, but at the end of August, Windows Live ID added support for Windows CardSpace as a new way to sign in to any Live ID enabled website. Using CardSpace means you don't use a password to sign in, instead you send your Information Card. Windows Vista users already have everything needed to use CardSpace. For Windows XP or Windows 2003, you will need to install IE 7.0 and .NET 3.0 with CardSpace support. Once you have everything you need to use CardSpace, you can ......

Posted On Thursday, October 25, 2007 9:57 PM

Linked Windows Live IDs
For those that have multiple Windows Live IDs, you can now link your Windows Live accounts together and easily switch between them using the Linked Windows Live ID service. To set this up, go to https://account.live.com and look for the section called Linked Windows Live IDs. If you haven't already linked any Live IDs, you will see a link titled "Link Windows Live IDs", otherwise the link will be "Manage your linked IDs". Once you have linked your IDs, you will need to sign out and sign back in again. ......

Posted On Thursday, October 25, 2007 9:50 PM

Live Search Box Updates
Earlier today, I talked about Live Search and how to add a Live Search Box to your website. In those posts, I talked about the 3-step wizard that allows you to easily add the Advanced Search Box to your site and the fact that it doesn't allow you to specify multiple search macros. If you look at the search results from my blog now, you will see that there are now 5 new tabs in the search results. (Before I only had 2, "My blog" and "Web".) These tabs show search results from the entire GeeksWithBlogs ......

Posted On Sunday, October 21, 2007 2:37 PM

Adding a Live Search Box to your website
As I was adding the Live Search Box to my blog, I realized that it wasn't entirely clear how to find the page that explains how to do this. The actual main link is on the Live Search homepage and is the "For Webmasters" link. However, this link actually takes you to the Windows Live Help site section titled "Welcome to Live Search Site Owner Help". There are two different Live Search boxes you can add to your site. The Basic Search Box and the Advanced Search Box. Both of these search boxes can be ......

Posted On Sunday, October 21, 2007 12:44 PM

Virtual Earth v6
A few days ago, Microsoft released a pretty major upgrade to Live Search Maps with the release of the Virtual Earth 6 API. There are some pretty cool enhancements, and, with the exception of two bugs found by Joe Healy, is as simple as change the "v=5" parameter in your link to "v=6". I'm not going to list all of the upgrades, since there are a lot of them. If you want to see the full list, check out the VE developer blog or the online SDK. I will list some of the features that are my current favorites ......

Posted On Sunday, October 21, 2007 11:36 AM

Live Search
At the end of September, Microsoft launched a major upgrade to Live Search that makes it faster and easier to use. Some of the areas that have been improved are: Relevance: The size of the Live Search index has quadrupled, which means more correct results for searches. Enhanced ranking algorithms, auto-spell correction and better stop word handling help return the best results. Speed: Pages load much faster than before. Streamlined look and feel: The end-to-end experience has been improved. For example, ......

Posted On Sunday, October 21, 2007 11:09 AM

Model View Controller vs Model View Presenter
You've probably heard all of the buzz around Microsoft's new ASP.NET MVC Framework. This is a framework methodology that divides an application's implementation into three component roles: models, views, and controllers. You've probably also heard about a slightly different approach called Model View Presenter (MVP). If you ever wanted to know the difference between the MVC and MVP patterns and why you should use one over the other, Todd Snyder from Infragistics has an excellent explanation. He sums ......

Posted On Friday, October 19, 2007 9:24 PM

FxCop 1.36 Beta
I just came across this post the other day by the Visual Studio Code Analysis Team talking about the latest beta release of FxCop. There are a lot of changes since the FxCop 1.35 release, which was a while ago. Some of the changes are: Over 200 bug fixes that reduce the amount of noise, missing analysis, and rule crashes. Support for analyzing anonymous methods and lambda expressions. New globalization, design, and usage rules. Better support for C++/CLI and the .NET Compact Framework. Performance ......

Posted On Friday, October 19, 2007 12:48 PM

Windows Live Spaces URL Confusion
A few days ago I talked about Windows Live SkyDrive Updates and the new Windows Live Events, both of which are part of Windows Live Spaces. Since then, I've been browsing around the Windows Live site and checking out how things are working and noticed a few really annoying inconsistencies with the URLs being used for all of the different services. When you sign in to your Windows Live account, you are presented with the following secondary toolbar: If you look at the URLs used for each of these links, ......

Posted On Tuesday, October 16, 2007 12:47 AM

South Carolina Code Camp Sessions
If you're going to the South Carolina Code Camp 2007, be sure to check out my sessions. I'm giving two talks: Code Styles and Standards (Chalk Talk), 8:30 AM - 9:40 AM Garbage Collection in .NET, 11:10 AM - 12:20 PM If you make it and go to my sessions (or even if you don't), the presentations are available for download on Windows Live SkyDrive in the South Carolina Code Camp folder ......

Posted On Friday, October 12, 2007 10:47 AM

Windows Live SkyDrive Updates
Along with Microsoft's recently introduced Windows Live Events, a few minor updates were made to Windows Live SkyDrive as well. The new features are an increase in the online storage space from 500MB to 1GB. In addition to more storage space, all public folders now have an RSS feed. To subscribe to a folders RSS feed, go to the public folder you're interested in and click the icon at the top right of the page. The SkyDrive team has also made it easier to share folders with people that aren't in your ......

Posted On Friday, October 12, 2007 9:51 AM

Standalone FxCop Multi-Targeting Rules
Last week, I talked about a new FxCop rule that Krzysztof released to help deal with some issues around multi-targeting. In one of the comments to this post, I was asked to add this rule to the Subtext FxCop rule set. As I started working on this, I discovered that the sample project Krzysztof provided was compiled against the .NET Framework 3.5 and would not load with the stand-alone version of FxCop. I spent a little bit of time reviewing the code in the sample project and, with only a few minor ......

Posted On Tuesday, October 9, 2007 11:47 PM

Multi-Targeting FxCop Rules
Last month, I talked about multi-targeting, one of the new features in Visual Studio 2008. According to Krzysztof, the idea of Red and Green bits made this possible. Everything sounds good, so far. However, there is a very limited number of APIs that have been added to the Red bits that the multi-targeting system isn't able to detect. What this means is that if you set the target to the .NET Framework 2.0 and use one of these new changes, the compiler will not issue a warning or an error. The application ......

Posted On Friday, October 5, 2007 1:32 AM

.NET Framework Library Source Code
I'm sure most of you are familiar with Reflector. If you're not you should download it immediately and become familiar with it. It is an invaluable tool for looking at .NET assemblies and decompiling them to C#, Visual Basic or even IL. I have used both Reflector and Rotor extensively to investigate how the .NET runtime is actually doing things. I have done this for various reasons, including trying to track down bugs in my code. Why would I need to look at what the runtime is doing to find a bug ......

Posted On Friday, October 5, 2007 12:00 AM

Community Credit Winner for September
Well, I am now a 4-time Community Credit winner! I first won in February, and then again in April and June. This time around, I took 7th place out of 7,395 members. The prize this time is pretty cool, as well...although not as cool as the laser pointer I won last time. It certainly brings back memories of simpler times, when game consoles first starting appearing in the consumer market. Of course, I'm talking about Atari and Pong. The most amazing thing about these key chains is that they contain ......

Posted On Thursday, October 4, 2007 11:24 PM

Migrating from Visual Studio 2003 to 2008
For those of you who are still developing with Visual Studio 2003 and .NET 1.x and want to take advantage of the enhancements in Visual Studio 2008 may have thought they were out of luck. There are breaking changes between the versions of the CLR and the Framework itself. Daniel Moth provides an excellent post that describes some of the issues facing you and provides a list of resources to help with the migration, including some lists of breaking changes between .NET 1.1 and 2.0 ......

Posted On Monday, October 1, 2007 9:50 AM

Visual Studio 2008 Multi-targeting
One of the new features in Visual Studio 2008 is the ability to target a project to any version of the .NET Framework from 2.0 and up. This is an excellent feature as it allows the entire development team to work with the same version of the IDE. Since it's a project based setting, it also allows you to mix projects in the same solution. The interesting thing about multi-targeting is that it potentially allows developers to share projects across different versions of the IDE as well. Starting with ......

Posted On Sunday, September 30, 2007 11:24 AM

Catching (Handling) Exceptions in .NET
It seems there is a lot of confusion on how to properly catch exceptions in .NET, especially among newer developers. There are a lot of good references available on MSDN and on the web, but a lot of these are either very advanced or just hard to follow. I'm not going to discuss the CLR exception classes and go into the internals of how the .NET runtime generates exceptions. I don't want to discount this information, as it is helpful to know, but it isn't essential to understanding how to properly ......

Posted On Wednesday, September 26, 2007 5:42 PM

The history of C#
I just came across a very interesting post from James Kovacs that describes how C# and .NET evolved. I had blogged about this almost a year ago, but James' post adds some additional background. Around 1997, Microsoft started a project that was internally known as Project Lightning (and also known as Project 42). The name "Project 42" was most likely because DevDiv (the Microsoft Developer Division) is in Building 42, which (as James points out) is probably an homage to The Hitchhiker's Guide to the ......

Posted On Wednesday, September 26, 2007 12:13 PM

Generic Enum Parsing with Extension Methods
Not too long ago, I talked about Extension Methods in .NET 3.5 and also about a way to provide data binding an enum type with descriptions. Today, Simo talked about how often he forgets the syntax of parsing a string value to it's Enum value. In his post, he refers to a generic Enum parse method that Scott Watermasysk created just over a year ago (in 2006). In Scott's post, Kenny Kerr points back to his article (from 2005) about how to create a generic parse method in C++/CLI. Reading through all ......

Posted On Tuesday, September 25, 2007 3:32 PM

Certification Junkies
A lot of you probably already know my feelings on certifications, particularly the Microsoft certifications. Even though I am an MCPD, I took what appears to be the "non traditional" approach and actually went into the exams trusting my knowledge and experience to see me through. I didn't spend hundreds of dollars on study courses or materials and study for months. Lately, I have been seeing a lot of questions regarding how one earns a Microsoft certification. Most of these questions seem to come ......

Posted On Sunday, September 23, 2007 11:29 AM

Subtext Security Patch
Phil recently blogged about a newly discovered security vulnerability in the Subtext blogging engine due to a flaw in the way the FCKEditor control was integrated. As far as we know, no one was seriously affected and both a fix and a workaround were found very quickly by the core development team. If you are running Subtext 1.9.x, a patched version of the Subtext.Providers.BlogEntry... is available as a zip file. After you download the patch (Subtext1.9.5-PATCH.zip 7.72KB) , unzip ......

Posted On Friday, September 21, 2007 11:24 PM

New lead for the Visual Studio team
Jason Zander is moving from the .NET team to lead the Visual Studio team. This covers a lot of products: Mobile (VSD and NETCF) Phoenix C++, C#, VB, JavaScript DLR (including IronRuby and IronPython) Office Tools (VSTO/VSTA) the core VS IDE platform Popfly With the release of Visual Studio 2008 wrapping up, Jason will start looking at the next release of Visual Studio which will ship after Rosario ......

Posted On Friday, September 21, 2007 11:05 PM

Phil Haack moving to Microsoft
Even though Phil just recently started working at Koders.com and even more recently became a Microsoft MVP, he's leaving Koders to move (eventually) a bit farther north and is joining Microsoft to work with Scott Guthrie on the new MVC framework for ASP.NET. He starts at Microsoft on October 15. Best luck, Phil. I expect to see some really great things in the new framework. I'm just a bit envious, too. :) ......

Posted On Friday, September 21, 2007 10:56 PM

Parallel FX Library
In the latest online edition of MSDN magazine, there are two articles describing some upcoming additions to the .NET Framework that will add support for parallel processing. These additions are part of what is called the Parallel FX Library, which is currently in development. A CTP should be released sometime by the end of this year. The two areas of the Parallel FX Library are the Task Parallel Library (TPL) and Parallel LINQ. The Task Parallel Library provides optimized managed code for multi-core ......

Posted On Friday, September 21, 2007 8:16 PM

Add vs. AddRange
It was recently pointed out to me that not many developers are familiar with the TreeNodeCollection.AddRange method and how it differs from the TreeNodeCollection.Add method. Even though I am focusing specifically on the methods available through the TreeNodeCollection, exposed by the TreeView.Nodes property, the concepts apply equally to any of the collections that expose both an Add and an AddRange method. Looking at the MSDN documentation, AddRange "adds an array of previously created tree nodes ......

Posted On Friday, September 21, 2007 4:55 PM

Using vs. Using
"Deuces you say", there is no difference...right? Wrong! In the C# language, using is a keyword. Unfortunately, this is one of those times that a single keyword has multiple uses: As a preprocessor directive used to create an alias for a namespace or to import types defined in other namespaces. As a statement used to define a scope at the end of which an object will be disposed. It's unfortunate that Microsoft chose to attach multiple meanings to this keyword as it tends to cause a lot of confusion ......

Posted On Tuesday, August 28, 2007 6:59 PM

Latest email spam
I don't know about you, but I get lots of email spam, most of which I just completely ignore. I do, however, periodically review what lands in my "Junk e-mail" folder to make sure something wasn't put there by mistake. As a result, the first email in the list always ends up getting displayed. I'm not trying to make a political statement in any way at all, and whatever your views on the current U.S. military actions in Iraq aside, this latest form of email spam is just downright revolting. This spam ......

Posted On Tuesday, August 28, 2007 6:07 PM

Data Binding an Enum with Descriptions Article Update for .NET 3.5
Recently, I posted an article on Code Project about data binding an enumerated type with support for custom and localizable descriptions to any UI element that supports data binding. It was pointed out in the article comments that this class is a perfect candidate for .NET 3.5 extension methods. I have just updated the article to show how easy it is to convert the methods to be extension methods ......

Posted On Sunday, August 26, 2007 1:00 PM

.NET 3.5 changes to GC.Collect
During my talk on Garbage Collection in .NET at the Jacksonville Code Camp 2007, Joe Healy mentioned that I should take a look at the changes made to the GC in the .NET Framework 3.5 release. (This is based on the Beta 2 release, but it should be pretty stable at this point.) After doing some research using the SSCLI 2.0 code base to look at the GC class as it exists in .NET 2.0 and Reflector to look at it in .NET 3.5, I found the single change that was made. (For those of you wondering why I used ......

Posted On Sunday, August 26, 2007 11:27 AM

Jacksonville Code Camp Sessions
If you're going to the Jacksonville Code Camp 2007, be sure to check out my sessions. I'm giving two talks: Garbage Collection in .NET, Room 140/141, 10:20 AM - 11:30 AM Code Styles and Standards (Chalk Talk), Room 102, 1:50 PM - 3:00 PM Jacksonville Folder Jacksonville If you make it and go to my sessions (or even if you don't), the presentations are available for download on Windows Live SkyDrive in the Jacksonville Code Camp folder ......

Posted On Friday, August 24, 2007 11:28 PM

Jacksonville Code Camp Session Calendar
In keeping with the work I did for Tech·Ed 2007 and the Tampa Code Camp to create Internet Calendars for the different technical tracks, I have created a similar calendar for the Jacksonville Code Camp. The calendar is available from Microsoft Office Online as an Outlook 2007 Internet Calendar Subscription. If you are still using Outlook 2003, there is an open-source add-in that allows you to work with Internet Calendars ......

Posted On Wednesday, August 22, 2007 5:03 PM

C# 3.0 Extension Methods Follow Up
As I mentioned in my previous post, if you create an extension method with the exact same signature as an existing method your extension will be ignored. However, one thing that I didn't mention is that if the extension method has a different signature, it will show up in that methods overload list. To make this a little bit clearer, if you create the following extension method 1: namespace DataValidationHelpers 2: { 3: public static class DataValidation 4: { 5: public static string ToString(this ......

Posted On Monday, August 20, 2007 12:05 PM

Difference between "throw" and "throw ex" in .NET
Exception handling seems to be a common problem for .NET developers, particularly younger developers. We pretty much all know that you should wrap operations that have the potential for failing in a try/catch block if you are interested in being able to do something about the error that occurred. I'm not going to talk about the rules and guidelines for using exception handling. Instead I'm going to focus on a particular aspect of exception handling, which I tend to call exception bubbling. Exception ......

Posted On Monday, August 20, 2007 11:26 AM

C# 3.0 Extension Methods
At one time or another most of us have wished we could add functions to one of the intrinsic .NET classes. The solution has always been to either create a static (or sealed) class that contains these "helper" functions or derive a new class that adds the desired functionality. A good example of this is testing a string to see if it contains only alphanumeric characters. In order to do this, we need to define a helper class: 1: namespace DataValidationHelpers 2: { 3: public static class DataValidation ......

Posted On Sunday, August 19, 2007 1:06 AM

.NET Framework version detection updated for .NET 3.5 Beta 2
My article on using managed code to detect what versions and service packs of the .NET Framework are installed on a system has been updated to account for a minor registry change between the January 2007 CTP and Beta 2. Along with that article, the article on using managed code to detect if IIS is installed and ASP or ASP.NET is registered has also been updated with the same fix ......

Posted On Friday, August 17, 2007 10:26 PM

URL File Downloader for .NET Updates, Part 2
Just yesterday I mentioned that I updated my FileDownloader article and class on The Code Project. In that post, I mentioned that there was another update pending that added the ability to set the User-agent HTTP header. I received the notification from The Code Project this morning that they have updated the article so this new feature is included in the download. Remember, these changes are only available in the .NET 2.0 version of the class ......

Posted On Friday, August 17, 2007 9:58 AM

My profile
I finally felt it was time to put an "About me" type entry on my blog so you can get to know me a little bit better. There are already several links to various profiles that I maintain on LinkedIn, The Code Project, and Community Credit, but they don't really tell you who I am. I have also started to become more involved in the off-line community as well by speaking at different events. As a result, I have consolidated a lot of the information available in the different profiles, added my speaking ......

Posted On Wednesday, August 15, 2007 11:09 PM

About me...
Scott J Dormanhttp://about.me/scott... Profile I am a Microsoft C# MVP, author, speaker, blogger, and creator of WP Requests and WinMetro Requests. I've been involved with computers in one way or another for as long as I can remember, but started professionally in 1993. Although my primary focus right now is commercial software applications, I prefer building infrastructure components, reusable shared libraries and helping companies define, develop and automate process standards and ......

Posted On Wednesday, August 15, 2007 10:16 PM

SlickEdit Gadgets for Visual Studio 2008
While I was getting the Code Project Add-in for Visual Studio working on Visual Studio 2008 Beta 2, I decided to see if I could get the SlickEdit Gadgets for Visual Studio 2005 working as well. It turns out, with a little bit of registry tweaking, they work under Visual Studio 2008 Beta 2 without any problems (so far). This is by no means a supported configuration from SlickEdit and requires modifying the registry, so you should do so only after making the necessary backups and any other precautions ......

Posted On Wednesday, August 15, 2007 9:43 PM

The Code Project Browser Add-in for Visual Studio
I received an email today through my blog from one of the developers at SlickEdit, who also happens to be a member of The Code Project community, letting me know about a new Visual Studio Add-in they have developed. You may remember I blogged about the free SlickEdit Gadgets, a really great set of Add-ins for Visual Studio. Since I am also a member of The Code Project community, I spend a lot of time on the web site answering forum questions and reading the articles posted. I also spend a lot of ......

Posted On Wednesday, August 15, 2007 8:29 PM

Data Binding an Enum with Descriptions on Code Project
I decided to turn my blog post on data binding an enum into an article on Code Project as well. I did this for two reasons: It gives the topic a much wider audience It provides a ready to use solution with the source code so you don't have to copy & paste it from the blog entry This article (or blog post) should provide a clean and simple way to allow you to bind an enumerated type with support for custom and localizable descriptions to any UI element that supports data binding ......

Posted On Sunday, August 12, 2007 10:47 PM

How many MCPD: Windows Developers are there?
A few months ago, I earned my Microsoft Certified Professional Developer (MCPD): Windows Developer certification. At that time, I had mentioned that there were not many people who have earned this particular certification. That comment was based on feedback from the Microsoft Certified Trainers (MCTs) that were helping run the testing center at Tech·Ed. It turns out that last month, Microsoft released the official statistics of the number of Microsoft Certified Professionals (MCPs) around the world. ......

Posted On Sunday, August 12, 2007 3:52 PM

C# 3.0 Object Initializers
A few days ago, I wrote about automatic properties in the upcoming release of C#. While this is a cool feature, it does have some practical limitations once you need to go beyond simple get/set logic. Another new feature coming up is the idea of object initializers. Object initializersare an important aspect of the Linq extensions to .NET, but they aren't limited to being used only in Linq expressions. If you are familiar with attribute programming, you have probably used something similar. In most ......

Posted On Sunday, August 12, 2007 2:23 PM

Windows Live SkyDrive
A while ago, I blogged about Windows Live Folders being in a closed beta. Yesterday, they just announced a name change to Windows Live SkyDrive and their first public beta. According the the SkyDrive team, this beta has: An upgraded look and feel — new graphics to go along with the new features! "Also on SkyDrive" — easily get back to the SkyDrives you’ve recently visited Thumbnail images — now you can see thumbnails of your image files Drag and drop your files — Drag and drop your files right onto ......

Posted On Friday, August 10, 2007 10:41 AM

Visual Studio 2008 Code Editor Improvements
Scott Guthrie has a great blog post about some really cool editor improvements in Visual Studio 2008. As Scott points out, one of the big annoyances with VS2005 as the fact that the intellisense window obscures any code behind it. In VS2008, if you hold down the "Ctrl" while the Intellisense window is visible it will switch to a semi-transparent mode that allows you to see the code beneath it. When you release the "Ctrl" key, it switches back to normal. There are a lot of improvements for VB developers, ......

Posted On Wednesday, August 8, 2007 9:16 PM

StarTech.com Print Server
I recently straightened up my home office and decided to move the printer to a different corner of my desk. Of course, the corner I wanted it at was about as far away from the computer as possible and I didn't have a long enough parallel port cable (and I'm not even sure they make them long enough anyway) so I decided to get a print server. I already have a wireless 4-port router and an old but trustworthy HP LaserJet 2100, so all I needed was a print server. I know I could have upgraded to a newer ......

Posted On Wednesday, August 8, 2007 8:53 PM

Referenced on Wikipedia
I periodically look at my blog statistics, more out of idle curiosity than anything else. As part of that, I look at the referrers to the various blog posts. Today, as I was browsing my referrer list, I noticed that one of the referrers was Wikipedia. Intrigued, I took a look at the entry, and my blog post about the Visual Studio 2008 launch date was listed as a reference ......

Posted On Tuesday, August 7, 2007 7:48 PM

Visual Studio "Rosario" CTP
Short on the heals of the Visual Studio 2008 Beta 2 release, we will soon have the first public Community Technology Preview (CTP) of Visual Studio "Rosario". According to Brian Harry, Microsoft product unit manager for Team Foundation Server, Microsoft has been working on Rosario since September of last year. The result should be a shorter time period between the 2008 release and the Rosario release. There aren't many details about what will be included in the Rosario release, but the CTP should ......

Posted On Friday, August 3, 2007 12:00 AM

MZ-Tools 6.0
In case you don't know about MZ-Tools, it is easily the best Visual Studio .NET add-in available. This started in 2000 as an add-in for the Visual Basic 6 IDE, which is where I was first introduced to it. Since then, I have followed it's evolution into a Visual Studio .NET add-in for all four VS.NET releases. MZ-Tools has just released version 6, which provides support for all of the VS.NET releases, including Visual Studio 2008, into a single add-in. There were a few minor bug fixes and enhancements ......

Posted On Thursday, August 2, 2007 11:42 PM

Data Binding an Enum with Descriptions
Every once in a while I need to bind an enumerated type to a Windows Forms control, usually a ComboBox. The simplest is to use the Enum.GetValues() method, setting its result to the DataSource property of the ComboBox. If you have the following enum: 1: public enum SimpleEnum 2: { 3: Today, 4: Last7 5: Last14, 6: Last30, 7: All 8: } You can bind it to a ComboBox like this: 1: ComboBox combo = new ComboBox(); 2: combo.DataSource = Enum.GetValues(typeof(Simpl... While this does work, there are ......

Posted On Thursday, August 2, 2007 12:21 AM

Windows PowerShell e-book
If you are a PowerShell developer, or are just interested in learning more about Windows PowerShell, be sure to check out this 44 page e-book from Microsoft Switzerland (yes, it's in English). The associated demos are also available ......

Posted On Saturday, July 28, 2007 10:35 AM

Office Business Applications - OBA Central
Up until now, if you were developing an Office Business Application (OBA) there weren't a lot of resources available. OBA Central means to change that. It is a community site that brings together Microsoft, Microsoft OBA ISVs, services partners and customers, making it easy to connect. There are already a few Microsoft Partners featured on the site ......

Posted On Saturday, July 28, 2007 10:13 AM

Club Internet: le duel

Reading Joe Healy's blog, I came across a post about a really impressive bit of advertising done by MSN France. It's in French and is a Flash app (not Silverlight, which is disappointing), but it is still very impressive.

Posted On Saturday, July 28, 2007 10:02 AM

ASP.NET Futures and Silverlight
To go along with the release of Visual Studio 2008, Microsoft has also released the Release Candidate (RC) 1 of Silverlight 1.0 and a refresh for Silverlight 1.1. You can get more information about the releases on Tim Sneath's blog. If you install both Silverlight 1.1 and Visual Studio 2008, be sure to check out the Microsoft Silverlight Alpha Tools for Visual Studio 2008 Beta, which is an add-on for Visual Studio to provide a Silverlight project system for developing Silverlight applications in ......

Posted On Saturday, July 28, 2007 9:37 AM

Visual Studio 2008 Beta 2 - Now Available
Visual Studio 2008 Beta 2 has been officially released as both disc images and Virtual PC (VPC) images. After the installation has finished, you should run this script to ensure that the installation of .NET Framework 3.5 Beta 2 will not affect the development of ASP.NET AJAX 1.0 applications. To go along with this, the Microsoft .NET Framework 3.5 Beta 2 is also available and includes a go-live license. The Framework is expected to be released near the end of 2007. It will be included in Visual ......

Posted On Saturday, July 28, 2007 9:19 AM

Using Garbage Collection in .NET
Garbage collection is one of the most fundamental aspects of the .NET Common Language Runtime (CLR) and is available to all .NET programming languages. Unfortunately, it also seems to be one of the more difficult concepts to understand correctly, both how it works and how to use it. Understanding how the garbage collection system in .NET works is important, but it isn't as important as understanding how to use it correctly. Think about your car...we generally don't have intimate knowledge of how ......

Posted On Saturday, July 21, 2007 7:06 PM

Only Chalk Talk at Tampa Code Camp
As I was building the Internet Calendar for Tampa Code Camp, I realized that I have the dubious distinction of being the only Chalk Talk session. I am a little bit surprised since this format (which is very similar to the Birds of a Feather session format from Tech·Ed) provides a good round-table interactive discussion on the topic. If you are going to Tampa Code Camp, be sure to check out my session on Code Style and Standards. The session is scheduled at 10:50 AM in Room 451. As a teaser to get ......

Posted On Tuesday, July 10, 2007 8:52 PM

Visual Studio 2008 release date
At the Microsoft® Worldwide Partner Conference today, Microsoft Chief Operating Officer Kevin Turner announced that Windows Server® 2008, Visual Studio® 2008 and Microsoft SQL Server™ 2008 will launch together at an event in Los Angeles on Feb. 27, 2008, kicking off hundreds of launch events around the world. Also in the works is Beta 2 for Visual Studio 2008, which should be available as a free download in the next three weeks and will also support a go-live license ......

Posted On Tuesday, July 10, 2007 3:47 PM

Tampa Code Camp Session Calendar
In keeping with the work I did for Tech·Ed 2007 to create Internet Calendars for the different technical tracks, I have created a similar calendar for Tampa Code Camp. The calendar is available from Microsoft Office Online as an Outlook 2007 Internet Calendar Subscription. If you are still using Outlook 2003, there is an open-source add-in that allows you to work with Internet Calendars ......

Posted On Tuesday, July 10, 2007 12:16 PM

Development Managers
Recently, Jason posted about bad development managers. Like Jason, I was also told early in my career that "Sales and Marketing is the natural enemy of Development". I also learned early on that this isn't entirely true. While it is true that the sales team will sell products that don't exist yet and features that don't exist or that are technical implausible to build in the timeframe promised, it is generally due to customer demand. Whether you like it or not, if you develop commercial software ......

Posted On Monday, July 9, 2007 5:27 PM

SourceForge.net Community Choice Awards
Thank you to everyone who nominated Subtext for a Community Choice Award. Your nominations have made Subtext a finalist in the following categories: Most Collaborative Project: The project most likely to accept your patches and value your input. Best Project for Communications: The best project for talking to your friends or sharing information. I think both of these categories very accurately reflect what Subtext is all about. It's great to see that the community feels the same. Voting has already ......

Posted On Monday, July 2, 2007 8:35 PM

Tech·Ed 2007 Images

I have finally put up my pictures from Tech·Ed 2007. Since I forgot to bring my digital camera with me, these were taken on my cell phone so the quality isn't that great.

Posted On Friday, June 29, 2007 4:39 PM

Programming for the masses
Over the last year or so I have noticed a disturbing trend brought about by the idea of "brining programming to the masses". Last April, according to Microsoft, there was a "growing community of 18 million recreational and hobbyist developers." Even IBM was getting in to the mix, with a project called QEDwiki. I am a professional developer and have been a developer for over 14 years. I have a B.S. degree in Computer Science, did an internship at Martin Marietta (now Lockheed Martin) while in school, ......

Posted On Friday, June 29, 2007 10:50 AM

The best developers are generally underpaid
Earlier this week one of my good friends, Jason let me know that he just started a new blog. The thing that's different about this blog is that it doesn't focus on the technical side of things, but rather focuses on the software development industry as a whole. Jason is attempting ...to raise awareness of how the Industry succeeds and fails, where it all seems to be going, and what has to happen before we can dig our way out of Dev.Hell and ascend to Tech.Paradise. What I find interesting about this ......

Posted On Thursday, June 28, 2007 12:56 PM

.NET Open Source and Microsoft
Jeff Atwood of CodingHorror fame, as part of my new advertising initiative, is teaming up with Microsoft to donate $10,000 in support of open source .NET projects. From Jeff's blog, he is focusing on .NET open source projects ...because open source projects are treated as second-class citizens in the Microsoft ecosystem. Many highly popular open source projects have contributed so much to the .NET community, and they've gotten virtually no support at all from Microsoft in return. I'd like to see ......

Posted On Thursday, June 28, 2007 9:56 AM

SourceForge.Net 2007 Community Choice Awards
I know I'm a little late to the nomination party, but if you haven't already nominated your favorite SourceForge project, please take the time to do so. It only takes a minute, and the Subtext development community would definitely appreciate it. The SourceForge.net team is proud to present our second annual Community Choice Awards. Winners are selected by community members like you, and it's that time again! Cast a ballot for your favorite projects now and make your voice heard. The Community Choice ......

Posted On Thursday, June 28, 2007 9:18 AM

Visual Studio 2008
Now that Visual Studio "Orcas" finally has an official name, it's time to clear up the new confusion surrounding the different versions of the .NET Framework that will be available. Daniel Moth has an excellent post describing what he calls the Visual Studio 2008 stack that includes this graphic. The important thing that can be seen from this slide is that the CLR engine is the same in v2.0, v3.0, and v3.5 of the Framework. The major difference is the language enhancements (C# 3.0 and VB9), while ......

Posted On Tuesday, June 12, 2007 10:16 PM

Understanding the .NET Framework 3.5
Daniel Moth has an excellent post that explains what makes up the .NET Framework 3.5. This post also sparked a very good discussion on The Code Project. There are two elements that make up version 3.5 of the Framework: the "green bits" and the "red bits". This model is aimed at minimizing the impact of delivering new features and functionality. The red bits are those parts of the Framework that exist in release today, which include the .NET Framework 2.0 and 3.0 releases. The green bits are brand ......

Posted On Tuesday, June 12, 2007 9:59 PM

Microsoft patterns & practices
I hope by now everyone has heard of the Microsoft patterns & practices group. If you haven't heard of p&p, hopefully you've heard of the Enterprise Library. Just in case you haven't heard of either, Microsoft patterns & practices are Microsoft's recommendations for how to design, develop, deploy, and operate architecturally sound applications for the Microsoft application platform. The patterns & practices Enterprise Library is a library of application blocks designed to assist developers ......

Posted On Sunday, June 10, 2007 10:48 PM

MCPD: Windows Developer
It only took 14 years to decide to go after a Microsoft certification, but I decided it was probably time. My blog has been getting more and more visibility and those 4 little initials after your name add a lot of credibility in the industry. The certification that made the most sense for me to start with was Microsoft Certified Professional Developer: Windows Developer (MCPD: Windows Developer) certification. Just in case you aren't up on all of the different Microsoft certifications available, ......

Posted On Sunday, June 10, 2007 4:45 PM

Back from Tech·Ed 2007
Going from one extreme to another can be just a bit disconcerting. After spending a week in Alaska where I was almost completely disconnected from the world, I went straight into Tech·Ed 2007. If you weren't able to attend, make sure to check out Virtual Tech·Ed. You will find the keynote and some podcasts relating to some of the sessions. Things are about a week behind and there are a lot of podcasts queued up to be made available on the site, so keep checking back. I can't say that there was a ......

Posted On Sunday, June 10, 2007 9:48 AM

Tampa Code Camp 2007
Tampa Code Camp for 2007 has just been announced. Registration just opened on June 4, 2007 so there is still plenty of room, but there is a maximum attendance of 400 people so space will fill up quickly. This year, the event has moved to the St. Petersburg College (ICOT Center) in Largo, Florida and will be held on July 14, 2007. The new location promises larger rooms and state of the art AV equipment. If you have never attended Code Camp or don't know what it is, Code Camp is a free one day event ......

Posted On Wednesday, June 6, 2007 12:18 AM

"Acropolis" Community Technology Preview
One of the new technologies being announced at Tech·Ed is "Acropolis". If you have previously used the Microsoft Composite UI Application B lock (CAB) or the Smart Client Software Factory (SCSF), the announcement of the Acropolis should be very exciting news. Acropolis is a replacement technology for both CAB and SCSF and takes the things that were good about both of these and the lessons learned and adds the following: Full .NET support by being an integrated part of the .NET client framework and ......

Posted On Tuesday, June 5, 2007 11:21 PM

Microsoft Funding New Open-Source Digital IDs
Right on the heels of Microsoft's claim that free software like Linux violates 235 of its patents, they announced that they will be funding several new projects to develop open-source versions of the CardSpace technology used for digital information cards. As part of this effort, Microsoft released the Identity Metasystem under its Open Source Promise (OSP) program. The OSP program gives developer access to Web services protocols Microsoft has developed without the need for a license or fear of legal ......

Posted On Thursday, May 24, 2007 9:57 AM

Debugging in Visual Studio 2005 with a Symbol Server
We have all had the experience of debugging an application in Visual Studio and run into the problem of not having the debugging symbols or having incorrect symbols. This is particularly true when you need to step into .NET CLR code to track down a problem. Microsoft maintains a public symbol server that provides symbols for the different Windows operating system versions, MDAC, IIS, ISA, and the .NET Framework. This server is for symbol downloads only and is not browseable. In addition to the Microsoft ......

Posted On Wednesday, May 23, 2007 4:21 PM

Search Driven Development
A few months ago, Phil Haack wrote about a phenomena being referred to as Search Driven Development (SDD). If you don't know what Search Driven Development is, there is a great article on LinuxWorld by Ken Krugler and John D. Mitchell. According to them article About 25% of a developer's time is spend [sic] searching for information. It's well spent, though -- finding reusable code can get a project done on time and with high quality results. I don't know about you, but (like Phil) I find that Google ......

Posted On Sunday, May 20, 2007 3:05 PM

Ohloh - Open Source Project Statistics
While I'm on the topic of code metrics, I thought I would mention another interesting set of statistics provided by the Ohloh web site. This is a site that we use on Subtext to monitor the project and the statistics are integrated with our CruiseControl.NET dashboard as well. Ohloh collects software metrics from a variety of sources including the project's source code and the software development infrastructure used by the project's development team. Ohloh was founded in 2004 as a way to provide ......

Posted On Sunday, May 20, 2007 1:13 PM

NDepend 2.2
A few months ago, I wrote about Visual Studio 2005 Professional Edition and FxCop Integration and also the upcoming Visual Studio Code Metrics that will be available in the Visual Studio "Orcas" release. These are both great tools, but one is really only available if you purchase one of the Visual Studio 2005 Team Edition versions (at least, available without some extra work) and one isn't available yet except through a public beta. However, if you want the type of code analysis that you can get ......

Posted On Sunday, May 20, 2007 12:30 PM

CI Factory Beta 5 (Build 0.8.0.143)
Beta 5 (build 0.8.0.143) for CI Factory is now available. For a full description of what's in this release, check out the release notes. The big news for this release is that Vault package is ready for use and that NCover support has been updated to support NCover 1.5.8. NCover support also provides the ability to set the process for which you want coverage collected. This is important for MSTest users to utilize app.config for the test assemblies and means you don't need to use the /noisolation ......

Posted On Saturday, May 19, 2007 2:02 PM

Tech·Ed for Novices
Microsoft has created a Tips for the "Newbie" page designed to give first time Tech·Ed attendees a fighting chance of finding their way around. It does a decent job letting the first timer know about what Tech·Ed has to offer, but I don't think it goes nearly far enough. Tech·Ed is a huge event, last year's event had about 13000 people attending, with an equally huge amount of content. The current count of sessions (including the Hands-on labs) is 1057. That's right, over 1000 sessions. The actual ......

Posted On Saturday, May 19, 2007 10:32 AM

BlueCasting at Tech·Ed!
Last time it was RFID, this time it's Bluetooth. If you have a Bluetooth-enabled mobile device, you have the opportunity to receive content on it. What this content actually is hasn't been mentioned yet, but hopefully it will involve useful things like schedule changes and other important information. All you need to do is set your device's Bluetooth setting to "Discoverable". Of course, hopefully you'll remember to bring a charger and plug in every night to recharge ......

Posted On Saturday, May 19, 2007 8:12 AM

Mindscape BrainDump
My friend Simone, from Subtext and the creator of the CCNET monitor gadget for Vista, was just interviewed for the first Mindscape BrainDump video blog post. Check out the full video at: BrainDump #1 - Simone Chiaretta. Congratulations, Simone ......

Posted On Friday, May 18, 2007 1:24 PM

Virtual Tech·Ed is live
One of the "staples" of the Tech·Ed experience has always been the Virtual TechEd site. This year, Microsoft is changing things around a little bit and making the site live year round in order to extend the Tech·Ed experience before, during, and after the conference. As part of the new experience, the site has undergone a major facelift, and the home page is broken down into 4 sections: News & Happenings Oline Sessions Tech·Ed RSS Feeds Other Resources As I was browsing the site, I noticed that ......

Posted On Friday, May 18, 2007 1:19 PM

Smart Client Sessions Calendar for Tech·Ed 2007
One of the topic areas that I am focusing on at Tech·Ed this year is Smart Clients. In keeping with my other Internet Calendars, I have created a calendar for all of the Smart Client related sessions. It is available at: webcals://calendars.office.... ......

Posted On Wednesday, May 16, 2007 4:20 PM

Subtext 1.9.5 officially named "Artificial Horizon"
As I mentioned earlier, Subtext 1.9.5 was officially released yesterday without mention of a codename. The missing codename was an oversight, as it is officially named "Artificial Horizon". For those of you keeping track, all of the Subtext code names follow a nautical theme, usually one that sounds cool and has some relation to the features in that release. The current list of releases is: 1.0 - Nautilus 1.5 - Nautilus R & R 1.9 - Daedelus 1.9.2 - Shields Up 1.9.3 - Repair Job 1.9.4 - Windward ......

Posted On Saturday, May 12, 2007 2:06 PM

Windows Live Hotmail official
Earlier this week, Microsoft rather quietly released it's Windows Live Hotmail offering. Along with the release, a replacement for the Outlook Express and Windows Mail desktop clients was announced as well as new software to integrate web mail with Outlook, called the Outlook Internet Mail Connector. Outlook Express and Windows Mail will be replaced with a new desktop product called Windows Live Mail in the coming weeks. The program will handle POP, IMAP, and Windows Live Hotmail accounts and is ......

Posted On Saturday, May 12, 2007 1:13 PM

New SnapShots
Last month, I talked about the new SnapShots and mentioned that Snap is working on adding new SnapShots. They have added some new Shots and updated some existing ones. PhotoShot™ PhotoShot puts an entire online photo album into a Shot. PhotoShots can be triggered by links to files hosted on Flickr, Photobucket, and Picasa Web. Reuters CompanyNewsShot The latest custom shot leverages Reuters' global news capabilities and the Snap Shots platform to deliver story headlines for publicly-traded companies. ......

Posted On Saturday, May 12, 2007 11:54 AM

Subtext 1.9.5 Released
Subtext 1.9.5 has been released to the public. This is primarily a bug-fix release but does include some new features. Oddly enough, this is the first release to go out the door without a codename. Installing on a clean machine or upgrading an earlier 1.9 release are both relatively easy. If there are any ideas to make upgrading easier, we'd love to hear them. This is scheduled to be the last release in the 1.9 branch, unless there are high priority bugs found that need to be fixed. What this means ......

Posted On Saturday, May 12, 2007 10:48 AM

Insert Video with Windows Live Writer
In writing my last post, I came across an excellent plugin that allows you to insert a video from MSN Soapbox, Google Video, YouTube, MySpace Video, Yahoo! Video, muveeMix, and myvideo.de. This plugin is extremely easy to use, but it does require you to know the URL of the video ahead of time. As you can see, you have a lot of formatting options when inserting the video and can modify everything except the link after it has been inserted. The plugin also provides an options dialog where you can set ......

Posted On Saturday, May 12, 2007 10:23 AM

CC.NET Vista Sidebar Gadget 0.8 Released
Earlier this month, I talked about the upcoming release of Simone's CC.NET Monitor Gadget for the Vista Sidebar. I'm very pleased to announce now that version 0.8 has been released. This release adds the following features: new tab style settings page ability to monitor more than one CC.NET dashboard possibility to choose which project to display for each server added a license page (which is the new BSD license, as stated in my copyright and licensing policy) added an icon at the bottom of both ......

Posted On Saturday, May 12, 2007 10:07 AM

Windows Live Writer updates
I use Windows Live Writer for writing almost all of my blog posts. It has been in beta for a long time and isn't showing any signs of being released any time soon. As a result, there was a lot of speculation that the product was dying a slow death. I'm very happy to say that is not the case. Simone pointed me to some screenshots showing a new version of WLW that is in the works. There are a lot of updates in the new release, including the ability to add tables, insert images from the web, inline ......

Posted On Thursday, May 10, 2007 7:31 PM

Outlook 2007 Internet Calendar Subscriptions
Just as my last post was publishing, I realized that many people might not know about the Internet Calendar Subscriptions in Outlook 2007 or may still be using Outlook 2003. Michael Affronti, the Outlook Program Manager, has a great post describing Internet Calendar Subscriptions and how you can interact with them in Outlook 2007. For those of you who are still using Outlook 2003, there is an open-source add-in that allows you to work with Internet Calendars ......

Posted On Thursday, May 10, 2007 5:20 PM

Tech·Ed 2007 Session Calendars
[edit: 16 May 2007] The calendars have been updated and a few new ones added. Check this post for more details. [/edit] Even though the Tech·Ed 2007 Schedule Builder is live, it is just as cumbersome (in my opinion) to use as ever. I had hoped that with the advent of AJAX, Silverlight, and the other interactive web technologies the schedule builder would have been more...interactive. The idea of having to pick a time period from a drop down list that contains more than 20 items and constantly having ......

Posted On Thursday, May 10, 2007 5:11 PM

Phil Haack (Subtext) Podcast interview
Phil Haack was interviewed at MIX07 by Tim Heuer for his new TimCast podcast. In the interview, which lasts about 7 minutes, Phil explains how he got started working on Subtext, and open source in general. About half-way through the interview, Tim asks about the community support for Subtext, and he mentions the work Simone Chiaretta and I did on the Subtext build dashboard...even mentioning us by name. You can download the audio for the interview and read the original announcement at Phil's blog. ......

Posted On Friday, May 4, 2007 11:28 PM

CC.NET Vista Sidebar Gadget updates
For those of you who are keeping up with the progress Simone Chiaretta has been making on his excellent CC.NET Monitor gadget, he is getting ready to release the 0.8 version. This version includes a lot of feedback received, and implements the following features: new tab style settings page ability to monitor more than one CC.NET dashboard possibility to choose which project to display for each server added a license page (which is the new BSD license, as stated in my copyright and licensing policy) ......

Posted On Wednesday, May 2, 2007 11:44 PM

Silverlight going open source, sort of...
Last month, I blogged about Adobe Flex going open source. It seems Microsoft has taken notice, and is making some of Silverlight available as open source. Microsoft is also releasing the Dynamic Language Runtime (DLR) and IronPython on CodePlex under the Microsoft Permissive License. This allows developers and users to view, modify and redistribute source code for either commercial or non-commercial purposes, and also to charge a license fee for any code they've added to the software. A DLR based ......

Posted On Wednesday, May 2, 2007 11:32 PM

Code Style and Standards: Best Practices? - BOF11

The TechEd 2007 Schedule Builder has been updated with the Birds-of-a-Feather sessions. If you're going, be sure to check out my session on Code Style and Standards.

Posted On Wednesday, May 2, 2007 11:04 PM

Visual Studio user settings per project/solution - update
The other day, I posted about a feature request submitted to Microsoft Connect. Well, it ended up getting 21 votes before Microsoft closed it as "Closed (Won't Fix)". The comment they left was Thanks for reporting this suggestion. Unfortunately we will not be able to address this in time for the upcoming release of Visual Studio (codename Orcas) but we will track this suggestion in our future release feature request database. Now, I don't mind the fact that they said they won't be able to address ......

Posted On Wednesday, April 25, 2007 8:12 PM

WPFwiki
The guys over at Xceed, makers of the powerful yet free Xceed DataGrid for WPF have just launched the WPFwiki. The wiki was created to be a community resource for developers working with Windows Presentation Foundation. Even though the site was just launched, the idea started in 2003 when the WPF DataGrid was just starting to be developed. As the developers encountered problems and questions that they felt would be of common interest, it was recorded in a database along with the answer. In March ......

Posted On Wednesday, April 25, 2007 7:54 PM

FeedGhost
I've just found a new blog reader that promises to completely change the way you read blogs. The biggest difference between FeedGhost and other blog readers is that it works on a subscription basis. What this means is that when you subscribe to a blog, the state is kept synchronized across all machines that you have FeedGhost installed. The price of the subscription is $20 per year, which gives you access to any FeedGhost products or upgrades as they become available, use of the synchronization service ......

Posted On Saturday, April 21, 2007 2:03 PM

Windows Live Writer and Subtext
Jeff has updated his original post about configuring Windows Live Writer for .Text so that it shows how to configure WLW for use with Subtext. The nice thing is that this is very simple and really just involves running through the wizard and selecting "Another weblog service" as the blog type. Don't forget to check out Jeff's post on configuring pings in Windows Live Writer ......

Posted On Wednesday, April 18, 2007 3:15 PM

CC.NET Vista Sidebar Gadget
Simone Chiaretta has just released a beta version of his new Vista Sidebar Gadget for monitoring Cruise Control.NET. This gadget uses the CC.NET REST-like API and connects to the XmlStatusReport service that comes as part of CC.NET. CC.NET Vista Sidebar Gadget docked to the sidebar CC.NET Vista Sidebar Gadget undocked on the desktop CC.NET Vista Sidebar Gadget settings page The look of the gadget is excellent, and provides the same monitoring capabilities currently available in the CCTray application. ......

Posted On Tuesday, April 17, 2007 12:54 AM

Windows Live Writer and GeeksWithBlogs
For those of you that use Windows Live Writer to publish posts you will need to reconfigure the blog settings to support Subtext. This is a one-time change and simply involves running the "Edit Weblog Settings" wizard. This wizard will pick up all of the existing settings, so you don't actually need to change anything. One benefit that Subtext provides is that we can now publish images in the post directly...no need to upload them first. If you aren't already running Windows Live Writer, I encourage ......

Posted On Saturday, April 14, 2007 10:00 AM

Detecting if IIS is installed and ASP/ASP.NET is registered - Article
I have finally turned my previous post in to a new article on Code Project. This article provides a definitive way to determine which version of IIS is installed, what IIS subcomponents are installed, and also if ASP or ASP.NET has been registered with IIS. This article provides a single class that encapsulates the various methods required for determining this information ......

Posted On Friday, April 6, 2007 11:47 AM

Detecting installed .NET Framework versions and service packs, update

I have updated my article on Code Project for detecting what versions and service packs of the .NET Framework are installed. This is a relatively minor update that fixes a few typos I discovered while writing my latest article.

Posted On Friday, April 6, 2007 11:43 AM

Using managed code to detect if IIS is installed and ASP/ASP.NET is registered

Explains how to use managed code to detect which version of Internet Information Services (IIS) is installed and if ASP or ASP.NET is registred.

Posted On Friday, April 6, 2007 11:39 AM

Real Technology Heroes
In an excellent tribute to the Budweiser "Real Men of Genius" commercials comes Real Technology Heroes. Just like the original Bud commercials, this site salutes those geeks that don't get recognized...but should. That's right, we salute you, Mr. "select * from table examples" guy and you Mr. "I can write my own version of .NET faster than Microsoft" guy, and all of the others that deserve recognition. Stand up and be recognized! Submit your own Real Technology Hero and be eligible for the monthly ......

Posted On Wednesday, April 4, 2007 10:30 PM

Tech·Ed Technical Tracks Summary, Updated
There are 14 core tracks and 2 virtual tracks at Tech·Ed this year, which will cover more than 1,000 sessions. In case you're wondering, a virtual track is a collection of sessions or labs that share a common theme but span several tracks. Microsoft has revised the technical tracks slightly since my original post, so I have updated my summary. Architecture Service Oriented Architecture (SOA) Office Business Applications Software as a Service (SaaS) Business Capabilities Software+Services Industry ......

Posted On Wednesday, April 4, 2007 9:31 PM

GWB Conversion to Subtext
Jeff just recently posted that the conversion of Geekswithblogs.net from .Text to Subtext is back underway. I am really looking forward to seeing the conversion complete. Subtext has a lot of great features and has a very active development community. I'm sure GWB will be converting to Subtext 1.9 for now, and hopefully will upgrade to 2.0 when it comes out. As part of the conversion, Jeff is looking to not only change the look and feel for the homepage, but also update it to be more Web 2.0-ish ......

Posted On Saturday, March 31, 2007 10:18 AM

CodeCamp is over...
and my blog was referenced in one of the talks that I happened to attend. I was duly surprised when I saw my WPF Datagrid control post popup on the overhead and see it listed on the references slide. I must say, it was pretty cool. Overall, I think my first CodeCamp experience (seeing my blog "up in lights" not-withstanding) was very good. It was well organized and had just over 300 people attending. The topic coverage and speakers were also great. I would definitely go to another one, which should ......

Posted On Monday, March 26, 2007 7:47 PM

DinnerNow
Microsoft has a released a new technology showcase site called Dinner Now. From the website: DinnerNow is a fictious [sic.] marketplace where customers can order food from local restaurants for delivery to their home or office. This sample is designed to demonstrate how you can develop a connected application using several new Microsoft technologies. The demo utilizes several technologies including: IIS7, ASP.NET Ajax Extensions, Linq, Windows Communication Foundation, Windows Workflow Foundation, ......

Posted On Sunday, March 18, 2007 9:16 AM

2nd Annual Orlando .NET CodeCamp
The Orlando CodeCamp is basically a free one day conference for and by the community. Last year we had 7 tracks with over 45 speakers and 300 attendees present. This event is the MUST attend event of the year if you are a .NET developer or architect in Central Florida. If you would like to speak or make a donation please let me know (shawn@shawnweisfeld.com). All event information can be found on the CodeCamp Website: http://www.orlandocodecamp.com I've always wanted to go to one of the CodeCamps ......

Posted On Saturday, March 17, 2007 2:11 PM

CI Factory
As you know, I'm working with the Subtext project. Subtext uses CruiseControl.NET (CC.NET) as it's continuous integration (CI) build system. One of the nice features of CC.NET is the web dashboard that provides the visibility in to the builds. Over the last month, I have been upgrading the Subtext dashboard with a new look and feel as well as some additional features. As a result, the dashboard caught the attention of Jay Flowers, who owns the CI Factory project. For those of you who don't know about ......

Posted On Saturday, March 17, 2007 9:36 AM

StupidCubicle.com

This is a great site for some fun geeky novelty items covering some great categories, including GeekWear and Cubicle Warfare. Check it out and pick up your favorite geek gadget.

Posted On Thursday, March 15, 2007 11:28 PM

Just Pencils!
I was recently sent an email that has some of the most amazing pictures. I have uploaded them to the Just Pencils gallery. The thumbnail images in the gallery really don't do these justice, so be sure to view the full size image. Keep in mind, all of these creations are done using just the tips or ends of colored drawing pencils. And I always thought they were just for writing. If anyone knows how the artist is, please let me know so I can give him or her credit for these amazing creations. [See ......

Posted On Thursday, March 15, 2007 10:45 PM

FoxPro Retiring
It seems this is the year for Microsoft to announce product retirements. First GotDotNet, then Visual J#, and now eWeek just announced that FoxPro is being retired as well. According to Microsoft, they will not be releasing any new versions of Visual FoxPro past version 9.0, but they will continue to support it through 2015. The FoxPro development team, which is actually part of the Microsoft Visual Studio team, will be spread out across different groups in the Microsoft Developer Division, including ......

Posted On Thursday, March 15, 2007 10:27 PM

Visual J# Retiring
I'm sure there's a clearer explanation somewhere, but reading the announcement on the J# home page is just a bit confusing. So far, what I've been able to piece together is that Visual J# 2.0 Redistributable will still be released sometime in Q2 of 2007 and support for English locales will continue through 20017. Along with this, the Visual J# 2.0 Redistributable Second Edition will also be released that will enable Visual J# code to run natively on 64-bit versions of Windows and the .NET Framework, ......

Posted On Sunday, March 4, 2007 12:24 PM

Folder Size for Windows Explorer
If you have ever wanted to know how big a folder was, you had two options: Open a dos prompt and get a directory listing Open the properties for the folder Wouldn't it be great if the folder size could be displayed right in Windows Explorer, just like it does for file size? Well, thanks to this post on Noah's blog, it is now possible! This is an open source project available on SourceForge at: http://foldersize.sourcefor... Of course, this information is only available in Details view, but if ......

Posted On Sunday, March 4, 2007 11:49 AM

Community Credit February Prize Winner
Don't let anyone tell you it doesn't happen. I was just awarded 16th place for February on Community Credit. I know, 16th place doesn't sound like a big deal, but keep in mind that it is 16th out of 6950 (I think that was the number of members when they calculated the prizes, if not it is pretty close) and all I had to do is what I normally do anyway: blog and answer/post forum questions ......

Posted On Sunday, March 4, 2007 11:21 AM

Subtext CruiseControl.NET dashboard facelift
The Subtext CruiseControl.NET dashboard has undergone a major facelift this weekend. It now has a new CNAME record, which allows access to it from: http://build.subtextproject... This change is the beginning of an effort to enhance the documentation for the project and make it easier for users to find everything. To go along with the new address, the dashboard itself received a huge overhaul as well. It now sports a nice, clean feel that matches the main Subtext project site. There are still ......

Posted On Sunday, March 4, 2007 11:08 AM

Detecting if IIS is installed and ASP/ASP.NET is registered
Recently, someone sent me an email about my post on using managed code to detect the installed Framework versions and services packs. The posts were really just pointers to my article on The Code Project, but it did bring up an interesting topic. The question at hand really boils down into two separate issues: How to detect if Internet Information Services (IIS) is installed. How to detect if ASP and/or ASP.NET is registered with IIS. The best way to detect if IIS is installed is to look for the ......

Posted On Thursday, March 1, 2007 11:06 PM

February was busy!
All I can say is, "Wow!" I just looked at my blog and realized that I posted 34 posts for last month. I'm sure some of you may not think this is a large amount, but for me it represented the single busiest month of blogging since I started almost a year ago. I don't know how busy I'll be blogging this month, but I know I will be busy. Here is my current list of projects (outside of real work, that is): Update my File Downloader component with asynchronous download support. Update my Framework Version ......

Posted On Thursday, March 1, 2007 10:21 PM

Visual Studio Code Metrics
Visual Studio will finally get built-in support for generating code metrics for project and solutions. Unfortunately, we'll have to wait until Orcas officially ships, but it is part of the latest March CTP release (Virtual PC image or self-extracting install). Again, as with the integrated FxCop analysis, this will only be available with the Visual Studio Team Developer and Team Suite editions. I still think Microsoft is doing the development community a huge injustice with this decision, but I'm ......

Posted On Thursday, March 1, 2007 9:47 PM

GotDotNet shutting down!
The Microsoft sponsored GotDotNet developer community site is shutting down! All of the functionality will be phased out by July 2007, so there isn't much time left. According to the announcement, Microsoft is phasing out GotDotNet for the following reasons: Eliminate redundant functionality between GDN and other community resources provided by Microsoft Traffic and usage has significantly decreased over the last 6 months Reinvest the resources in new and better community features The phase out schedule ......

Posted On Wednesday, February 28, 2007 9:22 PM

Community Credit
A while ago I posted a entry about Community Credit. I don't remember what the membership count was when I joined, but it's almost at 7000 members now! I don't know if there is an official record of the most number of new users in a day, but it would be cool if the site could it the 7000 mark by the end of March 1st. The nice thing about the site is that it serves as a central "clearing house" for all of your tech related accomplishments, such as blog posts, comments, discussion board posts, articles, ......

Posted On Tuesday, February 27, 2007 11:55 PM

Daylight Savings Time for Developers
I know several other people who received an email from Microsoft late last week titled "Important Daylight Savings Time Update for Developers". As far as I know, none of us are exaclty sure why we recieved these emails but we all figured that at some point we signed up for something .NET and developer related with Microsoft. Just in case you didn't "get the memo", here are the relevant parts: Developers who use the .NET Framework may find their applications affected if the application uses the time ......

Posted On Tuesday, February 27, 2007 11:08 PM

Programming WCF Services
A new book on WCF was just published by Juval Lowy at IDesign. For those of you that don't know, Juval is Microsoft's Regional Director for the Silicon Valley area and has helped in the internal strategic design reviews for the .NET Framework. He has presented sessions at the last two Tech·Ed conferences on WCF and helped shape the technical strategy and direction for WCF with Microsoft. I haven't picked up my copy yet, but will be getting one soon. The book focuses on the "why" behind particular ......

Posted On Tuesday, February 27, 2007 10:54 PM

Extreme Makeover: SPA Edition
I received an email today from Snap letting me know about a contest they are running to help improve Snap Preview Anywhere (SPA). They have already started making improvements and are looking for ideas on how to make things even better. Since there are over 650,000 websites and blogs that use SPA, it shouldn't be hard to get a lot of good ideas. The hard part will be sifting through them to find the ones that can actually be done. So far, there are 57 entries. The top 3 ideas submitted will win $2500, ......

Posted On Tuesday, February 27, 2007 10:23 PM

Tech·Ed Technical Tracks - There's WPF!
Earlier this month, I posted a summary of the technical tracks available for Tech·Ed 2007. As I was putting the summary together, I noticed that WPF was not listed. Well, Rob Relyea, the PM on the WPF team noticed my post and Windows Presentation Foundation (WPF) is now officially listed under the "Developer Tools and Technologies" track ......

Posted On Thursday, February 22, 2007 9:55 PM

Editor's Pick on TechEd Bloggers
I just noticed that my Tech·Ed Technical Tracks Summary post was just listed as a TechEd Bloggers Editor's Pick for Sunday, February 18. I also received some feedback from Rob Relyea, the Program Manager for the WPF Team (http://rrelyea.spaces.live... regarding my Tech·Ed Technical Tracks - Where's WPF? post stating that they are working on fixing this issue. I'm looking forward to seeing the updated sessions covering WPF ......

Posted On Wednesday, February 21, 2007 9:05 AM

Reflector 5.0
Reflector 5.0 was just released today. If you haven't already downloaded, do it now. It has a ton of new features, and makes version 4 pale in comparison. In fact, there are so many new features that Lutz has put together a PowerPoint slideshow that gives an overview of what's new. One of the coolest new features is a custom protocol handler that will really show the versatility of Reflector. If you already have Reflector 5 installed, you can navigate directly to a code item through a code:// URL. ......

Posted On Tuesday, February 20, 2007 11:43 PM

SlickEdit Gadgets
Since I've been looking into writing a custom Visual Studio package, I came across a nice set of free "gadgets" from SlickEdit. These can only be described as a set of very cool power toys for Visual Studio. These gadgets will only work with Visual Studio 2005, but should work with any of the Visual Studio 2005 editions except the Express Editions. I think these gadgets are aimed at creating more business for the Tools v1.1 for Microsoft Visual Studio 2005 product, which also has some very nice features ......

Posted On Sunday, February 18, 2007 6:04 PM

MsBuild == Sybil?

As I was writing my previous post, I found an odd spelling correction suggested by the Windows Live Writer spell checker. It would appear that the suggested spelling for MSBuild is Sybil. That might just explain things.

Posted On Sunday, February 18, 2007 4:40 PM

Strange Metaweblog bug
As I mentioned in my previous post, there is an apparent bug in the Metaweblog API that prevents me from specifying the full path to the FxCopCmd executable. I'm not entirely sure what is actually happening, but I do know that it doesn't allow the post to be submitted through either Windows Live Writer or through the blog Admin UI. The strangest part of this is that it appears to only care about this particular executable. I've tried several others, both command line and GUI applications and they ......

Posted On Sunday, February 18, 2007 4:36 PM

Tech·Ed Technical Tracks - Where's WPF?
I was scanning through the list of technical tracks for Tech·Ed this morning and noticed an odd omission. Windows Presentation Found (WPF) is only listed once, under the "Connected Systems" track: Microsoft .NET Framework 3.0 programming model for Windows that offers new technologies for building applications for seamless communication across technology boundaries and for composing services. These new technologies are Windows Presentation Foundation, Windows Communication Foundation, Windows Workflow ......

Posted On Saturday, February 17, 2007 12:17 PM

Tech·Ed Technical Tracks Summary
There are 14 core tracks and 2 virtual tracks at Tech·Ed this year, which will cover more than 1,000 sessions. In case you're wondering, a virtual track is a collection of sessions or labs that share a common theme but span several tracks. The Session Scheduler launches in April and we will get our first real look at the actual sessions available in each track. Until then, we have to be content to speculate. Looking at the technical tracks page, it became clear to me that there is a lot of information ......

Posted On Saturday, February 17, 2007 12:15 PM

PDC 2007

 

Not sure I'll be able to make it this year, but I'm going to try.

 

It's back in LA, October 2-5.

 

 

Hopefully, the buss drivers won't go on strike again.

Posted On Thursday, February 15, 2007 11:35 PM

Windows Mobile 6
Microsoft just announced Windows Mobile 6 (press release) at the 3GSM World Conference in Barcelona, Spain. The first WM6 powered devices will start hitting the streets by the second quarter of this year, and many companies are planning upgrade options for existing WM5 devices. There are a lot of changes in this release, but Microsoft has really focused on improving usability and adding support for more Microsoft Office features. The user interface has received a much needed face-lift, giving it ......

Posted On Thursday, February 15, 2007 11:13 PM

Windows Mobile and U.S. Daylight Saving Time changes
Hopefully everyone that lives in the United States (or deals with United States based companies) has heard that the U.S. Congress has changed the dates for Daylight Saving Time (DST) starting this year. The changes are the result of the Energy Policy Act of 2005 and modifies the Uniform Time Act of 1966 by changing the start and end dates of daylight saving time. These changes mean that any electronic devices that were pre-programmed for adjusting to daylight saving time will be obsolete and incorrect. ......

Posted On Thursday, February 15, 2007 9:18 PM

Snap Previews
I have added Snap Previews for all of the external links on the site. The preview will only trigger when the mouse hovers over the preview icon, so hopefully it won't be too intrusive. There is also an "opt in" badge located in the "News" column that lets you turn previews on. Once they are turned on, you can turn them off again through the options link available from any preview. It does look like there are a few issues with the previews where some sites are not being displayed. I'm not sure if ......

Posted On Sunday, February 11, 2007 11:49 PM

Subtext 1.9.4, aka Windward, released
The long awaited 1.9.4 release is finally here. This release fixes a number of bugs and implements a few new features. One of the more significant features is the Sitemap implementation. You can find more information on the implementation and instructions on how to set it up on David's blog. There is also a new set of XFN icons to go along with Subtext's XFN Highlighter. I think the new icons and highlighter will work very well with my new XFN Link Editor for Windows Live Writer (once it finally ......

Posted On Sunday, February 11, 2007 10:51 PM

Autopinger
While searching for some blog search engines and aggregators to add to my list of ping servers in Windows Live Writer, I came across autopinger. AutoPinger is a FREE and convenient service for all bloggers and podcasters. It is an easy set-and-forget service that lets concentrate more on developing your favourite blogs and podcasts...Autopinger will check your blogs and podcast feeds every 30 mins. This is a pretty neat idea, and they do provide an XML-RPC interface in addition to allowing you to ......

Posted On Saturday, February 10, 2007 4:58 AM

XFN™ Live Writer Plugin Updates
I know it's only been a couple of days, but there were a few things that were bothering me about my XFN™ plugin for Live Writer. The biggest issue (and really the one that everything else centered around) was that once a link was inserted, you couldn't edit it again without recreating it. I doubt anyone would have really felt this was a problem, but it was annoying enough to me that I decided to do something about it. The changes centered around making the plugin a SmartContentSource rather than ......

Posted On Saturday, February 10, 2007 4:25 AM

XFN™ (XHTML Friends Network)
I was recently introduced to the concept of XFN through a blog post I was reading from Phil Haack regarding his meeting with Rob Conery, one of the Subsonic developers. After reading about XFN, I think it is an extremely interest concept on the entire social networking phenomenon. Taken from the XFN website: XFN puts a human face on linking. As more people have come online and begun to form social networks, services such as Technorati and Feedster have arisen in an attempt to show how the various ......

Posted On Thursday, February 8, 2007 11:01 PM

Blogging my way to Tech·Ed 2007
I tried to do this for last years Tech·Ed, but wasn't as successful as I would have liked. This was mostly due to the fact that I didn't really know I was going until last minute. Anyway, this year should be different. I have registered this blog in Tech·Ed Bloggers, so wherever you see the "Blogger Guy" on any website, you should be able to go directly to the Tech·Ed Bloggers site ......

Posted On Thursday, February 8, 2007 10:48 PM

See you at Tech·Ed 2007
Hopefully I'm not jumping the gun, but I was just given a tentative "green light" to be able to go to Tech·Ed again this year. This year, the focus will be on all of the newly released products, such as Vista, Exchange Server 2007, Office 2007, and ASP.NET AJAX. I'll see you there ......

Posted On Thursday, February 8, 2007 10:29 PM

Detecting installed .NET Framework versions and service packs, update
Based on some of the article comments, I have just posted an update to this article on Code Project. The update includes support for the January CTP of Orcas, currently called .NET Framework v3.5 and also adds methods to get the actual version number and the Windows Foundation library (WPF, WCF, WF, and CardSpace) information. I have also changed the title to "Using managed code to detect what .NET Framework versions and service packs are installed". Hopefully the title change won't cause any problems ......

Posted On Sunday, February 4, 2007 12:28 PM

Detecting installed .NET Framework versions and service packs
I have just posted a new article on Code Project that provides the definitive way to determine which versions and service packs of the .NET Framework are installed on the client computer. This article provides a single class that encapsulates the various methods required for determing the version and service pack of the various .NET Framework releases and is based on information available on MSDN and Aaron Stebner's WebLog ......

Posted On Saturday, February 3, 2007 5:52 PM

Using managed code to detect what .NET Framework versions and service packs are installed

Explains how to use managed code to detect which .NET Framework versions and service packs are installed.

Posted On Saturday, February 3, 2007 5:45 PM

Zune Desktop Theme
Even if you aren't a Zune fanatic, Microsoft has released a new desktop theme based on the Zune interface. The new interface is very similar to the one offered by Windows Media Player 11. The theme is very clean and easy on the eyes. It installs as a desktop theme in the Display Properties control panel, so there is no extra software required in order to use it ......

Posted On Wednesday, December 13, 2006 11:07 AM

"WPF/E"
Microsoft has just announced a new CTP available called "WPF/E", which is the codename for a new web presentation technology. I am guessing that the "E" stands for "Everywhere" since this is being created to run on a variety of platforms. According to the documentation, It enables the creation of rich, visually stunning, and interactive experiences that can run everywhere: within browsers, and on multiple devices and desktop operating systems (such as the Apple Macintosh). It is consistent with WPF ......

Posted On Monday, December 4, 2006 11:56 PM

Subtext

When Geekswithblogs.net 2.0 is released (hopefully by the end of the year), it will be using a spinoff of .Text named SubText. With the death of other great open source projects like NDoc, I decided to do my part and contribute as a developer on this one. I'm starting with reviewing and fixing the FxCop violations. So far, I've finished 2 of the projects.

Posted On Monday, December 4, 2006 9:49 AM

Developer Tools
As a developer I use a lot of additional tools to get my work done in the most efficient and accurate way possible. That involves a lot of things, such as unit testing, code analysis and additional productivity inside the Visual Studio 2005 IDE. I have seen a lot of blog posts extolling the virtues of one tool or another, but there were not many (at least that I could find) that provided a semi-comprehensive list. (I say "semi-comprehensive" because there is always going to be a new tool available ......

Posted On Sunday, December 3, 2006 9:48 AM

The Birth of the CLR
I recently came across the blog of Patrick Dussud, who is the lead architect of the CLR/UIFX group. His first (and currently only post) discusses his role in the birth of the .NET CLR. There is a link to a mailing list archive that also gives some more background. In a nutshell, the CLR was born out of the COM+ team, created by merging the MTS and COM teams, and some of the people from the JVM team. The COM+ team was working on the next generation of COM, then called COM 2.0 and the JVM guys were ......

Posted On Monday, November 27, 2006 1:37 PM

.NET Framework 3.0 is here
Earlier today Microsoft released the newest version of the .NET Framework. If you have any previous beta versions installed, you must uninstall them before installing the final release. Make sure to install the Visual Studio 2005 extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP as well. The earlier builds will not recognize the release version of the framework ......

Posted On Tuesday, November 7, 2006 3:22 PM

PatchGuard, the eWEEK opinion
eWEEK Security Center Editor Larry Seltzer just published an article on eWEEK.com providing his opinion on the benefits, and limitations, of PatchGuard. In the article, Larry reiterates some of the points I made in my post on PatchGuard a few days ago, namely: Only 64-bit Windows versions are affected by PatchGuard. 64-bit Windows versions, especially desktop versions, have puny market share. The problems are limited to what can generally be called HIPS (Host Intrusion Prevention Systems). Conventional ......

Posted On Thursday, November 2, 2006 4:44 PM

SafeHandle and Constrained Execution Regions
As a follow up to my Implementing IDisposable and the Dispose pattern article, I have posted a new one on SafeHandles and Constrained Execution Regions (CERs). This article explains the new SafeHandle class, introduced in .NET 2.0, and how to use it. I also cover CERs and how they are used. [Update, 22-Jan-2008: Updated the article link for Code Project.] ......

Posted On Saturday, September 2, 2006 11:30 AM

An easy to use URL file downloader class for .NET

A simple to use resumable file downloader class that provides progress feedback for .NET 2.0 or .NET 1.1

Posted On Friday, September 1, 2006 8:28 AM

Implementing IDisposable and the Dispose pattern, take 2
My article on how to properly implement the IDisposable interface and the Dispose pattern has been very well received. There have been several comments that prompted me to review the article against the Framework Design Guidelines, and specifically against the updates made by Joe Duffy. In doing this, not only have I learned a few new things about how the whole garbage collection process works, but I also discovered that some of the statements made in my article were incorrect. This is discouraging ......

Posted On Friday, September 1, 2006 8:08 AM

URL File Downloader for .NET

I recently needed the ability to download a file from an arbitrary URL using .NET that was compatible in both .NET 1.1 and .NET 2.0. What I found didn't meet all of my needs, so I decided to write my own.

As a result, I also posted my first Code Project article that contains the full details plus the source code. Please check it out and let me know what you think.

Posted On Friday, August 25, 2006 1:47 PM

Windows Live Writer
Courtesy of the latest issue of WXPNews, I came across a very cool new blogging tool, named Windows Live Writer. This is a desktop application that makes it very easy to write new blog posts by providing a WYSIWYG ("What You See Is What You Get") editor that reminds me of a slimmed down version of Microsoft Word. Windows Live Writer has some pretty cool features, like the ability to automatically spell check your blog posts before posting them and automatically saving a draft every x minutes. While ......

Posted On Thursday, August 24, 2006 10:44 AM

Tampa Code Camp
If you want to improve your skills unlike this poor soul get to Code Camp we will even supply the food for lunch. Mark your calendars for July 15. I can't attend this one since I already have plans for the weekend that take me out of town, but if you are in Florida and want to go you should check it out. Just incase you forgot Code Camp is FREE, and its the only place you can learn from the best out there under one roof. If you program in Visual Studio.NET you need Code Camp. If you use ASP.NET you ......

Posted On Friday, July 14, 2006 7:41 AM

On This Day...
Check out my article on adding an “On this day” section to your blog.

Posted On Thursday, July 13, 2006 8:38 AM

Performance in .NET managed applications
Building managed applications is generally a lot different than building non-managed applications. The problems faced by .NET developers are different than those faced by C++ (or even VB) developers. Since .NET is a garbage-collected language and the development process seems to be generally more intuitive (at least in C#) than many other programming languages and environments it is very easy to build applications rapidly. Visual Stduio 2005 definately takes the concept of rapid application development ......

Posted On Sunday, June 18, 2006 8:02 PM

.NET 3.0 - The next revolution
Since last years TechEd everyone has been hearing about .NET 3.0 and the cool features of LINQ, lambda expressions, and all of the other cool new language features. I don't know about you, but I was definitely looking forward to them. We were also hearing about WinFx and “Avalon“ and “Indigo“, InfoCard, Windows Workflow Foundation (WWF) and the other new technologies that looked like they would only be part of Vista. Fast-forward a year to this years TechEd and we're still ......

Posted On Sunday, June 18, 2006 4:55 PM

Windows PowerShell - Unix comes to Windows
Windows PowerShell (formerly known as “Monad”) is a Microsoft's answer to the power and flexibility of the Unix command shells. It should finally complete the Windows management picture by providing a solid command line shell to administer Windows systems. PowerShell is part of Vista, but fortunately for all of us, it is being released separately and is available for Windows XP as well. PowerShell is a command line shell that is: as interactive and composable as bash/ksh (or any other ......

Posted On Sunday, June 18, 2006 4:18 PM

Copyright © Scott Dorman | Powered by: GeeksWithBlogs.net | Join free