<body><script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener('load', function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <div id="navbar-iframe-container"></div> <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> <script type="text/javascript"> gapi.load("gapi.iframes:gapi.iframes.style.bubble", function() { if (gapi.iframes && gapi.iframes.getContext) { gapi.iframes.getContext().openChild({ url: 'https://www.blogger.com/navbar.g?targetBlogID\x3d11476683\x26blogName\x3dWinFX+Adventures\x26publishMode\x3dPUBLISH_MODE_BLOGSPOT\x26navbarType\x3dBLUE\x26layoutType\x3dCLASSIC\x26searchRoot\x3dhttp://winfxadventures.blogspot.com/search\x26blogLocale\x3den_US\x26v\x3d2\x26homepageUrl\x3dhttp://winfxadventures.blogspot.com/\x26vt\x3d1143681562734154543', where: document.getElementById("navbar-iframe-container"), id: "navbar-iframe" }); } }); </script>

Monday, March 28, 2005

XAML Intellisense - Best Feature Thus Far

I had the opportunity to try a few things on the laptop while I was home for the holiday weekend. What I noticed right off the bat was how great intellisense for XAML really is. It still has a few bugs to be ironed out, such as how it doesn't work if you are specifying tag properties on a new line, however it really speeds up the task of creating the presentation segment of your application.

On a different note, I wasn't able to get XAMLPad working... has anyone else had problems with this tool? It'd be nice to get instant results from changes in markup, especially when you are first learning. Building your solution is a real hassle, especially when using a slower system such as my Inspiron...

Desktop Up And Running

After installing Windows Server 2003 R2 Beta on the desktop computer, I continued on with installing the March WinFX CTP. Right when the MSI file for the CTP drop was about to begin unpacking the ISO file, it stopped dead in its tracks reporting that the MSI file was rejected by the digital signature policy. A quick search on the WinFX newsgroups didn't turn up any way to fix this problem, other than running the MSI file on another computer, and then copying the ISO file that is extracted back over to the target machine. This did the trick, although it took much longer than expected. Thankfully I hadn't yet deleted the ISO file from my Inspiron 8200.

I haven't tested any samples out on the desktop as of yet, however I am certain that it will be a much more enjoyable experience than testing the samples out on the laptop. The desktop is powered by an Athlon XP 3200+ with 1 Gigabyte of PC3200 RAM and an ATI Radeon 9600 XT All In Wonder card. Intallation of the SDK took a fraction of the time that it did on the laptop, so I can't wait to start mucking around with Avalon on that rig! Unfortunately exams are approaching fast, and I've got a midterm and an assignment slated for the end of this week. These commitments are going to eat up a fair bit of my spare time, but I will do my best to play around with Avalon, or atleast read some more of the documentation.

I've already got a couple of idea's on the go right now for Indigo/Avalon applications. Obviously it'll be some time before these roll out as I need to learn the basics first, but I do not think that it will be terribly difficult to implement them with the new frameworks.

Sunday, March 27, 2005

Documentation First, Fun Later

I managed to install the latest WinFX CTP drop on my Dell Inspiron 8200 laptop, although it wasn't entirely smooth. The installation was going flawlessly until running Setup.exe for the WinFX SDK, the last step in the installation. I let it do it's thing for over an hour, as I heard that it takes some time on slower systems, however it would only return with a dialog stating that the installer had time out. I tried a couple more times, only to get the same result. After a full shut down and system restart, the installation took about 10 minutes.

We did a fair bit of travelling today, so I had the opportunity to read a good chunk of the documentation that is installed along side the SDK. I'd strongly suggest reading it. If you've worked with XAML before, or read some tutorials/samples on the Internet, then it is a little repetitive at the start, however there is a lot of good material in there. It seems to be much more complete compared to the online documentation found on MSDN, and the samples are definately worth a look. My favourite so far would be the Login Screen sample. It's really incredible how you can not only change the style for each user, but also the layout!

When I return to Ottawa sometime tomorrow and get settled back in, I'll format the desktop and install Server 2003 R2, followed by the March 2005 CTP. Server 2003 R2 has worked wonderfully on the laptop, with a few minor exceptions (likely due to the laptop itself), so I'll give it a try on the desktop where more of the features can be tested out. I may decide to move to XP SP2... we'll see.

In the mean time, have a look at Nathan's Blog. I found the link to it over on Chris Andersons Blog and it has lots of good information and examples for Avalon, as does Chris'. The animated CD button looks interesting, and I'd like to start playing with the 3D features that Avalon offers as soon as possible. This would be a good example to start working with and tweaking.

Friday, March 25, 2005

March 2005 Avalon and Indigo CTP Released

It seems that Microsoft covertly released the WinFX SDK CTP very early this morning. I'm currently downloading it right now. It's about 450MB, so it's a heft little download. A nice little gift to play with over the Easter weekend.

Here are the links as found on the newsgroups.
Download WinFX March 2005 CTP
Introducing the March 2005 CTP

I'll be busy installing this on the laptop this weekend, and will format the desktop PC when I return so that my development environment will have a fresh copy of either Server 2003 or Windows XP SP2. I've installed the previous CTP on an XP SP2 box, so if things go smoothly on Server 2003, I'll use that instead on the desktop box.

Have a safe weekend everyone!

Tuesday, March 22, 2005

Longhorn Networking Revealed

The TechNet chat on Longhorn Networking Revealed has just ended. From what I was able to sit in on, I can say that it was an interesting chat. Many people had connection problems with the chat room, and I was disconnected about 10-15 times, with one disconnect lasting for 5 minutes before I could get back in. Asside from that the chat was very informative.

The team of experts were able to aswer many questions, and a transcript of the chat will be posted in a few days for everyone to peruse. I was able to get an answer to a couple of my questions, hopefully the experts will have time to answer the remainder in a week or so!

So the news for Longhorn Networking? The TCP stack has been rebuilt from the ground up, supporting both IPv4 and IPv6 in a single binary, as opposed to the dual binary that is currently being used to support IPv6. All on Longhorns applications will support IPv6 out of the box, and when given the choice of IPv4 and IPv6, will choose IPv6 by default if I understand correctly. There is a lot of work being done to secure wireless networks (much progress with Ad-Hoc networks), as well as the introduction of something I haven't heard of before: NAP. Essentially in a network, each computer will be required to prove that it is healthy (virus free) before gaining access to network resources. It's an interesting premise, and it will be interesting to see how it will play out. I don't really see this being implemented in a home environment... although there wouldn't be anything stopping you. Also, work is being made with intermittent or lossy wireless connections, although I did not read of many details in the chat, likely due to my frequent disconnections.

What I was particularly interested in is the Longhorn Network Awareness API (LNA2). This API allows you to get information about the current network settings, they type of network that is currently being used, as well as notices when these settings, or the status of the network changes. This will allow applications to be notified when network status changes, so that an application can seamlessly transition to an online/offline state based on the change. There are many benefits to this, such as being able to continue working on a document while offline. When you attempt to save the document to the network store, and the client application is offline, it will save the file locally until the application is notified that a network connection with the required resources is available, at which time it will save the file to the network store automatically.

There is an introduction to NLA available in Introducing "Longhorn" for Developers on MSDN. I purchased Introducing Microsoft WinFX from Microsoft Press which has the identical content found on MSDN, as well as an additional chapter on WinFS. Chapter 6: Creating Mobility-Aware Longhorn Applications gives a few examples of the benefits of NLA2, and I would suggest reading it if you are interested.

Monday, March 21, 2005

Indigo Day Keynote

Unfortunately I wasn't able to watch all of the VS Live! Indigo Day videos as I was busy working on a syntax analyzer/parser for a school assignment. I was however, able to watch the Keynote which was quite interesting on its own. It started off speaking about the trend of service oriented architecture (SOA) that applications are heading towards and how Indigo facilitates this trend.

There were two things that I really found interesting in this Keynote. The first was a quick comparison showing how much easier it is to add security, reliable messaging and transactions to a hello world application. Here is the breakdown:
Using Visual Studio .NET 2003 - 56,296 lines of code
Using Visual Studio .NET 2003 and WSE - 27,321 lines of code
Using Visual Studio .NET 2005 and Indigo - 3 lines of code

This is quite impressive. In order to add features to your application such as reliable messaging, transactions, and security all you must do is decorate your code and use a configuration file.

This brings me to the second interesting item in the Keynote, and I really think that everyone should take a look at this to trully understand how easy it is to add security and other features to your service oriented applications. Ari Bixhorn gives a great demo of an application used by doctors in a hospital environment to monitor patient vital signs. Load up the keynote video and seek forward until the 25 minute point. The demo is about 15 minutes long and demonstrates the simplicity of decorating code much better than I ever could. I'll try and watch the remainder of the video's tomorrow and let you know what I find out.

Friday, March 18, 2005

Visual Studio Live! Indigo Day

I just stumbled across this video content from VS Live! Indigo Day. It's about a week old now, but the videos would certainly be worth watching. I'm unable to do so right now, but I'll watch them this weekend and point out the highlights for those who don't have time to watch them.

Still no Mach CTP Bits yet, although a Microsoft representative on the newsgroups stated that they are working to make it public soon. Hopefully that means that it will be out by the end of the week, but we'll have to wait and see.

Thursday, March 17, 2005

Indigo Crash Course

I've been reading up on the WinFX SDK Documentation while waiting for the general release of the March CTP Bits and came across this article on Providing and Consuming an Indigo Service. The article shows how easy it is to create a simple service, and then have it consumed by a client application. The power and flexibility behind Indigo alone will enable anyone to create service oriented applications with relative ease. With the addition of a couple of tags to your code, any class and its select methods can be exposed as a Web Service.

This is the only Indigo example I have taken a look at, and I've accumulated a minimal amount of network programming, however it pretty much removes all of the complexity that previously came with designing such applications. After briefly looking around at a few articles, it seems that in order to enable SOAP with Reliable Messaging or to utilize and alternative transport, you must simply add a simple binding property to a configuration file.

On a side note, I have enabled comments to all users as opposed to requiring people to register with Blogger in order to do so. I welcome any feedback or suggestions that anyone might have. Anything that you would like to see once the March CTP Bits are released to the general public?

WinFX SDK Info

The March CTP Bits (WinFX SDK) have not been released to the general public yet, however I have found some information and resources that will hopefully give you something to do until they are. Apparently the WinFX comes in at a hefty 444.67MB according to Michael Swanson's Blog. He also informs us that the WinFX SDK work properly with the Visual Studio 2005 CTP. If you take a look at the release notes, it seems that you would be better off using the Visual Studio 2005 Professional CTP as it seems to have fewer issues.

If you were thinking of installing the Visual Studio 2005 CTP right now as you're waiting for the WinFX SDK to be released, you should probably hold off. The previous release had a very specific installation order. I'd recommend holding off just to be safe!

As a future note, I've read on the Microsoft newsgroups that this release of the WinFX SDK will not work with Beta 1 of Visual Studio 2005 (Whidbey), nor will it work with the future release of Whidbey Beta 2. There will be a separate release of the WinFX SDK CTP later in the spring that will be compatible with Whidbey Beta 2.

Update: I should have assumed this, but the Visual Studio 2005 Professional CTP is only available to MSDN subscribers. I discovered this while attempting to find a link to the manual installation package. Due to this discovery, I will be using the CTP version of Visual C# Express. Visual Basic Express will apparently also work with the March WinFX SDK.

Wednesday, March 16, 2005

TechNet Chat - Longhorn Networking Revealed

I ran across the listing for this Microsoft chat a week or so ago and had completely forgotten about it until Cider reminded me over on the Channel 9 Forums. The chat will be hosted by Jawad Khaki and will be covering the evolution of networking as Microsoft moves towards Longhorn. If you're interested, head over to the TechNet Upcoming Chats page to get more information. It's currently slated for March 22nd at 2:30PM.

March CTP Bits - MSDN Subscribers

I just read on the Microsoft WinFX newsgroups that the March CTP Bits have been released to MSDN Subscribers, but it may take some time to filter down to various subscribers. Apparently the CTP Bits will be available for the general public within a few days, which is much sooner that Microsoft representatives had led everyone to believe. I'll post an update here as soon as I get word that the CTP Bits are available for the general public.

In the mean time, take a look at the Microsoft PressPass article.

Tuesday, March 15, 2005

Start

This is the beginning of what I hope will be an entertaining and informative journey to Longhorn, and it starts today with the March Community Technology Preview (CTP) Bits for WinFX on the way. The new CTP Bits will include the updated version of Avalon, Microsoft presentation subsystem, and the introduction of Indigo, which is the communication subsystem.

I intend to blog about my experimenting with the March CTP Bits as often as I can. That being said, things may be a little slow going at first with final exams approaching in April. The March CTP Bits are apparently only to be expected in a couple of weeks, at the end of March.

Feel free to leave any feedback or suggestions on what you find here, as well as what you would like to see, and I will try my best to do what I can. To start things off, here are some good places to start you off with information, and where to go if you need help.

WinFX SDK Community Technology Preview Edition Documentation
Microsoft WinFX Developer Newsgroups
Longhorn Developer Center - Will most likely be updated after the March CTP Bits are dropped.