Follow Us on Twitter
The TypeScript language is made available under the Open Web Foundation’s OWFa 1.0 Specification Agreement, and the community is invited to discuss the language specification. Microsoft’s implementation of the compiler is also available on CodePlex under the Apache 2.0 license. There you can view the roadmap, and over the next few weeks and months you’ll see the TypeScript team continue to develop on CodePlex in the open.
TypeScript is one foray into making programming languages and tooling even more productive. Pick it up, take it for a spin, and give your feedback. You can contribute by discussing the language specification or filing a bug.
Olivier Bloch Senior Technical Evangelist Microsoft Open Technologies, Inc.
From the floor of the PHP Tek Conference in Chicago, with my colleague Peter Laudati, we’re excited to announce the availability of the Windows Azure SDK for PHP version 3.0. This Open Source SDK gives PHP developers a “speed dial” library to take full advantage of Windows Azure’s coolest features. On top of many improvements and bug fixes for this version (see the list from Maarten Balliauw’s preview), we’re particularly excited about the new service management possibilities and the new logging infrastructure.
Beyond the new features, we also feel that version 3.0 of this SDK marks an important milestone because we’re not only starting to witness real world deployment, but also we’re seeing more people joining the project and contributing. We’ve been talking a lot to Maarten Balliauw from RealDolmen who is the lead developer on this open source project and he also shares the same sentiment: “It’s interesting to see the Windows Azure SDK for PHP mature: people are willing to contribute to it and incorporate their experience with the SDK and the platform.”
The most compute intensive part of Facebook app www.hotelpeeps.com is powered by PHP on Windows Azure
My colleague Todi Pruteanu from Microsoft Romania worked with Lucian Daia and Alexandru Lapusan from Zitec to help them get started with PHP on Windows Azure. The result is impressive. The most compute intensive part of the Hotel Peeps Facebook application is now running on Windows Azure, using the SDK for PHP, as well as SQL Azure. Read the interview of Alexandru to get the details on what and how they did it (you can also check out the case study here). I like this quote from the interview: “HotelPeeps Trends running on the Windows Azure platform is the epitome of interoperability. Some people think that a PHP application running on Microsoft infrastructure is science fiction, but that’s not the case.” Another interesting aspect is also the subsequent contribution by Zitec of an advanced “logging” component to the Windows Azure SDK for PHP. This new component provides the possibility of storing logs from multiple instances in a centralized location, namely Azure Tables.
More contributions from the community
As the SDK gets more widely adopted, there is an exciting trend toward more community involvement. For example, Damien Tournoud from the CommerceGuys who is working on developing the Drupal integration module for Windows Azure, recently contributed a patch fixing bugs related to inconsistencies in URL-encoding of parameters in the HTTP_Client library. As we continue to improve the SDK to ensure great interoperability with popular applications like WordPress, Drupal and Joomla! we look forward to engagement more deeply with those communities to make the experience even better.
New! Windows Azure Sample Kit for PHP
Today we are also announcing the Windows Azure Sample Kit for PHP. It is a new project hosted on github that will be the primary repository for all sample php code / apps that developers can use to learn how to take advantage of the various features of Windows Azure in php. Today we are releasing two samples to the repository: the Guestbook application (example of how to use the Windows Azure storage objects – blobs, queues and tables as well as a simple web/worker pattern) and “Deal of the Day” (more on this one later). We look forward to feedback on the samples and I am also hoping to see some forks and new samples coming from the community!
New features to easily manage auto-scaling of applications on Windows Azure
As I mentioned the version 3.0 of the Windows Azure SDK for PHP includes a new “service management” library, which provides easy ways to monitor the activity of your running instances (Windows Azure web roles & workers roles virtual machines), and to start/stop automatically instances based on usage. Then it becomes easy for you to decide which parameters (CPU, bandwidth, # of connections, etc.) and thresholds to use to scale up and down, and maintain the optimum quality of service for your web applications.
The scenario is simple: let’s say you are running an e-commerce site and you want to run daily promotions to get rid of overstocked items. So you’re going to offer crazy deals every day starting at 8am, each deal being advertised to your subscribers by an email blast. You will have to be ready ready to absorb a major spike in traffic, but the exact time is difficult to predict as the news of the deal may take some time to travel through twitter. When the traffic does materialize, you want the site to run & scale independently – providing service assurance but also minimizing your costs (by shutting down unnecessary capacity as loads go down). This is the scenario for the “Deal of the Day” sample application.
What’s the “Deal of the Day” (DotD) sample app and what to expect?
Deal of the Day (DotD) is a sample application written in PHP to show how to utilize Windows Azure’s scalability features from within PHP. We’ve kept is simple and built it in a way that’s easy to deconstruct and learn from.
As a sample application, DotD did not undergo extensive testing, nor does the code include all the required error catching, security verifications and so on, that an application designed for real production would require. So, do expect glitches. And if you do witness issues, send us a screenshot showing error messages with a description. I’ll get a prize to the first 100 bug trackers!
However, to give you an opportunity to see the sample application working, we’ve decided to deploy a live version on Windows Azure to let you test it for real and give the chance to win actual fun prizes! (and sorry for our friends outside of USA, but prizes can be shipped only to a US address )
Wanna play? Just go this way: http://dealoftheday.cloudapp.net/ Looking for the code, just get it on GitHub here: http://bit.ly/iPddwx
Architecture of the DotD sample app
The DotD sample app is comprised of several pieces which fit together to create the overall experience:
Each of these parts is essential to the performance and scalability of DotD and for more details I invite you to read this introduction article, and then to dig deeper by reading part I (Performance Metrics) and Part II (Role Management) of our “Scaling PHP applications on Windows Azure” series. We will expand the series with additional in depth articles, the next one will be around monitoring the performance of your app.
We look forward to your feedback on the SDK and the Sample Kit. Once again the URL is https://github.com/Interop-Bridges/Windows-Azure-Sample-Kit-4-PHP
Craig Kitterman Twitter: Follow @craigkitterman Web: http://craig.kitterman.net
Here is great news for open source developers: Brian Harry announced today at the Microsoft’s ALM Summit that Git is now fully integrated into Visual Studio as well as the Team Foundation Service, Microsoft’s cloud-powered Application Lifecycle Management tool.
Here at Microsoft Open Technologies, Inc., we are excited to hear such news as this offers more choice and flexibility to development teams. We happen to work on a daily basis with developers on Git in the context of projects such as Node, Dash, Redis or Solr so we totally get the goodness of this news.
The Visual Studio Tools for Git work great against Git repositories locally, in Team Foundation Service, on GitHub, CodePlex, BitBucket etc. That’s all because they are using Git as the distributed source control solution and they talk to Git repositories via the open source library LibGit2. LibGit2 is a portable C library that runs on many different platforms including Linux and Mac.
Microsoft engineers in Brian’s team have been contributing to LibGit2 for a number of months now as they worked with the community to add Git support in Visual Studio – some of them earning committer rights on this popular and very active open source project. Even better as the team started testing the integration, all the bug fixes and security fixes that they found also have been contributed back to the project.
Therefore not only is Brian’s announcement good news for developers in Visual Studio wanting to use Git to contribute to open source projects, it’s also great news for others building on top of the LibGit2 library on any platform.
The Visual Studio Tools for Git are provided as an extension for Visual Studio 2012 but Brian also says that they should be included in the box with all editions of Visual Studio in a future release – including the Express editions.
I can tell you MS Open Tech engineers can’t wait to take full advantage of the Visual Studio Tools for Git in their daily interaction and collaboration with the open source developers’ community.
by Claudio Caldato on December 15, 2010 08:00am
As you know, Microsoft is committed to interoperability, and the IE team has previously blogged about and provided developer previews and samples showing "Same Markup" - the same HTML, CSS, and script working across browsers - in action.
Today, as part of the interoperability bridges work we do on this team, we're making available a new Firefox add-on that enables Firefox users on Windows to play H.264-encoded video on HTML5 by using the built-in capabilities found in Windows 7.
Microsoft has already been offering for several years now the extremely popular Windows Media Player plug-in for Firefox, which is downloaded by millions of people a month who want to watch Windows Media content.
This new plug-in, known as the HTML5 Extension for Windows Media Player Firefox Plug-in, is available for download here at no cost. It extends the functionality of the earlier plug-in for Firefox, and enables web pages that that offer video in the H.264 format using standard W3C HTML5 to work in Firefox on Windows. Because H.264 video on the web is so prevalent, this interoperability bridge is important for Firefox users who are Windows customers.
H.264 is a widely-used industry standard, with broad and strong hardware support. This standardization allows users to easily take what they've recorded on a typical consumer video camera, put it on the web, and have it play in a web browser on any operating system or device with H.264 support, such as on a PC with Windows 7.
H.264 is also a very well established and widely supported video compression format, developed for use in high definition systems such as HDTV, Blu-ray and HD DVD as well as low resolution portable devices. It also offers better quality at lower file sizes than both MPEG-2 and MPEG-4 ASP (DivX or XviD).
The HTML5 Extension for Windows Media Player Firefox Plug-in continues to offer our customers value and choice, since those who have Windows 7 and are using Firefox will now be able to watch H.264 content through the plug-in.
Microsoft is already deeply engaged in the HTML5 process with the W3C as we believe that HTML5 will be important in advancing rich, interactive web applications and site design.
Principal Program Manager, Interoperability Strategy Team
Starting today, the Metro style theme for JQuery Mobile, the popular open source mobile user interface framework, is available for download on GitHub and can be used as a NuGet package in Visual Studio.
The theme enables HTML5 pages to adapt automatically to the Metro design style when rendered on Windows Phone 7.5. The Metro style theme is open source and available for download here. This new Metro style theme’s development was sponsored by Microsoft Open Technologies, Inc. working closely with Sergei Grebnov, an Apache Cordova committer and jQuery Mobile developer.
The theme looks just gorgeous, doesn’t it?
You can see an extensive demo of the theme on this page and you can learn more on this site where we are publishing new articles, references and source code sample for developing with Apache Cordova and the Metro style theme for jQuery Mobile.
To do so, developers already enjoy a selection of Apache Cordova Plugins that give their application a Windows Phone touch such as Social Share, Bing Map launcher and Live Tile. Now developers can use the new open source Metro style theme for jQuery Mobile to give their mobile apps and websites the Metro style look and feel, and offer the final users an experience similar to the one they get with native applications.
As usual we are very interested in hearing from developers and gathering feedback about the experience of developing HTML5-based applications and websites on Windows Phone. Let us know what other features, tools and frameworks you’d like to see.
Abu Obeida Bakhach Program Manager Microsoft Open Technologies, Inc. A subsidiary of Microsoft Corporation
I finally had the chance to sit down with Morten at MIX11 in Las Vegas last week to discuss the work he is doing on WordPress with Windows Azure to solve some common challenges with multi-site WordPress installations using traditional hosting.
In Morten's words: "I am building a garden just for me and my clients...I control it...but the security and management of the garden is run by a very large company...they also will make sure that it works!"
Read Morten's blog on http://www.designisphilosophy.com and find him on Twitter @Mor10
Craig Kitterman Twitter: @craigkitterman http://craig.kitterman.net
by Peter Galli on January 23, 2010 08:00am
The CodePlex team announced last night that it now supports Mercurial, a distributed source control management system. New projects created on CodePlex.com will now be able to use either Team Foundation Server or Mercurial as the source control repository.
Current project owners who want to switch to Mercurial can do so by contacting CodePlex Support with the project name, and the team will gladly assist.
Mercurial is a Distributed Version Control System (DVCS) and, unlike Team Foundation Server, DVCS has a very different model for collaborating on an open source project:
So, why the need for another option? According to Sara Ford, the Program Manager for CodePlex, adding DVCS to CodePlex has become a top feature request from users as the popularity of DVCS for open source development has grown significantly.
"Mercurial is one of the most popular distributed version control systems and offers great support for Windows based tools as well as works very well as a hosted service," she says.
by Peter Galli on January 19, 2009 02:00pm
As Microsoft continues the drive for interoperability between different implementations on various platforms, the Interoperability Technical Strategy Team is, for the first time, participating as a code contributor to an Apache project: the Stonehenge incubator project.
Microsoft first talked about Stonehenge at ApacheCon 2008, which was held in New Orleans last November. Since then, it has been approved as an incubator project within Apache Software Foundation, and WSO2 and Microsoft have already contributed code for a web-services based sample application, known as StockTrader, to this effort.
That code can be found here, along with the contributions from WSO2.
Stonehenge has attracted some very prominent committers so far, Kamajit Bath, a Principal Program Manager in the Interoperability Technical Strategy Team and the lead for Microsoft's participation in Stonehenge, says in a recent blog post.
"I hope that the momentum will be sustained, and I am looking forward to seeing code contributions from other folks and seeing the StockTrader sample application enhanced with new features. I also hope that new sample applications will be developed to cover other areas of the WS-* standards that are not best represented by the StockTrader application. I look forward to participating in this discussion with the Stonehenge community," he says.
There are three Microsoft committers on the Stonehenge incubator project: Greg Leake, who wrote the original StockTrader application; Drew Baird, who worked to get it ready for contribution to Stonehenge; and Mike Champion, who will play an active role in this effort.
In a recent blog post, Champion says Microsoft have heard from customers that they want sample applications based on real-world scenarios and challenges, as these will help them realize the potential of these technologies that have been developed and standardized for the last 8 years or so.
The initial response from the Apache community has also been quite favorable, and "I have a personal commitment to invest in helping make Stonehenge a success, and look forward to digging in," he says.
Champion also notes that Stonehenge is being championed by Paul Fremantle, co-founder and CTO of WSO2, "which has been a great partner in helping to improve and demonstrate the interoperability of the WS-* standards across platforms."
He cites, as an example of this, TechEd 2008, where Jonathan Marsh of WSO2 and Greg Leake of Microsoft demonstrated how separate WSO2 and Microsoft components implementing a mutlti-tier stock trading application can interoperate and be substituted for one another, he says in the blog.
StockTrader is also just the starting point for the broader goals of Stonehenge, which aims to develop a set of sample applications to demonstrate seamless interoperability across multiple underlying platform technologies by using currently defined W3C and OASIS standard protocols.
Stonehenge can also help wire up the ‘last mile' between the standardized web services infrastructure that is now implemented across key platforms, and a new generation of service oriented applications that will span them, he says.
Existing WS-* interoperability work such of the sort done by WS-I and in our "plugfests" will continue to solidify the platform-level interoperability. The new work, exemplified by Apache Stonehenge, should attract a wider community of users who can exploit the hard standardization and platform interoperability work without having to wallow in as many nasty details as in the past.
For Bath, projects like Stonehenge are important in enhancing interoperability between different software implementations. While standards organizations do a great job and the roll out of various WS-* standards is a testimonial to the fact that they can work efficiently, interoperability work doesn't stop at the end of the standardization process but, rather, that is where it really starts, he says.
In case you missed it, I just wanted to flag this blog from Jean Paoli:
I am really excited to be able to share with you today that Microsoft has announced a new wholly owned subsidiary known as Microsoft Open Technologies, Inc., to advance the company’s investment in openness – including interoperability, open standards and open source.
My existing Interoperability Strategy team will form the nucleus of this new subsidiary, and I will serve as President of Microsoft Open Technologies, Inc.
The team has worked closely with many business groups on numerous standards initiatives across Microsoft, including the W3C’s HTML5, IETF’s HTTP 2.0, cloud standards in DMTF and OASIS, and in many open source environments such as Node.js, MongoDB and Phonegap/Cordova.
We help provide open source building blocks for interoperable cloud services and collaborate on cloud standards in DMTF and OASIS; support developer choice of programming languages to enable Node.js, PHP and Java in addition to .NET in Windows Azure; and work with the PhoneGap/Cordova and jQuery Mobile and other open source communities to support Windows Phone.
It is important to note that Microsoft and our business groups will continue to engage with the open source and standards communities in a variety of ways, including working with many open source foundations such as Outercurve Foundation, the Apache Software Foundation and many standards organizations. Microsoft Open Technologies is further demonstration of Microsoft’s long-term commitment to interoperability, greater openness, and to working with open source communities.
Today, thousands of open standards are supported by Microsoft and many open source environments including Linux, Hadoop, MongoDB, Drupal, Joomla and others, run on our platform.
The subsidiary provides a new way of engaging in a more clearly defined manner. This new structure will help facilitate the interaction between Microsoft’s proprietary development processes and the company’s open innovation efforts and relationships with open source and open standards communities.
This structure will make it easier and faster to iterate and release open source software, participate in existing open source efforts, and accept contributions from the community. Over time the community will see greater interaction with the open standards and open source worlds.
As a result of these efforts, customers will have even greater choice and opportunity to bridge Microsoft and non-Microsoft technologies together in heterogeneous environments.
I look forward to sharing more on all this in the months ahead, as well as to working not only with the existing open source developers and standards bodies we work with now, but with a range of new ones.
by hjanssen on July 22, 2009 02:02pm
Well, here is blog number two. The initial shock has worn off a bit I hope.
The feedback I have received so far has been pretty positive. This really all started in October of 2008 in a meeting with Mike Neil (GM of Hyper-V) and Tom and myself from the Open Source Technology Center (OSTC) at Microsoft.
In that meeting I proposed to Open Source the Linux Integration Components and contribute them to the Linux Kernel. And, secondly, to have the OSTC continue contributing to these IC's after they made it to the Linux Kernel. Well after some discussion, we all agreed that this was the right thing to do.
And so the whole process started inside of Microsoft. Hey, what can I say, we like to push the envelope a bit here at the OSTC, and we have a reputation to uphold!
Before I go on, I again wanted to thank the Kernel community (specifically Greg Kroah-Hartman) in helping us with explaining and guiding us through community process. It gave us a very nice jumpstart to get all of this going, and provided the groundwork for a good working relationship with the community.
I have also seen a few patches already submitted by community members, which is excellent! (Moritz Muehlenhoff gets major kudos for the first community contributed patch ) I will start submitting patches myself next week once the initial submission has stabilized a bit.
It is my plan to use the kernel as my primary development area, and of course I will continue to provide Greg with my patches. My first step is to clean up the code to make sure it fulfills all Kernel coding standards and requirements.
So, here is blog number two: what are the Linux Integration Components?
1. Overview of Linux VM with ICs
Linux Integration Components(IC) take advantages of the VMBUS and synthetic devices provided in Hyper-V to enhance the performance and usability of Linux guests running on Windows servers.
Figure: Conceptual Architecture overview of Linux guest & Hyper-V. Linux IC modules are painted in yellow color.
VSP: Virtualization Service Provider.
VSC: Virtualization Service Client.
VMBus: Data channel between VSP and VSC.
2. Linux IC modules -- VMBus and VSCs
This portion of the VSC component interacts with the Linux kernel like a regular Linux device driver.
The core portion of the VSC module is implemented based on the protocol of the corresponding VSP at Hyper-V host. The VSC core interacts with VSP via the VMBus interface.
3. Descriptions for each Linux IC module
3.1 VMBus driver (hv_vmbus.c)
The VMBus driver is a Linux kernel module. It provides both a lightweight bus driver and library functionality. As a bus driver, it registers with Linux Driver Model framework (LDM) to provide simple bus and device integration and device tree integration (sysfs). As a library, it implements the VMBus channel protocol and provide an abstraction of channel to its clients (Disk and Network VSCs).
3.2 StorVSC driver (hv_storvsc.c)
The Storage VSC interacts with the Windows Storage VSP. The "wire" protocol defined by the storage VSP determines how a VSC interacts with it. The Linux Storage VSC (LSVSC) basically abstracts the Linux I/O stack from needing to understand the Storage VSP's protocol. At the upper-edge of the LSVSC, it talks to the Linux SCSI subsystem. The Linux SCSI subsystem sees the LSVSC as a SCSI low-level driver (LLD) in Linux parlance. It passes SCSI requests (scsi_cmnd) to LSVSC which in turn converts them into the "wire" format understood by the Windows Storage VSP (VSTOR_PACKET). The bottom-edge of the LSVSC talks to Linux VMBus (LVMBUS) which in turn talks to the Windows VMBus to route the packets to the Storage VSP.
3.3 BlkVSC driver (hv_blkvsc.c)
BlkVSC (BlockVSC) supports "fast boot" and fast access to IDE disks. To enable enlightened IDE support for enhancing the performance of Linux when virtualized on Windows, a separate BlockVSC component is used as a Linux block device driver. Like StorVSC, the BlockVSC component is comprised of an upper edge wrapper that interfaces with the Linux block layer and a lower-edge through the infrastructure modules. The infrastructure modules with Hyper-V through the Linux VMBus.
3.4 NetVSC driver (hv_netvsc.c)
The network VSC send and receive network traffic between a Linux guest and Hyper-V host which has direct connection to physical network. The mechanism that this is used to accomplish is the Remote NDIS (RNDIS) protocol. Thus the communication that flows between the VSP and the VSC primarily happens over the RNDIS protocol which then is packaged and forwarded as payload over to the other side over NetVSP / VMBus protocol.
4. Linux IC's, Location in the Kernel tree
Hopefully you now have a better idea what they are. But where in the kernel tree can you find them?
Well, you can find sources in linux-next tree in /drivers/staging/hv directory.
And the git repository you can find them in right now is:
Or give this command (assuming your system is set up correctly) to download this repository to your machine:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git <your local name>
Since the IC's are part of the kernel now, we follow the normal community process of getting this all migrated into Linus mainline kernel.
Hello web and mobile developers!
As you probably noticed, jQuery Mobile version 1.0 was announced this week. We are pleased to use this exciting occasion to reinforce our commitment to supporting popular open source mobile frameworks.
Of the most recent activities, I want to highlight the work done to supporting PhoneGap by adding support for Windows Phone 7.5 (Mango), and now we are moving up the stack to improve support of jQuery Mobile on Windows Phone 7.5.
While today’s version 1 and the recent RC releases contain many features, we wanted to take a minute and highlight the collaboration we started with the jQuery Mobile team. In the last few weeks we have focused our attention on supporting Kin Blas and others in the community to improving the performance on Windows Phone 7.5.
In particular, as the RC3 blog published earlier this week outlines, Windows Phone performance has improved quite dramatically as shown by the two showcase apps:
The jQuery team has additional performance optimization tips for Windows Phone in the change log that saves additional perf time in certain scenarios.
We are pretty encouraged with this progress, and will continue working with community to bring higher levels of performance and support for jQuery features to Windows Phone... stay tuned, and congratulations again to the jQuery Mobile Team!
Abu Obeida Bakhach
Interoperability Strategy Program Manager
by Jean Paoli on November 07, 2008 01:21am
Interoperability has always been a focus area at Microsoft. Being a platform company, Microsoft has engaged in interoperability at many levels - product features, participation in standardization bodies, publishing many technologies under open licenses and working closely with customers, governments and partners to understand the heterogeneous IT landscape and discuss practical interoperability solutions.
Earlier this year, these activities were formalized under the Interoperability Principles for all of our high-volume products.
I am the General Manager of Interoperability Strategy at Microsoft, and I have worked across the company on many interop initiatives. I am happy to see many interop projects now coming out of Microsoft and, personally, having many of them based on XML makes me doubly happy.
My team has built several bridging technologies and solutions for many of our products to enable interoperability. These are being run as open source projects and released under a broad BSD license so that our customers and partners can use them in many open and broad scenarios.
Interoperability has been getting enhanced attention at a lot of conferences lately and Microsoft has also upped its participation at many open source conferences such as OSCON, the Eclipse Conference and ApacheCon.
At Microsoft's Professional Developer's Conference last month, the interoperability story was part of almost every announcement and keynote address. As Sam Ramji writes in his latest blog, Microsoft is also participating at ApacheCon and highlighting the interoperability work we are doing. These are indeed exciting times!
On the interoperability front, my team has been working with the WSO2 since the TechEd 2007 Conference to demonstrate interoperability using our StockTrader reference application.
This week, the WSO2 proposed a new Apache incubation project, known as Stonehenge, to further this work. The aim of this project is to set up sample applications to demonstrate interoperability with multiple underlying platform technologies by using currently defined W3C and OASIS standard protocols. We look forward to working with WS02 on the scope of this project, and having discussions with the community.
I also want to highlight some open source interoperability projects that my team has been working on with third parties, companies and members of the community at large, which may be very relevant to the readers of this blog.
Eclipse Tools for Silverlight
Eclipse4sl allows Java developers to develop code for the Silverlight platform within the Eclipse development environment, and contains both an advanced project system for creating Silverlight applications and media experiences as well as a compiler for packaging Silverlight applications for deployment.
Interoperability with the Azure Services platform
Announced at PDC recently, the Azure Services Platform is an internet-scale cloud computing and services platform hosted in Microsoft data centers. It provides an operating system and a set of developer services which can be used individually or together. Microsoft .NET Services is a key component of the Azure Services Platform that offers a set of Microsoft-hosted, highly scalable, developer-oriented services that provide the key building blocks, like, Access Control, Service Bus, and Workflow service.
The Azure Services Platform, built from the ground up to be consistent with Microsoft's commitment to openness and interoperability and in that spirit, we have built two cross-platform SDKs for .NET services - for Java and Ruby.
Information Cards Interoperability
Windows CardSpace is Microsoft implementation of Information Cards on the Windows platform. Information cards are a core part of Identity Metasystem and help both site owners and visitors to manage, control, and exchange digital identities more safely and consistently.
We have also built four open source projects that help Web developers support information cards on diverse platforms:
The goal of this project is to provide translators to allow for interoperability between applications based on ODF (OpenDocument) standard and Office Open XML standard. The translator is based on XSLT transformations between two XML formats, along with some pre- and post-processing, and is available on Sourceforge under a BSD-like license.
The goal of this project is to provide translators to allow for interoperability between applications based on UOF (Uniform Office Format) standard and Office Open XML standard.
UOF is an emerging standard, which is being developed by the Chinese Office Software Work Group (COSWG), led by the China Electronics Standard Institute (CESI), the Ministry of Information Industry (MII), major suppliers of Chinese office software suites, and other academic institutions.The translator is based on XSLT transformations between two XML formats, along with some pre- and post-processing. It is available at SourceForge under a BSD-like license
I would like to hear your comments and feedback on these projects and also welcome open engagement on what Microsoft should be doing for interoperability. Tell us what other interoperability scenarios we should be looking to address.
I also want to thank the multiple third party companies and the community members we cooperate with, as well as the members of my team: Vijay Rajagopalan, Sumit Chawla, Kamaljit Bath, Claudio Caldato, Jean-Christophe Cimetiere and many others for working on these projects and building technical solutions for interoperability with key Microsoft products and technologies.
I can hardly believe it’s been almost four months since we announced the foundation of Microsoft Open Technologies, Inc. Boy, have we been busy: Redis, JQuery Mobile, OData, HTTP 2.0, Doctrine, Symfony, Apache Solr, Windows Azure tools for Mac and Linux, Eclipse, Apache Cordova, MongoDB, CouchDB, EntityFramework, ASP.net MVC 4, Web API, Web Pages, WebRTC, Wordpress… the list goes on, and the road ahead of us is nothing short of amazing. We are heading towards one of the most important years in Microsoft history and everyone in MS Open Tech is excited and busy advancing our journey into openness.
We have come to a point where we really could use some help, and I believe we have quite a few great opportunities to join our team. We are currently looking for developers, program managers, technical diplomats and evangelists: what those profiles have in common is a strong interest and experience in open technologies (Open Standards and Open Source), interoperability and community engagement. We strongly believe in code doing the talking for us: we are pragmatic, agile, focused on real-life scenarios and deeply engaged in open conversations with the community at large.
We are having tons of fun pursuing our passion for solving customer and developer issues by creating innovative solutions and technical bridges between Microsoft and non-Microsoft technologies, and we want more of the same. Please visit the Microsoft careers website to learn more about the open positions and by all means do get in touch: we would love to talk to you.
We are excited to be attending and participating at Node Summit in San Francisco this week.
Among those Microsoft staffers on site are Server & Tools Corporate Vice President Scott Guthrie - who participated on a panel about Platform as a Service this morning and also gave a keynote address - and Gianugo Rabellino, the Senior Director for Open Source Communities, who was on a panel discussing the importance of cross-platform.
You can read more about Scott's keynote on the Windows Azure blog here.
As this work continues inside of Microsoft as well as with the Node.js community and our partner ecosystem, new and exciting capabilities are coming available allowing Node.js developers to have great experiences on the Windows platform.
Today, during his keynote, Scott Guthrie demonstrated how easy it is to get up and running with Node.js on Windows and Windows Azure, while our partners at Cloud9 showcased new tooling experiences that provide even greater flexibility to Node.js for developers who want to build for Windows Azure.
Microsoft has been closely partnering with Joyent for some time now to port Node.js to Windows. We have built an IO abstraction library with them that can be used to make the code run on both Linux and Windows.
We also recently released the Windows Azure SDK for Node.js as open source, available on Github. These libraries are the perfect complement to our recently announced contributions to Node.js and provide a better Node.js experience on Windows Azure. The Windows Azure Developer Center provides documentation, tutorial, samples and how-to guides to get started with Node.js on Windows Azure.
The Joyent team also recently updated the Node Package Manager for Windows (NPM) code to allow use of NPM on Windows. NPM is an essential tool for Node.js developers so now having support for it on Windows we have a better development experience on Windows.
We are also working with the Joyent team on improving the development experience by leveraging the power of Microsoft Development tools and documentation that will make easier for developers to use Node.js APIs.
And, relatedly, we have also been working closely with 10Gen and the MongoDB community in the past few months, and MongoDB already runs on Windows Azure. If you’re using the popular combination of Node.js and MongoDB, a simple straightforward install process will get you started on Windows Azure. You can learn more here.
Our interest in, and support for Node.js is just one of the ways in which Windows Azure is continuing on its roadmap of embracing Open Source Software tools developers know and love, by working collaboratively with the open source community to build together a better cloud that supports all developers and their need for interoperable solutions based on developer choice.
As Microsoft continues to provide incremental improvements to Windows Azure, we remain committed to working with developer communities.
We also clearly understand that there are many different technologies that developers may want to use to build applications in the cloud: they want to use the tools that best fit their experience, skills, and application requirements, and our goal is to enable that choice.
All of this delivers on our ongoing commitment to provide an experience where developers can build applications on Windows Azure using the languages and frameworks they already know, enable greater customer flexibility for managing and scaling databases, and making it easier for customers to get started and use cloud computing on their terms with Windows Azure.
As noted on the Openness@Microsoft blog this morning by Anandeep Pannu, Senior Program Manager for the Open Source Technical Center:
Today, Microsoft and partners NetApp and Citrix are excited to announce the availability of FreeBSD support for Windows Server Hyper-V. This collaboration, announced at BSDCAN 2012, will help more customers adopt virtualization and move toward cloud computing. Microsoft is committed to supporting multiple platforms with its server virtualization solution so that more organizations can take advantage of server consolidation cost-savings and build foundations for private, public and hybrid cloud computing.
This release, which includes 8,500 lines of code released under the BSD license, is the result of collaboration between Microsoft, NetApp, and Citrix to enable FreeBSD to run as a first-class guest on Windows Server Hyper-V. My colleague Peter Galli had a blog post this spring about the announcement of this goal, and it’s great to see this work come to fruition so quickly! For further background, check out the interview with Joe CaraDonna, Technical Director of Core Operating Systems at NetApp, in which he described how this project would “round out the FreeBSD virtualization story and make the FreeBSD operating system a more compelling offering.”
FreeBSD is the latest in a growing list of open-source operating systems and open-source cloud projects that work with Hyper-V, including SUSE, CentOS, Red Hat, Cs2C, OpenStack, and OpenNebula. This wide range of options makes it easier for customers to take advantage of server virtualization, enabling a variety of cloud computing and hybrid computing scenarios.
For more information about today’s announcement, see the blog post on Openness@Microsoft as well as the documentation and downloads available from the freebsdonhyper-v project on Github. The FreeBSD drivers are being prepared for inclusion in the FreeBSD core, and there will soon be available ISO images with preinstalled drivers for the latest releases of FreeBSD (based on community feedback).
Congratulations to all involved in reaching this important milestone! We’re looking forward to more good news from the FreeBSD on Hyper-V team going forward.
Doug MahughSenior Technical EvangelistMicrosoft Open Technologies, Inc.