Posts
22
Comments
519
Trackbacks
9
Thursday, December 07, 2006
Installing Subtext as its own Web Site in IIS7 on Vista

After writing my lengthy installation post on how to get Subtext up and running on IIS7 using a Virtual Directory, I want to follow up now with some quick instructions on how to configure a new web site in IIS7 for use with Subtext.

It seems like Microsoft heard the pleas of all web application developers who were asking for the same thing: To not cripple IIS for the desktop versions of the operating system. While in previous versions the ability to configure more than one website on IIS was limited to the server versions of the respective operating systems (Windows 2000 Server and Windows Server 2003), in Windows Vista it is finally possible to configure more than one website on IIS7 without requiring Windows Longhorn Server. That makes it really easy to switch from a Virtual Directory to a website following these steps:

  1. Open IIS Manager from Administrative Tools
  2. Right-click Web Sites, pick Add Web Site...
  3. Pick a web site name, make sure to select Classic .NET AppPool
  4. Point the physical path to your Subtext web root directory (same as previously used in the Virtual Directory)
  5. Enter the Host Header value that matches your chosen sub-domain name, such as blog.yourdomain.com
  6. Done!

Yes, it really is that easy. Don't forget to go into your Subtext Host Admin configuration and change the Host Domain value of your blog to the sub-domain you picked, otherwise certain links throughout the blog won't point to the right locations (such as the RSS and ATOM links).

Note that the bigger part of configuring your blog as its own web site might be the configuration of your sub-domain. Depending on how and where you are hosting your domain different steps might be required to make sure the sub-domain name is forwarded to the server correctly. However, since this is a very common task it should be described in your host provider's online help and manuals.

posted @ Thursday, December 07, 2006 5:17 PM | Feedback (25)
Technology Showcase: WPF/E

Introduction

Since I am into cutting edge technology I would like to showcase something that has caught my attention periodically (meaning whenever I have time to write about it without actually setting a fixed interval) to give everyone a snapshot of cool/new emerging technologies which might become the standards of tomorrow and which might be worth considering for future projects.

For this showcase I have chosen Microsoft WPF/E, which has garnered a lot of attention lately in blogs [1], [2] and press [3] and which marks an important milestone with the recent release of the December CTP [4].

WPF What?

One of the pillars of the new .NET Framework 3.0 is the Windows Presentation Foundation (WPF) [5], [6], which is the next-generation presentation subsystem for Windows:

It provides a consistent programming model for building applications and provides a clear separation between the UI and the business logic. A WPF application can be deployed on the desktop or hosted in a web browser. It also enables richer control, design, and development of the visual aspects of Windows programs. It aims to unify a host of application services: user interface, 2D and 3D drawing, fixed and adaptive documents, vector graphics, raster graphics, animation, data binding, audio and video.

WPF/E is a subset of WPF, and stands for Windows Presentation Foundation/Everywhere. Note that Microsoft treats WPF/E as a codename and the final product name might change. WPF/E is basically a mobile version of WPF, based on XAML and JavaScript, with a limited set of functionality. This enhanced functionality is provided through a browser plugin.

There are endless applications for such a graphics engine, and technology like this opens the door to feature-rich server-stored/-provided applications that blend the advantages of desktop applications with web-enabled applications seamlessly together.

Beyond Microsoft

Over the years there have been many extensions both in forms of browser plugins as well as new web standards, and few of them managed to scratch the surface of the set of established web elements (does anyone still use VRML or SVG?). Before going over to some eye candy and WPF/E samples here some arguments why I think WPF/E has a shot:

  1. Cross-platform compatibility. Maybe multi-platform would be better than cross-platform, because cross-platform is usually used when talking about something that works on all platforms. However, right from the start WPF/E supports an impressive and for Microsoft unusual range of products, which clearly show its purpose as a "beyond-Microsoft" technology: There are plugins for Windows and Mac OS (both x86 and PowerPC), and the plugin works in IE 6/7 as well as Firefox 1.5/2.0 and Safari. And by works I mean officially supported by Microsoft!
  2. Instead of being yet another new technology WPF/E integrates with existing technologies, most notably underlining the compatibility with ASP.NET AJAX. Microsoft clearly wants WPF/E to be a design platform that enables you to bring different technologies and a plethora of multimedia elements together instead of replacing any of the existing technologies.
  3. It's small! Remember how the introduction of the .NET 1.0 runtime came with a 20+ MB download that required a reboot and administrative privileges? The WPF/E plugin is a tiny 1 MB download which executes in the blink of an eye, and all that is required is a refresh of the current page in your browser (if it contains WPF/E elements), you don't even need to restart the browser!
  4. It's here now. While WPF/E has been talked about for a couple of months now, Microsoft has chosen to introduce the first Customer Technology Preview (CTP) late in the development cycle, so that users and developers don't have to wait long until the targeted final release date in Q1 2007. They probably learned from the problems that can arise from making beta technology available too early, as seen with the Windows Workflow Foundation betas which had breaking changes in almost every new beta release that caused migration headaches for early adopters.

Let me see it!

Alright, here some screenshots of the available demos (Edit: Unfortunately there were problems with uploading pictures to the blog, so I had to replace my own shots with public ones. I'll post an update as soon as I get it fixed). Install the client from [4] and try them out yourself, there are more available than shown here!

Page Turn

This is a simple picture slideshow that uses a book-page turn effect when going to the next picture. You can even drag the corner of the image and turn over to the next picture yourself.

Sprawl Game

A simple game which shows off some of the graphic abilities of WPF/E. The size of the game scales with the browser size, and the (simple) animation is fluid. Obviously this looks just like any Flash-game, however one of the main differences is that the whole graphics and animations come from one XAML file that is publicly available and loaded by the WPF/E engine. Also, WPF/E is started as an instance of a JavaScript object, not as an embedded ActiveX object.

What's next?

In a way WPF/E is only the tip of the iceberg. Microsoft has developed a whole new product line under the Expression Studio label targeting user experience and interface design as well web and desktop application design. Expression Studio consists of the following four elements: Expression Web (Web design tool which has been released already as the effective successor of Microsoft FrontPage), Expression Blend (Smart-client design tool, in Beta 1 right now), Expression Design (Illustration and graphic design tool, CTP available), Expression Media (asset management tool, not available yet). All of them will be available as final products at the beginning of next year. Expression Web will allow the creation of WPF/E-enabled web sites.

There will be Visual Studio development extensions and tools to allow direct and tight integration of WPF/E with the common development tools.

Finally, while it hasn't been talked about much yet, the E in WPF/E does stand for Everywhere, so we can expect to see applications pop up that will enhance the user experience on mobile devices as well, most likely Windows Mobile 5 (and the upcoming 6.0 version) PocketPC and SmartPhone devices.

References

[1] ScottGu's Blog: Announcing the release of the first "WPF/E" CTP

[2] Somasegar's WebLog: A key milestone on the "user experience" journey

[3] Microsoft introduces Expression Studio, enhances family of professional design tools

[4] MSDN "WPF/E" (codename) Dev Center

[5] Wikipedia: Windows Presentation Foundation

[6] Netfx3: Windows Presentation Foundation

[7] Microsoft Expression Studio

posted @ Thursday, December 07, 2006 5:13 PM | Feedback (2)
The Purpose of this Blog
Here we go, yet another blog to add to the blogosphere! I say add because I hope and believe that I can add something to the community with my posts and thoughts. What community you ask? Well, being a software developer in Silicon Valley most of my posts will be about development problems that I have proudly solved, or other tidbits that I found interesting enough to write about. But I will also mix in more personal posts about riding my motorcycle or my travels throughout the world. We will see how it goes!

In the title of this post I mentioned that this blog actually has a purpose, and in fact it even has a dual purpose:
  1. For now this blog will be the focal point of my personal development efforts. I have had a lot of code snippets and little tools on my hard drive for quite some time now and was looking for a way to publish them with little effort. Eventually there will be a separate sub-domain for code I want to share, but I want to start small, otherwise it will never get done. Also, this blog is running on my own server, because I want to experiment with different things and development tools, all of which I will probably write about in the future. This also means that sometimes something might not be working, but I hope there will only be minor glitches (otherwise let me know please)!
  2. Instead of rehashing content I see elsewhere on the web, I would like to share things that I wasn't able to find anywhere. Thanks to the power of the available search engines even a blog with only a few entries and little traffic can be found by someone looking for the solution for a specific problem, and I hope I will be able to provide some of that help in the future (just like others have done for me).
So much for my first post, the next one will have actual content!
posted @ Thursday, December 07, 2006 5:11 PM | Feedback (3)
News
Welcome! This is the blog of a .NET software development enthusiast living in Silicon Valey, California, USA. The opinions posted here are my own and in no way represent the opinions of my employer or anybody else.