﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Jani Järvinen's Personal Weblog</title><link>http://www.saunalahti.fi/janij/blog/</link><description>This is my personal weblog mostly about Windows software development. The views represented here are strictly my own, and do not necessarily reflect those of my employer.</description><language>en-us</language><pubDate>Sat, 03 Jan 2009 13:29:36 GMT</pubDate><docs>http://blogs.law.harvard.edu/tech/rss</docs><ttl>1440</ttl><item><title>New year, new blog URL</title><link></link><description>&lt;p&gt;As the year is soon drawing to and end, it is time to wish everybody a happy new year 2009! As in the previous years, the URL of this blog is going to change, so please update your URLs. The current URL is often the following:&lt;/p&gt;

&lt;pre&gt;
http://www.saunalahti.fi/janij/blog/2008.xml
&lt;/pre&gt;

&lt;p&gt;Now, you need to change the year number to 2009 like this:&lt;/p&gt;

&lt;pre&gt;
http://www.saunalahti.fi/janij/blog/2009.xml
&lt;/pre&gt;

&lt;p&gt;Thanks for reading this blog!&lt;/p&gt;</description><pubDate>Wed, 31 Dec 2008 16:09:05 GMT</pubDate><guid>e5c7adca-40cf-4187-829e-076fa26e3a48</guid></item><item><title>Application Architecture Guide 2.0 released</title><link>http://www.codeplex.com/AppArchGuide/Release/ProjectReleases.aspx?ReleaseId=20586</link><description>&lt;p&gt;Microsoft has just recently released the "RTM" version of their Application Architecture Guide 2.0 book &lt;a href="http://www.codeplex.com/AppArchGuide/Release/ProjectReleases.aspx?ReleaseId=20586"&gt;on CodePlex&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The book talks about correctly designing and implementing applications on the .NET platform, and is available as a 3 MB electronic book with 380 pages. Worth your time, I'm sure!&lt;/p&gt;</description><pubDate>Sun, 28 Dec 2008 17:47:40 GMT</pubDate><guid>bbf5dcc8-2967-45e7-a219-bc09a3c9a66a</guid></item><item><title>Download the Microsoft Code Analysis Tool .NET</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyId=0178e2ef-9da8-445e-9348-c93f24cc9f9d&amp;displaylang=en</link><description>&lt;p&gt;Microsoft has just recently release a new tool called the "Microsoft Code Analysis Tool .NET" (CAT.NET) which helps common variants of common web application vulnerabilities. The tool does this by scanning your application, and installs as a Visual Studio snap-in (plugin). Here's information about the tool:&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;The engine works by reading the target assembly and all reference assemblies used in the application -- module-by-module -- and then analyzing all of the methods contained within each. It finally displays the issues its finds in a list that you can use to jump directly to the places in your application's source code where those issues were found.&lt;/em&gt;"&lt;/p&gt;

&lt;p&gt;To donwload the CTP version of the tool visit &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=0178e2ef-9da8-445e-9348-c93f24cc9f9d&amp;displaylang=en"&gt;Microsoft Downloads&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Fri, 26 Dec 2008 10:36:48 GMT</pubDate><guid>bcd3c7e9-564d-4f82-8ccb-12204b166b8f</guid></item><item><title>Merry Christmas!</title><link></link><description>&lt;p&gt;It's Christmas time again, so it's time to wish everyone Merry Christmas!&lt;/p&gt;</description><pubDate>Tue, 23 Dec 2008 21:24:51 GMT</pubDate><guid>0ba8b2ef-cfce-43f2-8322-2527522f3e0b</guid></item><item><title>Windows Server 2008 activation trouble: solved!</title><link>http://technet.microsoft.com/en-us/library/cc303278.aspx</link><description>&lt;p&gt;I recently installed a Windows Server 2008 Standard box for testing, and everything ran succesfully during install. I entered a product key from MSDN, but didn't bother to activate just yet.&lt;/p&gt;

&lt;p&gt;After running the system succesfully for several days, I though it would be a good time to activate. But strangely enough, I got an activation error with data "Code: 0x8007232B, Description: DNS name does not exists."&lt;/p&gt;

&lt;p&gt;Ahem, what did I do wrong? Installation media from MSDN, code from MSDN. Did I foget something? No, I double-checked the key, the media, and both were correct/valid. What to do, since activation still didn't work. Solution: change the product key, but change it back to what is was before! To do so, I opened the properties window of Computer (right-click in Start menu; this is the same as going to Control Panel and opening the System applet or by pressing Win+Break), and then clicked the Change Product Key link, re-entered the original key, and activated. Problem solved: all was okay this time!&lt;/p&gt;

&lt;p&gt;By the way, to run the Windows Activation quickly, simply run "SLUI.EXE" from the System32 directory. And to change the product key, go to Computer Properties.&lt;/p&gt;</description><pubDate>Sun, 21 Dec 2008 18:58:35 GMT</pubDate><guid>0b807c1b-31a3-4eae-b6b4-b2c9baa2567c</guid></item><item><title>Exchange 2003 service names</title><link></link><description>&lt;p&gt;I needed to do some development work on Microsoft Exchange 2003 server (reading e-mails and so on), and noticed that it would be great if I could quickly start and stop the services from the command-line. As I previously wrote about starting and stopping SQL Server services, I thought I'd use the same technique when working with Exchange.&lt;/p&gt;

&lt;p&gt;The only trouble was getting the service names. Luckily, a command 'sc query | find "SERVICE_NAME"' revealed the service names, except one. The list of services you need are:&lt;/p&gt;

&lt;pre&gt;
SERVICE_NAME: MSExchangeIS
SERVICE_NAME: MSExchangeMGMT
SERVICE_NAME: MSExchangeSA
SERVICE_NAME: RESvc
&lt;/pre&gt;

&lt;p&gt;By using the "sc" command you can easily start and stop these services. Once you know their names, that is!&lt;/p&gt;</description><pubDate>Sat, 20 Dec 2008 14:15:10 GMT</pubDate><guid>ac057ab9-b396-4b48-bc22-6495768d9b23</guid></item><item><title>About ASP.NET MVC in Finnish on CodeZone</title><link>http://seminaarit.codezone.fi/video/materiaalia/ASP.NET%20MVC%20-sovellusten%20rakenne%20tutuksi.pdf</link><description>&lt;p&gt;I had the chance to write a short Finnish article about ASP.NET MVC to CodeZone Finland. The article is titled "ASP.NET MVC -sovellusten rakenne tutuksi" and is available as a PDF file &lt;a href="http://seminaarit.codezone.fi/video/materiaalia/ASP.NET%20MVC%20-sovellusten%20rakenne%20tutuksi.pdf"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Thu, 18 Dec 2008 15:28:27 GMT</pubDate><guid>500fe241-a20c-44c7-92cc-0bc67ec25a7e</guid></item><item><title>Reminder: the URL of this blog will change when 2009 comes</title><link></link><description>&lt;p&gt;Hello readers, another year has soon passed by, and this means that the URL of this blog will change. Today, you are reading this with an URL like "http://www.saunalahti.fi/janij/blog/2008.xml", and as you can see from the URL, I keep a single year's worth of posts in each XML file.&lt;/p&gt;

&lt;p&gt;Thus, next year, the blog URL will be "http://www.saunalahti.fi/janij/blog/2009.xml". Of course, this new URL won't work just yet, but will soon.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;</description><pubDate>Tue, 16 Dec 2008 18:34:41 GMT</pubDate><guid>4f2c5a98-4b0f-4b4f-996c-69b714a3a09e</guid></item><item><title>About jQuery support and Visual Studio 2008</title><link>http://www.eweek.com/c/a/Application-Development/Developing-with-jQuery-in-Microsoft-Visual-Studio-2008/</link><description>&lt;p&gt;eWeek has a nice hands-on article about using the trendy jQuery JavaScript library in Visual Studio 2008. The article is titled "&lt;a href="http://www.eweek.com/c/a/Application-Development/Developing-with-jQuery-in-Microsoft-Visual-Studio-2008/"&gt;Developing with jQuery in Microsoft Visual Studio 2008&lt;/a&gt;".&lt;/p&gt;

&lt;p&gt;If you are interested in jQuery and want to use it with Visual Studio, check this article out. The official place to learn more about jQuery is &lt;a href="http://jquery.com/"&gt;jquery.com&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Sat, 13 Dec 2008 17:11:14 GMT</pubDate><guid>3554b860-f296-4375-9684-60ef6e16eaf5</guid></item><item><title>My two-part ASP.NET MVC article series available online</title><link>http://www.developer.com/design/article.php/3788416</link><description>&lt;p&gt;Developer.com has just published my two-part articles related to ASP.NET MVC development. The article #1 is simply titled "ASP.NET MVC 101" and is available &lt;a href="http://www.developer.com/design/article.php/3788416"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The second part is titled "Accepting Input and Manipulating Data in ASP.NET MVC" and available &lt;a href="http://www.developer.com/design/article.php/3790146"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Wed, 10 Dec 2008 16:32:39 GMT</pubDate><guid>a3971245-0297-4b98-87e3-d23078e95123</guid></item><item><title>Windows Azure training kit available</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&amp;displaylang=en</link><description>&lt;p&gt;Just a quick link share for today. If you are interested in learning more about developing applications for Windows Azure, be sure to check out the Microsoft Azure Services Training Kit - PDC Preview. This kit is available from &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&amp;displaylang=en"&gt;Microsoft Downloads&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This kit is about 45 MB in size and requires Windows Server 2008 or Windows Vista with SP1 to install. Thus, it won't install on Windows XP, for instance.&lt;/p&gt;</description><pubDate>Sun, 07 Dec 2008 14:01:28 GMT</pubDate><guid>d6930159-d0b2-4564-846d-d4e2294a2e02</guid></item><item><title>How to check a file's Unicode encoding with no tools</title><link>www.unicode.org/faq/utf_bom.html</link><description>&lt;p&gt;Sometimes when working with XML documents and/or web applications, you need to know whether a XML, HTML, ASPX or a text file is Unicode encoded. This is very easy of course if you have a text editor, Visual Studio or a development tool available, but sometimes you don't. How then could you detect file's Unicode encoding and the presence of a byte order mark (BOM) without any tools except those that Windows has to offer?&lt;/p&gt;

&lt;p&gt;Luckily, there are at least two options: one is to use Notepad, and the second is to use the "type" command in the command shell (cmd.exe or "DOS prompt"). Here's how to do it.&lt;/p&gt;

&lt;p&gt;First, Notepad. To detect the Unicode encoding, open the file with Notepad. Then, choose File/Save As, and the Save As dialog box opens. This dialog box has a field called Encoding. This field will by default have the value that corresponds to the encoding that the file currently has. It is for example UTF-8, or ANSI if there's no Unicode BOM in the file.&lt;/p&gt;

&lt;p&gt;The second option is to use the command-line command "type" which is available the Windows Command Prompt. Then, simply type the file in question to the console. Since type doesn't understand about Unicode BOMs, then if the file's two or three first characters are garbage (sort of), then you know that the file is in fact Unicode encoded. Unicode BOMs are discussed for example at &lt;a href="www.unicode.org/faq/utf_bom.html"&gt;www.unicode.org&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;You could call this the "Unicode tip of the week".&lt;/p&gt;</description><pubDate>Fri, 05 Dec 2008 19:44:50 GMT</pubDate><guid>8a0f7679-44ab-4241-8b1b-6e4b7bb7dd28</guid></item><item><title>How to control tables and columns in ASP.NET Dynamic Data?</title><link>http://www.asp.net/dynamicdata/</link><description>&lt;p&gt;Are you already using .NET 3.5 SP1? If yes, then you can utilize a very nice technique for "webifying" databases, called &lt;a href="http://www.asp.net/dynamicdata/"&gt;ASP.NET Dynamic Data&lt;/a&gt;. If you are not yet familiar with this new technology, MSDN has an &lt;a href="http://msdn.microsoft.com/en-us/library/cc488546.aspx"&gt;introduction for you&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you start your first Dynamic Data project in Visual Studio 2008, and immediately run the generated application, you will unfortunately see an error message. This is because you haven't yet specified the data source you want. If you are using SQL Server, LINQ To SQL is my choice, and so you need to edit the Global.asax.cs file and follow the instructions in the code comments.&lt;/p&gt;

&lt;p&gt;But once you are done specifying your data context, how do you continue from there? For example, you might want to specify which tables are visible, and which aren't. Easy. Just create a class named the same as the generated class name for your database table (for example, "Order"), and then associate the attribute ScaffoldTable with it:&lt;/p&gt;

&lt;pre&gt;
using System.ComponentModel.DataAnnotations;
...
[ScaffoldTable(true)]
public partial class Order { } 
&lt;/pre&gt;

&lt;p&gt;Here, the ScaffoldTable attribute (from the &lt;a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.aspx"&gt;System.ComponentModel.DataAnnotations&lt;/a&gt; namespace) indicated to the Dynamic Data system that the table should be visible. Note that since your class is a partial class, it actually doesn't make much difference where you put the declaration. For instance, a code file like "TableContol.cs" would be a good idea.&lt;/p&gt;

&lt;p&gt;You can also control things at the column level, which is often just what you need. However specifying column-based settings is somewhat more tricky because you cannot define "partial properties" in C#, at least just yet. Thus, the option is to create a so-called metadata class for your table class, and associate these two together with the MetadataType attribute like this:&lt;/p&gt;

&lt;pre&gt;
[MetadataType(typeof(MyOrderMetadata))]
public partial class Order { } 

public class MyOrderMetadata
{
  [ScaffoldColumn(false)]
  public object OrderDate;
} 
&lt;/pre&gt;

&lt;p&gt;With this metadata class in place, it is easy to start defining even more attributes to the columns. Such attributes include ScaffoldColumn, DisplayFormat and UIHint.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;pre&gt;
[DisplayFormat(DataFormatString="{0:dd.MM.yyyy}")]
public object OrderDate;
&lt;/pre&gt;

&lt;p&gt;Good luck with ASP.NET Dynamic Data.&lt;/p&gt;</description><pubDate>Tue, 02 Dec 2008 17:37:42 GMT</pubDate><guid>399fc411-dc2b-4e80-9e27-e1a5eb8d6cfa</guid></item><item><title>Getting to know "VSTS Lab Management"</title><link>http://blogs.msdn.com/lab_management</link><description>&lt;p&gt;After writing my article about &lt;a href="http://www.developer.com/net/csharp/article.php/10918_3785891"&gt;automating software testing with Hyper-V&lt;/a&gt;, I got an e-mail from Microsoft India telling that they are &lt;a href="http://blogs.msdn.com/lab_management"&gt;keeping a blog&lt;/a&gt; about a similar functionality in the next Visual Studio 2010 release: Lab Management.&lt;/p&gt;

&lt;p&gt;With this feature, software developers and testers using Visual Studio Team System 2010 can automate the process of testing thru virtualization, quite the same as I mention in my article.&lt;/p&gt;

&lt;p&gt;If you are interested in Lab Management, take a look at this &lt;a href="http://blogs.msdn.com/somasegar/archive/2008/11/10/visual-studio-2010-code-focused-development-and-lab-management.aspx"&gt;blog post&lt;/a&gt; from S. Somasegar, and this &lt;a href="http://mschnlnine.vo.llnwd.net/d1/pdc08/PPTX/TL37.pptx"&gt;PDC PowerPoint&lt;/a&gt; slideset. Thanks go to S.M. from MSFT for letting me know about this blog.&lt;/p&gt;</description><pubDate>Sat, 29 Nov 2008 09:29:13 GMT</pubDate><guid>c20d73d6-8b92-4b3b-8cb8-12a204074ceb</guid></item><item><title>Finding the SQL Server service name and starting it from the command-line</title><link>http://msdn.microsoft.com/en-us/library/ms187875.aspx</link><description>&lt;p&gt;Many developers need &lt;a href="http://msdn.microsoft.com/en-us/library/ms187875.aspx"&gt;SQL Server&lt;/a&gt; on their development machines, but it might be that you don't want to allow SQL Server to start automatically when Windows starts. Starting a manual-startup Windows service is easy through the Computer Management GUI, but if you need to do this daily or even several times a day, it can get painful.&lt;/p&gt;

&lt;p&gt;Luckily, you could automate the process by writing a simple script to start the service. The Windows command "sc" (short for "service controller") allows you to start (and stop) services. To use the utility, you need to know the name of the service you wish to start.&lt;/p&gt;

&lt;p&gt;For instance, the service name for SQL Server 2005 or 2008 is by default "MSSQLSERVER", but changes if you install SQL Server with an instance name. To find the service names on your computer, simply run the command "sc query".&lt;/p&gt;

&lt;p&gt;However, the important thing regarding this command is that by default, it only lists running (active) services. This is very easy to forget, and can cause you to scratch your head trying to figure why your service is now listed.&lt;/p&gt;

&lt;p&gt;To find all services, is the command "sc query state= all". Note how you need to have a space between the state parameter and its value, "state=all" will not work.&lt;/p&gt;

&lt;p&gt;Finally, to find your SQL Service name, use this command:&lt;/p&gt;

&lt;pre&gt;
sc query state= all | find "SERVICE_NAME" |find "SQL"
&lt;/pre&gt;

&lt;p&gt;Oftentimes, the service or instance name is in fully capital letters. Of course, your instance name must have the letters "SQL" in it with correct casing.&lt;/p&gt;

&lt;p&gt;Once you have the service name such as "MSSQLSERVER", it's easy to start the service by typing:&lt;/p&gt;

&lt;pre&gt;
sc start MSSQLSERVER
&lt;/pre&gt;

&lt;p&gt;There you have it. And to make things even faster, you could store this command into a batch file, and put it for example on your development machine's desktop. Then it's very convenient to get the services running whenever you need.&lt;/p&gt;</description><pubDate>Wed, 26 Nov 2008 19:52:11 GMT</pubDate><guid>116c8b50-e981-483b-ac8d-a15238c209a4</guid></item><item><title>The options in tracking change data in SQL Server 2008</title><link>http://msdn.microsoft.com/en-us/library/cc280519.aspx</link><description>&lt;p&gt;If you have already had the chance to study SQL Server 2008, you might have noticed that the database itself can help you with the old problem of finding changes made to the data. Yes, we already have triggers, but oftentimes you'd need to know afterwards, what tables or records have changed, and even how.&lt;/p&gt;

&lt;p&gt;To help tackle this problem, SQL Server 2008 contains two features: &lt;a href="http://msdn.microsoft.com/en-us/library/cc280462.aspx"&gt;Change Tracking&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/bb522489.aspx"&gt;Chance Data Capture&lt;/a&gt;. Change Tracking is the simpler (and less resource-intensive) of the two, and provides an answer to the question, "has this row changed?" On the other hand, Change Data Capture (CDC) can answer this question, and also the question, "how has this row changed".&lt;/p&gt;

&lt;p&gt;In effect, you could even use CDC as your "history" system, something like many ERP and version control systems provide. MSDN has a &lt;a href="http://msdn.microsoft.com/en-us/library/cc280519.aspx"&gt;comparison&lt;/a&gt; of these two techniques available. Check it out.&lt;/p&gt;</description><pubDate>Sun, 23 Nov 2008 11:28:30 GMT</pubDate><guid>d5d0147d-a0a2-454a-b9c4-ed4949f0d1c0</guid></item><item><title>Automating Software Testing with Microsoft Hyper-V</title><link>http://www.developer.com/net/csharp/article.php/3785891</link><description>&lt;p&gt;Are you already using Windows Server 2008's Hyper-V virtualization? This technology is great for virtualization, but it is also great for software testing. Especially so if you have the knowledge to write some PowerShell scripts.&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_nov_windows_hyper-v.png" alt="Hyper-V" /&gt;&lt;/p&gt;

&lt;p&gt;Developer.com yesterday published my article titled "&lt;a href="http://www.developer.com/net/csharp/article.php/3785891"&gt;Automating Software Testing with Microsoft Hyper-V&lt;/a&gt;", which shows you how to do it.&lt;/p&gt;

&lt;p&gt;Read the article to get the best out of Hyper-V in your software development/testing environment.&lt;/p&gt;</description><pubDate>Thu, 20 Nov 2008 15:51:32 GMT</pubDate><guid>afccce95-daf4-42fa-8afd-03de52fee0ea</guid></item><item><title>TechEd USA 2009 date set</title><link></link><description>&lt;p&gt;I learned today that the TechEd USA 2009 event will be held in Los Angeles next May, 11th to 15th. So, the event starts on Monday and ends the next Friday.&lt;/p&gt;</description><pubDate>Mon, 17 Nov 2008 15:48:59 GMT</pubDate><guid>0621fe7a-4466-43cd-a9f5-eb38ce261159</guid></item><item><title>Learn F# from Developer.com</title><link>http://www.developer.com/design/article.php/3784961</link><description>&lt;p&gt;I had the chance to investigate the F# language lately, and found it an interesting, though challenging alternative to more mainstream programming for instance with C#.&lt;/p&gt;

&lt;p&gt;Developer.com today published my article about F#, titled "&lt;a href="http://www.developer.com/design/article.php/3784961"&gt;Getting Functional with F#&lt;/a&gt;". This article walks you thru the basics, and also gives you several code examples with a business-oriented developer in mind. If F# interests you, check the article out!&lt;/p&gt;

&lt;p&gt;Next, articles about ASP.NET MVC and Hyper-V are coming up, so stay tuned.&lt;/p&gt;</description><pubDate>Sat, 15 Nov 2008 16:59:43 GMT</pubDate><guid>8d2bbae4-a004-45da-b623-451196ed1062</guid></item><item><title>For the record: Windows Vista version numbers</title><link></link><description>&lt;p&gt;As you might recall from my previous posts, finding operating system or application version numbers can be difficult once years go by and the service packs and updates have all been installed. So, here are two screenshots from Windows Vista, i.e. "Windows NT 6.0". Firstly, the RTM version:&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_nov_about_windows_vista_rtm.png" alt="Windows Vista RTM"&gt;&lt;/p&gt;

&lt;p&gt;Then, the Service Pack 1 (SP1) version:&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_nov_about_windows_vista_sp1.png" alt="Windows Vista SP1"&gt;&lt;/p&gt;

&lt;p&gt;So just for the record, the Vista version numbers are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;RTM: 6.0 Build 6000&lt;/li&gt;
&lt;li&gt;SP1: 6.0 Build 6001&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Wed, 12 Nov 2008 15:56:19 GMT</pubDate><guid>e1212d32-a645-4082-a3dd-23392d953ccb</guid></item><item><title>Windows turns 25</title><link>http://www.eweek.com/c/a/Windows/The-25-Killer-Apps-of-All-Time/</link><description>&lt;p&gt;Using Windows? Can you say from the top of your head how long Windows has been here with us? Today, it's 25 years! Quite a milestone in the IT industry.&lt;/p&gt;

&lt;p&gt;My first Windows version was Windows 3.0 back in the 1990s, but of course, Windows 1.0 was already announced in 1983. Here's a screenshot of the beast (from Wikipedia):&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_nov_windows_1_0.png" alt="Windows 1.0" /&gt;&lt;/p&gt;

&lt;p&gt;While recalling the history, it's also fun to remember the old applications that have greatly contributed to the success of Windows. eWeek lists &lt;a href="http://www.eweek.com/c/a/Windows/The-25-Killer-Apps-of-All-Time/"&gt;top 25 applications&lt;/a&gt; of the PC. Remember all those?&lt;/p&gt;</description><pubDate>Mon, 10 Nov 2008 15:39:49 GMT</pubDate><guid>297b9bc0-9402-44f6-9eff-ba48510ada47</guid></item><item><title>Two recent oops: odd error messages and their solutions</title><link></link><description>&lt;p&gt;I happen to have quite many machines, both virtual and physical, that I use to test various things. Most of these machines have Visual Studio installed, some have Expression products, and some have server applications like SQL Server 2005 and 2008 installed.&lt;/p&gt;

&lt;p&gt;And yes, I confess I sometimes forgot which is which, and thus I sometimes run into error messages that appear to be difficult to solve, but in the end are very easy puzzles. So here goes, two recent "oops".&lt;/p&gt;

&lt;p&gt;Number 1: Trying to install Expression Blend 2 SP1 on a machine that only has Expression Blend 1 installed. As you can guess, didn't work out so well. But the problem is, the error message you will get is by no means very helpful. It goes like this:&lt;/p&gt;

&lt;pre&gt;
---------------------------
Microsoft Expression Blend 2 Service Pack 1
---------------------------
Microsoft Expression Blend 2 Service Pack 1 may have failed to install. Windows Installer returned error code 1605.
---------------------------
OK
---------------------------
&lt;/pre&gt;

&lt;p&gt;So, if you happen to run into this kind of error message, you know what's going on. The lesson: doing a quick glimpse into the Start menu tells Expression Blend is installed, but if you aren't careful, you might miss the version number.&lt;/p&gt;

&lt;p&gt;Number 2: Updating an older Visual Studio 2005 project and testing the new F# compiler at the same time might not be a good idea. My intention was to access an SQL Server database and read data from there with F#.&lt;/p&gt;

&lt;p&gt;But this can be doomed if you happen to have lingering assembly references into assemblies that are only good for older .NET versions, or even .NET Compact Framework. So, I got this error message when trying to open an connection to the SQL Server database:&lt;/p&gt;

&lt;pre&gt;
Unhandled Exception: System.EntryPointNotFoundException: Unable to find an entry
point named 'PAL_LocalAlloc' in DLL 'dbnetlib.dll'.
   at System.Data.SqlClient.SqlConnection.Open()
   at &lt;StartupCode$FSharpTutorial&gt;.$Test._main() in
   C:\Source\FSharpDBTest\AccessSQL.fs:line 24
&lt;/pre&gt;

&lt;p&gt;Not very helpful! First I thought my virtual machine would have for some reason multiple dbnetlib files, but then I went to check the F# project references. Remember, to access System.Data.SqlClient, you don't need to reference System.Data.SqlClient.dll, as System.Data.dll will do just fine! &lt;/p&gt;

&lt;p&gt;By the way, I didn't find much information on the Internet about either of these error messages, so here goes. "Gotcha!"&lt;/p&gt;</description><pubDate>Sat, 08 Nov 2008 12:59:11 GMT</pubDate><guid>cbb8bea1-e1f4-4caf-880b-667e97155fff</guid></item><item><title>Learn ASP.NET MVC in Finnish from CodeZone</title><link>http://seminaarit.codezone.fi/video/materiaalia/ASP.NET%20MVC%20-sovellusten%20rakenne%20tutuksi.pdf</link><description>&lt;p&gt;Just few days ago, I had the chance to author a short introduction to ASP.NET MVC application structure on the Finnish &lt;a href="http://www.codezone.fi/"&gt;CodeZone site&lt;/a&gt;. The article is named "ASP.NET MVC -sovellusten rakenne tutuksi", and as you can guess, it's in Finnish. Download it as a PDF file &lt;a href="http://seminaarit.codezone.fi/video/materiaalia/ASP.NET%20MVC%20-sovellusten%20rakenne%20tutuksi.pdf"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Wed, 05 Nov 2008 15:55:41 GMT</pubDate><guid>b13cf8b2-fde4-4bcd-b482-d0c419786b64</guid></item><item><title>Finding Microsoft PDC material online</title><link>http://www.microsoftpdc.com/</link><description>&lt;p&gt;Microsoft PDC 2008 is now over, and tons of useful and exciting information was delivered to us. No matter whether you were there in Los Angeles or at home, you can see and hear many of the session on PDC online. The best place to go is &lt;a href="http://www.microsoftpdc.com/"&gt;www.microsoftpdc.com&lt;/a&gt;, where you can find direct links to Silverlight videos and PowerPoint slideshows.&lt;/p&gt;

&lt;p&gt;Also, quite a lot of content is hosted on &lt;a href="http://channel9.msdn.com/"&gt;Channel 9's&lt;/a&gt; own &lt;a href="http://channel9.msdn.com/pdc2008/"&gt;PDC 2008 page&lt;/a&gt;, also worth checking out.&lt;/p&gt;

&lt;p&gt;As always, there's so much material and so little time. :-)&lt;/p&gt;</description><pubDate>Sun, 02 Nov 2008 19:24:05 GMT</pubDate><guid>ccd297a3-4149-4721-92d9-d4a9aa040bf8</guid></item><item><title>New article in Tietokone</title><link>http://www.tietokone.fi/</link><description>&lt;p&gt;Time for another new article, this time about Microsoft Hyper-V virtualization.&lt;/p&gt;

&lt;p&gt;The Finnish &lt;a href="http://www.tietokone.fi/"&gt;Tietokone magazine&lt;/a&gt; features my article titled "Hyper-V virtualisoi Windows-palvelimet". You can read it from issue 12/2008's page 49 onwards.&lt;/p&gt;

&lt;p&gt;Happy Halloween!&lt;/p&gt;</description><pubDate>Fri, 31 Oct 2008 15:55:56 GMT</pubDate><guid>cd7cf81b-6a3a-4574-aabd-4d964c97a74c</guid></item><item><title>More PDC information: .NET 4.0</title><link>http://www.microsoft.com/presspass/events/pdc/docs/NET4OV.doc</link><description>&lt;p&gt;More information flowing from .NET 4.0 from PDC: Microsoft has now compiled a &lt;a href="http://www.microsoft.com/presspass/events/pdc/docs/NET4OV.doc"&gt;data sheet&lt;/a&gt; about the planned features for both WCF (Windows Communication Foundation) and Workflow Foundation (WF) in their forthcoming 4.0 version.&lt;/p&gt;

&lt;p&gt;WCF 4.0 will (according to today's plans at least) have better REST support, and WS-Discovery'ability (could that be a word?). WF will get boosted performance and better visual designers with a XAML debugging feature.&lt;/p&gt;

&lt;p&gt;Speaking of Windows Azure, there's now a data sheet available &lt;a href="http://www.microsoft.com/presspass/events/pdc/docs/AzureFS.doc"&gt;here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 30 Oct 2008 21:21:01 GMT</pubDate><guid>409c08d3-72a6-4dd7-afce-718829c62496</guid></item><item><title>Services in the cloud: Windows Azure</title><link>http://www.microsoft.com/presspass/features/2008/oct08/10-27pdcfeature1.mspx</link><description>&lt;p&gt;As Microsoft's Professional Developer Conference (PDC) is rolling in Los Angeles, it's no surprise announcements are being made. Yes, Windows 7 is coming, and there's already a wealth of information available &lt;a href="http://code.msdn.microsoft.com/Win7DeveloperGuide"&gt;on MSDN&lt;/a&gt; in the format of a Developer Guide. Great!&lt;/p&gt;

&lt;p&gt;Windows 7 appears to be more light-weight than Vista, but also backwards compatible with new features for everyone. For instance, the Office 2007 style ribbon seems to be there.&lt;/p&gt;

&lt;p&gt;But then, there's &lt;a href="http://www.microsoft.com/presspass/features/2008/oct08/10-27pdcfeature1.mspx"&gt;Windows Azure&lt;/a&gt;. Azure is a cloud-computing version of Windows, allowing developers to write .NET code to run on the Azure platform. Developers already have their &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=BB893FB0-AD04-4FE8-BB04-0C5E4278D3E9&amp;displaylang=en"&gt;pre-release SDKs&lt;/a&gt; which is something I'm planning to investigate soon enough. There's also a new page called &lt;a href="http://www.azure.com/"&gt;www.azure.com&lt;/a&gt; to have more information. Go check it out!&lt;/p&gt;

&lt;p&gt;As a sidenote, Embarcadero/CodeGear announced Delphi Prism, which is RemObject's Oxygene in new clothing. Shortly put, it's Delphi .NET inside the Visual Studio IDE. Maybe something to look at.&lt;/p&gt;</description><pubDate>Mon, 27 Oct 2008 17:53:14 GMT</pubDate><guid>9135847c-3a57-44e0-ba29-cebcde8d3270</guid></item><item><title>New web site: MSDN DevLabs</title><link>http://msdn.microsoft.com/en-us/devlabs/default.aspx</link><description>&lt;p&gt;Speaking of new development related web sites, &lt;a href="http://msdn.microsoft.com/en-us/devlabs/default.aspx"&gt;MSDN's DevLabs&lt;/a&gt; in one such new site.&lt;/p&gt;

&lt;p&gt;Presently, this new site features three "in the works" type of projects, namely PopFly, Pex, Chess and Small Basic. Of these, Small Basic seems the most interesting: a tiny, easy Basic like development system for beginners and kids. On a more serious note, Pex and Chess aim at helping developed build quality code.&lt;/p&gt;

&lt;p&gt;Check them out!&lt;/p&gt;</description><pubDate>Sat, 25 Oct 2008 09:17:43 GMT</pubDate><guid>26c29ee4-cb46-429d-b19e-a7d63ffde5e8</guid></item><item><title>Team System Rocks.com</title><link>http://teamsystemrocks.com/</link><description>&lt;p&gt;Interested about Microsoft's Visual Studio Team System, VSTS? I noticed a new web site called &lt;a href="http://teamsystemrocks.com/"&gt;Team System Rocks.com&lt;/a&gt;, that contains information about the product.&lt;/p&gt;

&lt;p&gt;I'm not exactly sure if this is a new site, or is it just that I've visited it before, and then forgotten? Nonetheless, this is a site that you might want to visit, especially the tutorial videos seem interesting.&lt;/p&gt;</description><pubDate>Thu, 23 Oct 2008 18:23:07 GMT</pubDate><guid>e263e102-1aae-41fa-9e4d-e5cda10e6209</guid></item><item><title>ASP.NET MVC updates: first beta now available</title><link>http://weblogs.asp.net/scottgu/archive/2008/10/16/asp-net-mvc-beta-released.aspx</link><description>&lt;p&gt;Just a day after I had finished my ASP.NET MVC session at Microsoft's Finnish &lt;a href=""&gt;WebDay 2008&lt;/a&gt; at Kinopalatsi, Microsoft announced the first &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A24D1E00-CD35-4F66-BAA0-2362BDDE0766&amp;displaylang=en"&gt;beta version&lt;/a&gt; of MVC.&lt;/p&gt;

&lt;p&gt;The previous version used to be ASP.NET MVC Preview 5 from August, and this beta version is now said to be quite close to being feature complete.&lt;/p&gt;

&lt;p&gt;More information can be found from &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/10/16/asp-net-mvc-beta-released.aspx"&gt;Scott Guthrie's blog&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Mon, 20 Oct 2008 11:22:11 GMT</pubDate><guid>04743e12-996a-44de-b6d6-b8f33bb4ca95</guid></item><item><title>New article in the Prosessori magazine: what's new in .NET 3.x</title><link>http://www.prosessori.fi/</link><description>&lt;p&gt;The Finnish &lt;a href="http://www.prosessori.fi/"&gt;Prosessori magazine&lt;/a&gt; has my latest .NET programming article titled ".NET sai uusia ominaisuuksia". The article talks about the new features in .NET versions 3.0 and 3.5, including the recent SP1.&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;</description><pubDate>Thu, 16 Oct 2008 14:19:15 GMT</pubDate><guid>6eb3ee18-676f-42a8-85e0-efe733aae594</guid></item><item><title>Silverlight 2.0 is now available</title><link>http://msdn.microsoft.com/en-us/silverlight/default.aspx</link><description>&lt;p&gt;The waiting is over: Silverlight 2.0 RTW (Release To Web) is finally here. Download your copy &lt;a href="http://silverlight.net/"&gt;from Silverlight.net&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://weblogs.asp.net/scottgu"&gt;Scott Guthrie&lt;/a&gt; announced the new version yesterday in a teleconference, and today a &lt;a href="http://www.microsoft.com/presspass/press/2008/oct08/10-13Silverlight2PR.mspx"&gt;press release&lt;/a&gt; was made.&lt;/p&gt;

&lt;p&gt;Also, MSDN has just &lt;a href="http://msdn.microsoft.com/en-us/silverlight/default.aspx"&gt;been updated&lt;/a&gt;, and you can find the Silverlight 2.0 runtime download there, plus the Visual Studio 2008 SP1 enabled development kit (SDK), and also Expression Blend 2 SP1.&lt;/p&gt;

&lt;p&gt;More information available &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/10/14/silverlight-2-released.aspx"&gt;here&lt;/a&gt; as well. Go Silverlight!&lt;/p&gt;</description><pubDate>Tue, 14 Oct 2008 14:23:34 GMT</pubDate><guid>ea27e60b-ca0c-44fe-b788-e6ff0a3faa87</guid></item><item><title>Getting the desktop directory in Win32 application in Windows Vista</title><link>http://msdn.microsoft.com/en-us/library/bb762188.aspx</link><description>&lt;p&gt;Oftentimes, you need a way to find the correct location of the user's desktop, or any other special folder like Documents, Pictures, and so on. For years, this has been easy with Shell API functions such as SHGetFolderPath, but the thing is that this particular API is getting old. So old in fact, that beginning of Windows Vista (think Windows Server 2008 and forthcoming Windows 7 as well) this function is deprecated.&lt;/p&gt;

&lt;p&gt;Thus, you need a better function, and in Vista an onwards it is called &lt;a href="http://msdn.microsoft.com/en-us/library/bb762188.aspx"&gt;SHGetKnownFolderPath&lt;/a&gt;. Just lately, I needed to refresh an older Delphi application for Vista, and wanted to stop using deprecated APIs (a good idea more often than not). But of course (no surprise here), nobody had bothered to do the C language header translation for Delphi, so I had to do it myself (this is one reason I'm getting tired of Delphi, lack of cutting-edge API support). Here are the declarations you need, but remember that this only works on Vista and later.&lt;/p&gt;

&lt;pre&gt;
Uses
  ComObj;

Type
  KNOWNFOLDERID    = TGUID;
  REFKNOWNFOLDERID = ^KNOWNFOLDERID;
  PWSTR            = PWideChar;
  PPWSTR           = ^PWSTR;

Const
  FOLDERID_Desktop : KNOWNFOLDERID =
    '{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}';

Function SHGetKnownFolderPath(
  rfid : REFKNOWNFOLDERID; dwFlags : DWORD;
  hToken : THANDLE;
  var ppszPath : PPWSTR) : HRESULT; StdCall;
  External 'shell32.dll';
  
Procedure CoTaskMemFree(
  pv: Pointer); StdCall; External 'ole32.dll';
&lt;/pre&gt;

&lt;p&gt;Now then, with the API declarations in place, it's easy to write functions such as GetDesktopPath:&lt;/p&gt;

&lt;pre&gt;
function GetDesktopPath: String;
Var
  PathBuf   : PPWSTR;
  APIResult : HRESULT;

begin
  APIResult := SHGetKnownFolderPath(
    @FOLDERID_Desktop,0,0,PathBuf);
  OleCheck(APIResult);
  Result := WideCharToString(PWideChar(PathBuf));
  CoTaskMemFree(PathBuf);
end;
&lt;/pre&gt;

&lt;p&gt;Of course, if you are a C/C++ developer, simply start using the SHGetKnownFolderPath API from the latest header files. And if .NET and/or C# programming is your call, then you already have System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop).&lt;/p&gt;

&lt;p&gt;Keywords: HowTo, How to get desktop path, desktop directory, special folder location, shell folder.&lt;/p&gt;</description><pubDate>Sun, 12 Oct 2008 16:47:56 GMT</pubDate><guid>cb0a2996-3fb1-4f5b-8e4f-2b49a863e0b2</guid></item><item><title>Version numbers stored: Visual Studio 2008 RTM and SP1</title><link></link><description>&lt;p&gt;In the process of recording Microsoft Visual Studio 2008 version numbers for RTM and SP1 (Service Pack 1) versions, here are they are for future records.&lt;/p&gt;

&lt;p&gt;For Visual Studio 2008 original version, the version number reads as follows:&lt;/p&gt;

&lt;pre&gt;
Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5
&lt;/pre&gt;

&lt;p&gt;The, once SP1 is installed, the version information is:&lt;/p&gt;

&lt;pre&gt;
Microsoft Visual Studio 2008
Version 9.0.30729.1 SP
Microsoft .NET Framework
Version 3.5 SP1
&lt;/pre&gt;

&lt;p&gt;As years pass, finding this information can be difficult. And experience tells that later on, this information can be hard to find.&lt;/p&gt;

&lt;p&gt;Finally, here are the images from Help/About. RTM:&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_oct_visual_studio_2008_rtm_about_box.png" /&gt;&lt;/p&gt;

&lt;p&gt;And SP1:&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_oct_visual_studio_2008_sp1_about_box.png" /&gt;&lt;/p&gt;</description><pubDate>Thu, 09 Oct 2008 20:24:49 GMT</pubDate><guid>1adf35c1-a7a7-408d-9e44-8d34c05de44c</guid></item><item><title>Visual Studio Team Edition for Developer and Data to combine</title><link>http://blogs.msdn.com/somasegar/archive/2008/10/02/team-dev-team-dev-team-data.aspx</link><description>&lt;p&gt;It was announced just recently, that Microsoft has combined the Team System products Visual Studio 2008 Team Edition for Developers and Team Edition for Databases to a single product bearing the Developer name.&lt;/p&gt;

&lt;p&gt;Those who have the MSDN subscription, will be able to download the database bits to work with the original developer edition.&lt;/p&gt;</description><pubDate>Mon, 06 Oct 2008 14:25:16 GMT</pubDate><guid>f51193db-447d-4ba5-84ad-51819b2a21dd</guid></item><item><title>Details rolling about .NET 4.0 and "Dublin"</title><link>http://www.microsoft.com/net/dublin.aspx</link><description>&lt;p&gt;As Visual Studio 2010 and .NET Framework 4.0 have been just announced, it's no surprise that more details are coming available each day.&lt;/p&gt;

&lt;p&gt;Now, Microsoft has come up with a &lt;a href="http://www.microsoft.com/net/dublin.aspx"&gt;new site&lt;/a&gt; talking more about the planned features for .NET 4.0 and especially the new Windows Server codename "Dublin". And, we're sure to see and hear more once Microsoft's Professional Developer's Conference (PDC) kicks in.&lt;/p&gt;</description><pubDate>Thu, 02 Oct 2008 17:52:36 GMT</pubDate><guid>d17a2489-925e-4117-9c9c-a6de8f6256bc</guid></item><item><title>New article: Getting Up and Running with the Composite UI Application Block for WPF</title><link>http://www.developer.com/net/article.php/3774351</link><description>&lt;p&gt;Developer.com hosts my newest .NET and C# development article titled "&lt;a href="http://www.developer.com/net/article.php/3774351"&gt;Getting Up and Running with the Composite UI Application Block for WPF
&lt;/a&gt;", which talks about the CAB block for Windows Presentation Foundation applications.&lt;/p&gt;

&lt;p&gt;Enjoy reading, and let me know what you think!&lt;/p&gt;</description><pubDate>Tue, 30 Sep 2008 17:15:51 GMT</pubDate><guid>6ab0a90e-daab-4133-8b1c-bbdc1cc27d06</guid></item><item><title>Visual Studio 2010 and .NET 4.0 announced</title><link>http://msdn.microsoft.com/en-us/vstudio/products/cc948977.aspx</link><description>&lt;p&gt;Only few hours ago, Microsoft &lt;a href="http://www.microsoft.com/presspass/press/2008/sep08/09-29VS10PR.mspx"&gt;announced&lt;/a&gt; the next version of both Visual Studio and .NET Framework. The next versions will be called Visual Studio 2010 and .NET Framework 4.0.&lt;/p&gt;

&lt;p&gt;The &lt;a href=".NET Framework 4.0"&gt;press release&lt;/a&gt; nicely outlines the new features, but there's also completely &lt;a href="http://msdn.microsoft.com/en-us/vstudio/products/cc948977.aspx"&gt;new page&lt;/a&gt; on MSDN devoted to the new version.&lt;/p&gt;

&lt;p&gt;Great reading, so be sure to check it out today!&lt;/p&gt;</description><pubDate>Mon, 29 Sep 2008 15:16:38 GMT</pubDate><guid>62d79b0c-e935-423d-8dcf-d61dd6711d24</guid></item><item><title>SQL Server 2008 Experience, what is it?</title><link>http://www.sqlserverexperience.com/</link><description>&lt;p&gt;If you are a fan of SQL Server, then the chances are you are interested in SQL Server 2008 as well. Microsoft has just recently (yesterday, in fact) announced a new site called the SQL Server Experience, available at &lt;a href="http://www.sqlserverexperience.com/"&gt;www.sqlserverexperience.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The site connects you with videos from the SQL Server Engineering team, and while doing so, you learn about the internals of the product. The fun side's also there.&lt;/p&gt;</description><pubDate>Mon, 29 Sep 2008 14:48:54 GMT</pubDate><guid>4254a829-d9a4-439f-a7db-d358a090b2c5</guid></item><item><title>Silverlight 2 RC0 now available</title><link>http://weblogs.asp.net/scottgu/archive/2008/09/25/silverlight-2-release-candidate-now-available.aspx</link><description>&lt;p&gt;Microsoft yesterday announced that Silverlight 2's first Release Candidate (RC) is now available. This means that the "SL2 RC0" can now be &lt;a href="http://silverlight.net/GetStarted/sl2rc0.aspx"&gt;downloaded here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;New features include numerous API changes (some &lt;a href="http://download.microsoft.com/download/6/F/E/6FE1F43D-9D0C-4346-AD08-602DF9BCB3CF/BreakingChangesBetweenBeta2andRelease.doc"&gt;breaking&lt;/a&gt;), new controls, and improved skinning.&lt;/p&gt;</description><pubDate>Fri, 26 Sep 2008 14:35:11 GMT</pubDate><guid>e2c6ae2a-707c-4d7d-a79a-556d82246907</guid></item><item><title>How to enable SQL Server tracing</title><link>http://support.microsoft.com/kb/224587</link><description>&lt;p&gt;If you are developing applications for Microsoft SQL Server, or need to maintain such a server, you might want an utility to monitor those SQL statements that your (own) applications execute against the database server.&lt;/p&gt;

&lt;p&gt;Luckily, SQL Server supports an utility (in SQL Server 2005, anyway) called SQL Profiler, which supports traces. When you launch this utility from the Start menu, you can go to File/New Trace, and then hit OK. Once you do this, the screen will start to display information about all SQL statements executed or run against the database server in question. Yes, it's that easy!&lt;/p&gt;

&lt;p&gt;Microsoft's KB article &lt;a href="http://support.microsoft.com/kb/224587"&gt;224587&lt;/a&gt; gives additional details. Keywords: How to enable tracing in Microsoft SQL Server, HOWTO, tracing, monitoring SQL statements.&lt;/p&gt;</description><pubDate>Tue, 23 Sep 2008 15:22:56 GMT</pubDate><guid>bb940dc0-6b93-44ae-891c-5703e6c40e24</guid></item><item><title>Quick reminder: SELECT queries and NULL values in SQL Server and C#</title><link>http://msdn.microsoft.com/en-us/library/ms188001.aspx</link><description>&lt;p&gt;When you are developing database application, handling NULL values can sometimes cause trouble. For instance, it is a common mistake to construct SELECT queries like this with SQL Server, if you are not paying attention:&lt;/p&gt;

&lt;pre&gt;
SELECT [nn], [mm]
FROM [table]
WHERE ([somefield] = 'ABC') AND ([someotherfield] = NULL)
&lt;/pre&gt;

&lt;p&gt;Can you spot the mistake? This query never returns the correct values, because the NULL value has been specified incorrectly. Of course, the remedy is to use the "IS NULL" construct instead, like this:&lt;/p&gt;

&lt;pre&gt;
SELECT [nn], [mm]
FROM [table]
WHERE ([somefield] = 'ABC') AND ([someotherfield] IS NULL)
&lt;/pre&gt;

&lt;p&gt;This query would then return the correct values. But, as an C# application developer, you might already be using parameterized queries, with code similar to this (error checking omitted for clarity):&lt;/p&gt;

&lt;pre&gt;
SqlConnection conn = new SqlConnection(
  Properties.Settings.Default.MyConnectionString);
conn.Open();
string sql = " SELECT [nn], [mm] " +
  "FROM table " +
  "WHERE ([somefield] = @somefield) AND "+
  "([someotherfield] = @someotherfield)";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.AddWithValue("@somefield", "ABC");
cmd.Parameters.AddWithValue("@someotherfield", DBNull.Value);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
  MessageBox.Show(reader.GetString(...));
}
reader.Dispose();
cmd.Dispose();
conn.Dispose();
&lt;/pre&gt;

&lt;p&gt;Here, the code uses two named parameters in the SQL query: @somefield and @someotherfield. But, the code then calls the Parameters.AddWithValue method with the value of DBNull.Value.&lt;/p&gt;

&lt;p&gt;If you don't know how the SQL Server driver executes this statement, you might be inclined to think that the WHERE parameter is executed like this:&lt;/p&gt;

&lt;pre&gt;
...
WHERE ([somefield] = 'ABC') AND ([someotherfield] = NULL)
&lt;/pre&gt;

&lt;p&gt;However, for some reason, the query still works as expected. How can this be?
The answer is the fact that the SQL statement isn't in fact executed directly, but instead using a stored procedure called "sp_executesql". If you enable SQL Server tracing (more about this in a forth-coming blog post), you can see that a statement like this is executed:

&lt;pre&gt;
exec sp_executesql N' SELECT [nn], [mm] FROM
table WHERE ([somefield] = @somefield) AND
([someotherfield] = @someotherfield)',N'@somefield
nvarchar(3),@someotherfield nvarchar(4000)',
@somefield=N'ABC',@someotherfield=NULL
&lt;/pre&gt;

&lt;p&gt;As you can see, in this case it doesn't matter that the @someotherfield is NULL! By using the "&lt;a href="http://msdn.microsoft.com/en-us/library/ms188001.aspx"&gt;sp_executesql&lt;/a&gt;" stored procedure, the SQL Server ADO.NET driver cleverly walks around the issue, and doesn't need to resort to actually changing the SQL statement if the parameter value is NULL.&lt;/p&gt;</description><pubDate>Sun, 21 Sep 2008 17:21:45 GMT</pubDate><guid>c55cba44-2cef-4473-a7c6-d87c5820cc0a</guid></item><item><title>Feature ideas for Visual Studio 10 start to emerge</title><link>http://www.pluralsight.com/community/blogs/jeffsch/archive/2008/09/15/vsx-keynote.aspx</link><description>&lt;p&gt;Visual Studio 2008 has been here for a while now, and the next version of Visual Studio will eventually be here. Just recently, public details of Visual Studio 10 (or "VS10") are starting to emerge. The VSX Conference in USA has been held, and &lt;a href="http://www.pluralsight.com/community/blogs/jeffsch/archive/2008/09/15/vsx-keynote.aspx"&gt;things talked there&lt;/a&gt; are summarized in a blog post by Jeffrey Schlimmer.&lt;/p&gt;

&lt;p&gt;Interesting features are, among others, a WPF-based code editor (!), the focus of a smaller and faster IDE, integrated IM client (Instant Messaging, think Live Messenger), and setup improvements.&lt;/p&gt;

&lt;p&gt;Sounds like plenty of interesting things. The keys are: "Experience", "Customer", "Platform" and "Architecture".&lt;/p&gt;</description><pubDate>Thu, 18 Sep 2008 16:50:43 GMT</pubDate><guid>2e813c90-23ea-4325-a062-299bd5f6702e</guid></item><item><title>Canon announces EOS 5D Mark II</title><link>http://www.usa.canon.com/consumer/controller?act=ModelInfoAct&amp;fcategoryid=139&amp;modelid=17662</link><description>&lt;p&gt;Canon has &lt;a href="http://www.usa.canon.com/consumer/controller?act=ModelInfoAct&amp;fcategoryid=139&amp;modelid=17662"&gt;announced&lt;/a&gt; the anticipated second incarnation of the familiar EOS 5D: EOS 5D Mark II.&lt;/p&gt;

&lt;p&gt;The new camera has a 21 megapixel sensor, HD video recording possibility (on a DSLR?) up to around 10 minutes, expanded ISO range, and more. Sounds like a great little camera to me!&lt;/p&gt;</description><pubDate>Wed, 17 Sep 2008 16:20:06 GMT</pubDate><guid>83ef92ad-034b-4358-9b28-c833c32e5474</guid></item><item><title>QuickStart to ASP.NET Model-View-Controller Applications</title><link>http://quickstarts.asp.net/3-5-extensions/mvc/default.aspx</link><description>&lt;p&gt;Are you interested in learning more about the new ASP.NET's new MVC (Model-View-Controller) technology? The familiar &lt;a href="http://www.asp.net/"&gt;asp.net&lt;/a&gt; web site is a good starting point, and now the site features nice QuickStart tutorial and videos about the new technology.&lt;/p&gt;

&lt;p&gt;For example, there are topics like "ASP.NET MVC Overview", "ASP.NET Routing", filtering, and unit testing, among others.&lt;/p&gt;

&lt;p&gt;Check them out!&lt;/p&gt;</description><pubDate>Wed, 17 Sep 2008 16:01:03 GMT</pubDate><guid>27c3e9d7-7404-4296-be32-23882abbd247</guid></item><item><title>Where to get the Windows Installer CleanUp Utility?</title><link>http://support.microsoft.com/kb/290301</link><description>&lt;p&gt;Sometimes, when you try to uninstall a program from your system, you notice that it won't uninstall. Or, the application might uninstall, but still leave an entry to the depths of the system registry, and thus lingers on the list of installed applications forever.&lt;/p&gt;

&lt;p&gt;Luckily, Microsoft has developed an utility called the &lt;a href="http://support.microsoft.com/kb/290301"&gt;Windows Installer CleanUp Utility&lt;/a&gt; to cover such situations. By downloading the packet msicuu2.exe and installing it, you get a nice little tool for forcibly removing unnecessary items from the Windows Installer database.&lt;/p&gt;

&lt;p&gt;The standard disclaimer of course applies: just like with RegEdit, be careful with msicuu.exe! A wrong click, and trouble could result. After you understand the implications, it's a nifty little app worth checking out.&lt;/p&gt;</description><pubDate>Sun, 14 Sep 2008 18:42:05 GMT</pubDate><guid>19c943c7-3595-4444-8f7f-ccb58078e600</guid></item><item><title>Microsoft WebDays 2008 is coming on 16th of October</title><link>http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032389402&amp;Culture=fi-FI</link><description>&lt;p&gt;Microsoft Finland arranges two popular developer events in a year: the larger DevDays in the spring, and the WebDays in the autumn. Now it is time for WebDays: they are being held on 16th of October here in Helsinki.&lt;/p&gt;

&lt;p&gt;I've been asked to keep an ASP.NET session there, hope you can attend!&lt;/p&gt;

&lt;p&gt;Update on 17th of September: the &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032389402&amp;Culture=fi-FI"&gt;registration site&lt;/a&gt; is now open.&lt;/p&gt;</description><pubDate>Thu, 11 Sep 2008 12:00:23 GMT</pubDate><guid>0755cebc-66c9-4a65-8fb3-243ad2a10646</guid></item><item><title>New column in the Finnish Prosessori magazine</title><link>http://www.prosessori.fi/</link><description>&lt;p&gt;The Finnish &lt;a href="http://www.prosessori.fi/"&gt;Prosessori magazine&lt;/a&gt; features my newest .NET development column, titled "Uuden opiskelu vastaa siirtymistä 32-bittisyyteen".&lt;/p&gt;

&lt;p&gt;The column talks about the new features of .NET 3.0 and 3.5, which in my opinion requires extensive studying to be thoroughly understood and put into effective use. I've also updated my &lt;a href="http://www.saunalahti.fi/janij/publications/"&gt;Publications page&lt;/a&gt; to reflect the lately published articles.&lt;/p&gt;</description><pubDate>Mon, 08 Sep 2008 04:43:38 GMT</pubDate><guid>41a5f7ee-f2bf-4b2b-9bf9-f91aa0ae8539</guid></item><item><title>.NET Reflector changes owner/developer</title><link>http://www.red-gate.com/</link><description>&lt;p&gt;Most .NET developers are familiar with Lutz Roeder's venerable .NET Reflector utility. This utility, part of my toolkit also, has been eight years in the making, and now the author reports that its time for him to move on.&lt;/p&gt;

&lt;p&gt;Luckily, development won't stop here, and Lutz reports that he has "reached an agreement to have &lt;a href="http://www.red-gate.com/"&gt;Red Gate Software&lt;/a&gt; continue the development of .NET Reflector."&lt;/p&gt;</description><pubDate>Sat, 06 Sep 2008 15:49:09 GMT</pubDate><guid>2e5e5b84-a501-48bc-be12-200d05078872</guid></item><item><title>Windows Small Business Server 2008</title><link>http://www.microsoft.com/windowsserver/essential/sbs/default.mspx</link><description>&lt;p&gt;While I was on my vacation, Microsoft announced the future availability of &lt;a href="http://www.microsoft.com/windowsserver/essential/sbs/default.mspx"&gt;Windows Small Business Server 2008&lt;/a&gt;, or SBS 2008. The official launch date is now locked to November 12th, which is soon here if days go as fast in the future as they have in the past two months.&lt;/p&gt;

&lt;p&gt;Developers targeting this operating system edition can assume similar features as Windows Server 2008 and Exchange Server 2007 combined, optionally with SQL Server 2008 installed. Of course, you could also detect specifically, if the Windows OS version is a SBS server.&lt;/p&gt;</description><pubDate>Sat, 06 Sep 2008 14:00:15 GMT</pubDate><guid>faf1536a-f8e6-4588-9e2b-778790d2d9f4</guid></item><item><title>On vacation in USA</title><link></link><description>&lt;p&gt;I spent the last week or so in western part of the U.S., and so haven't been able to keep up with regular postings.&lt;/p&gt;

&lt;p&gt;I visited Los Angeles and Las Vegas, a nice trip.&lt;/p&gt;</description><pubDate>Fri, 05 Sep 2008 18:01:25 GMT</pubDate><guid>1bc21567-7ade-4d19-a1ee-28f9aa5395e2</guid></item><item><title>List of supported Windows Server 2008 Server Core Win32 API functions</title><link>http://msdn.microsoft.com/en-us/library/ms723899.aspx</link><description>&lt;p&gt;Windows Server 2008 support a special installation option called Server Core where only minimal operating system functions are installed, and for example the general Windows graphical user interface is missing.&lt;/p&gt;

&lt;p&gt;Of course, this places restictions on which Win32 API functions you can call on a Server Core installation. On MSDN, there's a topic called "&lt;a href="http://msdn.microsoft.com/en-us/library/ms723899.aspx"&gt;Server Core Functions by Name&lt;/a&gt;" which lists all supported API functions in Server Core.&lt;/p&gt;

&lt;p&gt;If you are targeting your applications to run on Server Core, make sure you check &lt;a href="http://msdn.microsoft.com/en-us/library/ms723899.aspx"&gt;the list&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Tue, 26 Aug 2008 12:40:13 GMT</pubDate><guid>42452ead-a259-4b92-9c53-f0639c9188aa</guid></item><item><title>Good article in Windows Server 2008 virtualization vs. VMware's offering</title><link>http://www.dabcc.com/article.aspx?id=8029</link><description>&lt;p&gt;Although not a development issue per se, virtualization is a topic that developers also need to understand. Even if modern virtualization requires no modifications to applications, developers need to understand the scenarios under which their (.NET) applications are being run.&lt;/p&gt;

&lt;p&gt;Speaking of the alternatives, there's VMware, and then there's Microsoft with it's Hyper-V virtualization on Windows Server 2008. A very nice &lt;a href="http://www.dabcc.com/article.aspx?id=8029"&gt;blog article&lt;/a&gt; has been written about the combatants. Be sure to check it out.&lt;/p&gt;</description><pubDate>Sun, 24 Aug 2008 14:27:23 GMT</pubDate><guid>695ac94d-f979-48de-a8cc-e7339db8ad47</guid></item><item><title>Photosynth now available to the public!</title><link>http://photosynth.net/</link><description>&lt;p&gt;Photosynth &lt;a href="http://photosynth.net/"&gt;is here&lt;/a&gt;! Microsoft today announced, that the venerable Photosynth 3D digital photo application is now available for everybody. To see it in action, you need to install a 8.3 MB application and browse plug-in, and then visit the Photosynth.net web site.&lt;/p&gt;

&lt;p&gt;Of course, I wanted to test the system immediately, but seems there's a big rush to the site, and I do get some errors with my IE browser. I also tried Firefox, and it appears to work better on my Windows XP SP2 machine.&lt;/p&gt;

&lt;p&gt;If you are serious about your photographs, remember to read the license text, which says:&lt;/p&gt;

&lt;p&gt;&lt;i&gt;However, with respect to content you post or provide you grant to those members of the public to whom you have granted access (for content posted on shared and private areas of the service) or to the public (for content posted on public areas of the service) free, unlimited, worldwide, and nonexclusive permission to:
&lt;ul&gt;
&lt;li&gt;use, modify, copy, distribute and display the content solely in connection with the service;&lt;/li&gt;
&lt;li&gt;publish your name in connection with the content; and&lt;/li&gt;
&lt;li&gt;grant these rights to others.&lt;/ul&gt;
&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;Other than that, I'm impressed with the service. I hope to find the time to upload my own photos there in the coming days.&lt;/p&gt;</description><pubDate>Thu, 21 Aug 2008 16:34:09 GMT</pubDate><guid>d06db139-f5a9-4040-aac1-58817ef83ee3</guid></item><item><title>New article in Developer.com</title><link>http://www.codeguru.com/csharp/csharp/cs_data/xml/article.php/c15475</link><description>&lt;p&gt;Developer.com (or to be more precise, CodeGuru.com) &lt;a href="http://www.codeguru.com/csharp/csharp/cs_data/xml/article.php/c15475"&gt;has published&lt;/a&gt; my latest article about WPF applications and database access.&lt;/p&gt;

&lt;p&gt;The article is titled "Accessing Business Data in WPF Applications" and it is available to be read online &lt;a href="http://www.codeguru.com/csharp/csharp/cs_data/xml/article.php/c15475"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Wed, 20 Aug 2008 15:10:20 GMT</pubDate><guid>aebae63d-7b20-457c-bfa4-597db6ec2bc5</guid></item><item><title>Improving IIS 7.0 web application performance</title><link>http://technet.microsoft.com/en-us/magazine/cc745952.aspx</link><description>&lt;p&gt;The latest TechNet magazine (September, 2008) has a great article about improving performance of web applications on IIS 7.0. The article is titled "&lt;a href="http://technet.microsoft.com/en-us/magazine/cc745952.aspx"&gt;Top 10 Performance Improvements in IIS 7.0&lt;/a&gt;".&lt;/p&gt;

&lt;p&gt;If you are developing web applications and interested what Windows Server 2008 can do for you, then this article is recommended reading.&lt;/p&gt;</description><pubDate>Sun, 17 Aug 2008 12:31:55 GMT</pubDate><guid>be04cb06-7658-4a1c-b383-2b08d3516c24</guid></item><item><title>New article about LINQ in Tietokone</title><link>http://www.tietokone.fi/</link><description>&lt;p&gt;The Finnish &lt;a href="http://www.tietokone.fi/"&gt;Tietokone magazine&lt;/a&gt; has published my latest software development article about LINQ (Language Integrated Query). The article appeared in the August, 2008 issue of the magazine with the title "LINQ helpottaa SQL-kyselyjä".&lt;/p&gt;

&lt;p&gt;Happy reading!&lt;/p&gt;</description><pubDate>Thu, 14 Aug 2008 15:07:34 GMT</pubDate><guid>8340197d-8d0a-4b87-aff0-722fb5a0a023</guid></item><item><title>Visual Studio 2008 and .NET 3.5 Service Pack 1 now available</title><link>http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx</link><description>&lt;p&gt;The wait is over: Microsoft has &lt;a href="http://www.microsoft.com/presspass/press/2008/aug08/08-11NETFXPR.mspx?rss_fdn=Press Releases"&gt;just announced&lt;/a&gt; the availability of Visual Studio 2008 and .NET 3.5 first update: the Service Pack 1 (SP1). The &lt;a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx"&gt;new features&lt;/a&gt; include support for SQL Server 2008, the ADO.NET Entity Framework, WPF application performance improvements, more slicker TFS integration with Office 2007 products, and a lightweight .NET runtime installation called the "client profile".&lt;/p&gt;

&lt;p&gt;To download, follow these links:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E&amp;amp;displaylang=en"&gt;Visual Studio 2008 SP1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7&amp;amp;displaylang=en"&gt;.NET Framework 3.5 SP1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=F3FBB04E-92C2-4701-B4BA-92E26E408569&amp;amp;displaylang=en"&gt;Visual Studio 2008 Express Editions with SP1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9E40A5B6-DA41-43A2-A06D-3CEE196BFE3D&amp;amp;displaylang=en"&gt;Visual Studio Team System 2008 Team Foundation Server SP1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Personally, I find the WPF improvements, SQL Server 2008 support and ADO.NET Entity Framework the most interesting new things.&lt;/p&gt;</description><pubDate>Mon, 11 Aug 2008 16:09:36 GMT</pubDate><guid>e3cba2a4-0197-49fd-8ba2-2f75ea4cfbe7</guid></item><item><title>C# language now number 8 in TIOBE language listing</title><link>http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html</link><description>&lt;p&gt;The well-known &lt;a href="http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html"&gt;TIOBE Programming Community Index&lt;/a&gt; has just recently been updated, and the C# language is now #8 (number eight).&lt;/p&gt;

&lt;p&gt;Comparing year-to-year, there's a slight decrease in apparent popularity, down -0.29% to 3.697%. (Sorry for sounding like a stock broker. :-) Last year, C# was a position #7, so it's probably Python that took C#'s spot as number seven.&lt;/p&gt;</description><pubDate>Sat, 09 Aug 2008 11:08:50 GMT</pubDate><guid>9358e124-72eb-4490-8fc8-c4a4253e3655</guid></item><item><title>Microsoft SQL Server 2008 now available</title><link>http://www.microsoft.com/presspass/press/2008/aug08/08-06SQLServer2008PR.mspx</link><description>&lt;p&gt;Microsoft &lt;a href="http://www.microsoft.com/presspass/press/2008/aug08/08-06SQLServer2008PR.mspx"&gt;announced today&lt;/a&gt;, that SQL Server 2008 is now in the RTM (Release To Manufacturing) mode. Of course, this means that the RTM version of the venerable database is now available for download from TechNet and &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/downloads/default.aspx?PV=42:334:DVD:en:86A"&gt;MSDN&lt;/a&gt; web sites.&lt;/p&gt;

&lt;p&gt;The same DVD image contains versions for 32-bit (x86), 64-bit (x64) and IA-64 architectures. The basic editions are Standard, Enterprise and Developer, but also the Web, Express, Workgroup and Express with Advanced Services editions are available. SQL Server 2008 also supports installation to a Hyper-V virtualization environment on a Windows Server 2008 box.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://download.microsoft.com/download/a/c/a/aca65fab-dd31-4caf-af6a-34fe3f8dd074/SQLServer2008_Brochure.pdf"&gt;Feature highlights&lt;/a&gt; in the new version include data compression and sparse columns, data encryption, better performance analysis tools, spatial data support and Resource Governor utility.&lt;/p&gt;</description><pubDate>Wed, 06 Aug 2008 19:04:35 GMT</pubDate><guid>647f7640-12ec-4bce-b143-880471b3c2e7</guid></item><item><title>How common are 64-bit workstation operating systems today?</title><link>http://windowsvistablog.com/blogs/windowsvista/archive/2008/07/30/windows-vista-64-bit-today.aspx</link><description>&lt;p&gt;I noticed from &lt;a href="http://windowsvistablog.com/blogs/windowsvista/archive/2008/07/30/windows-vista-64-bit-today.aspx"&gt;Windows Vista team blog&lt;/a&gt; today, that Microsoft is finally seeing the adoption rate of Windows XP/Vista 64-bit raising fast. Yes, both these OS versions have been here for a long time, but it seems from the blog post that the turning point is approaching fast.&lt;/p&gt;

&lt;p&gt;Well, the general public might continue to use 32-bit OS versions for a long time, but when 64-bit versions get more common, the driver issue will be a thing of the past. For example, I've checked my peripherals, and almost everyone (except my EOS camera) have 64-bit drivers, from sound cards to printers.&lt;/p&gt;</description><pubDate>Mon, 04 Aug 2008 14:33:04 GMT</pubDate><guid>0241cf63-5c7a-4c1f-adb8-794f148ea694</guid></item><item><title>How to use LINQ to query the Windows Event Log</title><link>http://msdn.microsoft.com/en-us/library/bb308959.aspx</link><description>&lt;p&gt;Being able to use .NET 3.5 and LINQ queries is a great ability for .NET developers. Since LINQ supports querying many different object types, you might wish to query for example the Windows Event Log with LINQ statements. Here's how to it.&lt;/p&gt;

&lt;p&gt;Your first attempt might be to write code like this:&lt;/p&gt;

&lt;pre&gt;
EventLog systemLog = new EventLog("System");
var events = from e in systemLog.Entries
             select e;
&lt;/pre&gt;

&lt;p&gt;Unfortunately, this code fails to compile with the error message "Could not find an implementation of the query pattern for source type 'System.Diagnostics.EventLogEntryCollection'. 'Select' not found. Consider explicitly specifying the type of the range variable 'e'."&lt;/p&gt;

&lt;p&gt;To fix this error, you could simply add the EventLogEntry type specifier to the statement like this:&lt;/p&gt;

&lt;pre&gt;
EventLog systemLog = new EventLog("System");
var events = from EventLogEntry e in systemLog.Entries
             select e;
&lt;/pre&gt;

&lt;p&gt;Now, it works just fine. The next step might be to add a where clause, for example like this:&lt;/p&gt;

&lt;pre&gt;
EventLog systemLog = new EventLog("System");
var events = from EventLogEntry e in systemLog.Entries
             where e.Source == "eventlog" &amp;&amp;
                   e.InstanceId == 6007
             select e;
&lt;/pre&gt;

&lt;p&gt;That's how to do it! Here's a nice &lt;a href="http://msdn.microsoft.com/en-us/library/bb308959.aspx"&gt;MSDN article&lt;/a&gt; about how LINQ works, which gives you a great place to start.&lt;/p&gt;

&lt;p&gt;Keywords: HowTo, LINQ, query Windows Event Log, EventLog.&lt;/p&gt;</description><pubDate>Fri, 01 Aug 2008 17:24:57 GMT</pubDate><guid>3a3c2b2b-c1f6-4aa5-b6e1-79575bdde5c6</guid></item><item><title>Adobe Lightroom 2.0 available</title><link>http://www.adobe.com/products/photoshoplightroom/</link><description>&lt;p&gt;Adobe has today announced the availability of &lt;a href="http://www.adobe.com/products/photoshoplightroom/"&gt;Photoshop Lightroom 2&lt;/a&gt; with the upgrade price of USD $99. I'm currently using Lightroom 1.4.1 myself, and the 64-bit support and localized editing are interesting features to me.&lt;/p&gt;

&lt;p&gt;I'm not immediately going to upgrade, however. But, I'm monitoring feedback, and then probably upgrading at the same time as I'm purchasing a new PC later this year. See also the Lightroom Journal's &lt;a href="http://blogs.adobe.com/lightroomjournal/2008/07/lightroom_2_now_available.html"&gt;blog post&lt;/a&gt; about the announcement.&lt;/p&gt;</description><pubDate>Tue, 29 Jul 2008 15:05:27 GMT</pubDate><guid>8b58b18d-05df-466f-88f2-6bdaeaeabbb8</guid></item><item><title>What is a .NET generic delegate?</title><link>http://msdn.microsoft.com/en-us/library/bb549151.aspx</link><description>&lt;p&gt;If you are using C# 3.0 already, you've no doubt also trying out lambda expressions. However, lambda expressions are often seen in LINQ statements, but they are also useful elsewhere.&lt;/p&gt;

&lt;p&gt;To help with this, the System namespace (in the System.Core assembly) defines several so-called &lt;a href="http://msdn.microsoft.com/en-us/library/bb549151.aspx"&gt;generic delegates&lt;/a&gt;, such as one called "Func". These generic delegates let you easily define delegates with common signatures, such as a delegate taking one parameter and returning a value. Since generics are supported, you can also specify those datatypes that you want.&lt;/p&gt;

&lt;p&gt;Here's an example. Say, you wanted to quickly implement a method to convert an integer value to a string. Furthermore, you might need to pass this method as a parameter (delegate) to another method. To do this, you could use the Func&amp;lt;T, TResult&amp;gt; generic delegate, and define the method like this using a lambda expression:&lt;/p&gt;

&lt;pre&gt;
Func&lt;int, string&gt; convert = num =&gt; num.ToString();
&lt;/pre&gt;

&lt;p&gt;Now, you have defined the method "convert", which takes in an int and returns a string. In case you are interested, here's the CIL (Common Intermediate Language) of the above C# code:&lt;/p&gt;

&lt;pre&gt;
.method private hidebysig instance void button1_Click(
  object sender, class [mscorlib]System.EventArgs e)
  cil managed
{
.maxstack  3
.locals init ([0] class [System.Core]
  System.Func`2&lt;int32,string&gt; convert,
         [1] int32 'value',
         [2] string str)
IL_0000:  nop
IL_0001:  ldsfld     class [System.Core]System.
  Func`2&lt;int32,string&gt; WinFormsTestApp.Form2::
  'CS$&lt;&gt;9__CachedAnonymousMethodDelegate4'
IL_0006:  brtrue.s   IL_001b
IL_0008:  ldnull
IL_0009:  ldftn      string WinFormsTestApp.Form2::
  '&lt;button1_Click&gt;b__3'(int32)
IL_000f:  newobj     instance void class [System.Core]
  System.Func`2&lt;int32,string&gt;::.ctor(object,
  native int)
IL_0014:  stsfld     class [System.Core]
  System.Func`2&lt;int32,string&gt; WinFormsTestApp.Form2::
  'CS$&lt;&gt;9__CachedAnonymousMethodDelegate4'
IL_0019:  br.s       IL_001b
IL_001b:  ldsfld     class [System.Core]
  System.Func`2&lt;int32,string&gt; WinFormsTestApp.Form2::
  'CS$&lt;&gt;9__CachedAnonymousMethodDelegate4'
IL_0020:  stloc.0
IL_0021:  ldc.i4.s   123
IL_0023:  stloc.1
IL_0024:  ldloc.0
IL_0025:  ldloc.1
IL_0026:  callvirt   instance !1 class [System.Core]
  System.Func`2&lt;int32,string&gt;::Invoke(!0)
IL_002b:  stloc.2
IL_002c:  ldloc.2
IL_002d:  call       valuetype [System.Windows.Forms]
  System.Windows.Forms.DialogResult [System.Windows.Forms]
  System.Windows.Forms.MessageBox::Show(string)
IL_0032:  pop
IL_0033:  ret    
}

-------

.field private static class [System.Core]
  System.Func`2&lt;int32,string&gt;
  'CS$&lt;&gt;9__CachedAnonymousMethodDelegate4'
.custom instance void [mscorlib]
  System.Runtime.CompilerServices.
  CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) 

-------

.method private hidebysig static string
  '&lt;button1_Click&gt;b__3'(int32 num) cil managed
{
  .custom instance void [mscorlib]System.Runtime.
    CompilerServices.CompilerGeneratedAttribute::
    .ctor() = ( 01 00 00 00 ) 
  // Code size       12 (0xc)
  .maxstack  1
  .locals init ([0] string CS$1$0000)
  IL_0000:  ldarga.s   num
  IL_0002:  call       instance string [mscorlib]
    System.Int32::ToString()
  IL_0007:  stloc.0
  IL_0008:  br.s       IL_000a
  IL_000a:  ldloc.0
  IL_000b:  ret
}
&lt;/pre&gt;

&lt;p&gt;Being able to use delegates properly is a great aid in many C#/.NET programming situations. Combining lambda expressions and  generic delegates to the equation gives you a powerful set of tools.&lt;/p&gt;</description><pubDate>Mon, 28 Jul 2008 14:58:00 GMT</pubDate><guid>48fbbc73-2251-4c83-8b19-7ecdd6b353a0</guid></item><item><title>How to detect installed operating system language in C#</title><link></link><description>&lt;p&gt;Sometimes, you need to know in your application in which language the operating system has been installed. For example, you might need to differentiate between an US English and a Norwegian Windows.&lt;/p&gt;

&lt;p&gt;However, this seemingly simple thing becomes more complicated because Windows enables you to specify regional settings and enable Multilingual User Interfaces (MUIs). MUIs are especially common nowadays with the introduction of Windows Vista. That said, the user could be running Windows that is installed in English, but with Finnish regional settings. This is what I do all the time. And with MUI support, I could have a basic Windows Vista in US English, and then install/enable a Finnish MUI package. Then, all the operating system texts would change to Finnish.&lt;/p&gt;

&lt;p&gt;There's a simple and important rule about these things: if you want to display messages to the user in their own language, don't detect the current regional settings, but detect the operating system language. It is irritating when users have a, say, English language Windows, but some applications, especially installation utilities try to be clever and detect the current regional settings, and display their texts in that language. This quickly leads to message boxes with the in Finnish (say) and buttons in English. Very ugly, and it quickly gets worse from there.&lt;/p&gt;

&lt;p&gt;Ranting aside, in the Win32 API world, you could call the GetUserDefaultUILanguage and GetUserPreferredUILanguages API functions to get the information you need. In the .NET and C# world, things are even easier with the CultureInfo class  from the System.Globalization namespace. This class has the static properties called CurrentCulture and CurrentUICulture which give the same information as the API functions. In fact, .NET is using P/Invoke to call the GetUserDefaultUILanguage API behind the scenes.&lt;/p&gt;

&lt;p&gt;Now, I want to repeat what I said earlier. When displaying texts on your own, don't detect the regional settings language, but use the operating system (MUI) language. CultureInfo.CurrentUICulture returns the operating system language, and CultureInfo.CurrentCulture returns the selected regional settings culture.&lt;/p&gt;

&lt;p&gt;Here are simple examples. English Windows Vista with U.S. regional settings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CultureInfo.CurrentUICulture: en-US&lt;/li&gt;
&lt;li&gt;CultureInfo.CurrentCulture: en-US&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Same English Windows Vista, but this time with Finnish regional settings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CultureInfo.CurrentUICulture: en-US&lt;/li&gt;
&lt;li&gt;CultureInfo.CurrentCulture: fi-FI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Finnish Windows Vista, but with Danish regional settings:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CultureInfo.CurrentUICulture: fi-FI&lt;/li&gt;
&lt;li&gt;CultureInfo.CurrentCulture: da-DK&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In these property names, two characters can make a big difference. Knowing what to do is the key to correct programs.&lt;/p&gt;

&lt;p&gt;Keywords: How to detect operating system language, howto detect windows os language, windows language.&lt;/p&gt;</description><pubDate>Fri, 25 Jul 2008 14:30:00 GMT</pubDate><guid>e67c53b8-592d-485c-8254-38faeccddcd4</guid></item><item><title>Some quick physics Phun</title><link>http://phun.cs.umu.se/</link><description>&lt;p&gt;Well, this isn't exactly a .NET programming post, but nonetheless something for the technical audience. I noticed, that a Swedish university has developed a nice, visually slick physics simulation application called &lt;a href="http://phun.cs.umu.se/"&gt;Phun&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;They have a nice &lt;a href="http://phun.cs.umu.se/wiki"&gt;wiki page&lt;/a&gt; with a YouTube video that shows how it works. If I have time, I'll surely give it a spin. I hope you like it too.&lt;/p&gt;</description><pubDate>Wed, 23 Jul 2008 16:11:07 GMT</pubDate><guid>f15cc8de-2c55-416f-b440-9274930f8c38</guid></item><item><title>ASP.NET MVC information on MSDN and more</title><link>http://www.asp.net/mvc/</link><description>&lt;p&gt;ASP.NET's next phase will be the support for MVC patterns (Model-View-Controller). The forthcoming MVC model can be seen as a departure from the traditional web form world, and in case you are interested, there are two great web pages to start.&lt;/p&gt;

&lt;p&gt;Firstly, there's MSDN Magazine's introductory article titled "&lt;a href="http://msdn.microsoft.com/en-us/magazine/cc337884.aspx"&gt;Building Web Apps without Web Forms&lt;/a&gt;" from the March, 2008 issue.&lt;/p&gt;

&lt;p&gt;Secondly, there's a complete new section for MVC information on &lt;a href="http://www.asp.net/mvc/"&gt;ASP.NET&lt;/a&gt;. So, if you are interested in learning more, be sure to check these resources out!&lt;/p&gt;</description><pubDate>Sun, 20 Jul 2008 13:55:36 GMT</pubDate><guid>22befd59-8885-4855-9116-1a5efe4d49b5</guid></item><item><title>Getting started with Office development in Visual Studio 2008</title><link>http://www.developer.com/net/vb/article.php/3743191</link><description>&lt;p&gt;On Developer.com, there's a nice article about getting started with Microsoft Office development with the latest Visual Studio version. The article is titled "Using Visual Studio Tools for Office in Visual Studio 2008", and is &lt;a href="http://www.developer.com/net/vb/article.php/3743191"&gt;available here&lt;/a&gt;. Recommended reading if you are interested in Office development.&lt;/p&gt;</description><pubDate>Fri, 18 Jul 2008 05:09:46 GMT</pubDate><guid>5bd41103-0221-4f05-8950-887dbd9e6d1e</guid></item><item><title>Getting Started with Microsoft Hyper-V</title><link>http://blogs.msdn.com/wslogo/archive/2008/06/18/getting-started-with-microsoft-hyper-v.aspx</link><description>&lt;p&gt;Windows Server 2008 with the RTM version of the Hyper-V virtualization is here, and now it's a great time to start learning it, in case you already haven't. On MSDN blogs I found a &lt;a href="http://blogs.msdn.com/wslogo/archive/2008/06/18/getting-started-with-microsoft-hyper-v.aspx"&gt;nice little introduction&lt;/a&gt; to the subject, and how to get started.&lt;/p&gt;

&lt;p&gt;Check it out.&lt;/p&gt;</description><pubDate>Wed, 16 Jul 2008 05:40:26 GMT</pubDate><guid>255b18a7-f904-46c0-8421-cff941fa6791</guid></item><item><title>RAID level performance comparison</title><link>http://en.wikipedia.org/wiki/RAID</link><description>&lt;p&gt;I'm planning to upgrade my development workstation later this year, and at the same time I'd like to implement a proper hardware RAID solution. Now, for example Wikipedia has good &lt;a href="http://en.wikipedia.org/wiki/RAID"&gt;information about RAID&lt;/a&gt;, but it's difficult to find a concise table of RAID performance levels compared. Luckily, I found such a table from Adaptec's RAID controller user's guide, available &lt;a href="http://www.adaptec.com/en-US/support/raid/sas_raid/SAS-3805/_docs/ASM_v5_30_Users_Guide_for_DAS_pdf.htm?nc=/en-US/support/raid/sas_raid/SAS-3805/_docs/ASM_v5_30_Users_Guide_for_DAS_pdf.htm"&gt;here&lt;/a&gt;. That said, my current favorite is the Adaptec Unified Serial RAID Controller 3805, which supports up to eight drives, both SATA and SAS.&lt;/p&gt;

&lt;p&gt;Here's the table, copied from the said user's guide:&lt;/p&gt;

&lt;table&gt;
  &lt;tr&gt;
    &lt;td width="114"&gt;RAID Level&lt;/td&gt;
    &lt;td width="83"&gt;Redundancy&lt;/td&gt;
    &lt;td width="110"&gt;Disk Drive Usage&lt;/td&gt;
    &lt;td width="123"&gt;Read Performance&lt;/td&gt;
    &lt;td width="127"&gt;Write Performance&lt;/td&gt;
    &lt;td width="117"&gt;Built-in Hot Spare&lt;/td&gt;
    &lt;td width="140"&gt;Minimum Disk Drives&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 0&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;100 %&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;2&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 1&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50 %&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;2&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 1E&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50 %&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;3&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 10&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50 %&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;4&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 5&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;67% &amp;ndash; 94%&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;3&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 5EE&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50% &amp;ndash; 88%&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;4&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 50&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;67% &amp;ndash; 94%&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;6&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 6&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50% &amp;ndash; 88%&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;4&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID 60&lt;/td&gt;
    &lt;td&gt;Yes&lt;/td&gt;
    &lt;td&gt;50% &amp;ndash; 88%&lt;/td&gt;
    &lt;td&gt;X X&lt;/td&gt;
    &lt;td&gt;X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;8&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;Spanned Volume&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td class="excel2"&gt;100 %&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;2&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;RAID Volume&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;50% &amp;ndash; 100%&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;X X X&lt;/td&gt;
    &lt;td&gt;No&lt;/td&gt;
    &lt;td&gt;4&lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;As you can see, there are many different RAID levels nowadays, in addition to those standard RAID levels we all learned long time ago.&lt;/p&gt;

&lt;p&gt;Keywords: RAID, performance, RAID levels compared, perfomance comparison.&lt;/p&gt;</description><pubDate>Tue, 15 Jul 2008 10:12:45 GMT</pubDate><guid>9d8e01e4-4b2e-4d13-857d-0d9cd053f002</guid></item><item><title>Announcement: My Finnish Visual Studio 2008 book now available</title><link>http://www.saunalahti.fi/janij/publications/</link><description>&lt;p&gt;Announcement: my new book, the Finnish "Visual Studio 2008 -käsikirja" is now available for purchase from local bookstores and from the &lt;a href="http://www.docendo.fi/"&gt;publisher's web pages&lt;/a&gt;. For details about the book, see Docendo's web pages, or my &lt;a href="/janij/publications/"&gt;Publications page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src="/janij/publications/visual_studio_2008.jpg" /&gt;&lt;/p&gt;

&lt;p&gt;The book is aimed at the professional developer, and talks about the Visual Studio 2008 IDE and how to best use it in production. Visual Studio Team System is also included as a topic -- the first Finnish book to cover the topic.&lt;/p&gt;

&lt;p&gt;The bookstores &lt;a href="https://www.akateeminenkirjakauppa.fi/webapp/wcs/stores/servlet/ProductDisplay?catalogId=10151&amp;storeId=10052&amp;productId=8843429&amp;langId=-11"&gt;Akateeminen Kirjakauppa&lt;/a&gt; and &lt;a href="http://www.suomalainen.com/sk/servlets/ProductServlet?action=productInfo&amp;productID=4594573&amp;backURL=http%3A%2F%2Fwww.suomalainen.com%2Fsk%2Fservlets%2FProductServlet%3Faction%3Dquicksearch%26info%3DVisual%2BStudio%2B2008"&gt;Suomalainen&lt;/a&gt; appear to sell my book. I hope you enjoy the book as much as I did writing it!&lt;/p&gt;</description><pubDate>Sat, 12 Jul 2008 16:51:19 GMT</pubDate><guid>8b5b5fba-3a55-4205-b027-555d5e56dca4</guid></item><item><title>SQL Server 2008 is ready soon</title><link>http://www.theregister.co.uk/2008/07/09/microsoft_sqlserver_price_list/</link><description>&lt;p&gt;I noticed from &lt;a href="http://www.theregister.co.uk/2008/07/09/microsoft_sqlserver_price_list/"&gt;The Register today&lt;/a&gt;, that Microsoft is getting ready to publish ("RTM") SQL Server 2008 quite soon. One indication of this is the fact that the new server release will appear in the August price list.&lt;/p&gt;

&lt;p&gt;Another interesting thing is that Windows Small Business Server 2008 is about the appear as a Release Candidate soon. Windows Small Business Server 2003 was/is a nice product, and I'd expect the forth-coming new version to be at least equally good. We'll see soon how it all turns out.&lt;/p&gt;</description><pubDate>Thu, 10 Jul 2008 18:27:30 GMT</pubDate><guid>7aa55282-8157-48ed-b0c9-0ea5257a1084</guid></item><item><title>Information about IE8's new cross-site scripting prevention techniques</title><link>http://blogs.msdn.com/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx</link><description>&lt;p&gt;On MSDN Blogs, there's a &lt;a href="http://blogs.msdn.com/ie/archive/2008/07/02/ie8-security-part-iv-the-xss-filter.aspx"&gt;new article&lt;/a&gt; about Internet Explorer 8's forth-coming features. This time, the blog talks about cross-site scripting (XSS) and the prevention of such attacks automatically.&lt;/p&gt;

&lt;p&gt;Sounds good to me to have such prevention built-in. However, the detection algortihm must be good as not to prevent web applications from working normally. However, I believe this to be not a big issue in any case.&lt;/p&gt;</description><pubDate>Tue, 08 Jul 2008 05:22:49 GMT</pubDate><guid>a38a5cdc-6d5c-45b7-85ff-8534797c9ce6</guid></item><item><title>Summer reading from MSDN Magazine</title><link>http://msdn.microsoft.com/en-us/magazine/default.aspx</link><description>&lt;p&gt;Summer is a great time to hone your development skills, and as far as time allows, the MSDN Magazine doesn't fail to contain great content. Since I've been pretty busy this spring and summer so far, I confess I haven’t been able to read all those articles from MSDN Magazine that I'd have liked.&lt;/p&gt;

&lt;p&gt;Just in case it happens that you are in a similar situation, here are three great articles of interest:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;May 2008: &lt;a href="http://msdn.microsoft.com/en-us/magazine/cc507644.aspx"&gt; Silverlight Page Turning Made Simple&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;June 2008: &lt;a href=" http://msdn.microsoft.com/en-us/magazine/cc546569.aspx"&gt; Tools And Techniques to Identify Concurrency Issues&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;June 2008: &lt;a href=" http://msdn.microsoft.com/en-us/magazine/cc534993.aspx"&gt;CLR Inside Out: Large Object Heap Uncovered&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Be sure to check these out, if the .NET CLR internals interested, you enjoy doing Silverlight development, and have an eye for concurrency.&lt;/p&gt;</description><pubDate>Sun, 06 Jul 2008 07:15:57 GMT</pubDate><guid>f2819c73-2c18-4d84-8bb6-99dc39efe0d7</guid></item><item><title>New protocol specifications published on MSDN</title><link>http://msdn.microsoft.com/en-us/library/cc203350.aspx</link><description>&lt;p&gt;Just few days ago, Microsoft &lt;a href="http://www.microsoft.com/presspass/press/2008/jun08/06-30InteropUpdatePR.mspx"&gt;opened up many protocols&lt;/a&gt; and binary file formats that are related to Office applications, such as the Office application communication protocols and .DOC, .XLS and .PPT file format specifications.&lt;/p&gt;

&lt;p&gt;The documentation is now available on MSDN, and the topic "&lt;a href="http://msdn.microsoft.com/en-us/library/cc203350.aspx"&gt;Open Specifications&lt;/a&gt;" on the MSDN Library should be your starting point.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Fri, 04 Jul 2008 15:07:31 GMT</pubDate><guid>298d7f3a-d6b8-4e16-afe2-6a95d7d17c74</guid></item><item><title>Some fun for a change: the July 4th test</title><link>http://www.msnbc.msn.com/id/25461301/</link><description>&lt;p&gt;Especially if you are living in the USA, you are probably aware that it's &lt;a href="http://en.wikipedia.org/wiki/July_4th"&gt;July 4th&lt;/a&gt;.&lt;/p&gt; 

&lt;p&gt;Even though you're not a citizen of the United States, it is fun to test whether you could be one. There's a test on MSNBC which you &lt;a href="http://www.msnbc.msn.com/id/25461301/"&gt;can take&lt;/a&gt;. I confess I didn't pass it the first time, but on second though the history lessons popped into my mind. How do you score?&lt;/p&gt;</description><pubDate>Fri, 04 Jul 2008 15:00:50 GMT</pubDate><guid>0d0820d0-dfa3-4c27-9eb0-e806e16cb3a5</guid></item><item><title>Improvements in SQL Server 2008's INSERT statement</title><link>http://msdn.microsoft.com/en-us/library/cc645577(SQL.100).aspx</link><description>&lt;p&gt;For a long, long time, the syntax of the INSERT SQL statement has been pretty much stationary, and SQL Server hasn't been an exception. Surely, SQL Server has its own non-standard additions just like Oracle, DB2, and Progress, but overall, the syntax is pretty standardized.&lt;/p&gt;

&lt;p&gt;However, the latest version of SQL Server 2008 brings a new feature to the INSERT statement: the ability to insert multiple rows in a single SQL statement. This feature is officially called "&lt;a href="http://msdn.microsoft.com/en-us/library/cc645577(SQL.100).aspx"&gt;Transact-SQL Row Constructors&lt;/a&gt;".&lt;/p&gt;

&lt;p&gt;With this new feature, you could run INSERT statements like this in SQL Server 2008:&lt;/p&gt;

&lt;pre&gt;
INSERT INTO customers
VALUES (1, 'J. Doe'),
       (2, 'O. Osborne'),
       (3, 'M. Gibbs')
&lt;/pre&gt;

&lt;p&gt;Naturally, such statements would fail on SQL Server 2005 and older, giving an error message about invalid syntax. But, if you are (going to, as the current release is the candidate RC0) running the latest 2008 version, then this addition sounds cool to me in its own right.&lt;/p&gt;</description><pubDate>Wed, 02 Jul 2008 16:42:17 GMT</pubDate><guid>b2976d13-7550-45f3-9863-2f7d34102921</guid></item><item><title>My latest web application development article posted</title><link>http://www.codeguru.com/csharp/.net/net_asp/webforms/article.php/c15337</link><description>&lt;p&gt;The Developer.com portal has published my latest web application development article titled "&lt;a href="http://www.codeguru.com/csharp/.net/net_asp/webforms/article.php/c15337"&gt;Avoiding Annoying Mistakes in Your ASP.NET Web Applications&lt;/a&gt;".&lt;/p&gt;

&lt;p&gt;The article talks about subtle, yet common, web application design mistakes, and how to avoid them in your ASP.NET/C# applications.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Mon, 30 Jun 2008 17:09:17 GMT</pubDate><guid>66dfedd7-317d-4927-95ce-185ce3153b31</guid></item><item><title>Windows Presentation Foundation applications and generic database GUIs</title><link>http://windowsclient.net/getstarted/</link><description>&lt;p&gt;For the past several years, many of those .NET applications I've built have included at least some kind of basic user interface for maintaining or displaying database data from ADO.NET data sources. Now that &lt;a href="http://windowsclient.net/getstarted/"&gt;Windows Presentation Foundation&lt;/a&gt; (WPF) is quickly coming the best alternative to Windows Forms (WinForms), I've noticed that developers (including myself) would need better tools/components to build GUIs for database data faster.&lt;/p&gt;

&lt;p&gt;For example, in WinForms you could drag and drop database fields onto your forms and have the fields automatically generated for you. I'm missing this functionality in WPF applications. So, drag-and-drop support would be necessary, but it would also be great to have some kind of navigation control as well. That said, something like BindingNavigator for WPF would be just what I'd be looking for in many applications.&lt;/p&gt;</description><pubDate>Sat, 28 Jun 2008 16:21:05 GMT</pubDate><guid>67226477-e44e-4ec6-9617-490a1cbf04a4</guid></item><item><title>The Windows Mobile SPARK</title><link>http://www.microsoft.com/windows/embedded/products/spark/default.mspx</link><description>&lt;p&gt;So far, doing embedded development with Microsoft products has been somewhat expensive since you would need Windows Embedded or Windows Mobile, the hardware, and the development tools. Now Microsoft has announced a new initiative, named "&lt;a href="http://www.microsoft.com/windows/embedded/products/spark/default.mspx"&gt;SPARK Your Imagination&lt;/a&gt;" which "offers [an affordable] kit that combines Windows Embedded CE 6.0 R2, Visual Studio 2005 Professional, and an embedded device."&lt;/p&gt;

&lt;p&gt;However, SPARK is for non-business use, which makes it especially interesting for hobbyist and other startup developers. If you are interested in embedded development, this might be just what you were looking for.&lt;/p&gt;</description><pubDate>Wed, 25 Jun 2008 14:45:49 GMT</pubDate><guid>759ee4b5-dda8-48c8-9186-3a254cafa446</guid></item><item><title>URLScan 3.0 beta for IIS 7.0</title><link>http://learn.iis.net/page.aspx/473/using-urlscan</link><description>&lt;p&gt;On the IIS.NET web site, I found a newish &lt;a href="http://learn.iis.net/page.aspx/473/using-urlscan"&gt;beta release of the URLScan 3.0 tool&lt;/a&gt; for IIS 7.0. URLScan is an utility to protect an IIS web server from malicious requests and hacking attempts via invalid URLs. The 32 bit version of the beta can be downloaded &lt;a href="http://www.iis.net/downloads/default.aspx?tabid=34&amp;g=6&amp;i=1697"&gt;directly from here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 25 Jun 2008 04:12:46 GMT</pubDate><guid>2c25fc5d-e8b3-4e06-8255-5811f3e940e7</guid></item><item><title>Microsoft PDC registration is open</title><link>http://www.microsoftpdc.com/</link><description>&lt;p&gt;The registration site for Microsoft's premier developer event, PDC (Professional Developers Conference) is &lt;a href="http://www.microsoftpdc.com/"&gt;now open&lt;/a&gt;. This year, PDC is being held on October 26th to 30th in Los Angeles Convention Center.&lt;/p&gt;</description><pubDate>Sun, 22 Jun 2008 10:39:42 GMT</pubDate><guid>d74bba1c-48dd-4160-a158-f2a70bb7c1d1</guid></item><item><title>KeyTronic keyboard availability in Europe</title><link>http://www.keytronicems.com/</link><description>&lt;p&gt;I've been using KeyTronic (Key Tronic) keyboards from KeyTronicEMS for ages, and still after the years I prefer them to those bundled, cheap keyboards that come with many PCs. However, all my current KeyTronic KT-2001 (aka KT2000, KT-2000) keyboards are with the legacy PS/2 connector, so I lately decided to check what an USB connected version would cost.&lt;/p&gt;

&lt;p&gt;Previously, it was easy to find these keyboards in Finland, but now it suddenly seemed hard. First, I noticed that no IT distributor sells these keyboards anymore here, so my second option was to contact the manufacturer EMS directly. I got a kind reply from their sales and marketing saying that the won't sell their keyboards anymore to the European Union, because of new strict electronic waste laws.&lt;/p&gt;

&lt;p&gt;Of course, my next question was to check whether Finnish/Swedish keyboard layouts would be available for purchase from EMS. Unfortunately, they won't sell those, but there's a custom company called DataCal (AZ, USA) that would do that. DataCal takes a generic KeyTronic keyboard, and then converts it to the local 104 key keyboard that I use daily. &lt;/p&gt;

&lt;img src="images/2008_jun_finnish_keyboard_layout.png"/&gt;

&lt;p&gt;So the next step would be contact DataCal, and check to see what would it cost to purchase and deliver few of these gems to Finland.&lt;/p&gt;</description><pubDate>Thu, 19 Jun 2008 15:04:48 GMT</pubDate><guid>9ca88881-eb54-42da-8a20-b11759a9a8d7</guid></item><item><title>Quick notes about SQL Server 2008's new location data types</title><link></link><description>&lt;p&gt;I today had a change to play around just a little bit with SQL Server 2008, and of course I wanted to test the new geography related data types. To do so, I created a simple table like this:&lt;/p&gt;

&lt;pre&gt;
CREATE TABLE [dbo].[Customers](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Name] [nvarchar](50) NOT NULL,
    [Phone] [nvarchar](50) NULL,
    [Location] [geography] NULL
)
&lt;/pre&gt;

&lt;p&gt;This is how it looks like in the SQL Server Management Studio:&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_jun_sql_server_2008_geometry.png"&gt;&lt;/p&gt;

&lt;p&gt;Note that if you want to use this data type from your C# applications, you need to make sure you add a reference to the assembly Microsoft.SqlServer.Types. Otherwise, you cannot access the field in your SQL queries with for example the SqlCommand or SqlDataReader classes.&lt;/p&gt;</description><pubDate>Mon, 16 Jun 2008 21:13:57 GMT</pubDate><guid>82a568c3-f362-49eb-809a-db85a7f0f0f3</guid></item><item><title>Meeting of the Finnish ITpro.fi software development expert group</title><link>http://itpro.fi/asiantuntijaryhmat/ohjelmistokehitys/default.aspx</link><description>&lt;p&gt;On Tuesday (10th) we had a meeting with our local ITpro.fi software development expert group in Helsinki. It was really nice to meet the guys and exchange views about current, hot .NET development topics and general news about Microsoft. Also, we had a knowledge sharing session about .NET 3.5 SP1, and I'm waiting for my copy of the DVDs to get to my door.&lt;/p&gt;

&lt;p&gt;Next time, we'll probably meet after the summer holiday season. In the mean time, check our our group's &lt;a href="http://itpro.fi/asiantuntijaryhmat/ohjelmistokehitys/default.aspx"&gt;Finnish blog&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Fri, 13 Jun 2008 18:15:49 GMT</pubDate><guid>5a1549f9-35d0-4c27-af73-42088353d6ac</guid></item><item><title>Microsoft SQL Server 2008 first Release Candidate available</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyId=35F53843-03F7-4ED5-8142-24A4C024CA05&amp;displaylang=en</link><description>&lt;p&gt;Microsoft has just recently release the first release candidate version (RC) of the forth-coming SQL Server 2008 product. The release is named RC0 for Release Candidate 0. The release is available from Microsoft's &lt;a href=" http://www.microsoft.com/downloads/details.aspx?FamilyId=35F53843-03F7-4ED5-8142-24A4C024CA05&amp;displaylang=en"&gt;Download Center&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A list of SQL Server 2008's new features can be found from the product’s &lt;a href=" http://www.microsoft.com/sqlserver/2008/en/us/overview.aspx"&gt;overview page&lt;/a&gt;. This page would also answer your question about "What's new in SQL Server 2008?".&lt;/p&gt;</description><pubDate>Tue, 10 Jun 2008 20:54:58 GMT</pubDate><guid>fe209526-f43a-496e-a13f-89d8a0f7d32b</guid></item><item><title>Microsoft's updated application lifecycle management assessment questionnaire</title><link>http://www.microsoft.com/assess/</link><description>&lt;p&gt;Microsoft has already for a while had an web-based assessment site, where developers and their managers can go and fill in a questionnaire (survey), and get results that show where their software development process currently is and how it could be improved.&lt;/p&gt;

&lt;p&gt;Now, Microsoft has updated it's offering, and the new Application Platform Capability Assessment site is &lt;a href="http://www.microsoft.com/assess/"&gt;available online&lt;/a&gt;. For example, the Application Life-Cycle Management provides "a quick snap-shot of an organization's development capabilities across the entire Application Life-Cycle".&lt;/p&gt;

&lt;p&gt;If you already haven't done so, I suggest that you fill in the questionnaire and participate in the assessment. It is naturally free. The two other assessments available on the site are titled Business Intelligence and SOA and Business Process.&lt;/p&gt;</description><pubDate>Sun, 08 Jun 2008 14:33:45 GMT</pubDate><guid>5526bfd6-df32-453c-a593-917fb35fd6df</guid></item><item><title>Visual Studio Team System "Rosario" to include more visual modeling tools</title><link>http://www.infoworld.com/article/08/06/04/Microsoft-to-aid-developer-teams-with-modeling_1.html</link><description>&lt;p&gt;News from TechEd through the &lt;a href="http://www.infoworld.com/article/08/06/04/Microsoft-to-aid-developer-teams-with-modeling_1.html"&gt;web news&lt;/a&gt;: the next version of Visual Studio Team System (VSTS) codenamed Rosario will include tools to "visually model the architecture of an application and validate it against application code".&lt;/p&gt;

&lt;p&gt;This new feature would be called Architecture Explorer, and it would allow "developers to create new architecture and new constraints", according to the article, citing Norman Guadagno, a Microsoft director of product marketing.&lt;/p&gt;

&lt;p&gt;Currently, Rosario is in the making, and present estimate is that the new version would be available later this year.&lt;p&gt;</description><pubDate>Fri, 06 Jun 2008 18:02:17 GMT</pubDate><guid>289b4375-3e88-45f0-b3dd-ab2b5cc4f9bf</guid></item><item><title>Engine oil problem in BMW E34 with an easy fix</title><link>http://forum.e34.de/</link><description>&lt;p&gt;I started my car few days ago normally, when the onboard diagnostics mentioned the problem "Oelstand Motor" (ölstand motor). According to the operation manual, this is severity level 1 problem, and driving should be stopped immediately. Of course, engine oil level or pressure is something to be not taken lightly, so I became a little worried. I checked the oil level, and it appeared to be plenty to me, around one third left.&lt;/p&gt;

&lt;p&gt;I browsed the error message on the Internet, and found a German &lt;a href="http://forum.e34.de/thread.php?threadid=92772&amp;hilight=oelstand"&gt;web site&lt;/a&gt; that talked about the problem. In many BMW E34 model cars, the oil level indicator is quite sensitive, so I decided I'd just add more fresh oil. I didn't need to add it no more than 1 dl, and the problem went away. Lesson learned: the message "Oelstand Motor" just means that the engine oil level is low. Nothing more serious.&lt;/p&gt;</description><pubDate>Wed, 04 Jun 2008 17:47:47 GMT</pubDate><guid>02c9618c-8cd5-4245-b7b6-9d46c6517868</guid></item><item><title>Interesting error messages found on a Windows XP box</title><link></link><description>&lt;p&gt;I noticed two interesting error messages on a Windows XP box here closeby. During normal shutdown, the machine caused two error messages to be shown on the screen, which I don't remember seeing previously. These are:&lt;/p&gt;

&lt;pre&gt;
---------------------------
Windows Internet Explorer
---------------------------
This window is busy.Closing this window may cause some problems.Do you want to close it anyway?
---------------------------
OK   Cancel   
---------------------------
&lt;/pre&gt;

&lt;p&gt;And:&lt;/p&gt;

&lt;pre&gt;
---------------------------
Deleting...
---------------------------
Windows is currently working with a file.Either wait for Windows to finish, or close it before you quit Windows.
---------------------------
OK   
---------------------------
&lt;/pre&gt;

&lt;p&gt;Because of the erroneous spelling (no spaced between sentences), I actually think these error messages are not created by Internet Explorer (IE) or Windows itself, but rather are messages created by some add-on applications. I cannot help it, but Adobe Reader comes instantly on my mind. It causes problems on my own Windows XP machines as well.&lt;/p&gt;</description><pubDate>Mon, 02 Jun 2008 18:34:29 GMT</pubDate><guid>b9b5ef15-7393-4c23-9164-a9e18980843e</guid></item><item><title>What are Data URLs in IE8?</title><link>http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=ie8whitepapers&amp;ReleaseId=575</link><description>&lt;p&gt;Interesting new features in Internet Explorer 8: &lt;a href="http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=ie8whitepapers&amp;ReleaseId=575"&gt;Data URLs&lt;/a&gt;. According to the documentation, "Data URIs offer Web developers the opportunity to embed small external resources (such as CSS files or images) directly into a URL on a Web page."&lt;/p&gt;

&lt;p&gt;For example, if small (or even larger ones?) images would be embedded into the HTML file and then stored in memory, advanced AJAX web applications could operate very nicely without an Internet connection. Sounds like a simple method to package web applications, sort of. CAB and JAR/WAR files come into my mind. See for yourself.&lt;/p&gt;

&lt;p&gt;By the way, while I'm at it, &lt;a href="http://msdn.microsoft.com/en-us/library/cc288472(VS.85).aspx"&gt;here's a document&lt;/a&gt; listing what's new in Internet Explorer 8.&lt;/p&gt;</description><pubDate>Thu, 29 May 2008 14:58:29 GMT</pubDate><guid>d3bfdb77-b041-4f20-a410-fa7b84258f31</guid></item><item><title>Windows 7 information starts to appear</title><link>http://windowsvistablog.com/blogs/windowsvista/archive/2008/05/27/communicating-windows-7.aspx</link><description>&lt;p&gt;Information about Windows 7 will now start to flow more officially: the Windows Vista blog &lt;a href="http://windowsvistablog.com/blogs/windowsvista/archive/2008/05/27/communicating-windows-7.aspx"&gt;has an entry&lt;/a&gt; about Windows Seven.&lt;/p&gt;

&lt;p&gt;Now that the door is open, I'd expect that more and more information would start to flow through these technical blogs.&lt;/p&gt;</description><pubDate>Tue, 27 May 2008 18:17:47 GMT</pubDate><guid>13371f3e-fa24-4adf-b013-dba48fd7e7bc</guid></item><item><title>Changing Windows Server 2008 to be more like a workstation</title><link>http://www.win2008workstation.com/</link><description>&lt;p&gt;For a while, I've been thinking of upgrading my main development PC, but now that Windows Server 2008 is out, I've started to think whether Windows Server 2008 would be better suited to my needs than the normal Windows Vista operating system. As I don't play games much, I don't mind minimal support for such software/gear. Now, on the other hand, Windows Server 2008 would run faster (or need less hardware, whichever is your point of view) and also have full-blown IIS 7.0 web server.&lt;/p&gt;

&lt;p&gt;I today noticed a nice web site called &lt;a href="http://www.win2008workstation.com/"&gt;Win2008Workstation&lt;/a&gt;, which contains information about how to "convert" your Windows Server 2008 server to a decent, or even pretty slick workstation. I confess I like the idea!&lt;/p&gt;</description><pubDate>Mon, 26 May 2008 17:41:34 GMT</pubDate><guid>02625e1c-36bb-435e-9af3-5db5337b0cd7</guid></item><item><title>Office 2007 to support ODF file format</title><link>http://www.microsoft.com/Presspass/press/2008/may08/05-21ExpandedFormatsPR.mspx</link><description>&lt;p&gt;News from the Office front: the next service pack 2 for Office 2007 &lt;a href="http://www.microsoft.com/Presspass/press/2008/may08/05-21ExpandedFormatsPR.mspx"&gt;will bring ODF support&lt;/a&gt; to the productivity suite.&lt;/p&gt;

&lt;p&gt;Sounds surely good to many organizations wishing to use openly-specified file formats. Of course, now that OpenXML is one (with the recent ISO standardization), the ODF thing is in my opinion rather moot. Nonetheless, I think it's great that Microsoft Office would directly support ODF formats. Whit this, there's no need for myself to use OpenOffice anymore (there haven't been reasons so far, either).&lt;/p&gt;</description><pubDate>Thu, 22 May 2008 16:41:20 GMT</pubDate><guid>261631b5-7dd4-40dc-910c-5cad9e03fcb3</guid></item><item><title>New roadmap outlined for Windows Embedded</title><link>http://www.eweek.com/c/a/Application-Development/Microsoft-Shapes-Windows-Embedded-Roadmap/</link><description>&lt;p&gt;I noticed &lt;a href="http://www.eweek.com/c/a/Application-Development/Microsoft-Shapes-Windows-Embedded-Roadmap/"&gt;from eWeek&lt;/a&gt; and the company's own press release, that Microsoft has announced a new roadmap for its embedded operating systems, mostly known as Windows Embedded. Previously, there have been several different editions, and the new roadmap keeps those but also announces new ones.&lt;/p&gt;

&lt;p&gt;For developers, the new embedded Windows versions for mobile and embedded PC devices offer better programmability. With the advancements in the .NET Micro Framework (think Silverlight) we should see in the future even more uses for Visual Studio and general .NET development. Sounds like the possibilities will be very diverse indeed in the coming years.&lt;/p&gt;</description><pubDate>Tue, 20 May 2008 16:06:43 GMT</pubDate><guid>1b924a71-714e-46d6-97a0-7de0d4777a57</guid></item><item><title>Mark Hamburg: from Adobe to Microsoft</title><link>http://lightroom-news.com/2008/04/25/mark-hamburg-leaves-adobe/</link><description>&lt;p&gt;While many developers might not know Mark Hamburg from Adobe, saying that he's one of the designers of Photoshop (among with Thomas Knoll) will immediately ring a bell.&lt;/p&gt;

&lt;p&gt;Starting recently, he &lt;a href="http://lightroom-news.com/2008/04/25/mark-hamburg-leaves-adobe/"&gt;is now working for Microsoft&lt;/a&gt; and helping design the Expression line of products. Also, for you photographers out there, Mark was one of the main designers for the Lightroom product, which I've learned to love.&lt;/p&gt;

&lt;p&gt;Personally, I believe this is a blow to Adobe, even though they say otherwise in their corporate blog. At the same time, this is a big win to Microsoft, since they have a new product line that is going to be important for the company and many developers and graphics designers. Having a guy like Mark on the team will make sure that those "wow" effects should keep on coming.&lt;/p&gt;</description><pubDate>Fri, 16 May 2008 18:28:57 GMT</pubDate><guid>edea7d97-024d-42ab-a400-18603e7ea77d</guid></item><item><title>New article about Adobe Lightroom in Tietokone magazine</title><link>http://www.tietokone.fi/</link><description>&lt;p&gt;The newest issue of the Finnish &lt;a href="http://www.tietokone.fi/"&gt;Tietokone magazine&lt;/a&gt; has my latest article about Adobe Lightroom tips and tricks. The article is titled "Kuvat ojennukseen Lightroomilla".&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Wed, 14 May 2008 15:23:03 GMT</pubDate><guid>6a770944-2c8d-41c3-8185-59769d5172ff</guid></item><item><title>Visual Studio 2008 Service Pack 1 beta is out</title><link>http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx</link><description>&lt;p&gt;Microsoft has just announced the availability of Visual Studio 2008 Service Pack 1 (SP1) beta. The beta is available for download &lt;a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx"&gt;from MSDN&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Scott Guthrie has a &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx"&gt;detailed post&lt;/a&gt; about the features in the forthcoming update.&lt;/p&gt;

&lt;p&gt;Great additions and enhancements in the making, I must say!&lt;/p&gt;</description><pubDate>Mon, 12 May 2008 18:08:06 GMT</pubDate><guid>55e6f890-1ec8-4db7-8154-4c6995d59afa</guid></item><item><title>Use the DebuggerDisplay attribute to aid your Visual Studio debugging</title><link></link><description>&lt;p&gt;When you are debugging, being able to monitor or watch variable values is often instrumental in finding your bugs. In this job, the Watch and Local windows are really helpful, but sometimes they require too many mouse clicks to reveal those object property values that you need. This is especially true if you have lots of custom classes whose key properties you want to see quickly.&lt;/p&gt;

&lt;p&gt;By default, the Value column of the, say, Locals window displays the type (class) name of a class instance variable. So, to view the property values of that class, you need to expand the class with the small plus sign on the left of the variable name. This is trivial of course, but an additional step that you need to make each time. Wouldn't it be great if you could specify how Visual Studio should visualize your class values?&lt;/p&gt;

&lt;p&gt;Luckily, this is why the DebuggerDisplay attribute in the System.Diagnostics namespace was created in the first place. To use it, you would pass in a string with property names in brackets, and at runtime (debug time) Visual Studio would display the values there.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;pre&gt;
[DebuggerDisplay("ID = {CustomerID}, Name = {Name}")]
public class CustomerInformation
{
  public int CustomerID { get; set; }
  public string Name { get; set; }
  public string Address { get; set; }
  public string City { get; set; }
  public string Country { get; set; }
}
&lt;/pre&gt;

&lt;p&gt;After this, the Locals window would display the class instance as a string like "ID = 123, Name = John" like this: &lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_may_visual_studio_debugger_attribute.png"&gt;&lt;/p&gt;

&lt;p&gt;Of course, you can still expand the class to see all the properties, but by using DebuggerDisplay attribute you won't need to do that anymore for most cases. Simple and neat.&lt;/p&gt;</description><pubDate>Sat, 10 May 2008 07:14:43 GMT</pubDate><guid>04537776-be07-428a-9732-096e5d4e6af0</guid></item><item><title>Borland's CodeGear tools sold to Embacadero</title><link>http://www.codegear.com/about/news/embt</link><description>&lt;p&gt;The Windows developer news for today is that CodeGear (Delphi, InterBase, JBuilder et.al) has been sold to Embarcadero Technologies. More details &lt;a href="http://www.codegear.com/about/news/embt"&gt;on the web&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 07 May 2008 18:25:41 GMT</pubDate><guid>a29d1a0a-e5c3-4e40-b9d0-1901b1741520</guid></item><item><title>A new subscription: Expression Subscription</title><link>http://www.microsoft.com/expression/products/ProfessionalSubscription.aspx</link><description>&lt;p&gt;I notice today while browsing for more information about Microsoft's new Expression 2 products that they currently also offer a "Expression Professional Subscription". This seems to be an "MSDN for designers" and it includes among other things Expression Studio, Visual Studio Standard, Office Standard and even operating systems. Interesting, and could be very well that designers need.&lt;/p&gt;</description><pubDate>Mon, 05 May 2008 15:18:49 GMT</pubDate><guid>9f2960e1-4786-4053-ac24-7fba70f415cc</guid></item><item><title>Expression Studio 2 in RTM</title><link>http://www.microsoft.com/Presspass/press/2008/may08/05-01Expression2PR.mspx</link><description>&lt;p&gt;Microsoft yesterday &lt;a href="http://blogs.msdn.com/somasegar/archive/2008/05/01/expression-studio-2-rtms-today.aspx"&gt;announced&lt;/a&gt; that Expression Studio 2 is now in RTM (Release to manufacture). This means that the new bits should be soon downloadable from MSDN.&lt;/p&gt;

&lt;p&gt;The new features in the Expression Studio 2 (and Blend 2 plus Web 2) include improved collaboration between developers (read: Visual Studio users) and graphics designers and of course better support for Silverlight applications. &lt;/p&gt;

&lt;p&gt;Sounds good! The press release is &lt;a href="http://www.microsoft.com/Presspass/press/2008/may08/05-01Expression2PR.mspx"&gt;here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Fri, 02 May 2008 13:46:47 GMT</pubDate><guid>44dbee49-77e2-475b-b7bc-5182702d4ce9</guid></item><item><title>WPF business controls, finally</title><link>http://www.mindscape.co.nz/Products/WpfElements/default.aspx</link><description>&lt;p&gt;Not to endorse, but I've come across a nice set of business-oriented WPF controls from Mindscape, in New Zealand. The controls are called "&lt;a href="http://www.mindscape.co.nz/Products/WpfElements/default.aspx"&gt;WPF Elements&lt;/a&gt;" and contain twelve native WPF controls designed to improve your applications.&lt;/p&gt;

&lt;p&gt;Among the controls are currency edit fields, datetime pickers and spin controls. Sounds like a nice way to move your older Win32 or WinForms applications forwards.&lt;/p&gt;</description><pubDate>Wed, 30 Apr 2008 04:19:26 GMT</pubDate><guid>5128696b-73b7-46c1-b7fa-3546f745b5e2</guid></item><item><title>Windows Vista User Experience Guide updated?</title><link>http://download.microsoft.com/download/e/1/9/e191fd8c-bce8-4dba-a9d5-2d4e3f3ec1d3/ux%20guide.pdf</link><description>&lt;p&gt;Since already October 2007, Microsoft has published the &lt;a href="http://download.microsoft.com/download/e/1/9/e191fd8c-bce8-4dba-a9d5-2d4e3f3ec1d3/ux%20guide.pdf"&gt;Windows Vista User Experience Guide&lt;/a&gt; ("UX Guide"), but back then, the PDF version of the document used to be marked with the text "Draft".&lt;/p&gt;

&lt;p&gt;Now it seems that Microsoft has updated this document and removed the mark, but still the date hasn't changed. Well, this could of course be my imagination or inability to recall things correctly, but nonetheless: this PDF document appears to be a proper version, and containing all the information needed.&lt;/p&gt;

&lt;p&gt;So, unless you already have a copy, download one today. This is about one of the best guides available about Windows application design, and could be considered a "standards specification" of sorts -- in all its 763 pages.&lt;/p&gt;</description><pubDate>Mon, 28 Apr 2008 14:03:34 GMT</pubDate><guid>9d89aa67-04ce-4760-8db4-e3358f97efc8</guid></item><item><title>New e-Learning course: What's New in Microsoft SQL Server 2008</title><link>https://www.microsoftelearning.com/eLearning/offerDetail.aspx?offerPriceId=139087&amp;tapm=A87S20G15</link><description>&lt;p&gt;Microsoft has created a new three-hour set of &lt;a href="https://www.microsoftelearning.com/eLearning/offerDetail.aspx?offerPriceId=139087&amp;tapm=A87S20G15"&gt;free e-Learning content&lt;/a&gt; about SQL Server 2008. This content comes with the collection 6187 and it is available here.&lt;/p&gt;

&lt;p&gt;The topics include "What's New in SQL Server 2008 for Database Development", "What's New in SQL Server 2008 for Enterprise Data Platform", "What's New in SQL Server 2008 for Business Intelligence".&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Sat, 26 Apr 2008 08:58:03 GMT</pubDate><guid>00e3531b-ede8-4a0a-b69e-51388a3b5879</guid></item><item><title>Live Mesh, what is it?</title><link>https://www.mesh.com/</link><description>&lt;p&gt;Microsoft has just recently announced a new service called Live Mesh. But what is this service all about? The marketing text says: "Imagine all your devices--PCs, and soon Macs and mobile phones--working together to give you anywhere access to the information you care about."&lt;/p&gt;

&lt;p&gt;This sounds nice, but what does it mean for developers? With the Live Mesh SDK, you are in the future able to develop applications that store information in a mesh (or cloud), and then this information can be shared across multiple devices and even users. Since all supported devices can access the same data, Live Mesh is a concept that aims to deliver your data "anywhere, anytime". Sounds what Citrix for example is trying to do with applications. Live Mesh is for data, and the future will show what this system can deliver.&lt;/p&gt;

&lt;p&gt;For more information, see the &lt;a href="http://www.mesh.com/Welcome/TourDeveloper.aspx"&gt;Silverlight-enabled tour&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 23 Apr 2008 14:04:24 GMT</pubDate><guid>4ed4bf0f-b10b-4446-9d57-c0d0476d40dc</guid></item><item><title>New look on MSDN</title><link></link><description>&lt;p&gt;I today logged in again to MSDN after a pause of about two weeks, and I noticed that the services has now a completely new user interface. The new UI looks clean to me, but I confess I initially thought my login failed, because I was expecting to be redirected to a completely different (the old) site than the normal MSDN site layout.&lt;/p&gt;

&lt;p&gt;But, I wasn't, and on further investigation I noticed the new layout. It is similar to what MSDN is normally, with basic menus in place, etc. A little practice would reveal the new functions of the site.&lt;/p&gt;</description><pubDate>Tue, 22 Apr 2008 14:03:42 GMT</pubDate><guid>32859fe3-6289-4c02-b9d9-b6142207b4ff</guid></item><item><title>Blog roll: Jukka Wallasvaara</title><link>http://jukkawallasvaara.spaces.live.com/feed.rss</link><description>&lt;p&gt;I noticed from &lt;a href="http://jukkawallasvaara.spaces.live.com/feed.rss"&gt;Jukka Wallasvaara's blog&lt;/a&gt; (Microsoft DPE, Finland) that he's added my blog to his blog roll, so let the ball roll:&lt;/p&gt;

&lt;p&gt;Jukka's blog is &lt;a href="http://jukkawallasvaara.spaces.live.com/feed.rss"&gt;here&lt;/a&gt;. Another one that seems to copy most (not all?) entries to Channel 10 is &lt;a href="http://on10.net/blogs/Jukkaw/RSS/"&gt;here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Mon, 21 Apr 2008 18:31:21 GMT</pubDate><guid>01ee37f5-06f5-4056-9152-f166324c9d03</guid></item><item><title>Need to boot Windows Server 2008 into WinPE mode? Here’s how.</title><link>http://support.microsoft.com/?kbid=947024</link><description>&lt;p&gt;If you are running Windows Server 2008 already, you might sometimes have the need to boot into Windows PE (WinPE) mode. Microsoft has released a new &lt;a href=" http://support.microsoft.com/?kbid=947024"&gt;support article 947024&lt;/a&gt; which gives step-by-step instructions on how to create an ISO image of Windows Server 2008's Windows PE environment.&lt;/p&gt;

&lt;p&gt;To do so, you will need the Windows OEM Preinstallation Kit (OPK) and Windows OEM Preinstallation Kit (WAIK). Then, follow the instructions in the said knowledge base (KB) article.&lt;/p&gt;</description><pubDate>Wed, 16 Apr 2008 16:11:59 GMT</pubDate><guid>30509ac3-1a38-4632-a51f-7c339e12c515</guid></item><item><title>Dynamic data previews finally coming to ASP.NET applications</title><link>http://weblogs.asp.net/scottgu/archive/2008/04/10/asp-net-dynamic-data-preview-available.aspx</link><description>&lt;p&gt;Scott Guthrie's blog had earlier this week &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/04/10/asp-net-dynamic-data-preview-available.aspx"&gt;an interesting post&lt;/a&gt; about a new forthcoming functionality related to ASP.NET development: the ability to review LINQ datasources with live data at design time.&lt;/p&gt;

&lt;p&gt;This is surely something many developers have wanted to see since Visual Studio 2003 and ASP.NET 1.1. Good going!&lt;/p&gt;</description><pubDate>Sun, 13 Apr 2008 07:34:58 GMT</pubDate><guid>49ff62bf-6457-4335-9cb1-e1d6dc7b1682</guid></item><item><title>Office 2007 style ribbon control for WPF applications</title><link>http://www.actiprosoftware.com/Products/DotNet/WPF/Ribbon/Default.aspx</link><description>&lt;p&gt;Cool! I today learned that a software company named Actipro Software has developed an Office 2007 style ribbon control that is available to be used in WPF applications. The solution includes a solution of about 15 Microsoft-licensed controls that mimic the Office 2007 interface almost completely.&lt;/p&gt;

&lt;p&gt;If I'd be looking to develop ribbon user interfaces into my own WPF applications, it would be worthwhile to investigate this component. However, in the long run I would assume Microsoft would release the APIs to develop similar user interfaces as part of the .NET SDK kits. The future will of course tell whether this will be true or not.&lt;/p&gt;</description><pubDate>Thu, 10 Apr 2008 15:34:37 GMT</pubDate><guid>e702bc50-5718-4142-8005-d84ebdba0ede</guid></item><item><title>On moving applications to the x64 world</title><link>http://msdn2.microsoft.com/en-us/magazine/cc300794.aspx</link><description>&lt;p&gt;Almost all new server machines today run 64-bit editions of Windows, with the older 32-bit editions becoming a minority fast. On the workstation side, 64-bit x64 systems have been used for many years already especially in the technical audience, but my feeling is that 64 bit PCs will soon start to become mainstream even on consumer computers.&lt;/p&gt;

&lt;p&gt;For us developers, moving to the new, wider world can be terrific. No more those 2 gigabyte limitations in address space, nor mess-ups with all those five or six different Win32 calling conventions like stdcall and cdecl. On the low-level side, in 64-bit mode, the processor has new registers, and all those now start with the letter R. The general purpose registers then include RAX, RBX, RCX, RDX and R8-R15, plus others. Enough registers for many native code applications!&lt;/p&gt;

&lt;p&gt;For .NET developers, moving to the x64 world is even simpler, because starting with .NET 2.0 introduced already in 2005. Of course, if your application is using platform invoke (p/invoke) to Win32 APIs a lot, then of course you might need to adjust the code you’ve written. But the more you keep your code managed, the better off you are.&lt;/p&gt;

&lt;p&gt;If you need more information, I suggest starting with Matt Pietrek's excellent article titled "&lt;a href="http://msdn2.microsoft.com/en-us/magazine/cc300794.aspx"&gt;Everything You Need To Know To Start Programming 64-Bit Windows Systems&lt;/a&gt;". The article is skim on .NET development side, but the lower lever stuff is great.  Of course, Intel would be the de-facto source for native developers.&lt;/p&gt;</description><pubDate>Mon, 07 Apr 2008 16:26:48 GMT</pubDate><guid>61363d41-c18b-4e11-8fc3-fd5e5c13baae</guid></item><item><title>Windows 7 already next year?</title><link>http://www.eweek.com/c/a/Windows/Gates-Microsoft-Windows-7-Sometime-Next-Year/</link><description>&lt;p&gt;Reading &lt;a href="http://www.eweek.com/c/a/Windows/Gates-Microsoft-Windows-7-Sometime-Next-Year/"&gt;eWeek today&lt;/a&gt; I noticed that there's already discussion about Windows 7 ("Windows Seven") and its release schedule. According to eWeek, Bill Gates has mentioned that Win7 could be here already next year, but I believe this is not the case -- maybe he's talking about beta versions.&lt;/p&gt;</description><pubDate>Sat, 05 Apr 2008 14:40:23 GMT</pubDate><guid>fd9738dd-1ce0-49fd-a63d-fe46eb54ad04</guid></item><item><title>Best practices for code review sessions with Visual Studio Team System</title><link>http://msdn2.microsoft.com/en-us/library/ms182019.aspx</link><description>&lt;p&gt;If you are working in a software development team and you are sitting periodically together to review the code that has been written, it is important to know &lt;i&gt;what&lt;/i&gt; to do, but also &lt;i&gt;how&lt;/i&gt; to do it properly. Generally speaking, there are several best practices that are universal to almost any more or less formal meeting, be it a code review session or not. In addition to these common rules, there are several rules that apply to code reviews.&lt;/p&gt;

&lt;p&gt;On MSDN, there's a nice topic called "&lt;a href="http://msdn2.microsoft.com/en-us/library/ms182019.aspx"&gt;Guidelines for Conducting Design and Code Reviews&lt;/a&gt;", which lists the following. Lets start with two I'd categorize as common sense: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prepare for the meeting. That is, review the code yourself before going to the meeting, and do not attempt to do so during the meeting. This will save the time of all other attendants.&lt;/li&gt;

&lt;li&gt;Follow a predefined list to topics/tasks to check during the meeting. Otherwise, the discussion might flow into wrong directions, or you might find that you will forget to review certain aspects of the code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then, specific to code review sessions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Don't rush the schedule. It is of course necessary to allocate some time to the meeting, but if there are more issues found than time would allow, either continue the meeting, or schedule a second one close by. If you skip items on the list because of time constraints, you will sacrifice code quality.&lt;/li&gt;

&lt;li&gt;Track the issues found during code reviews. This tracking could be Visual Studio Team System work items, TODO comments in the C# source code, or similar. Personally, I'd use work items for "larger" changes that need to be made, and code comments for "smaller" changes. Of course, what is large or small depends on your project.&lt;/li&gt;

&lt;li&gt;Don't change the code while it's in review. If you find problems in your code while you've "checked out" the code to your reviewers, they will not be able to review what you've written.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By following these simple rules you can improve the quality of your software development process, and in the end the quality of the .NET applications you build. And that's what we're all after, right?&lt;/p&gt;</description><pubDate>Fri, 04 Apr 2008 14:58:23 GMT</pubDate><guid>007a7c77-d261-4e9d-b4a6-8a5ed7f02859</guid></item><item><title>MVP award for another year</title><link>http://mvp.support.microsoft.com/</link><description>&lt;p&gt;Yesterday night I received an e-mail I was secetly hoping I would receive: I was nominated for another year of the Microsoft MVP program.&lt;/p&gt;

&lt;p&gt;Thanks Microsoft, it's great to be part of the &lt;a href="http://mvp.support.microsoft.com/"&gt;team&lt;/a&gt; once again!&lt;/p&gt;</description><pubDate>Wed, 02 Apr 2008 13:39:58 GMT</pubDate><guid>052d0d87-627e-4136-84eb-1d48a4798454</guid></item><item><title>From Prague with greetings</title><link></link><description>&lt;p&gt;I had the chance to visit Prague last weekend, and nice city though could be a little cleaner. Nonetheless, software development wise, I'm returning to the city in two weeks to hear about Intel's software development products. Looking forward to that trip.&lt;/p&gt;</description><pubDate>Mon, 31 Mar 2008 13:52:27 GMT</pubDate><guid>a6457129-e926-4a5d-8112-cbc998167e23</guid></item><item><title>Canon EOS 5D firmware 1.1.1 now available</title><link>http://web.canon.jp/imaging/eos5d/eos5d_firmware-e.html</link><description>&lt;p&gt;I noticed that Canon has recetly (like last week) released an updated firmware to EOS 5D DSLR camera, this time with version number 1.1.1. The newest firmware includes, among other things, support for larger CompactFlash card than 8 GB, which was the previous limit. You can download the new firmware &lt;a href="http://web.canon.jp/imaging/eos5d/eos5d_firmware-e.html"&gt;here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 27 Mar 2008 04:57:08 GMT</pubDate><guid>295b1ffe-df39-43f8-afa8-d58843782970</guid></item><item><title>XAML file format documented</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyId=3356AF19-A36E-4D6D-9D13-C37DB81EE607&amp;displaylang=en</link><description>&lt;p&gt;On Microsoft Downloads, there's a brand-new &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=3356AF19-A36E-4D6D-9D13-C37DB81EE607&amp;displaylang=en"&gt;document&lt;/a&gt; about Windows Presentation Foundation's XAML language (Extensible Application Markup Language).&lt;/p&gt;

&lt;p&gt;This document is available both in PDF and ZIP formats, and the easiest things is to download the 7 MB ZIP file, which contains the two PDF documents.&lt;/p&gt;</description><pubDate>Tue, 25 Mar 2008 14:43:21 GMT</pubDate><guid>9ea1365d-b8c6-454f-906a-e1342e4e259b</guid></item><item><title>A good starting point for Silverlight development</title><link>http://msdn2.microsoft.com/en-us/library/cc221365(VS.95).aspx</link><description>&lt;p&gt;If you are interested in Silverlight development, of course Microsoft's own site &lt;a href="http://www.silverlight.net/"&gt;www.silverlight.net&lt;/a&gt; is the place to start. However, this is not the only one, as MSDN also has tons of good info. One starting point is the topic titled "&lt;a href="http://msdn2.microsoft.com/en-us/library/cc221365(VS.95).aspx"&gt;Application Development Overview&lt;/a&gt;", available under web application development tree.&lt;/p&gt;</description><pubDate>Sun, 23 Mar 2008 10:43:16 GMT</pubDate><guid>6d9d9b53-e2a5-41b2-a04a-ca8db87b92c0</guid></item><item><title>Using App_Offline.htm to show that an ASP.NET site is temporarily down</title><link>http://weblogs.asp.net/scottgu/archive/2006/04/09/442332.aspx</link><description>&lt;p&gt;Sometimes, you need to update your large ASP.NET web application, but doing so takes time. In these situations it would be great if you could put up a message saying "Under construction" for a moment, and then do your stuff, and then resume. Luckily, you can.&lt;/p&gt;

&lt;p&gt;If you create a file called "app_offline.htm" to the root of your site, ASP.NET will notice that file and display it for all requests to the site. Great, just what you often need. More information is available &lt;a href="http://weblogs.asp.net/scottgu/archive/2006/04/09/442332.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Happy Easter everyone!&lt;/p&gt;</description><pubDate>Thu, 20 Mar 2008 15:21:24 GMT</pubDate><guid>660300ac-4fd4-4de2-a6e6-ecd30562d9a4</guid></item><item><title>IIS 7.0 Bit Rate Throttling</title><link>http://weblogs.asp.net/scottgu/archive/2008/03/18/iis-7-0-bit-rate-throttling-module-released.aspx</link><description>&lt;p&gt;I read from Scott Guthrie's blog today, that a &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/03/18/iis-7-0-bit-rate-throttling-module-released.aspx"&gt;bit-throttling module&lt;/a&gt; has been developed for IIS 7.0, and that it is now available.&lt;/p&gt;

&lt;p&gt;Sounds like a very cool addition to me. I haven't yet had the chance to test it, but I believe the same technology could also be extended to other media types?&lt;/p&gt;</description><pubDate>Tue, 18 Mar 2008 17:39:28 GMT</pubDate><guid>36525fe1-3f97-4e0b-8bd8-397d4e536cda</guid></item><item><title>Windows Vista Service Pack 1 is here</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyID=B0C7136D-5EBB-413B-89C9-CB3D06D12674&amp;displaylang=en</link><description>&lt;p&gt;Windows Vista Service Pack 1 (SP1) is finally &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=B0C7136D-5EBB-413B-89C9-CB3D06D12674&amp;displaylang=en"&gt;here&lt;/a&gt;. This link is for the standalone download, about 450 MB in size. Of course, this can be too much for many people, and thus my suggestion is that you would let Microsoft Update/Windows Update do the work for you. This way, the downloads are smaller; of course for corporate desktops the situation can be different.&lt;/p&gt;

&lt;p&gt;Nonetheless, Vista SP1 is a welcome service pack, and something surely many have waited for. The details about what's new in the pack are &lt;a href="http://technet2.microsoft.com/WindowsVista/en/library/005f921e-f706-401e-abb5-eec42ea0a03e1033.mspx?mfr=true"&gt;available here&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Tue, 18 Mar 2008 17:39:24 GMT</pubDate><guid>e35d99ed-7d05-4e06-bc96-2102b4c911e4</guid></item><item><title>ASP.NET 2.0 web application errors on first touch</title><link></link><description>&lt;p&gt;I have a new Windows Vista laptop which is working really nicely. However, I noticed that when I use Visual Studio 2008 to develop ASP.NET web applications with the ASP.NET Development Server (that comes with Visual Studio), I always get the error message shown next when I first launch the application. But once I hit Refresh in my web browser, the problem goes away. The error is:&lt;/p&gt;

&lt;pre&gt;
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files'.
&lt;/pre&gt;

&lt;p&gt;So far, I haven't had the chance to investigate this error, but I assume it must be either an antivirus issue, or then related to CodeGear Delphi, as the stack trace includes a hint about Borland.DbkAsp.DbkConnModule. Lets see when I have the time to check this out.&lt;/p&gt;</description><pubDate>Mon, 17 Mar 2008 14:30:27 GMT</pubDate><guid>282c142e-31d0-4318-9494-14eb995493f3</guid></item><item><title>DevDays 2008 a success</title><link></link><description>&lt;p&gt;The Finnish DevDays 2008 event was held yesterday, and at least my feeling was that it was a success. My two ASP.NET web sessions gathered maybe around 900 people in total, which is a great amount of people.&lt;/p&gt;

&lt;p&gt;The presentation recordings should be online later this month, so be sure to check out CodeZone.fi later.&lt;/p&gt;</description><pubDate>Fri, 14 Mar 2008 06:07:49 GMT</pubDate><guid>719a12d8-c502-4f73-901a-115d7cf8a255</guid></item><item><title>SQL Server Data Services, what is it for?</title><link>http://www.microsoft.com/sql/dataservices/default.mspx</link><description>&lt;p&gt;Microsoft has announced a new service that uses SQL Server database: the &lt;a href="http://www.microsoft.com/sql/dataservices/default.mspx"&gt;SQL Server Data Services (SSDS)&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;These services are "ighly scalable, on-demand data storage and query processing web services" according to Microsoft. Also, these services support simple programming interfaces for example from C#, and support both SOAP and REST type of interfaces. For queries, LINQ can be used. Sounds cool to me!&lt;/p&gt;</description><pubDate>Tue, 11 Mar 2008 05:32:10 GMT</pubDate><guid>4325c83e-62ff-4dc4-bae1-0bd9a595ad87</guid></item><item><title>Simplest possible DataBinding to an array of data</title><link></link><description>&lt;p&gt;Sometimes, people as me what was the syntax to bind ASP.NET web controls to a data source (datasource) that doesn't contain any named elements. For example, you might want to bind to an array of data, but you cannot use the Eval method to do this, since there are no named properties to evaluate.&lt;/p&gt;

&lt;p&gt;For example, you might want to use the new ASP.NET 3.5 control ListView to an array of interegers, for instance like this:&lt;/p&gt;

&lt;pre&gt;
int[] numbers = { 12,6,14,9,3,7,11 };
ListView1.DataSource = numbers;
ListView1.DataBind();
&lt;/pre&gt;

&lt;p&gt;Then the question is: how do you refer to the elements of the array in your HTML code? The answer is: referring to the Container.DataItem property. Like this, for example:&lt;/p&gt;

&lt;pre&gt;
&amp;lt;asp:ListView ID="ListView1" runat="server"&amp;gt;
  &amp;lt;LayoutTemplate&amp;gt;
    &amp;lt;ul&amp;gt;
      &amp;lt;asp:PlaceHolder ID="itemPlaceHolder" runat="server" /&amp;gt;
    &amp;lt;/ul&amp;gt;
  &amp;lt;/LayoutTemplate&amp;gt;
  &amp;lt;ItemTemplate&amp;gt;
    &amp;lt;li&amp;gt;
      &amp;lt;%# Container.DataItem %&amp;gt;
    &amp;lt;/li&amp;gt;
  &amp;lt;/ItemTemplate&amp;gt;
&amp;lt;/asp:ListView&amp;gt;
&lt;/pre&gt;

&lt;p&gt;Keywords: How to data bind to an array, databind to array, C#, ASP.NET.&lt;/p&gt;</description><pubDate>Mon, 10 Mar 2008 06:41:41 GMT</pubDate><guid>4917c20c-221e-4bbe-8569-a567f76555d8</guid></item><item><title>MIX08 announcements: IE 8 beta, Silverlight 2 beta and Expression Blend Beta</title><link>http://visitmix.com/2008/</link><description>&lt;p&gt;Microsoft's MIX08 event sessions held in Las Vegas are now available online on &lt;a href="http://visitmix.com/2008/"&gt;VisitMix.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The most interesting announcements at MIX08 were naturally Internet Explorer 8, Expression Blend 2 and Silverlight 2. So there's lot of things to check this year.&lt;/p&gt;

&lt;p&gt;Oh, and save the date for the next MIX09. :-) It is March 18th to 20th, 2009.&lt;/p&gt;</description><pubDate>Thu, 06 Mar 2008 15:35:13 GMT</pubDate><guid>696501ba-5843-4207-9a5b-07df4f0ed469</guid></item><item><title>Measure WPF application performance with the WPF Performance Suite</title><link>http://wpf.netfx3.com/files/folders/developer/entry10880.aspx</link><description>&lt;p&gt;On NetFX3.com there's a nice utility called the &lt;a href="http://wpf.netfx3.com/files/folders/developer/entry10880.aspx"&gt;WPF Performance Suite&lt;/a&gt;. This utility allows you to profile your Windows Presentation Foundation applications and check which XAML constructs are faster than others.&lt;/p&gt;

&lt;p&gt;Features of this freely downloadably tool include a rendering analyzer, visual profiler, working set analyzer and more.&lt;/p&gt;</description><pubDate>Tue, 04 Mar 2008 14:47:13 GMT</pubDate><guid>126371f0-2f13-40e4-93b8-a3f0a71e3204</guid></item><item><title>Using Visual Studio and VMware 6 together changes the shortcut key for building</title><link>http://www.vmware.com/products/ws/</link><description>&lt;p&gt;One of the nice features in the latest version of &lt;a href="http://www.vmware.com/products/ws/"&gt;VMware Workstation 6&lt;/a&gt; is the ability to start debugging applications straight in a virtual machine. Currently, only Visual Studio version 2005 is supported.&lt;/p&gt;

&lt;p&gt;Having installed VMware Workstation 6 recently on one of my machines, I unconscientiously started Visual Studio 2005, opened a project, and tried hitting F6 to build the product. Before I knew it, I was prompted with the following error message:&lt;/p&gt;

&lt;pre&gt;
---------------------------
Error
---------------------------
A virtual machine was not specified in the current configuration.
---------------------------
OK   
---------------------------
&lt;/pre&gt;

&lt;p&gt;Oops! What? I had to retry several times to make sure I was reading right. I just had completely forgotten about VMware, and didn't understand what was the issue. Then I remembered my previous installation, and noticed that installing VMware will change your trusted F6 key to do something else.&lt;/p&gt;

&lt;p&gt;Personally, I think changing a common shortcut key is something that should not be made by default, so here we go. Just for your information.&lt;/p&gt;</description><pubDate>Mon, 03 Mar 2008 17:12:09 GMT</pubDate><guid>6a70628d-fd98-4e6e-b53b-62407faeba08</guid></item><item><title>VSTS extensions from Ekobit</title><link>http://www.ekobit.com/ProductsDetailView.aspx?id=1</link><description>&lt;p&gt;I learned earlier this week that a company called Ekobit has released a new version of their product called &lt;a href="TeamCompanion for Microsoft Outlook "&gt;TeamCompanion for Microsoft Outlook&lt;/a&gt;. This product allows team members to view Visual Studio Team System work items from within Outlook.&lt;/p&gt;

&lt;p&gt;Sounds like a good plan for many project manages, for instance. And since work item data is then in Outlook, Windows Vista's desktop search would also be effective in searching work item data. A nice side effect indeed!&lt;/p&gt;</description><pubDate>Fri, 29 Feb 2008 14:59:43 GMT</pubDate><guid>f04c0b2c-e780-4f40-b3b5-d4493ca2b916</guid></item><item><title>Visual Studio Gallery</title><link>http://visualstudiogallery.com/</link><description>&lt;p&gt;Microsoft has today started a new web site for third-party components and products that extend Visual Studio. This site is called &lt;a href="http://visualstudiogallery.com/"&gt;Visual Studio Gallery&lt;/a&gt;, and is available at visualstudiogallery.com.&lt;/p&gt;

&lt;p&gt;The products and components (or extensions, as Microsoft calls them) are divided into about 15 categories, from building to coding and testing and source control. Check it out!&lt;/p&gt;</description><pubDate>Wed, 27 Feb 2008 15:46:32 GMT</pubDate><guid>20211e61-0952-4829-98e7-091b86b64bfa</guid></item><item><title>Newer seen Microsoft's Compute Cluster? Check this</title><link>http://technet.microsoft.com/en-us/magazine/cc194411.aspx</link><description>&lt;p&gt;The most recent issue of the TechNet Magazine has a nice article about &lt;a href="http://technet.microsoft.com/en-us/magazine/cc194411.aspx"&gt;Windows Compute Cluster Server&lt;/a&gt;, which is a product that I haven't personally seen live. For this reason, it's nice that the article posts screenshots of how it looks like at the console.&lt;/p&gt;

&lt;p&gt;That's High Performance Computing (HPC) on the run. With a little bit of help from MSDN, I guess you could even program these beasts.&lt;/p&gt;</description><pubDate>Sun, 24 Feb 2008 10:12:53 GMT</pubDate><guid>919f716c-ce38-4965-8098-642313f9a24b</guid></item><item><title>Windows client and server protocol specifications to come available to all</title><link>http://www.microsoft.com/presspass/press/2008/feb08/02-21ExpandInteroperabilityPR.mspx</link><description>&lt;p&gt;It's now official: Microsoft &lt;a href="http://www.microsoft.com/presspass/press/2008/feb08/02-21ExpandInteroperabilityPR.mspx"&gt;will open the documentation&lt;/a&gt; of its Windows protocols, including those used on clients and servers to share files. This was announced just moments ago by Steve Ballmer and company.&lt;/p&gt;

&lt;p&gt;According to the press release, about 30,000 pages of documentation will be added to MSDN web site for everybody to see. This should happen no later than today. Later on, more documentation will follow.&lt;/p&gt;

&lt;p&gt;Another part of the announcement is the increased openness of Microsoft's Office 2007 suite. Says the press release: "&lt;i&gt;To promote user choice among document formats, Microsoft will design new APIs for the Word, Excel and PowerPoint applications in Office 2007 to enable developers to plug in additional document formats.&lt;/i&gt;"&lt;/p&gt;

&lt;p&gt;Sounds great to me!&lt;/p&gt;</description><pubDate>Thu, 21 Feb 2008 17:04:42 GMT</pubDate><guid>30885e19-84e7-4d55-9ecf-a2d4ec11c005</guid></item><item><title>Some real-time traffic accident data from California</title><link>http://cad.chp.ca.gov/</link><description>&lt;p&gt;As I'm planning my summer trip to Los Angeles/Las Vegas, it's fascinating to find web sites that give real-time information about things like traffic accidents. Well, Department of California Highway Patrol (CHP) has just &lt;a href="http://cad.chp.ca.gov/"&gt;such as site&lt;/a&gt;. The site lists traffic accidents as they are responded to in the 911 operation centers, such as the Los Angeles Communications Center. Very interesting to look at these things, even though of course, each accident is too much.&lt;/p&gt;

&lt;p&gt;On the other hand, these kinds of systems also make you wonder how they actually run and have been developed. Don't they? :-)&lt;/p&gt;

&lt;p&gt;Keywords: Los Angeles, emergency service, traffic accidents, realtime.&lt;/p&gt;</description><pubDate>Thu, 21 Feb 2008 15:40:00 GMT</pubDate><guid>0c0069ba-0387-4434-a258-fbecbb092c2c</guid></item><item><title>New SQL Server 2008 CTP available</title><link>http://www.microsoft.com/sql/2008/prodinfo/download.mspx</link><description>&lt;p&gt;I learned today that Microsoft has published a new CTP (Community Technology Preview) version of SQL Server 2008, due to ship in Q3 this year, according to latest news. There's a &lt;a href="http://www.microsoft.com/sql/2008/prodinfo/download.mspx"&gt;new download page&lt;/a&gt; for the February CTP, and after filling out a quick survey, you will land in the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=749BD760-F404-4D45-9AC0-D7F1B3ED1053&amp;displaylang=en"&gt;direct download page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Although registering for the beta doesn't seem to be mandatory, it is recommended because that way, you will get the news first, and secondly, allow Microsoft to create better statistics. Of course, whether you want to be part of those statistics is entirely a different matter. :-)&lt;/p&gt;</description><pubDate>Wed, 20 Feb 2008 15:33:42 GMT</pubDate><guid>6cc90119-364a-40c6-8e66-fb4a28e1ca07</guid></item><item><title>My newest column in the Prosessori magazine</title><link>http://www.prosessori.fi/</link><description>&lt;p&gt;My newest column about green software development is now featured in the most recent issue of the Finnish &lt;a href="http://www.prosessori.fi/"&gt;Prosessori magazine&lt;/a&gt;. The column is titled "Optimoitu koodi on aina ekoteko" and talks about environmentally friendly software development. Although software itself can, if we design it properly, be very green indeed, but it's the process of making it which often isn't as green as we would like it to be.&lt;/p&gt;</description><pubDate>Mon, 18 Feb 2008 14:47:11 GMT</pubDate><guid>07c396ea-75dd-4f6f-87da-ead0b86aa772</guid></item><item><title>Windows Vista Service Pack 1 is here</title><link>http://technet.microsoft.com/en-us/windowsvista/bb738089.aspx</link><description>&lt;p&gt;Windows Vista Service Pack 1 (SP1) is now ready. In the beginning, it will be available for TechNet (and MSDN) &lt;a href="http://technet.microsoft.com/en-us/windowsvista/bb738089.aspx"&gt;subscribers&lt;/a&gt;, and later around mid-March, it will also become available to the general public on the Microsoft Download Center. There's however a &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=39b802ea-b2cf-4585-8cea-2cc6a6247cb3&amp;DisplayLang=en"&gt;public overview paper&lt;/a&gt; available, that I can suggest reading.&lt;/p&gt;</description><pubDate>Fri, 15 Feb 2008 14:16:11 GMT</pubDate><guid>1fd8f832-526c-4090-a541-2262cd57ce79</guid></item><item><title>More information about Microsoft's Oslo project on eWeek</title><link>http://www.eweek.com/c/a/Application-Development/Microsoft-Preps-New-Modeling-Language/</link><description>&lt;p&gt;I noticed that eWeek had &lt;a href="http://www.eweek.com/c/a/Application-Development/Microsoft-Preps-New-Modeling-Language/"&gt;an article&lt;/a&gt; few days ago about Microsoft's new modeling language, and the project called "Oslo". Oslo is going to be a declarative programming language with heavy support for model-based developement, something that for example Borland/CodeGear has tried to do for many years with the ECO framework.&lt;/p&gt;</description><pubDate>Mon, 11 Feb 2008 15:25:33 GMT</pubDate><guid>ac4123af-2f0c-4746-81fb-9b340c5cbaa1</guid></item><item><title>Expression products and MSDN subscriptions</title><link></link><description>&lt;p&gt;There seems to be confusion among software developers and MSDN subscribers about Microsoft's new Expression products. Initially, Expression products (like Expression Blend and Design) were not part of the MSDN subscription, but this was quickly changed.&lt;/p&gt;

&lt;p&gt;Today, all MSDN Premium subscribers get access to Expression Web and Expression Blend. However, the full Expression Studio is only available to Visual Studio Team Suite customers. Team Suite happens to always come with MSDN Premium subscription, so those who are luck (or rich), will get both the most-extensive version of Visual Studio and Expression Studio.&lt;/p&gt;</description><pubDate>Sat, 09 Feb 2008 14:59:49 GMT</pubDate><guid>82fef890-a6e7-4671-981f-61ee843849e7</guid></item><item><title>Connecting to Access 2007 databases from C#</title><link></link><description>&lt;p&gt;I did some quick tests today regarding connecting to Access 2007 databases from C# with ADO.NET.&lt;/p&gt;

&lt;p&gt;As you are surely aware, accessing older Access database files (.MDB file extension) is really simple from .NET: you just connect to the database, and all the drivers are already there in the operating system. However, when you move to Access 2007, the file extension changes to .ACCDB, and you cannot access these databases without Access 2007 installed on the same machine. If you try that, you will get the error message "Unrecognized database format 'Northiwind.accdb'."&lt;/p&gt;

&lt;p&gt;The connection strings look like this for Access 2000-2003 databases:&lt;/p&gt;

&lt;pre&gt;
Provider=Microsoft.Jet.OLEDB.4.0;Data Source="Northiwind.mdb"
&lt;/pre&gt;

&lt;p&gt;And for Access 2007 databases they look like this:&lt;/p&gt;

&lt;pre&gt;
Provider=Microsoft.ACE.OLEDB.12.0;Data Source="Northiwind.accdb"
&lt;/pre&gt;

&lt;p&gt;But once you have Access 2007 installed (or rather, the correct drivers), using those databases with C#'s OleDbConnection/OleDbCommand works just like before.&lt;/p&gt;</description><pubDate>Wed, 06 Feb 2008 18:13:45 GMT</pubDate><guid>2ec80157-7736-4196-8891-54287b8851a3</guid></item><item><title>Windows Server 2008 is now in RTM!</title><link>http://www.microsoft.com/presspass/press/2008/feb08/02-04VistaSP1MA.mspx</link><description>&lt;p&gt;Microsoft &lt;a href="http://www.microsoft.com/presspass/press/2008/feb08/02-04VistaSP1MA.mspx"&gt;announced yesterday&lt;/a&gt;, that Windows Server 2008 has now been released to manufacturing. Great, I'm downloading the RTM bits from MSDN as I write.&lt;/p&gt;

&lt;p&gt;At the same time, Windows Vista Service Pack 1 (SP1) was finished. Actually I'm looking forward more to Windows Server 2008 than Vista SP1, because I'm interested the more advanced features such as better management and of course, IIS 7.0.&lt;/p&gt;</description><pubDate>Tue, 05 Feb 2008 16:07:57 GMT</pubDate><guid>38e7a610-e96b-4d38-8285-752af2b8bf21</guid></item><item><title>ASP.NET 3.5 video tutorials on ASP.NET</title><link>http://asp.net/learn/3.5-videos/</link><description>&lt;p&gt;The venerable ASP.NET developer site has a &lt;a href="http://asp.net/learn/3.5-videos/"&gt;new section for ASP.NET 3.5 content&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Currently, there is information about AJAX support in Visual Studio 2008, the ListView and DataPager control, and more. Go check it out!&lt;/p&gt;</description><pubDate>Mon, 04 Feb 2008 14:43:54 GMT</pubDate><guid>fb2d3fdf-cdf3-4dab-b835-3f7df8a3ce49</guid></item><item><title>Virtual PC getting better compared to VMware (about VMware 6.0 bloat)</title><link>http://www.microsoft.com/windows/downloads/virtualpc/default.mspx</link><description>&lt;p&gt;So far, I've been mostly using &lt;a href="http://www.vmware.com/products/ws/"&gt;VMware Workstation&lt;/a&gt; as my playground for virtual machines, but after installing VMware Workstation 6, I noticed that &lt;a href="http://www.microsoft.com/windows/downloads/virtualpc/default.mspx"&gt;Virtual PC 2007&lt;/a&gt; still has its uses.&lt;/p&gt;

&lt;p&gt;One thing that is problematic with the latest version of VMware Workstation 6 is that it takes over 700 MB of disk space to install. Wow, Virtual PC 2007 is much smaller, around 35 MB. Quite a difference!&lt;/p&gt;

&lt;p&gt;Of course, I wanted to immediately check why such amounts of disk space are needed by VMware. Turns out that the "pkg" directory is very large, over 400 MB, and can be safely deleted. Or at least, I haven't noted any change in functionality after giving the Shift+Del to the directory. Further, you can save even more space by deleting the .ISO files from the VMware root installation directory, maybe leaving only Windows.iso there (which is the installation CD for VMware Tools).&lt;/p&gt;

&lt;p&gt;Now, what does this have to do with Virtual PC? Well, so far VMware has been quite far ahead of Virtual PC (at least in my opinion), but now it turns out Virtual PC is much slicker, and easier and faster to install. And, Virtual PC supports pasting text to the virtual machine by emulating keystrokes. Great for typing in those serial numbers while installing the operating system. :-)&lt;/p&gt;</description><pubDate>Sat, 02 Feb 2008 12:16:41 GMT</pubDate><guid>ccddf18c-8a67-491f-93ba-a73b1d49a60b</guid></item><item><title>Nice MSDN article about using latest .NET technologies in Office applications</title><link>http://msdn.microsoft.com/msdnmag/issues/07/12/VstoNet/default.aspx</link><description>&lt;p&gt;Another &lt;a href="http://msdn.microsoft.com/msdnmag/issues/07/12/VstoNet/default.aspx"&gt;nice article&lt;/a&gt; from MSDN Magazine: using latest .NET technologies such as LINQ, WPF and WCF in Microsoft Office applications.&lt;/p&gt;

&lt;p&gt;The sample application uses WCF to communicate with a service, and then LINQ expressions are used to read data. The sample application can be downloaded, as is most often the case with MSDN Magazine articles.&lt;/p&gt;</description><pubDate>Thu, 31 Jan 2008 15:07:43 GMT</pubDate><guid>3da1f3c3-b6b0-41f1-8dcc-45299aa6bdbf</guid></item><item><title>Some troubleshooting tips for Visual Studio 2008 setup</title><link>http://blogs.msdn.com/varungupta/archive/2007/12/04/visual-studio-2008-setup-troubleshooting-guide.aspx</link><description>&lt;p&gt;I noticed that on MSDN blogs there's a &lt;a href="http://blogs.msdn.com/varungupta/archive/2007/12/04/visual-studio-2008-setup-troubleshooting-guide.aspx"&gt;nice post&lt;/a&gt; about troubleshoooting Visual Studio 2008 installations.&lt;/p&gt;

&lt;p&gt;However, one thing that appears to be missing is the error message about missing file, even though the file exists. If you get this "cannot find file" type of error message, the remedy number one is to simply retry the whole installation. Another one is to copy the installation DVD files onto your hard disk, and then install from there.&lt;/p&gt;</description><pubDate>Tue, 29 Jan 2008 14:32:13 GMT</pubDate><guid>7e0e2b1a-9791-4303-ad76-8401c040044d</guid></item><item><title>A Visual Studio 2008 training kit from Microsoft</title><link>http://www.microsoft.com/downloads/details.aspx?familyid=8BDAA836-0BBA-4393-94DB-6C3C4A0C98A1&amp;displaylang=en</link><description>&lt;p&gt;I just noticed that Microsoft has published a free training kit about new features in Visual Studio 2008 and .NET Framework 3.5. Somehow, I've missed this kit, since it has already been available since the ned of November. Darn.&lt;/p&gt;

&lt;p&gt;In any case, the kit can be &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=8BDAA836-0BBA-4393-94DB-6C3C4A0C98A1&amp;displaylang=en"&gt;downloaded here&lt;/a&gt;. It's a self-extracting .RAR file, and is about 130 MB in size.&lt;/p&gt;

&lt;p&gt;&lt;img src="images/2008_feb_install_traning_kit.png"&gt;&lt;/p&gt;

&lt;p&gt;If you are interested in technologies such as LINQ, C# 3.0, WCF, WF, WPF, ASP.NET AJAX, VSTO, CardSpace, SilverLight and Team System/ALM, this training kit is for you.&lt;/p&gt;</description><pubDate>Mon, 28 Jan 2008 14:26:53 GMT</pubDate><guid>1427d7c2-5b56-43ae-b755-7cbbd5b04035</guid></item><item><title>HTML version 5 is in the works</title><link>http://www.w3.org/TR/html5/</link><description>&lt;p&gt;W3C, or the World Wide Web Consortium which is behind many important Internet standards such as HTML, PNG, XML and web services, has announced that &lt;a href="http://www.w3.org/TR/html5/"&gt;a new version of HTML&lt;/a&gt; is in the works. This new version is called HTML 5, and I'd love to see the next version of Visual Studio/ASP.NET to support it.&lt;/p&gt;

&lt;p&gt;W3C has even &lt;a href="http://www.w3.org/TR/html5-diff/"&gt;compiled a short list&lt;/a&gt; of "What's New" in HTML 5. For example, better forms support and many new tag features are on the list.&lt;/p&gt;</description><pubDate>Thu, 24 Jan 2008 18:21:39 GMT</pubDate><guid>fd6b0327-adbb-4924-a1bd-6fdcc8ba715e</guid></item><item><title>New article in Developer.com</title><link>http://www.developer.com/db/article.php/3723181</link><description>&lt;p&gt;My newest article has appeared &lt;a href="http://www.developer.com/db/article.php/3723181"&gt;on Developer.com&lt;/a&gt;. It is titled "Nesting Transactions with a Single SQL Server Database" and it talks about .NET's System.Transaction namespace, and nesting of TransactionScope objects.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;</description><pubDate>Thu, 24 Jan 2008 05:00:58 GMT</pubDate><guid>e8cc2eb6-f18f-4738-911a-71c694062acb</guid></item><item><title>Windows Vista can now be virtualized</title><link>http://www.eweek.com/c/a/Virtualization/Microsoft-Allows-all-Vista-SKUs-to-be-Virtualized/</link><description>&lt;p&gt;I noticed &lt;a href="http://www.eweek.com/c/a/Virtualization/Microsoft-Allows-all-Vista-SKUs-to-be-Virtualized/"&gt;from eWeek&lt;/a&gt; late yesterday that Microsoft has announced that all Windows Vista editions (SKUs) can now be virtualized. The new end-user license agreement (EULA) now states:&lt;/p&gt;

&lt;p&gt;&lt;i&gt;"...instead of using the software directly on the licensed device, you may install and use the software within only one virtual (or otherwise emulated) hardware system on the licensed device."&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;Of course, you still need to have a valid/legal license to be able to virtualize in the first place. For software developers, it would be great if some of the high-end Vista OEM versions (that comes with a PC) could be virtualized in a single &lt;em&gt;additional&lt;/em&gt; virtual machine for testing purposes.&lt;/p&gt;</description><pubDate>Tue, 22 Jan 2008 14:27:56 GMT</pubDate><guid>ce674622-398b-403a-9e3a-28732c9e983d</guid></item><item><title>PowerShell 2.0 is coming</title><link>http://www.microsoft.com/technet/scriptcenter/topics/msh/download2.mspx</link><description>&lt;p&gt;PowerShell 1.0 has been here for a while already, and thus it's no surprise that PowerShell version 2.0 is in the making. You can download a CTP version, and give it a try.&lt;/p&gt;

&lt;p&gt;Some new features in 2.0 are remoting support, background jobs, debugging support, and a graphical shell (!). Sounds interesting to me!&lt;/p&gt;</description><pubDate>Sun, 20 Jan 2008 11:13:09 GMT</pubDate><guid>c4e9671c-f7dd-4177-a0bb-ede00d177a5a</guid></item><item><title>Source code for .NET now available!</title><link>http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx</link><description>&lt;p&gt;I was very happy to read from Scott Guthrie's blog this morning that the source code for the basic .NET libraries is &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx"&gt;now available&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Currently, the base class library, ASP.NET, Windows Forms, Windows Presentation Foundation, XML and ADO.NET library code is available. Sounds like a lot of source lines to me! To enable source code browsing in Visual Studio, follow &lt;a href="http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx"&gt;these instructions&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 17 Jan 2008 15:17:07 GMT</pubDate><guid>60ae5d48-8816-41d7-a4e0-fb700655727c</guid></item><item><title>Visual Studio 2008 training in Kajaani and Jyvaskyla</title><link>http://www.kajak.fi/in_english.iw3</link><description>&lt;p&gt;It was my pleasure to speak yesterday at the Kajaani University of Applied Sciences  about Visual Studio 2008 and .NET 3.5 to a full seminar room of more than 100 people. During our day, we talked about hot new things such as LINQ, Expression Blend and Silverlight. Jyväskylä will be next.&lt;/p&gt;</description><pubDate>Wed, 16 Jan 2008 18:12:25 GMT</pubDate><guid>55d94b77-4006-4dbd-bdfa-d8e41301b9be</guid></item><item><title>Big Finnish Visual Studio events coming</title><link>http://www.microsoft.com/finland</link><description>&lt;p&gt;If you are living in Finland, then there are two important, fortcoming dates that you should put into your calendar. That is, &lt;a href="http://www.microsoft.com/finland"&gt;Microsoft Finland&lt;/a&gt; is arranging both the Visual Studio 2008 launch on 6th of March at the Finland Hall, and the biggest developer event DevDays 2008 will be held on 13th of March.&lt;/p&gt;

&lt;p&gt;Don't miss these two dates!&lt;/p&gt;</description><pubDate>Mon, 14 Jan 2008 15:48:36 GMT</pubDate><guid>0f7f247e-51b4-4e09-bffb-919f4bf2a271</guid></item><item><title>BizTalk to the hospitals</title><link>http://www.microsoft.com/downloads/details.aspx?FamilyID=2D771D83-9C4B-4E8F-A264-50F961D1BB7B&amp;displaylang=en</link><description>&lt;p&gt;If you are writing code for the healthcare industry and hospitals in particular, you might be interested in the standards organization called Health Level Seven (HL7). For example in Finland, &lt;a href="http://www.hl7.fi/"&gt;they&lt;/a&gt; are working with local hospitals to help with data transfer and messaging.&lt;/p&gt;

&lt;p&gt;I noticed that Microsoft is also involved in the process, and they even have &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2D771D83-9C4B-4E8F-A264-50F961D1BB7B&amp;displaylang=en"&gt;a guide&lt;/a&gt; to help BizTalk developers to handle HL7 v2 compatible messages.&lt;/p&gt;</description><pubDate>Sat, 12 Jan 2008 11:12:57 GMT</pubDate><guid>d48215a7-fabe-40db-9160-755e0552121b</guid></item><item><title>Pro photography stuff from Microsoft</title><link>http://www.microsoft.com/prophoto/downloads/prophotoshoot.aspx</link><description>&lt;p&gt;Microsoft has it's own site dedicated to professional photography, but the site isn't marketed well. In fact, you could say its one of those little secrets. For example, I today learned about an Outlook add-in for pohotographers, called the "&lt;a href="http://www.microsoft.com/prophoto/downloads/prophotoshoot.aspx"&gt;Microsoft Pro Photo Shoot&lt;/a&gt;". It helps you to arrange your shoots in your Outlook calendar. There's also an &lt;a href="http://www.microsoft.com/prophoto/articles/lens.aspx"&gt;article about the add-in&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Secondly, I learned about a product called "&lt;a href="http://www.microsoft.com/prophoto/articles/proshow.aspx"&gt;ProShow Producer 3&lt;/a&gt;" which sounds to me like Windows Movie Maker on steroids. If I have time in the future, I need to check it out.&lt;/p&gt;</description><pubDate>Thu, 10 Jan 2008 15:52:28 GMT</pubDate><guid>330b9df4-a7ed-42ff-833c-66a8477e852f</guid></item><item><title>The new Visual Studio "Heroes Happen Here" site</title><link>http://www.microsoft.com/heroeshappenhere/learn-more/products/Visual-Studio-2008/default.mspx</link><description>&lt;p&gt;Microsoft has started a new &lt;a href="http://www.microsoft.com//heroeshappenhere/learn-more/products/Visual-Studio-2008/default.mspx"&gt;web site&lt;/a&gt; about the forth-coming Windows Server 2008, Visual Studio 2008 and SQL Server 2008.&lt;/p&gt;

&lt;p&gt;The site contains sections for software developers as well as IT professionals. For example on the Visual Studio section -- this time titled "Break Through Software Development Challenges" -- you can find more information about the product (useful marketing material even if you happen to already use the product) and a link to a test version in case you aren't an MSDN subscriber.&lt;/p&gt;</description><pubDate>Wed, 09 Jan 2008 14:22:44 GMT</pubDate><guid>e92b0a0a-f109-4b89-a45a-38cf518937cc</guid></item><item><title>My new Elichrom FX400 studio flash system</title><link>http://www.elinchrom.com/</link><description>&lt;p&gt;Last week, I purchased a long-anticipated set of &lt;a href="http://www.elinchrom.com/"&gt;Elinchrom&lt;/a&gt; studio flash set, namely the FX400 To-Go-Set ("FX 400"). I also had the chance to briefly test it last weekend, wow! It sure makes a big difference to portraits when you have good light sources. I'm looking forward to getting more time to play with the flashes.&lt;/p&gt;</description><pubDate>Mon, 07 Jan 2008 19:03:07 GMT</pubDate><guid>9ae2f8dc-1b4b-47d0-badc-b60de41bef4a</guid></item><item><title>When will IE 8 be here?</title><link>http://www.eweek.com/article2/0,1759,2237719,00.asp</link><description>&lt;p&gt;News are starting to flow about the forthcoming beta version of Microsoft's Internet Explorer web browser version 8. As &lt;a href="http://www.eweek.com/article2/0,1759,2237719,00.asp"&gt;eWeek reports&lt;/a&gt;, a beta version could be expected around mid-2008, meaning the end of Microsoft's fiscal year.&lt;/p&gt;

&lt;p&gt;And speaking of web and web application development, it's interesting to see the buzz that Silverlight &lt;a href="http://www.eweek.com/article2/0,1759,2237615,00.asp"&gt;is creating&lt;/a&gt;. We already knew that Silverlight is cool for .NET people, but the fact that also serious Flash users are interested in it, is something. I hope to see Silverlight 2.0 out soon.&lt;/p&gt;</description><pubDate>Thu, 03 Jan 2008 16:50:28 GMT</pubDate><guid>49abe72e-13be-4b7c-bcb6-20fddd33c42f</guid></item><item><title>Welcome to the New Year!</title><link></link><description>&lt;p&gt;Welcome to 2008! If you are reading this, you have successfully updated the RSS feed URL for my blog.&lt;/p&gt;

&lt;p&gt;Stay tuned for more content soon...&lt;/p&gt;</description><pubDate>Wed, 02 Jan 2008 07:17:09 GMT</pubDate><guid>04cd94aa-4b9d-4a8d-8da5-f5550b7faa22</guid></item></channel></rss>
