Watch out Microsoft Hosting Partners

During today’s PDC keynote speech, it was announced that Microsoft intends to make all of its server products available in an online hosted mode from Microsoft Online Services.

If you are a hosting partner you probably already new that SharePoint, Exchange & CRM are going, or have already gone this way.  You may have been clinging on to the fact that custom code and other in-depth extensibility features were not available from Microsoft Online Services, thus providing a niche of service for partners.  This too may be snatched away as custom cost was also mentioned as a feature that would be available from Microsoft in the future.

Oh well…  time for you to get into bio-engineering, etc.

Windows Live Mesh Gives Legs or Wheels to Microsoft Sync and Auto PC

Microsoft Sync has appeared in some Ford vehicles and is apparently coming to at least two other manufacturers soon.

It amazes me how utterly appalling the uptake is of Windows in the car industry.

Microsoft Sync with a Microsoft’s Live Mesh client opens up the ability to take contacts, music, continuous user experiences (such as phone calls, paused music and podcast bookmarks), to your car.

Combine that with a ‘Windows Live PC’ running on an ‘Xbox portable’ or Zune in the mesh as I’ve mentioned in this series of posts on Live Mesh, and you can really see the magic of software plus services coming together for a seamless user experience.

A ‘Windows Live PC’ gives the UMPC, ‘Microsoft PC’ or Xbox Portable a Future

In this series of posts I’ve talked about my concept of the ‘Windows Live PC’ as the trojan strategy in Microsoft’s Live Mesh.

I’ve talked about how such a virtual PC could be available on an Xbox 360, a Mac or other platforms.

One of problems with the Microsoft UMPC initiate has been that cost of PC capabilities in a small form-factor, and the need to up the component cost to provide Vista in that form factor.  This has made many UMPCs (so far built not by Microsoft, but by IHVs) more expensive than many notebook computers and with less power at the same price.

With my concept of the ‘Windows Live PC’ and minimal SSD storage, the UMPC could stop growing in power (and energy consumption, resulting in longer battery life) and just turn into a ‘Windows Live PC’ client.

In previous posts I suggested that such a client doesn’t have to be very powerful.  I also said that the xbox 360 is good enough.  In fact the original xbox is likely good enough too in many ways – even perhaps a PS2 or PS3!!

How about a PC the size of a Mac Mini or the size of a Zune?

What if Microsoft sold its own UMPC with SSD storage, the form-factor of something like a Samsung Q1 Ultra but not much processing power – how about an Xbox portable?

An Xbox portable would be the ultimate convergent future of Live Mesh, Xbox, Xbox Live, ‘Windows Live PC’, Xbox portable, WPF, Remote App, Windows Server 2008, Windows licensing, ISV solution channel, etc. 

Robbie Bach, J Allard, Ray Ozzie, Bob Muglia, Steve Ballmer & Bill Gates – take a look at this series of posts on Live Mesh – I know what you’re up to 🙂 and if you’re not then you should be – it’s a vision I want to be involved in one way or another from the outside or the inside…

Add a ‘Windows Live PC for Mac’ to your Live Mesh with Silverlight

In this series of posts I’ve introduced the idea of a virtual ‘Windows Live PC‘.  I’ve talked about how your Xbox could be the ubiquitous PC in your household without any software application installations, thanks to a potential expansion of the currently disclosed Web Desktop (storage service) in Microsoft Live Mesh, with the addition of RemoteApp from Windows Server 2008.

Silverlight 2.0+ is the SUPER TROJAN HORSE onto the Mac, Linux and I believe there could be more platforms to come (see next post…)

Some developers may already be wondering why they should bother with HTML, AJAX, DOMs, DHTML, Javascript, etc. now that they can provide a hugely rich WPF Windows application in a browser using their existing .NET skills (plus WPF), and when that browser can be IE and Firebox on Windows, Safari on Mac, and whatever it is on Linux, without any of the nightmare that cross-browser standards-compatibility creates.

In previous posts I said that my notional ‘Windows Live PC’ will run (via RemoteApp) on anything that can handle the necessary technology stack with the xbox 360 being more than enough.  It seems to me that Silverlight 2.0 (or perhaps a later interation) could easily talk the Remote Desktop protocol.  Once that happens Microsoft can be selling you a ‘Windows Live PC’ subscription on your Mac and all those Windows-targeting ISVs can now license their product onto a Mac or Linux!!!

Note that there is already a Remote Desktop Client for Mac, but with the potential for Microsoft to offer a virtual ‘Windows Live PC’ running full screen, the Mac could fade into just a remoteapp client to a ‘Windows Live PC’ albeit a great new channel for the Windows and ISV software licensing – now that’s what I call leveraging!

Add a ‘Windows Live PC for Xbox’ to Your Live Mesh

In this series I’ve been talking about the possible strategy that Microsoft could be unleashing with Live Mesh and associated Microsoft technologies.  I’ve framed it as a trojan strategy because it is not the offering being talked about, but just like Silverlight (the trojan RIA platform onto other platforms), Live Mesh could quickly spring into something dramatic – the Microsoft ‘Live PC’ concept that I predict in the last post.

Live Mesh provides a Web-based Live Desktop which is currently just a 5GB file store with a Windows-Explorer styled web interface.  Add Windows Server 2008 Server RemoteApp into the mix, or should I say mesh, and you get the ability to run Windows anywhere you can run Remote Desktop.

Remote Desktop uses the Remote Desktop Protocol.  So for a client device to provide a virtual Windows experience it more or less just needs to support a graphic blitting display, keyboard & mouse (or similar), TCP/IP and some cryptography for security.

So how basic could such a device be?  Well that doesn’t matter because that xbox 360 is more than powerful enough and guess who sells that.  That’s right, you may already have a device in one or more rooms in your house that could be the PC of your future.  Remember that the RD protocol isn’t great for remoting intense A/V or graphics.  That’s OK, because you would play games locally using the full local power of the xbox, and Microsoft has already mastered the Xbox Live multi-player service.

So you could have a Microsoft ‘Live PC’ which you access from any Xbox without any software installation.  Xbox already does this kind of trick and even with HD video when it acts as an extender for a local Windows Media Center (running on XP Media Center or various Vista versions).

WPF makes it easier.  The RD protocol does things to optimise the transfer of the virtual desktop image on the remote physical machine.  When Xbox 360 is used as an extender it talks to the Media Center service on a local PC with a higher-than-pixel-level protocol to optimise the data.  WPF provides a high level of retained descriptive UI too.  I can see the RD protocol optimised (if it hasn’t been already) for remotely WPF applications.  Microsoft would then encourage ISV to create more WPF-based apps that would be inherently optimised for a ‘Live PC’ experience.

Let’s not forget that Windows Home Server that was quietly (relatively) released last year.  That server could start providing a LAN-based RemoteApp service for those things that can’t be run well over an Internet connection.  A virtual ‘Home Office 201x Service’ perhaps?

The Microsoft ‘Windows Live PC’ is coming to The Mesh – IMHO

This is the 2nd in a series of posts about Microsoft Live Mesh – check out the Live Mesh tag for the others.

I’ve said that I think Microsoft Live Mesh is approximately FolderShare + FeedSync + Remote Desktop + Live Core Services.

Mesh provides a Web-based Live Desktop which currently looks like FolderShare/SkyDrive with 5GB on cloud-based storage with a new web interface that looks like Explorer.  Your can remote desktop to Vista/XP devices in your mesh, but the web-based desktop does not currently…  provide an application/process execution environment that you could remote desktop to…  see where this could be going?

For those not familiar with remote desktop, it’s the ability to have an XP/Vista or Windows Server computer running somewhere and have your login experience appear where you are – that means the keyboard, monitor, mouse & speakers  at the computer you are using (and even local hard drives and printers) can connect to your remote physical desktop (or login on a windows server) and it feels like you are physically sitting in front of your remote physical machine.  To do this, your local machine needs to be able to run the remote desktop client software.  You can run the client full screen or in a window.  Many people work form home by using a home PC to connect to their work PC.  There are performance limitations to this, but it works just fine for information workers and develops in many cases.  Intense A/V experience don’t remote so well.

So you can remote your physical XP/Vista desktop and use it on the machine you have.  This is a user using their computer remotely.  The experience can also be shared so that the regular user can be at the physical PC and a remote user can share the experience – this is Remote Assistance and allows IT support staff to help users through procedures. 

Windows Server 2003 (and a little earlier) provides Terminal Services – whereby multiple virtual (no physical keyboard, video & mouse) desktop sessions can be present on a server with each desktop session connected to by a user on a PC.

Windows Server 2008 introduced RemoteApp: “Terminal Services (TS) RemoteApp and TS Web Access allow programs that are accessed remotely to be opened with just one click and appear as if they are running seamlessly on the end user’s local computer.”  So rather than remoting the whole desktop, one or more single application windows appear on the local machine which are really running on a server somewhere… 

Back to my ‘Windows Live PC’ concept.  Live Mesh provides this Web-based Live Desktop which as I said currently is a folder storage services but it has a Windows Explorer-like UI.  What would happen if you could actually double-click on a file and the appropriate application would launch, and without having to install anything!  Yep, put Windows Server 2008 behind the Live Mesh web desktop and you have Live PC – a PC anywhere. 

Such a ‘Windows Live PC’ would open up a huge subscription model for Windows and applications.  Microsoft could provide a service-provider infrastructure so that instead of selling you software by download or on DVD, you could just license the service through Microsoft (or perhaps independent hosting).  Instant deployment.  This would make Windows Marketplace something worth looking through.

Microsoft may have had a struggle moving enterprise licensing to a subscription model with the horribly executed (at least initially) Software Assurance scheme, but the ‘Windows Live PC’ concept I’ve covered here could be the beginning of real subscription licensing of Windows… everywhere…  Ray Ozzie, I know what you’re up to – I may even be up for sharing the vision if you have a suitable offer 🙂

While such a named product has not been announced to my knowledge, in subsequent posts in this series I’ll examine how Microsoft could make ‘Live PC’ available on many devices and operating systems!

Mix 08 Keynote With Scott Guthrie – Part 2

Silveright

Currently 1.5+ millions download installations of Silverlight 1.0 per day

Silverlight 2 Beta 1 available for download

Silverlight 2 stuff

1 Improving video experience

Adaptive streaming (to computer capabilities and bandwidth) – using appropriate bitrate – at initial video start and continuously (without buffering).

Plugable adaptive streaming algorithm.

2 TCO

HD Video is expensive – streaming and progressive download.

Windows Media Services 2008 released with Windows Server 2008.

Bit-rate throttling (with IIS 7.0/W2K8 for progressive download) – initial burst and then controlled stay-ahead (by x seconds) of playback throttling

Web Playlist.

3 Monetisation

VS 2008 project for silverlight advertising template – roll-down banner to playing video with tracking.

Demo of video.show for hosting video.

AdManager for tracking stats including interactions.

Demo of ad+video with skip control on web play list.

Overlay ads using Expression Media Encoder Two using XAML – add markers for ads (‘burned in’ or dynamic).

SDK for integration with Doubleclick Instream advertising.  Demo on NBA site with handling of user events like pause, mute, etc.

Blinded by Silverlight – the real technology/strategy reveal at Mix07

The about page on the mix website stated:

Exciting new Web experiences with the still-secret “Technology X”

WPF/E and its new branding of Silverlight were announced before the conference, so this secret had to be something else. Silverlight 1.0 is what we already knew. Let’s not underestimate it though – it brings all the XAML/WPF whizzy stuff that is the Flash competitor in 1.0 – it allows a lot of Flash ActionScript type developers and other javascript fans to do cool stuff and consider Microsoft.

The technology in Silverlight 1.1 was in fact the secret (as Microsoft has confirmed) – a full .NET engine (with a subset of the 3.5 .NET framework) embedded allowing all the .NET languages (and dev tools) to run cross-platform in a browser. The dynamic language runtime part also enables 4 scriptable languages to work in there along with C# and VB.NET.

But this, I believe, is just the start of a potentially brilliant strategy for Microsoft, as I’ll now explain.

Bringing .NET (and scriptable .NET) to multiple browsers and multiple operating systems is a huge deal. It really does mean that all the investments that people have made in .NET, can be leveraged in many many ways. There’s a reason that 1.1 is 4.24MB compared to the 1.34MB for 1.0. That’s an army many times bigger than ActionScripters with Expression tools providing a way to use existing Designer talents with WPF/Silverlight. Finding ActionScripters for projects is VERY hard – you can more easily find people that can do VB.NET, C#, JavaScript, not to mention being able to use people that can do IronPython or IronRuby – that’s 6 times more languages that can be used!

Silverlight 1.1 is really the hosting of this stuff in a browser with the VC1/media decoding. So if Silverlight is thought of as a subset of .NET 3.5 in a browser that brings Microsoft technology and tools to many browser and platforms (that’s going from windows apps into cross-everything in a browser) – a bridge to other platforms if you will, what happens if you reverse that once you’ve bridged the platform/browser gap, i.e. just have a plain executable application host on a Mac, Linux, etc, even without re-inflating the framework? Now you can potentially develop on Windows in .NET to create full (rich and connected enough) applications on the Mac and Linux (once this runtime is ported to that). You can even do the development on a Mac in a text editor (including in a browser as demo’d).

Microsoft is all about selling copies of Windows (and Office). If you can’t keep Mac and Linux away, then the next best thing is to bring Windows onto Mac and Linux. However, you can’t sell a Windows licenses that way, but you can get people to use technology that easily hooks up to Windows Live or MSN services that you do get revenue from!!!

So the real technology/strategy that I see Microsoft following:

  • Phase 1 – win over Adobe/Flash developers with SilverLight 1.0, bring Microsoft technology to the Mac and make Microsoft look cool. Provide Expression tools to bring the designers across since often there’s a lot of graphics with a small amount of scripting, vs. the other way around.
  • Phase 2 – bridge the divide by bringing .NET development onto Mac and Linux platforms with an army of existing developers that smothers ActionScripters, enabling users to become Windows Live services users – you did notice that Microsoft is ‘opening up’ their Live service APIs right?
  • Phase 2.5 – All those people that like non-Microsoft languages that were stuck on the server (and often, not a Microsoft server) – get them to love Microsoft now that their favourite dynamic scriptable language can now be used to build _client_ applications on multiple platforms…
  • Phase 3 – once across the bridge (cross-browser leads to true cross-platform), expand the hosting to enable rich .NET installed application development on other platforms making Microsoft technology and Windows Live services an indispensible part of the Mac and Linux experience too!

It’s bold, trojan-esque and both developers and users will lap it up.

If this isn’t the strategy, then it should be!

Silverlight WAS the whole keynote practically, and there’s been coverage of very little else (except about DLR) out of Mix. Nothing about Xbox-Windows links for Xbox Live from Robbie Bach (just a snooze-athon discussion and some iffy demos). Nothing about Live ID CardSpace cards or opening up Live ID to web site publishers like Passport.

This technology is the sleeper slow-release hit of Mix07. They didn’t even officially say this was the secret Technology X listed on the about page.

If what I’ve said is Ray Ozzie’s undeclared strategy, then he is indeed doing a fantastic job (despite his apparent lack of blogging and public comments). If it wasn’t his strategy then either he should make it the strategy or let it just fall into place as I believe it will – either way he’ll look like a genius…

We are living in a Microsoft world again…

Be sure to check out my other mix07 coverage.

Silverlight – what IS cool about it?

Forget the misleading flashy 3D-portaying video at microsoft.com/silverlight for a second; ignore the fact that this puppy has not yet been released yet; pretend that lack of A/V live capture is not an important feature; overlook the 4MB download… what balances this out – what makes it really cool?

Windows Presentation Foundation is the very designer-friendly set of classes and runtime (developed against using XAML directly or through Expression and Visual Studio Orcas) that enables rich UI experiences. It is available for Windows XP, Windows Server 2003 and is included with Windows Vista, as part of .NET 3.0. At the risk of breaking the benefits of consitent UI investments, it can be used to build extremely compelling applications.

A subset of WPF, first known as WPF/e, makes up the rendering engine of Silverlight. The Silverlight runtime includes not only this subset of the runtime, but also the runtime to play back Windows Media content (on-demand or live). This runtime is ~1MB, so far.

XAML can define animations and behaviours that need no coding. In the 1.0 release, you can write javascript against the runtime-instantiated object model to provide a rich interactive experience.

The Silverlight runtime works in IE & Firebox on Windows, but also in Safari on the Mac! In a later release, it will also work in Windows Mobile and possibly Symbian devices.

At this point you have Flash (more or less) but with the whole weight of the Microsoft development eco-system behind you. Most notably, Microsoft has released a set of Graphic Designer tools under the Expression brand that allow you to design vector/bitmap graphics, design the interactive experience, design the web site and manage and prepare the audio/video media. Expression Web and Blend (web and UI tools) are included in various MSDN subscriptions. It’s not clear if Microsoft Partner will get it for free. The full Expression Studio (with all 4 tools) is priced at US$599 at retail which isn’t bad. The Media Encoder is a tag-along-later free download for preparing audio and video.

The next version of Visual Studio (codenamed “Orcas”) will include native support for Silverlight projects.

Microsoft is providing a free (up to 4GB) hosting service in Silverlight Streaming to people can get their content out there using this new platform. This is a smart move for sure.

That’s a lot of WOW – perhaps more flashy of a UI than Vista presents even.

If that’s not enough, then Microsoft has a 1.1 version of Silverlight (which probably should be 2.0) that will allow .NET programming against the runtime, instead of JavaScript, along with full project support in Visual Studio Orcas. This is a subset of the .NET 3.0 framework – a very small subset focusing on the CLR core, networking, UI. This brings rich smart application right into your browser that can be authored by ALL .NET developers with most of their existing skills along side graphic designers using the complimentary set of tools in the Expression range. That’s a lot of industry weight!

(UPDATE: As Yuvi pointed out, it will be a subset of .NET 3.5 by then, rather than .NET 3.0)

A .NET developer can create rich experience on the Web without writing any HTML! He/she can practically be a Mac developer by running a Windows-like smart/rich-client application inside a browser on a Mac!

Microsoft also has an open-source initiative for a Dynamic Language Runtime to allow other languages like Ruby and Python to be used instead of the mainstay C# and VB.NET.

They are also including LINQ in the .NET subset to allow some cool data query syntax in the coding.

Being able to access Web Services from Silverlight combines the best of rich UI with powerful backend services.

With the addition of the full Silverlight product (1.1) you can now do .NET development on the windows desktop, on the windows server, on windows and other mobile devices (compact framework and Silverlight .net runtime), on the mac (and other platforms that may be supported later).

It’s not revolutionary, the tools are lagging behind the runtime, the runtimes are still in beta… and the “web 2.0” and consumer web space is very busy (flickr, youtube, etc.), so it will be interesting to see if clear killer apps can emerge.

See the details a the regular Silverlight site, the community site and the Expression site.

SQL Server 2005 Integration Services – Not bad

I have colleagues that have been using this for 8 months or so, and I just took the dive into using it properly myself yesterday.

SQL Server 2005 Integration Services is part of the Business Intelligence set of SQL tools that replaced DTS packages from SQL Server 2000. It’s heart is in the right place, but it’s definately a V1 product.

I should have probably looked at the Adventure Works samples because it wasn’t easy to get into. However, once you figure out what all the bundled task and data flow tools do, you are ready to go…

Well almost:

  • the designer interface is slow (even on an fast machine)
  • error messages are all horribly truncated with the hover tool tips not being too helpful
  • the debugging is pretty bad in terms of being able to really see what’s going on
  • it’s possible to get items corrupted in which case you need to delete, reinsert and reconfigure

However, it is doing the job I want it to do – create a data warehouse from database, webservice and CSV sources using excel reference data – put it’s a little painful at times. Getting the security right to run one of these packages in SQL is also a fun configuration job. Of course, I can create custom tasks and data flow items if I want to which is a plus.

I admit to not yet having installed SQL Server 2005 SP2 and Visual Studio 2005 SP1, so I’ll give those a go.

I’m about to shift to Vista and I know SP2 is needed (plus a hot fix) to make scripted tasks work in the new OS.

I’m wondering whether they will replace the control takes with Windows Workflow Foundation at some point. I can see how needs could have arisen simultaneously but that either the fit or the timing wasn’t quite right…