This years PDC was primarily focused on the following:
- Windows 2005 / 2006 (aka Longhorn)
- SQL Server 2004 (aka Yukon)
- Visual Studio 2004 (aka Whidbey)
There was off course a whole load of other things going on at the PDC namely (previews on BizTalk Jupiter and ASP.NET v2.0 - more about this further below), but it was really hard not to get drawn into the thrust of the conference which was the next generation of Windows Server (Longhorn), reckoned by Microsoft, to be their biggest release since Windows 95, and its obvious to see why.
WinFS is pretty cool. A new file system that relies on SQL Server, and sits on top of NTFS that provides an application layer to the file system. Through the definition of schemas, and schema relationships, (Yes were talking MetaData!) WinFS is able to build dynamic views on all object types. Additionally other core appilcations like Contacts become a primary WinFS schema type, with a UI that is bound against it. For example. this means that application vendors can take advantage of this rather than building its own silo based contact list. As Jim Allchin said, "Data is trapped in the application.". WinFS will allow us to get to that data more easily, to build more meaningful relationships across these types, and allow us to search and give us contextual access.
Finally, the task centric view of the desktop will eventually appear, and we will be able to say good ridance to the file based one that we have endured for the 20 - 30 years. And not a moment too soon, given the sheer amount of data we are capturing in our hard disks every day. Its good to see that Microsoft are finally able to execute on the vision of an object oriented desktop, where previous attempts like Cairo, Pink and Taligent back in the very early 90's failed.
As an aside, its reckoned, that within the next decade or so disk storage will become so cheap that we will be able to record every second of our lives from the day we are born till we die... Imagine being able to fast-forward or rewind through ones complete recored life, i kid you not. it will will happen. Anyway, i don't think that WinFS needs to contend with such challenges (just yet).
As an aside, it wil be interesting to see how WinFS/LongHorn compares to the work sponsored by Mitch Kapoors and the Chandler product. Whilst trying to solve simliar problems of Information management on the desktop. Chandler approach takes an e-mail centric way of solving this.
built in rss reader in longhorn - oh yes.
Avalon - a Unified presentation model for web and windows, yes thats right, both!; Microsoft has taken the next evolutionary steps from the .NET framework, which had already unifiied Windows apps (System.Windows.Forms via Win32), Web apps (System.Web via IIS), Web Services (System.Web.Services via WSE) and replaced this all with a new UI framework called Avalon which will will be acessed through the new Windows API (WinFX).
This means for the first time ever, a developer can focus on the functionality of the application, rather than worry about what programming model or skills are required to deploy it.
Now lets be clear about this, the Avalon UI, will be accessilble through the .NET framework(don't know what release it will be called) or through a new XML declarative programming language called XAML. XAML is Microsofts attempt to offer a first class scripting language that is superior to DHTML, that when compiled (or interpreted) will run as managed IL code in the .NET framework. There are intermediary formats known as BAML and CAML (yes!) that allows binary and IL representations of the XAML code for faster over the wire delivery.
** Now let me just re-iterate, Microsoft has produced a new XML based declarative language which which maps 1-to-1 to the new WinFX UI/Avalon object namesapce for building applications for the web and windows. This is a fundamental change to how people will write UI applications in the future!! **
This is earliest evidence of what Microsoft has been saying for the last few years that to get the full richness of developing applications you need a much richer language than HTML. Writing managed code or XAML to the Avalon UI, means that you are writing directly to DirectX and not GDI, so you will get some pretty fancy looking vecor based user interface on the desktop (much like Macromedia Flash). This is probably earliest evidence that HTML's time is slowly coming to an end.
The benefits are obvious for developers will be able to build applications without worrying about web or windows, which is fine as long as your operating system or browser can render XAML! I suspect we won't be hearing the last about XAML and it may end up changing a bit in the course of the next 2-3 years!
Indigo - boy where do i even start with this... In short its a transport API that will converge the different middleware layers that are Enterprise Services, .NET remoting, MSMQ, COM+/MTS exposed through a web Services framework. This Web Services framework is based on existing work Microsoft has been doing to build a Web Services Architectures (known as GXA or GWA) and their work with OASIS on WS-n standards (where n=("policy" | "security" | "transactions" | "Coordination" ....etc..). Anyhow, my head is still hurting going through Don Box's sessions...entertaining as they may be ;-)
Longhorn identity management is another area which deserved more attention, this will be managed at the OS layer through a simple trust model where a physical exchange (on the phone) of the fingerprint of the users public key is used to establish identity. There is much more to this, but i didn't have time to go through it (just yet!)
BizTalk Jupiter - Well its not exactly Jupiter, but the early signs of how they intend to componentize some of the functionality in BizTalk and make it 're-hostable' in other server products like CMS, Commerce Server. In the demonstrations that they had at the PDC, they showed how the lightweight orchestration engine could be used within Windows SharePoint Server. What was remarkable was the seamless integration between Microsoft Word and SharePoint, with the worflow process being managed both server and client side.
BizTalk Indigo - Additionally, Scott Woodgate's presentation showed the integration points between BizTalk 2004 Server and future products like Yukon (SQL Server) and Indigo (Longhorn). He actually showed us how we could easily bind an indogo adapter to a BizTalk port and and undertake a regular BizTalk orchestration with out having to worry about the complexities of reliability, transactionality, assured delivery of Web Services... Also he showed how in SQL Server (Yukon) you could do control flow process management of a ETL through the SQL Server DTS. The DTS as we know it has changed substantially from the previous version, and offers a palette of orchestration components for managing this process. I preumse this orchestration engine has been embedded in Yukon.
ASP.net 2.0 - From what i understand the design goals for the dev team was to reduce the amount of code written by a developer by 50%. That a pretty phenonmenal challenge, and shows they are making the lives of developers easier (read: redundant). Features include ADO.NET (much less code), Master Page templates, pagination of the grid controls, login and authentication controls, user personalisation, VB.NET debugging improvements. I don't want to elaborate on this too much as there is probably a whole load of stuff out there.