.NET 3.0, SDK, and Cider installation experience, and which MSDN Library/Documentation to use…

Today I took the time to uninstall all my pre-RTM bits and upgrade to the latest official releases. I installed the following:

  • .NET Framework 3.0 Runtime Components
  • Microsoft® Windows® Software Development Kit for Windows Vista™ and .NET Framework 3.0 Runtime Components
  • Visual Studio 2005 Extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP

First I spent significant time researching how to uninstall the previous versions. Surprisingly there are no specific instructions for how to do this, and the result is too much time being spent on my part. Oh well. By the way, don’t use the Pre-released Microsoft .NET Framework 3.0 Uninstall Tool. Why? See here: Updated warning – .NET Framework 3.0 cleanup tool removes MSDN and SQL Express.

Shouldn’t the misc. install pages on MS web sites be updated and not link to the uninstall tool anymore?

Because I used the uninstall tool during the install of another CTP earlier this year (and "lost" the MSDN Library), I decided to reinstall the MSDN Library and integrate it with VS 2005. I used my August 2006 version of the MSDN Library and installed it without any problems.

Next, I installed the three main components, but when starting the VS 2005 Extensions install I received an error (or is it a warning) from the installer stating (quote):

"Setup has detected that recommended components are missing. To get an integrated documentation experience for Visual Studio 2005 extensions for .NET Framework 3.0 (WCF – WPF), November 2006 CTP you must have the MSDN documentation for Visual Studio 2005 and the .NET Framework 3.0 documentation from the Windows SDK installed. It is recommended that you install the MSDN documentation for Visual Studio 2005 and the .NET Framework 3.0 documentation from the Windows SDK and restart setup."

After saving the error dialog I clicked ok, and received another almost identical box. Well, I had just installed both the MSDN documentation as well as the Windows SDK, so I clicked Ok, and was allowed to continue the installation. I took a chance and continued.

After the installation completed I noticed that the WinFXReadme.htm file states "If you replace the MSDN Library for Visual Studio 2005 with an MSDN Quarterly Library, you will not have .NET Framework 3.0 documentation integrated into Visual Studio 2005.  If you need the .NET Framework 3.0 documentation, please do not install the MSDN quarterly updates until they include .NET Framework 3.0 documentation."

My problem here is of course that I used the latest MSDN documentation (or is it called library?) instead of the original VS 2005 copy. Microsoft, on the other hand, has two problems here:

  • They should include this requirement in the requirements list for the "Visual Studio 2005 Extensions for .NET Framework 3.0" so that I can take the necessary action before starting the install. Maybe they also should include a warning about this in the SDK install as well, if the MSDN Library must be installed before the SDK.
  • The error box I got didn’t exactly tell me how to remedy the situation (what should be uninstalled before reinstalling what).

Anyway, the final result is I–despite the error box’s warning–do have help for .Net 3.0 in VS 2005, at least context sensitive help. I don’t know whether I’m missing out on something, though. I also noticed that in many cases I have to choose between two help links (they both seem to take me to the same help page).

I decided to document this, both for my own record, and because I couldn’t find any references to other people with the same experience. Hopefully this will help other developers as well.

Opera 9 Mail almost got me switched over…

I have spent most of the day learning about the new Opera 9 beta, features, and the related Opera website community content. I really like the browser, it seems to be solid, standards compliant, and fast. I have started using it as my primary browser, and then we will see if it becomes a permanent switch.

If you read my post about BlinkList, you’ll see that I’m looking for new software based on the tagging (categorization) pattern. I was therefore very excited when I saw that Opera Mail supports this concept.

Unfortunately, I don’t dear to migrate my thousands of e-mail messages from Outlook to Opera yet. The reason is the lack of import and export capabilities in Opera.

In order to import from Outlook 2003, I must first import my messages into Outlook Express. Then, import from Outlook Express to Opera. I tested the procedure with a small subset of my Outlook folders. Everything imported okay, except that my folder hierarchy was flattened to only 1 level deep in Opera’s Filter "view". On top of that, there’s no feature in Opera to move a filter to become a sub-filter of another filter. The only work around was to create new sub-filters and move the contents of the imported filters across to the new destination.

Maybe there’s no need for me to mirror the original folder structure in Opera. After all, the filter (tagging) concept is very different from the hierarchical folder view in Outlook. Nevertheless, I’m not yet confident enough in Opera Mail to think that I’ll never again need to migrate my e-mail database to another application. That’s a pretty good reason for maintaining a fixed hierarchy of messages.

Maybe the optimal solution is to use a standard hierarchical folder system as the permanent store for the e-mail messages, and then add the filtering/tagging/categorization system on top. That should give me the best of both worlds.

Oh, I almost forgot, I was unable to find a way to export e-mail messages from Opera Mail without loosing all the filtering information. The only solution I found, was to export one filter at a time into a .mbs file, but no information about filter (folder) names or rules would be included.

There’s of course no import of .mbs files in Outlook or Outlook Express either, so I would have to find some third party software to get it all back if, for example, I should want/need to start using Outlook 2007 when it’s out.

I will keep an eye on Opera Mail, and hope that a future version will add some of the features I’m looking for.

Disclaimer: it’s absolutely possible that I’m incorrect or inaccurate in some of my observations. I appreciate any feedback on the matter!

Try “BlinkList” for better bookmark/favorites organization

I’m in the habit of constantly adding links to the IE favorites list, and as a result my favorites list has become overwhelming large. It’s at the point where, after something gets added, it’s never again found.
 
Recently I have become more aware of the power of the "Tagging" pattern. Examples of tagging as pattern can be found in photo album applications (e.g. Adobe Photoshop Elements), as well as in other types of information management software.
 
In a nutshell, this is how tagging compares to the traditional approach of a hierarchical organization of information, using the IE Favorites List as the example: In my favorites list I have, over time, created many, many folders in a deep hierarchy. Whenever I add a new link to my favorites, I have to decide which folder to save the message in. Having to do this decision making is problem number 1; it’s just too time consuming. Problem number 2 is the fact that you can only add the link to 1 folder at a time. Problem 3 occurs when you need to find that link again in the future ("now, which folder did I add the link to?").
 
Using a tagging system, you could add all links to a single folder. Whenever you add a new link, you would attach one or more tags to the link, conceptually storing the same link in many "folders".
 
Problem 1 above is reduced since associating a link with a tag is much easier than having to browse for the most appropriate folder. Problem 2, of course, is removed. Problem 3 is greatly reduced, because by associating multiple tags with the link, I increase the chance of finding the link at a later point of time.
 
I believe the tagging pattern is very powerful and have decided to start looking for replacements of my most used information managers (e-mail, RSS, news, file system, etc.). This means that Outlook, FeedDemon, XNews, etc. all have moved into the "danger zone".
 
The first victim is the IE favorites list, as I today found out about http://www.blinklist.com. BlinkList is a free, web based bookmark manager that takes excellent advantage of tagging. I quickly signed up, and contemplated importing all of my favorites items before deciding to take a more selective approach. As of right now, I have reviewed all my ASP.NET, CSS, web design, etc. related links and added them to the new manager.
 
Take a look at http://www.blinklist.com/TorLanglo for the result.

ASP.NET Page Lifecycle

I’m in the process of learning about ASP.NET master pages and themes support. I’m trying to incorporate runtime switching of themes on the master page, and what seems to be a pattern in my learning process occurred again.

What I’m finding is that when I’m having a hard time understanding what’s going on in a partucular "problem space", it’s time to dig a little deeper and first understand the underlying architecture. 

There are many approaches to learning software architectures, but I’n my case using UML class and other diagrams always seems to do the job. 

So, here we go. The following UML class diagram show the classes involved with loading an ASPX page:

The diagram is not intended to be 100% correct or cover all related classes and relationships. Instead, the purpose is to communicate to me (and hopefully you) something that helps me remember how ASP.NET works.

Atlas References

After attending the Microsoft PDC conference in September I decided to take a closer look at the Atlas framework for my web development. I haven’t had a chance to do so yet, but since there’s some much interest in AJAX development right now, I thought I’d take a minute and add the Atlas references that I have collected:
 
Atlas home page – Community Site for the ASP.NET Atlas technology
 
Start.com Developer Center – writing gadgets for for  Start.com (and Live.com?)
 
Microsoft Gadgets – Gadgets will be used in the Windows Vista Sidebar, on Start.com, on Live.com
 
Some interesting blog entries:
 
MSJawahar, Atlas Behaviors – enabling "auto complete" using Atlas as a declarative code model
 
ScottGu’s Blog, Atlas Project – Atlas project description
 
nikhilk.net, ASP.NET/Atlas – Several Atlas related articles from Nikhil Kothari (Web Platform and Tools architect for Microsoft)
 
Imran Qureshi, Windows Live Mail – the next version of Hotmail, using Atlas. The article references "So why is Kahuna different" which again references a bunch of other links on Kahuna aka Hotmail "next" aka Windows Live Mail.
 
So there you have it. Everything you need to start doing AJAX development, the Microsoft way.

Office 12 Story and Pictures

 
I have to admit I’ve never been a big Office user, but I had the chance to see Microsoft’s preview of Office 12 at the PDC conference last week, and I was impressed.
 
* Updated user interface – Office is getting a very overdue update to its UI, and it makes a lot of sense. It seems to follow the pattern of "what you need is what you see".
* Integration with the .Net framework – this will allow us developers to better integrate our applications with Office, and make it easier to take advantage of the power it provides.
* New technology which allow using Office features in web sites – at the conference we saw demonstrations on how Exel spreadsheets can be places in web-parts in the upcoming SharePoint v3 portal. We also saw how you could save and load Office documents directly to a Sharepoint web server for sharing with other users.
* There’s a successor to Visual Basic for Applications (VBA), using .Net programming languages. I don’t have the name of this technology in front of me at the moment, but this will allow advanced users and integrators to write more powerful and robust scrips, macros, and applets in Office.