# Monday, January 30, 2006
Just in case you have missed the announcement, Microsoft has said that support for Windows 98 and Windows ME will end on June 30, 2006. This means that there will be no new patches or support articles written. The current documentation and patches will still be availaible. Realistically, if you are running a Windows 98 or ME machine connected to the Internet you should really look at upgrading to Windows XP SP2 or if you are daring you can wait until later this year and upgrade to Vista.
Monday, January 30, 2006 9:02:18 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Friday, January 27, 2006
   I was pointed to this blog post by Rich Strahl who says he is a Microsoft MVP. In the article he explains why your WinForms application appears to take a lot of memory when it starts up and then drops down significantly if the window is minimized. He then provides a hack to help you reduce the working set. I was intrigued by the idea but I am not sure how useful it is. If the problem is really startup code then the memory manager should be swapping out the unused code for more relevant code as the application executes. I haven't done any profiling to verify it but I would think that running an application over time would end up with the same working set size whether you left all the startup code loaded after the form loads or if you used this method to shrink the working set right after loading and then let it grow.
Friday, January 27, 2006 10:18:24 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, January 24, 2006

Today, Microsoft announced the CTP release of Expression Interactive Designer (formerly code named Sparkle) and the fourth CTP release of Expression Graphic Designer (formerly code named Acrylic). Both of these tools along with the Expression Web Designer (formerly code named Cider) make up the Expression Studio family of products. The most important thing for me is that they will support exporting designs to XAML which will then be importable into Visual Studio "Orcas". I hope that will make it a lot easier for me to create applications that don't have the "battleship gray" color coding of the default Windows forms.

I was quoted in two articles about the releases. One article is from ComputerWorld at http://www.computerworld.com/developmenttopics/development/story/0,10801,108009,00.html and the other one is in eWeek at http://www.eweek.com/article2/0,1895,1914903,00.asp.

[January 31, 2006]

I missed a news article when I posted this. I was also quoted in the Computer Reseller News article available at http://www.crn.com/showArticle.jhtml;jsessionid=CHDSWTZXDDKE0QSNDBOCKH0CJUMEKJVN?articleID=177103281.

Tuesday, January 24, 2006 9:29:06 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Saturday, January 21, 2006

This week has seen 2 new releases from Microsoft. The first one is a beta of Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF) with a go-live license. You can get the software and sign up for the go-live license from a page on the WinFX delveloper center. There is also an interview with Ari Bixhorn on the Microsoft Press Pass site that explains a little about what WinFX means.

If you are planning on doing any defelopment for the Microsoft platform in the long term future then it would be good to start getting familiar with the WinFX development platform. You don't need to sign the go-live license and start deploying your applications today but at some time in the future you will probably have to make the move to WinFX so it would be best to learn a little today so you can "future proof" your applications and avoid major rewrites somewhere down the line.

The second release was Enterprise Library 2.0. You can download it from MSDN at http://msdn.microsoft.com/library/?url=/library/en-us/dnpag2/html/EntLib2.asp. A lot of work has gone into the Enterprise Library to make it useful and easy to use. Just remember that once you start using it, it is your code and you will have to be responsible for making sure that any bugs are fixed in your applications. I have used the application blocks in some projects and they have saved a lot of time but I have also had one bug in the configuration management application management block from several years ago that made me have to turn off caching of the configuration information in December or get errors about invalid dates. I found a fix for the problem out on the Internet and patched all my code but just this last December I found where someone else on the team didn't get the patched code and we had some problems in the first days of the month until the problem was caught and fixed. In any case the blocks have saved me a lot of time so I will definetly be looking into using them.

Saturday, January 21, 2006 4:47:31 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Thursday, January 19, 2006

While looking at an exception that is being thrown in Visual Studio 2005's popup window for exceptions I got the following error:

ContextSwitchDeadlock was detected
Message: The CLR has been unable to transition from COM context 0x1a09c0 to COM context 0x1a0b30 for 60 seconds. The thread that owns the destination context/apartment is most likely either doing a non pumping wait or processing a very long running operation without pumping Windows messages. This situation generally has a negative performance impact and may even lead to the application becoming non responsive or memory usage accumulating continually over time. To avoid this problem, all single threaded apartment (STA) threads should use pumping wait primitives (such as CoWaitForMultipleHandles) and routinely pump messages during long running operations.

The link for more help took me into the topic on Diagnosing Errors with Managed Debug Assistants. The link is ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_fxdebug/html/76994ee6-9fa9-4059-b813-26578d24427c.htm in my help file. I didn't even know that these things exist. That is one of the cool things about the .NET Framework, there are so many things provided for you that are so useful that each day is an adventure.

Thursday, January 19, 2006 11:58:52 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Monday, January 16, 2006
   I just fininshed an article titles Introduction to SQL Server 2005 Service Broker for the .NET Developers Journal. It is a high level overview of the architecture of Service Broker as well as the uses of the technology. Once it is published I will post a link here.
Monday, January 16, 2006 8:46:50 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Thursday, January 12, 2006

Read below for details on this new conference:

Microsoft invites you to MIX, our 72 hour conversation live in Vegas, to discuss with industry leaders such as yourself high-fidelity commerce, media, services and security for the World Wide Web.  Join Bill Gates of Microsoft, Amazon, and web thought leaders such as Tim O’Reilly on March 20-22 at the Venetian hotel in Las Vegas to learn about the web’s next generation of content and commerce, plus the customer experience that is beyond the browser.  Registration is open!  www.mix06.com

 

The MIX conference is a LIVE conversation between web developers, designers and business leaders who create consumer-oriented web sites. Why is it called MIX?  The event is not only a place where you can Meet, Interact, and eXplore with Microsoft and others about the web, but we are MIXing things up by having a conference for tech geeks as well as business professionals who help make decisions about technologies and strategies for your company’s customer facing web sites.  When you attend MIX you’ll hear about Microsoft’s roadmap for the web, and learn the latest about IE7, Windows Media, Windows Live!, as well as “Atlas”, Microsoft’s new AJAX framework.  Register today and take advantage of the low price of $995, as well as the discounted conference hotel rate.

 

At MIX: 

 

Developers can dive deep into the latest Microsoft web technologies, including Internet Explorer 7, Atlas/AJAX, ASP.NET, InfoCard, the Windows Presentation Foundation, Windows Media and others. Want to learn how to code pages for IE7 that render properly in other popular browsers? Interested in building AJAX sites quickly and efficiently?

 

Designers can learn how Microsoft’s platform technologies will allow them to create rich experiences that incorporate video, advanced typography, vector graphics, and 3D graphics. Explore new ways to differentiate your sites from those of your competitors, learn how to streamline the designer-developer pipeline and discuss strategies for improving your site’s usability.

 

Business Decision Makers will get a solid overview of how Windows Vista and the Internet Explorer roadmap can boost site revenues and unlock new business opportunities. Get the latest Vista and IE7 forecasts from Microsoft, discuss the business implications of RSS and pick up insights on how to better monetize your offerings.

 

What kind of content will be offered at MIX?  Sessions at MIX will be focused on two main scenarios that will help you stay on the cutting edge of technology, while at the same time enable you to further monetize your web offerings! 

 

Next Generation Content & Commerce

 

A plain old HTML experience is no longer good enough for your most frequent (and most valuable) users—AJAX is setting new standards for responsiveness and usability, visitors are expecting increasingly-sophisticated customization and personalization options, and rich media integration is unlocking new revenue streams. But building these richer sites can be difficult and expensive.

 

Microsoft’s Dean Hachamovitch (General Manager, Internet Explorer team) hosts this exploration of how technologies like IE7, “Atlas” (Microsoft’s new AJAX framework), Windows Live!, the Windows Presentation Foundation and InfoCard can take your browser-based content and commerce experiences to another level and increase earnings, while minimizing development and maintenance costs.

 

User Experience Beyond the Browser

 

As web-based content and services become increasingly indispensable, users are expecting to interact with your offerings in new ways and in new locations.

 

Microsoft’s Joe Belfiore (Vice President, eHome division) hosts this overview of your options for boosting revenues by building “sticky” experiences that follow the user outside the browser, into the living room and on the go. Some of the specific technologies that will be discussed include: RSS, the Windows Sidebar, Office 12, Windows Mobile and Windows Media Center/Xbox 360.

 

You can view the MIX agenda and top session list at www.mix06.com.  You can also subscribe to the MIX blog to get our regular updates and find out what is new and hot with MIX. 

 

The MIX conference is $995 and registration is open – be sure to sign up today to take advantage of the low hotel conference rate at the Venetian hotel in Las Vegas.

 

See you in March in Vegas! 

www.mix06.com

Thursday, January 12, 2006 9:53:06 AM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, January 10, 2006

Just days after the release of Visual Studio 2005 I got an e-mail asking for information on best practices for Visual Studio 2005. I promptly ignored it since I tend to think of best practices as something that are built up over time and come from experience. Since there had not been enough time to come up with any new best practices I didn't have anything new to add to the discussion.

Today, while surfing I came across this article on CodeProject about the decorator design pattern. I look at design patterns as an abstract best practice. They are an accumulation of knowledge that says when presented in the past with a problem that looks like this, the following solution(s) proved valuable. I am always trying to improve my coding skills so I am interested in design patterns. I read once that there are 3 types of people when it comes to design patterns. 1. Those who don't know about them. 2. Those who know about them but don't know when or how to use them. 3. Those who use design patterns all of the time. I am afraid that for many design patterns I fall into category 2. I am still waiting for the "aha" moment when I look at a problem and can recognize it as one that a design pattern that I know will fix. In most cases I kind of just stumble onto the design pattern because I have read about it and use it because the solution has stuck in the back of my head.

I think overall the article is good, but it has the same problem that a lot of the articles and books on design patterns have; it doesn't do a good job of explaining the problem and when/how to apply the pattern. The comments offer an alternative way to solve the problem that is shown in the article but even then there is no discussion of the pros and cons of each approach other than a personal bias.

I realize that writing articles is difficult and that it is especially difficult to anticipate every question and circumstance that might come up for the readers of the article but some days I wish I could read the article that would give me the knowledge I need on how to always apply design patterns. Oh well, maybe some time in the future when books are adaptive or I become smarter, whichever comes first :) 

Tuesday, January 10, 2006 12:22:54 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |