• Interoperability @ Microsoft

    Happy Birthday XML!


    XML was first published as a W3C Recommendation on 10 February 1998.

    I would have never dreamt, 15 years ago, that we would be so successful in our dream of exchanging information freely between different platforms and now across devices and clouds. For me, this has been the beginning of the Openness revolution.  I truly believe that that the strength of XML is its inherent unique capability of representing homogenously documents and data: those scenarios and capabilities will be even more important for the next 15 years.

    Vive XML and to its bright future!

    Jean Paoli
    President, Microsoft Open Technologies, Inc.
    Co-Creator, XML 1.0 @ W3C

  • Interoperability @ Microsoft

    More HTTP/2.0 Prototyping: a Suggested Approach to the Protocol Upgrade


    The activities of IETF’s HTTPbis working group continue next week at IETF 85 in Atlanta, marking another step in the path of HTTP/2.0 to Proposed Standard. Fruitful discussions are happening on many facets of the specification, filling the gaps wherever no obvious consensus had yet emerged or the initial draft did not clearly specify a given behavior that will be essential for a working, interoperable implementation.

    In an earlier blog post, we called out seven specific areas where the group will need to do additional work. Gabriel Montenegro and Willy Tarreau have now submitted a new proposal which describes a suggested approach for Negotiation in HTTP/2.0, in order to move the discussion forward on one of those key subjects. As it is, the proposal can already be used to negotiate HTTP 2.0 either in the clear or over TLS. Naturally, this proposal is a starting point and will undergo revisions going forward based on working group discussions (e.g., to further optimize the handshake).

    As outlined in the proposal itself, the mechanism is very simple. It leverages the Upgrade header defined in HTTP/1.1 and already in use in WebSocket. A client who is uncertain about whether the server supports HTTP/2.0 will initiate a request using HTTP/1.1 and include an upgrade header:

    GET /default.htm HTTP/1.1

    Host: server.example.com

    Connection: Upgrade

    Upgrade: HTTP/2.0

    At this point, if the server supports HTTP/1.1 only, it will just ignore the upgrade request and respond normally for an HTTP/1.1 connection:

    HTTP/1.1 200 OK

    Content-length: 243

    Content-type: text/html


    If instead the server does support HTTP/2.0, it will upgrade the connection and send the first HTTP/2.0 frame, with the important benefit of achieving that without any additional roundtrips.

           HTTP/1.1 101 Switching Protocols

           Connection: Upgrade

           Upgrade: HTTP/2.0


           [ HTTP/2.0 frame ]

    We have implemented this behavior and updated the prototype which we originally released back in May. Please download the latest version, check it out and let us know what you think: we look forward to hearing your feedback. And stay tuned for additional, completely redesigned prototypes coming soon!

    Adalberto Foresti
    Principal Program Manager
    Microsoft Open Technologies, Inc.
    A subsidiary of Microsoft Corporation

  • Interoperability @ Microsoft

    PHP developers get an SDK for the Windows Azure platform AppFabric


    I’m pleased to announce a new software development kit (SDK) that helps PHP developers easily leverage the Windows Azure platform AppFabric (formerly called .NET Services). This SDK is the third in a series, the first of which was released a year ago. Equivalent SDKs for Java and Ruby are also available and they have been updated to reflect the latest version of the AppFabric.

    The AppFabric SDK for PHP is an open source project developed by Persistent Systems Ltd. and is available today on Codeplex: http://dotnetservicesphp.codeplex.com/. Microsoft is providing funding and architectural guidance for this project.

    About the AppFabric

    As part of the Windows Azure platform, the AppFabric includes the Service Bus and Access Control services. They are both web-based services that provide infrastructure in the cloud to connect applications. The Service Bus acts as an intermediary between applications and services. For example, developers can use it to bridge on-premise and off-premise applications or create composite applications. The Access Control service enables external users to connect to cloud resources using their external identities. It also enables developers to create user accounts that federate a customer's existing identity management system that uses the Active Directory service, other directory systems, or any standards-based infrastructure. You can learn more on the http://www.microsoft.com/windowsazure/dotnetservices/ pages. I suggest that you start with the video:

    What are the Access Control Service and the Service Bus?

    Understanding the function of the SDK

    Before I delve any deeper into the technology behind the SDK, I want to address a question that we on the Interoperability Team are often asked:

    Why would I need a SDK to use the services offered by the Window Azure platform when the platform has been built from the ground up with interoperability in mind?

    Let me be clear: the Windows Azure platform natively supports multiple Internet protocols and standards (such as HTTP, XML, SOAP, REST, and ATOM, to name a few). So it does not require an SDK to build applications. However, the SDKs can boost developers’ productivity and provide guidance on how to use the platform. Think of SDKs as speed-dials to the Windows Azure platform!

    Watch the video

    To find out more about this project, watch the video with Sumit Chawla, Technical Product Manager/Architect from the Microsoft Interoperability Team. Sumit explains the SDK architecture, provides sample scenarios, and demonstrates the SDK in action with a sample PHP application.

    Get Microsoft Silverlight

    [This video is posted on channel9 as well]

    A typical scenario

    Let me try to summarize in a diagram a typical scenario using the AppFabric SDK for PHP.

    Imagine you want to provide access to an application or service living within the boundary of your enterprise, but you cannot (or don’t want to) open a direct communication to your application. You can use the Service Bus to act as the intermediary and communicate with third parties via buffers of messages. The Access Control service makes it easier to deal with the identities of your users and the associated level of authorization.

    In the scenario represented by the diagram below, the PHP application that lives behind an enterprise firewall can share specific services with other applications—whether they run on Windows Azure or on other cloud infrastructures, and using a mix of technologies.


    For more details on the SDK, feel free to visit the project site at http://www.dotnetservicesphp.com/, which includes tutorials, sample code, and a demo application that can help you better understand how to use the services in your own application.


    —Jean-Christophe Cimetiere - Sr. Technical Evangelist

  • Interoperability @ Microsoft

    Updated Windows Azure Plugin for Eclipse with Java – Kepler, new Windows Azure SDK, and less is more for deployment options


    Microsoft Open Technologies, Inc., has released The August preview of the Windows Azure Plugin for Eclipse with Java. This release includes support for the new Windows Azure SDK v2.1  (a prerequisite), and some changes to eclipse version support and how JDKs and servers are deployed. Eclipse users may already be seeing plugin update notifications in Eclipse, so please note the Windows Azure SDK prerequisite. For full details, have a look at the documentation update.


    • Windows Azure SDK Update - This update is in sync with the new Windows Azure SDK v2.1, which is required for the update.
    • Kepler support – For eclipse users working with Kepler, we now support you! Note that going forward we’re testing new plugin releases with Indigo, Juno and Kepler, so our minimum required version is now Indigo. Helios may also work, but we’re no longer testing our plugins on Helios as of this version.
    • Include-in-package option JDKs and Application Server configuration is removed. Back in May we introduced the much more efficient and team-friendly option of auto-uploading the JDK and server to a blob then deploying from there. To pave the way for future enhancements, we’re replacing the option to include your JDK and app server in the deployment package to this as of this plugin release. Projects that still use the include option will automatically be converted to the deploy-from-blob option. Here’s a sample of what you’ll see in the deployment project UI now for the JDK:


    And here’s what you’ll see when selecting a Web server for deployment:


    Getting the Plugin

    Here are the complete instructions to download and install the Windows Azure Plugin for Eclipse with Java, as well as updated documentation.

    Ongoing Feedback

    This update is another in our company’s ongoing work to make it easier to deploy Java applications on Windows Azure. As you might have read, last month we partnered with Azul Systems on an OpenJDK build for Windows Azure. This plugin is an important element for our customers working in heterogeneous development environments.

    As always, let us know how the latest release works for you and how you like the new features!  To send feedback or questions, just use MSDN Forums or Stack Overflow.

  • Interoperability @ Microsoft

    Windows Azure Authentication module for Drupal using WS-Federation


    At Microsoft Open Technologies, Inc., we’re happy to share the news that Single Sign-on of Drupal Web sites hosted on Windows Azure with Windows Live IDs and / or Google IDs is now available.  Users can now log in to your Drupal site using Windows Azure's WS-Federation-based login system with their Windows Live or Google ID. Simple Web Tokens (SWT) are supported and SAML 2.0 support is currently planned but not yet available.

    Setup and configuration is easy via your Windows Azure account administrator UI.  Setup details are available via the Drupal project sandbox here.  Full details of setup are here.

    Under the hood, WS-Federation is used to identify and authenticate users and identity providers.  WS-Federation extends WS-Trust to provide a flexible Federated Identity architecture with clean separation between trust mechanisms (In this windows Live and Google), security token formats (In this case SWT), and the protocol for obtaining tokens. 

    The Windows Azure Authentication module acts as a relying party application to authenticate users. When downloaded, configured and enabled on your Drupal Web site, the module:

    -Makes a request via the Drupal Web site for supported identity providers

    -Displays a list of supported identity providers with Authentication links

    -Provides return URL for authentication, parsing and validating the returned SWT

    -Logs the user in or directs the user to register

  • Interoperability @ Microsoft

    Ready, set, go download the latest release of the Windows Azure Plugin for Eclipse with Java



    It’s ready…the February 2013 Preview release of the Windows Azure Plugin for Eclipse with Java from our team at Microsoft Open Technologies, Inc.

    You’ve been asking for the ability to deploy JDKs, servers, and user-defined components from external sources instead of including them in the deployment package when deploying to the cloud, and that’s available in this release. There are also a few other minor updates for components, cloud publishing and Windows Azure properties. Have a look at the latest plugin documentation for a complete list of updates.

    Deploy JDKs, Servers and user-defined components from Blob Storage

    You can now deploy JDKs, application servers, and other components from public or private Windows Azure blob storage downloads instead of including them in the deployment package used to deploy to the cloud.

    Having the option of referring to an external object instead including an object in the deployment package gives you flexibility when building your deployment packages. It also means faster deployment times and smaller deployment packages.

    Here’s an example showing inclusion of a JDK. Note the new Deploy from download option:



    Note the other tabs for server and applications – those options let you select a server (Tomcat, for example), or any component that you want to include in the install and setup but that you don’t want to include in the deployment package.

    Getting the Plugin

    Here are complete instructions for downloading and installing the Windows Azure Plugin for Eclipse with Java for the first time, which also works for updates.

    Let us know how the process goes and how you like the new features!

  • Interoperability @ Microsoft

    OData at Information on Demand 2012


    I attended IBM’s Information on Demand conference two weeks ago, where I had the opportunity to talk to people about OData (Open Data Protocol). Microsoft and IBM are collaborating on the development of the OData standard in the OASIS OData Technical Committee, and for this conference we were demonstrating a simple OData feed on a DB2 database, consumed by a variety of client applications.

    Here’s a high-level view of the architecture of the demo app:


    For this demo, we deployed an OData service on Windows Azure that exposes a few entities from a DB2 database running on IBM’s cloud platform. By leveraging WCF Data Services in Visual Studio, we were able to create this OData feed in a matter of minutes.

    Here’s a screencast that shows the steps involved in creating the demo service and consuming it from various client devices and applications:

    For more information about using OData with DB2 or Informix, see “Use OData with IBM DB2 and Informix” on the IBM DeveloperWorks site.

    The growing OData ecosystem is enabling a variety of new scenarios to deliver open data for the open web, and it was great to have the opportunity to learn from so many perspectives this week! Standardizing a URI query syntax and semantics means that data providers and data consumers can focus on innovative ways to add value by combining disparate data sources, and assures interoperability between a wide variety of data producers and consumers. To learn more about OData, including the ecosystem, developer tools, and how you can get involved, see this blog post.

    Special thanks to Susan Malaika, Brent Gross, and John Gera of IBM for all of their help with putting together the demo and their support at the booth throughout the conference. We’re looking forward to continued collaboration with our colleagues at IBM and the many other organizations involved in the ongoing standardization of OData!

  • Interoperability @ Microsoft

    From DrupalCon London: Drupal and Microsoft – It’s Jolly Good!


    imageIt’s been a busy week here in Croydon (just outside of central London), and Microsoft is very proud to be participating in our 5th DrupalCon. The most exciting bit is the clear progress that’s been made as a result of our engagements with the Drupal community. Last month also marked the 1 year anniversary with the work set out by The Commerce Guys on the Drupal 7 Driver for SQL Server and SQL Azure, a solid piece of work that is starting to see great uptake in the Drupal Community.

    There’s been solid progress, but the journey continues. Over the past 8 months we have received a great deal of feedback on Drupal on Windows and Windows Azure as well as tools/features that would create value to the community and their customers. We took these things to heart and once again engaged the community to help close the gaps in these areas.

    drush on Windows

    ProPeople has independently developed and released drush for Windows with the help of a comaintainer of Drush. From Drupal.org: “drush is a command line shell and scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those of us who spend some of our working hours hacking away at the command prompt.”. For the Drupal power user, drush is a must and we are proud to have sponsored this initial release. Bringing this capability to Windows unlocks new scenarios for these users and we are really excited to see what next here!

    Windows Azure Integration

    There has been steady progress on the journey to delivering a great offering for Windows Azure and I would like to share with you the status of making this a reality.

    First, with version 4.0 of the PHP SDK for Windows Azure, the team at Real Dolmen released a new tool that provides the capability to “scaffold” Windows Azure projects based on templates. What this means is that for any project type or application, one can easily create a template that ensures the proper file structure, as well as automatic configuration of the application components. To help those who wish to run Drupal today on Windows Azure, the Microsoft Interop Team has released a simple scaffold template and instructions which provide a shortcut to getting up and running quickly with an instance of Drupal that will scale on Windows Azure. This solution is not going to work for everyone and we are continuing to invest on building an even simpler and more streamlined solution that will be truly ready for the masses – stay tuned for more info on this in the coming months.

    And second, The Commerce Guys have released a Windows Azure Integration module. This provides an easy method to offload media storage for your Drupal site to Windows Azure blob storage. There are a number of benefits to using the power of the cloud to store this type of data, regardless of where your application is actually hosted. By leveraging this module along with the Windows Azure Content Delivery Network (CDN), you can with just a few clicks have geo-distributed edge caching of all your Drupal site media assets across 24 CDN nodes worldwide – getting that content closer to the user providing greater performance and lower server loads on your web server(s).

    Finally, with continuous improvement of the Drupal 7 Driver for SQL Server and SQL Azure mentioned earlier, SQL Azure support is getting even better giving Drupal users the ability to have an auto-scale, fault tolerant database at their disposal with a couple of clicks without any of the headaches of configuration or management (all handled by Microsoft).

    We look forward to continued engagements and discussions with the Drupal community on these great Open Source projects and are really excited about the progress that has been made to date. Together we will have more great news to share in the coming months!

    Craig Kitterman
    Sr. Technical Ambassador

  • Interoperability @ Microsoft

    Preview Release of the SQL Server ODBC Driver for Linux Hits the Streets


    Microsoft's SQL Server team yesterday announced the availability of a preview release of the SQL Server ODBC Driver for Linux, which allows native developers to access Microsoft SQL Server from Linux operating systems.

    For customers with native applications on multi-platform, the existing, reliable and enterprise-class ODBC for Windows driver (a.k.a. SQL Server Native Client, or SNAC) has been ported to the Linux platform.

    You can download the driver here.

    "In this release, the SQL Server ODBC Driver for Linux will be a 64-bit driver for Red Hat Enterprise Linux 5. We will support SQL Server 2008 R2 and SQL Server 2012 with this release of the driver. Notable driver features (in addition to what you would expect in an ODBC driver) include support for the Kerberos authentication protocol, SSL and client-side UTF-8 encoding. This release also brings proven and effective tools and the BCP and SQLCMD utilities to the Linux world,"said Shekhar Joshi, a Senior Program Manager on the Microsoft SQL Server ODBC Driver For Linux team.

    This is another example of Microsoft and the SQL team's commitment to interoperability. You can read Shekhar's full blog post here, while additional information on the first release of Microsoft ODBC Driver for Linux can be found here.

  • Interoperability @ Microsoft

    New releases from the MS Open Tech Hub: Rx 2.1 and ActorFx V0.2


    From the Rx and ActorFx team:
    Claudio Caldato, Principal Program Manager Lead, MS Open Tech
    Erik Meijer, Partner Architect, Microsoft Corp.
    Brian Grunkemeyer, Senior Software Development Engineer, MS Open Tech Hub
    Joe Hoag, Senior Software Development Engineer, MS Open Tech Hub

    Today Microsoft Open Technologies, Inc., is releasing updates to improve two cloud programming projects from our MS Open Tech Hub: Rx and ActorFx .

    Reactive Extension (Rx) is a programming model that allows developers to use a common interface for writing applications that interact with diverse data sources, like stock quotes, Tweets, computer events, and Web service requests. Since Rx was open-sourced by MS Open Tech in November, 2012, it has become an important under-the-hood component of several high-availability multi-platform applications, including NetFlix and GitHub.

    Rx 2.1 is available now via the Rx CodePlex project and includes support for Windows Phone 8, various bug fixes and contributions from the community.

    ActorFx provides a non-prescriptive, language-independent model of dynamic distributed objects for highly available data structures and other logical entities via a standardized framework and infrastructure. ActorFx is based on the idea of the mathematical Actor Model, which was adapted by Microsoft’s Eric Meijer for cloud data management.

    ActorFx V0.2 is available now at the CodePlex ActorFx project, originally open sourced in December 2012. The most significant new feature in our early prototype is Actor-to-Actor communication.

    The Hub engineering program has been a great place to collaborate on these projects, as these assignments give us the agility and resources to work with the community. Stay tuned for more updates soon!

  • Interoperability @ Microsoft

    WS-Management adopted as ISO/IEC international standard


    DMTF (Distributed Management Task Force) announced today that the DMTF Web Services Management standard (WS-Man) version 1.1 has now been adopted by ISO (International Organization for Standardization) and IEC (International Electrotechnical Commission) as an international standard, ISO/IEC 17963:2013. This is a great milestone on the industry’s journey toward broad adoption of interoperable, royalty-free, standards-based solutions for management of systems, applications, and devices.

    WS-Man is designed to address the cost and complexity of IT management by providing a common way for systems to access and exchange management information across the entire IT infrastructure. It is used as a network access protocol by many CIM (Common Information Model) based management solutions, including the DMTF’s CIM based DASH (Desktop and Mobile Architecture for Server Hardware) and SMASH(Systems Management Architecture for Server Hardware) solutions, as well as the DMTF’s Virtualization Management (VMAN) standards which we use to manage Windows Hyper-V. WS-Man is also the primary protocol for management of Windows Server 2012, and has been supported by all versions of Windows since XP (both client and server) through Windows Remote Management (WinRM). For more information about WS-Man and how it is supported in Windows Server, System Center, and PowerShell, see Jeffrey Snover’s blog post on the Windows Server blog.

    Microsoft has a longstanding commitment to interoperability and standards in the management arena. In the early 1990s, Microsoft was one of the founding members of DMTF, and worked closely with industry partners on the development of CIM, a flexible standard that has been adopted for a wide variety of uses across computer systems, operating systems, networks, and storage devices. WS-Man and CIM are a powerful combination, with a rapidly growing ecosystem, and ISO/IEC adoption of WS-Man as an international standard will enable further adoption. Microsoft worked with the industry to standardize WS-Man CIM mappings for common management scenarios.

    Microsoft also developed OMI (Open Management Infrastructure), a high-performance small-footprint implementation of a CIM+WS-Man server, released last year by The Open Group as an open-source project under the Apache 2 License. Written in portable C, OMI provides an enterprise-grade CIM and WS-Man implementation so that hardware and software vendors can focus their investments on providers and schemas within their domain expertise. OMI opens up management of hardware devices from any vendor in a datacenter using a “Datacenter Abstraction Layer” or DAL – enabling management of devices and servers that implement standard protocols and schemas from standards compliant tools like PowerShell.

    Through those and related initiatives, we are continuing to help the industry deliver on the promise of standards-based solutions that address the cost and complexity of systems management. For example, DMTF also announced today that the DMTF Platform Management standard, which provides a common architecture for communication between management subsystem components, was adopted by ANSI (American National Standards Institute) and INCITS (International Committee for Information Technology Standards) as a US national standard, INCITS 495-2012 Platform Management. As DMTF VP of Technology Hemal Shah noted in today's announcement, “Adoption and recognition of the Platform Management and Web Services Management standards by these organizations provide additional credibility, while increasing the accessibility of these solutions to IT managers.”

    These developments are further evidence of the global interest in interoperable, royalty-free, standards-based solutions to management of systems, applications, and devices. Congratulations to everyone who has worked to help achieve these important milestones!

    Colleen Evans
    Principal Program Manager
    Microsoft Open Technologies, Inc.

    Doug Mahugh
    Lead Technical Evangelist
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    Redis on Windows – new version and NuGet Packages


    Continuing our support for Redis on Windows, Microsoft Open Technologies, Inc. has just released the latest version (2.6.12). It has been tested and validated by our test team using the same process we used in the past to ensure stability and reliability.

    We’ve also released Redis-32 and Redis-64 NuGet packages to make it easier to install for developers that don’t need access to the source code.

    We are also working on adding support for the Web Platform Installer (WebPI) so stay tuned for more news soon!

  • Interoperability @ Microsoft

    Android and Java Developers: MS Open Tech has a SignalR SDK for You!


    Today, Microsoft Open Technologies is releasing a SignalR software development kit for Android/Java developers. This SDK, available to the open source community on GitHub will give Java and Android developers the opportunity to add real-time functionality to their Java and Android client apps.

    To learn more, read MS Open Tech’s post.

  • Interoperability @ Microsoft

    Interoperability Goodness at TechEd 2012


    I know there was a flurry of news at the recent TechEd 2012 conference in Orlando, so I wanted to point you to a piece of Interoperability goodness that might have gone unnoticed in the mix: the release of the System Center 2012 – Virtual Machine Manager (VMM) OVF Export/Importtool.

    I recently chatted with my colleague Monica Martin, who is involved in the DTMF work around OVF for MS Open Tech. She gave me a lot of insight into the tool, which uses the Distributed Management Task Force (DMTF)’s Open Virtualization Format (OVF 1.1) standard, enables Interoperability between System Center 2012 Virtual Machine Manager (VMM) and VMware vCenter and Citrix Xen Server.

    The tool allows Microsoft’s System Center 2012 VMM users to import and export a virtual machine in an OVF 1.1 format from VMware’s vCenter and Citrix’s Xen Server.

    The OVF Import/Export tool is a set of cmdlets for use with VMM. Use of OVF promotes portability and interoperability of a virtual machine across Microsoft, VMware and Citrix hypervisors. We’ve gained valuable implementation experience with Citrix and VMware using OVF and successfully tested with vCenter and Xen Server.

    Adding OVF and the OVF Import/Export tool to the cache of advanced infrastructure, configuration and service management capabilities to SC 2012 is another milestone in Microsoft’s plans to deliver ongoing value to our customers and partners.

    The Open Virtualization Format (OVF) is an open standard for packaging and distribution of virtual appliances to run in virtual machines developed in the Distributed Management Task Force (DMTF), Inc. Microsoft and other industry partners are focused on the development of OVF. Microsoft has been involved in OVF development from the outset.

    OVF 1.1 is an international standard important to customers and partners, who are looking for strategies to effectively enable and speed their on-ramp of virtualization technologies in an interoperable way.

    This is another example of how Microsoft is committed to interoperability and openness in the products and services we provide, including our multi-hypervisor and standard-based storage management features in SC 2012.

    We have now taken this even further with the release of the System Center 2012 – Virtual Machine Manager (VMM) OVF Export/Import tool, which can be downloaded from the Microsoft Download Center. More information can be found on TechNet.

    For more information about this tool and other System Center products and solutions, please visit the System Center website.

  • Interoperability @ Microsoft

    Now Available through Microsoft’s Web Platform Installer: Azul Zulu OpenJDK Package for Windows


    We have great news for Java developers planning to deploy the latest Azul Zulu OpenJDK v1.7 package on 64 bit Windows Server machines. Now you can automate the process using the Microsoft Web Platform Installer (WebPI).

    This new offering is the result of our partnership with Azul, which has produced Zulu, a version of the Azul OpenJDK built for the Windows Azure Platform. In October we also integrated Zulu into our Windows Azure Plugin for Eclipse with Java. Today’s announcement continues our plan of making Java support on Windows Azure as flexible and simple as possible.

    If you’re not familiar with the Web PI, then your SysAdmin has probably been holding out on you. It’s a free and extremely useful tool that automates the download and installation of products and applications designed for the Microsoft Web Platform as well as most popular free web applications via its built-in Windows Web Application Gallery.

    The Zulu Web PI Application Gallery entry downloads the latest Zulu distribution from Azul Systems, The process is simplified, as WebPI can unzip it, automatically set your JAVA_HOME to reference Zulu, and add Zulu references to your PATH environment variable to set Zulu as the default JVM on that machine. 

    Windows Server installation

    For now, we recommend - for Windows Server only (not Eclipse clients) - using the Web PI installer to install. This is due to an Eclipse bug we’ve discovered during testing, which we are working to resolve.

    Workaround for Eclipse Clients

    If you would like to install Zulu it on your client computer and you use Eclipse as your Java IDE, we have discovered at least one issue in Eclipse that will result in intermittent hangs if Zulu is used as Eclipse’s JVM. If you are keen to try it out with Eclipse anyway, then the known workaround is to start Eclipse with additional command line parameters: -vmargs -XX:MaxPermSize=256m. If you encounter other issues, then let Azul and/or us know. If you have an Eclipse account and this issue is affecting you, please vote up the importance of bug 426422.

    Step-by-Step Installation on Windows Server

    Log on to your 64 Bit Windows Server as a user with administrative privileges, open a browser and navigate to http://www.microsoft.com/web/downloads/platform.aspx

    Next, click on the big green “Free Download” button to install the Web Platform Installer:


    The Installer will start as soon as it’s downloaded. The first screen you see is the “Spotlight” Screen, listing the most popular and/or newest packages featured in the Web PI Installer:


    You will need to click to the “Applications” tab to find theZulu Installer in the Web Application Gallery.


    NOTE: Entries are ordered by number of downloads, not alphabetically. If you do not see it listed at the top, it may be easiest to search for “Azul Zulu, OpenJDK v1.7”.


    Click on the Add button, then click install:


    As mentioned earlier, during Installation, the latest Zulu distribution from Azul Systems will automatically download, as well as set your JAVA_HOME to reference Zulu, and then add references to your PATH environment variable to set Zulu as the default JVM on that machine. 

    Once this process is complete, you are ready to deploy Java applications!

    We’re always looking for ways to enhance the developer experience and to make life easier for Java developers on Windows Server and Windows Azure, so please let us know whether you find this to be a useful tool..

    And watch this space for more exciting news coming soon!

  • Interoperability @ Microsoft

    Gigaspaces Working with MS Open Tech on Java Tools for Windows Azure


    We’re pleased to announce that GigaSpaces Technologies Ltd, an established leader in helping enterprises move their Java applications to the cloud, has joined Microsoft Open Technologies, Inc. and Persistent Systems Ltd. in the the development work behind the latest version of the Windows Azure Plugin for Eclipse with Java (by Microsoft Open Technologies) - June 2012 CTP.

    GigaSpaces has contributed the “Publish to cloud”wizard to the plugin, enabling Java developers to easily deploy their projects to the Windows Azure cloud directly from within Eclipse, thus eliminating the need for manual uploads via the Windows Azure portal. GigaSpaces has also contributed other new capabilities for Java developers, including:

    • the ability to view the progress of the deployment in an Windows Azure Activity Log view in Eclipse
    • the ability to reconfigure remote desktop access as part of the deployment process
    • the ability to delete previously published deployments

    You can read more about the latest plugin update here, and you can learn how to use the “Publish to cloud” feature here.

    Known for its industry-leading scalable application platforms, GigaSpaces Technologies is the creator of Cloudify, an innovative Open PaaS stack solution that enables on-boarding of mission-critical and big-data applications to the cloud without any code or architectural changes. Cloudify's recipe-based approach provides the flexibility and control required to manage the deployment, scaling, management and high availability of all the tiers of your application. Hundreds of tier-1 organizations worldwide use GigaSpaces technology to enhance IT efficiency and performance, among which are Fortune Global 500 enterprises and ISVs, from many industries spanning financial services, e-commerce, Telco, healthcare, and more.

    Thanks to the team at GigaSpaces for all they’ve done to help streamline and improve the Windows Azure development and deployment experience for Java developers! We look forward to continued collaboration with Gigaspaces in the future.

    Martin Sawicki

    Principal Program Manager

    Microsoft Open Technologies, Inc.

    A subsidiary of Microsoft Corporation

  • Interoperability @ Microsoft

    Impressions From My First DrupalCon


    clip_image001Last week I attended DrupalCon Chicago – my first DrupalCon since I started working on Drupal related projects in the Interoperability team.  Overall, my impression of the event was “wow”.  It has been a while since I have seen such a large group (3,000+) of people this passionate about a single piece of software.  It didn’t take long for me to realize why: these weren’t just users of the software – they were part of the software.  Everyone is bought in, everyone has a stake and a say.  This is what Open Source is all about and I must say I dig it.

    I spent several hours working the Microsoft booth which was an excellent way to get the vibe of the community – particularly around where Microsoft can and should play a part.  Most common question?  “What exactly does Microsoft have to do with Drupal?”.  The answer is simple: we are working hard along with many partners in the community to make Drupal shine on Windows / Windows Azure and SQL Server for those who would be interested taking advantage of that capability.  We did not come to sell Windows or SQL Server but rather to explain what is possible, provide choice and last but not least listen to what people actually want Microsoft to do!  I learned a lot about interesting integration scenarios with other Microsoft products and services that I had not even thought about that are of interest to the community.  And the semi-surprising bit: not a single whiff of hostility from a single person through the entire event.  A number folks had no qualms about telling me that they were a LAMP shop and told me why, but more often than not it was followed by “…but I understand why you guys are here and I appreciate your participation in the community.”  This is a classy bunch, and I appreciate the opportunity to have been there.

    I look forward to continuing to engage more with the Drupal community at large alongside my colleagues Grace, Mark, Alessandro and many others who are committed to a long term partnership.  I look forward to your feedback as well on the Drupal projects that we are working on and what we should be working on!

    Craig Kitterman
    Sr. Technical Ambassador

  • Interoperability @ Microsoft

    Quicksteps to get started with PHP on Windows Azure


    The weather in the northern hemisphere is still a little nippy, and if you're like me, you're spending a lot of time indoors with family and friends enjoying the holiday season. If you're spending some of your time catching up and learning new things in the wonderful world of cloud computing, we have a holiday gift of some visual walkthroughs and tutorials on our new "Windows Azure for PHP" center. We pushed up these articles to help you quickly get set up with developing for Windows Azure

    "Getting the Windows Azure pre-requisites via the Microsoft Web Platform Installer 2.0" will help you quickly set up your machine in a "few clicks" with all the necessary tools and settings you will need to work with PHP on Windows, IIS and SQL Server Express. We’ve included snapshots of the entire process you will need to get a developer working with the tools built by the “Interoperability at Microsoft” team

    Deploying your first PHP application with the Windows Azure Command-line Tools for PHP" will visually walk you through getting the tool, getting familiar with how it's used and packaging up a simple application for deployment to Windows Azure.

    Deploying your first PHP application to Windows Azure” will build on top of the former articles with walk troughs of how to deploy the application using the Windows Azure management console, both the “classic” and present versions.

    I hope this will help you get over the first speed bump of working on Microsoft’s cloud computing platform and we look forward to bringing you more of these based on your feedback and input. So please check them out and let us know how you feel!

    imageHappy Holidays and Happy New Year, 2011!


  • Interoperability @ Microsoft

    Microsoft + Joomla at J and Beyond 2011, Trip & Videos



    On May 6-8, 2011 we took part in a major Joomla! event, J and Beyond, that took place in Rolduc Abbey in the Netherlands. It was indeed an exciting opportunity to connect with the community and in an extraordinary venue. Not only was it a medieval spiritual place for worship but it was also a school and beyond theology they covered quite a few subjects. This time we had a bunch of geeks wandering the halls of this unique institution and at certain point it felt like a Harry Potter movie with a different kind of “wizard”ing going on Smile 
    JandBeyond Abbey Scene

    We presented some sessions  at the event …

    “IE6 RIP - send flowers” where we talked about moving to a modern browser.  We talked about what to look for in a web browser today. The features and standards that are presently available and updates that are close in HTML5. We also covered the work that we are doing with Internet Explorer moving forward including a discussion of what is here today with IE9 and our IE10 Platform Previews and what will be coming in our HTML5 labs to help create a better and more interoperable web. image
    IE6 RIP...Send flowers!

    “Microsoft and the Joomla! Community” we talked about our role working with open source communities and some of the activities Microsoft is involved in to make the Joomla experience great on our platform. We discuss what we have done to help make Joomla! accessible to more users on Windows, IIS, WebMatrix and the work around multi-db support.
    Microsoft and the Joomla! community

    We also had Sudhi Seschala, our partner from Hooduku join us, and who delivered a session on “Joomla 1.6 support multiple databases” covering the work he’s been doing to give the Joomla community more db options including the integration work that he’s been doing for Joomla 1.6 and SQL server and with Joomla 1.6 and SQL Azure.
    Joomla! 1.6 support multiple databases

    We also had the opportunity to be interviewed by our friends at JoomStew Radio, Alice Grevet  and Dianne Henning and a guest interviewer, Henrik Hussfelthad who dragged us over there and I was joined by Fernanda Badano, also for Microsoft, Hagen Graf from Cocoate and Toni Marie and Victor Drover from Anything Digital join us for a round of discussions. The podcast is available at JoomStew at J and Beyond 2011 - Part 4 MP3 Download.

    JoomStew at Jab11 - Part 4 - Anything Digital and Microsoft

    I also got a chance to interview many friends from the Joomla! community including Ryan Ozimiek, Sudhi Seshachala, Louis Landry and many more which will be coming online at our InteropBridges.tv on Channel9 or by clicking at the images below …

    Joomla! Community and Microsoft, Interview with Ryan Ozimek @ J and Beyond 2011
    Jas Sandhu @jassand chats with Ryan Ozimek @cozimek, President of Open Source Matters (OSM), the non-profit organization that provides organizational, legal and financial support for the Joomla! open-source project, at the J and Beyond 2011 conference in Kerkrade, Netherlands. We talk about what Ryan does at OSM, the conference and Microsoft’s participation with the community including the work on mutli-db work supporting SQL Server and SQL Azure , Joomla in WebMatrix and more.


    Joomla! Community and Microsoft, Interview with Sudhi Seshachala @ J and Beyond 2011
    Jas Sandhu @jassand chats with Sudhi Seshachala, Founder & CTO at Hooduku at the J and Beyond 2011 conference in Kerkrade, Netherlands. We talk about what Sudhi’s involvement with the  Joomla! community, the conference, his work on mutli-db work supporting SQL Server and SQL Azure  and working with Microsoft.clip_image002


    Joomla! Community and Microsoft, Interview with Louis Landry @ J and Beyond 2011
    Jas Sandhu @jassand chats with Louis Landry @louislandry, a core developer and leadership team member for the Joomla! open-source project, at the J and Beyond 2011 conference in Kerkrade, Netherlands. We talk about what Louis role today is, the conference, where the project is heading in the future, the work on mutli-db work supporting SQL Server and SQL Azure and Microsoft’s participation with the community.

    We’ll be publishing more videos on InteropBridges.tv with more community members soon.

    We had a great time there especially with connecting the diverse set of folks who represented the community.  I would like to thank the organizers of J and Beyond 2011, Ryan, Sudhi, Louis and all our friends who joined us from the Joomla! community. I look forward to seeing you all again at soon.

    Jas Sandhu, Technical Evangelist, @jassand 

  • Interoperability @ Microsoft

    If you’re working with Java on Windows Azure, this update is for you!


    Martin Sawicki – Principal Program Manager – MS Open Tech
    Brian Benz – Sr. Technical Evangelist – MS Open Tech

    Incorporating developer feedback and keeping pace with Windows Azure’s ongoing evolution, Microsoft Open Technologies, Inc., has released a new update to the Windows Azure Toolkit for Eclipse. This latest version – the May 2013 Preview (or v2.0.0) – includes a number of new improvements we hope will further simplify your Java work in the Windows Azure cloud. This major update accompanies the release of the Windows Azure SDK v2.0.

    Key Enhancements:

    Automatic upload of the JDK and Server to Windows Azure storage (and deployment from there)

    This new option automatically uploads the selected JDK and Web Application Server, when needed, to a selected Windows Azure storage account and deploys these components from that account. This commonly requested feature can greatly enhance the ease and efficiency of deploying the JDK and server components, as well as help with team development scenarios, by avoiding the need to embed these components in the deployment package, or the hassle of manual uploads. Our “Hello World” tutorial walks you through these steps in detail. Here is a screenshot from the updated project creation wizard showing this feature in action:


    Centralized storage account tracking

    You may be wondering how Windows Azure knows which storage accounts to display in the drop-down list. The answer is another new feature – centralized storage account tracking. In order to reference storage accounts more easily across the various features that rely on storage, like caching and, in this case, the JDK or the Web Application server component deployment, you can register existing storage accounts names and endpoints in your current Eclipse workspace under Preferences > Windows Azure > Storage Accounts:


    As usual, you can import the information from your subscription’s publish settings file to provide the storage account discovery magic.

    Here’s an example of the centralized storage account tracking for caching as well. The drop down shows you where you would specify which storage account to store credentials for the cache configuration in a Windows Azure role. This way you no longer have to enter the access key manually.


    Simplified Remote Access setup

    For this release we’ve also streamlined the previous two-step remote access setup into one step. In the “Publish to Cloud” wizard, type in a user name and password to enable remote access, or leave it blank to keep remote access disabled.


    By default, Eclipse will use the sample certificate for encrypting your remote access credentials in the Windows Azure configuration file. If you’d rather use your own certificate, choose the Advanced… link.

    The “all-in-one” Eclipse library for easier Windows Azure API access now updated with the latest (v0.4.2)

    The latest SDK distribution of the Windows Azure Libraries for Java are packaged along with their open-source dependencies as an Eclipse library and referred to as the Package for Windows Azure Libraries for Java (by MS Open Tech). If your Java code needs to take advantage of the Windows Azure API, just add this library to the build path of your Java project (not the Windows Azure project) and all the needed libraries will be automatically referenced and included in your WAR file.


    Additional Enhancements

    We’ve also fixed sticky sessions on Windows Server 2012 (previously limited to Windows 2008). And we’ve made some package publish performance improvements that can make the upload portion of the deployment process up to twice as fast as in previous releases, especially helpful if you’re not using the “deploy from download” options, but still embedding large components in the deployment package itself. We’ve also made a number of bug fixes, including some reported issues related to deploying Tomcat and Jetty on Windows 2012 from a cloud download.

    Getting the Plugin

    Here are the complete instructions to download and install the Windows Azure Plugin for Eclipse with Java, as well as updated documentation.

    As always, let us know how the latest release works for you and how you like the new features! To send feedback or questions, just use MSDN Forums or Stack Overflow.

  • Interoperability @ Microsoft

    Simplifying Big Data Interop – Apache Hadoop on Windows Server & Windows Azure


    As a proud member of the Apache Software Foundation, it’s always great to see the growth and adoption of Apache community projects. The Apache Hadoop project is a prime example. Last year I blogged about how Microsoft was engaging with this vibrant community, Microsoft, Hadoop and Big Data. Today, I’m pleased to relay the news about increased interoperability capabilities for Apache Hadoop on the Windows Server and Windows Azure platforms and an expanded Microsoft partnership with Hortonworks.

    Microsoft Technical Fellow David Campbell announced today new previews of Windows Azure HDInsight Service and Microsoft HDInsight Server, the company’s Hadoop-based solutions for Windows Azure and Windows Server.

    Here’s what Dave had to say in the official news about how this partnership is simplifying big data in the enterprise.

    “Big Data should provide answers for business, not complexity for IT. Providing Hadoop compatibility on Windows Server and Azure dramatically lowers the barriers to setup and deployment and enables customers to pull insights from any data, any size, on-premises or in the cloud.”

    Dave also outlined how the Hortonworks partnership will give customers access to an enterprise-ready distribution of Hadoop with the newly released solutions.

    And here’s what Hortonworks CEO Rob Bearden said about this expanded Microsoft collaboration.

    “Hortonworks is the only provider of Apache Hadoop that ensures a 100% open source platform. Our expanded partnership with Microsoft empowers customers to build and deploy on platforms that are fully compatible with Apache Hadoop.”

    An interesting part of my open source community role at MS Open Tech is meeting with customers and trying to better understand their needs for interoperable solutions. Enhancing our products with new Interop capabilities helps reduce the cost and complexity of running mixed IT environments. Today’s news helps simplify deployment of Hadoop-based solutions and allows customers to use Microsoft business intelligence tools to extract insights from big data.

  • Interoperability @ Microsoft

    Great video - MongoDB Data Analysis with Jaspersoft on Windows Azure


    Jaspersoft is an open source Java-based Business Intelligence suite that has experience in the cloud – to date, they have over 500 customers running Cloud solutions. Jaspersoft has put together this great video of the JasperReports server visualizing a million rows of GitHub archive data to show how Windows Azure, NoSQL, and open source Java BI solutions can work together.

    This video shows Jaspersoft accessing MongoDB via their native connector on Windows Azure. The Jaspersoft native connector provides near real-time connectivity, providing great performance for even complex visualizations, as you’ll see in this video:



    Jaspersoft runs on both Linux and Windows, meaning it can also run on either the Windows or Linux platform on Windows Azure as well. Jaspersoft also has native connectors for several other data sources, including Microsoft SQL Server as well as a variety of other relational data platforms and formats, and Hadoop. Because Jaspersoft is written in Java, it can be a key part of any solution that you create using our other Windows Azure – enabled Java Tools as well.

    Do you use Jaspersoft on Windows Azure, or have a Java solution running on Windows Azure that you’d like to share? Let us know in the comments and maybe we’ll highlight your solution in a future post!

  • Interoperability @ Microsoft

    MS Open Tech working with the ANGLE Project community to increase apps’ portability to Windows Devices


    Microsoft Open Technologies is working with the ANGLE Project community to enable ANGLE in Windows Phone 8 and Windows Store apps. This will allow developers to reuse their existing OpenGL ES 2.0 code, and to apply their current skills to building apps and games for Windows devices.

    ANGLE Project is an open source project which goal is to allow Windows users to run OpenGL ES 2.0 content seamlessly by translating OpenGL ES 2.0 API calls to DirectX 9 or DirectX 11.

    You can read more on our new blog here: http://aka.ms/msopentechcontributestoangle

  • Interoperability @ Microsoft

    Windows Azure SDK for PHP available, including support for Service Bus


    Good news for all you PHP developers out there: I am happy to share with you the availability of Windows Azure SDK for PHP, which provides PHP-based access to the functionality exposed via the REST API in Windows Azure Service Bus. The SDK is available as open source and you can download it here.

    This is an early step as we continue to make Windows Azure a great cloud platform for many languages, including .NET, Java, and PHP. If you’re using Windows Azure Service Bus from PHP, please let us know your feedback on how this SDK is working for you and how we can improve them. Your feedback is very important to us!

    You may refer to Windows Azure PHP Developer Center for related information.

    Openness and interoperability are important to Microsoft, our customers, partners, and developers. We believe this SDK will enable PHP applications to more easily connect to Windows Azure making it easier for applications written on any platform to interoperate with one another through Windows Azure.

    Ram Jeyaraman
    Senior Program Manager
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    W3C Announces Process Innovations Making it More Authoritative And More Agile


    The JTC1 and W3C jointly announced this week that the international vote of 8 web services specifications was successful, and that these Recommendations are now ISO/IEC JTC1 International Standards.

    Last year, the W3C applied to ISO/IEC JTC1 to become a “Publicly Available Specification (PAS) Submitter”, which would allow selected W3C Recommendations to be  voted on to become international standards.

    After ISO/IEC JTC1’s approval, W3C submitted the package of 8 web services specifications that was recently approved. With this approval, the W3C is now using successfully another process innovation, the second this month.

    So why is this announcement important? The best answer comes from the W3C press release, which says: "To many national bodies, the ISO and IEC brands will be more familiar than the W3C brand. In some cases, such as procurement, a country may be required to use ISO/IEC standards. For these reasons and others, W3C believes that formal approval by JTC 1 of W3C standards as International Standards will increase deployment, reduce fragmentation, and provide all users with greater interoperability."

    Microsoft already implements these ISO/IEC standards in several ways, especially in .NET Framework which uses all their major features. Thus, products which layer on top of the .NET Framework can also use these standards. Microsoft General Manager Bob Dimpsey notes this in his testimonial, while also pointing to the fact that this announcement validates W3C’s ability to build authoritative standards.

    “Web Services specifications are an important part of the interoperability surface for Microsoft’s enterprise and cloud products.  For example, while Web Services specifications are used to enable a Single-Sign-On experience using Access Control Services (ACS), they are also one key way for connectivity with Windows Azure applications through Windows Communication Foundation. We are very pleased that national bodies around the world have agreed to advance these specifications to become ISO/IEC Standards.  Microsoft strongly endorses this vote of confidence in W3C’s ability to build consensus across diverse communities and produce stable, interoperable, and useful standards,” he says.

    This is the second important announcement from W3C in recent weeks about process innovations.  As you may remember, on August 16 Community Groups launched to provide an open forum where developers can work with other stakeholders to develop, analyze, test, and promote specifications using a lightweight process with sound legal underpinnings. This announcement was well received, with 15 groups (as of this writing) already up and running, while 9 more have been proposed and are looking for supporters. 

    Press reaction has also been very favorable.  I particularly like Webmonkey’s summary: "Well, now is your chance to do something more than whine about the slow pace of standards on your blog. The W3C’s new community groups are designed so that anyone can contribute to the development of HTML. Just head over to the site and join a group that interests you. …  With the new community groups you don’t need to be a Google or Apple employee to catch the attention of the W3C’s members, you just need to sign up and post your ideas for everyone to read."

    Together, the Community Group and PAS Submission announcements add up to a compelling story: The W3C Recommendation process now has an “on ramp” allowing open and agile development of community specifications that can feed specifications into traditional Working Groups, and it has an “off ramp” that allows provably useful and interoperable Recommendations to become ISO/IEC JTC1 international standards. 

    Not all specs will travel the full route from informal brainstorming in a Community Group to formal standardization by ISO/IEC JTC1, but it’s good to have that full development path available. Not only can individuals get together and jumpstart potential new web standards but there is a full path to ISO/IEC JTC1 standardization. 

    Michael Champion, Sr. Program Manager

    Member of W3C Advisory Committee and Advisory Board

  • Interoperability @ Microsoft

    More guidance and tool for porting iPhone & Android apps to Windows Phone


    [Cross-posted on the Windows Phone Developer Blog]

    Windows Phone 7.5 “Mango” is just out of the door, smoothly going to users’ phones. So, if you or your friends haven’t started to look at Windows Phone, this is great timing.

    Today I’m excited to announce new guidance based on migration samples and a SQLite to SQL Server Compact database conversion tool. We hope that these new items combined with our previous extensive guides (for Android, iPhone, and Symbian Qt) will accelerate your ramp up time and improve your experience in porting apps to Windows Phone from iPhone and Android. Read below to see what we’ve got for you.

    Learn by example, from what you know

    First we have built a series of samples to aid you in the process of migrating your iPhone & Android applications over to Windows Phone by providing a look at the differences and similarities of each platform. Through analysis, you'll see how to implement the same functionality on Windows Phone as you have within your iPhone and Android application. We’ve started with 3 samples:

    • In-App Advertisements
    • Geo-Location
    • Group Messaging

    And for each sample, you’ll find the source code on Android/iPhone, the Windows Phone ported version and the porting notes. The content is available here for Android, and here for iPhone. And since we had a little bit of extra time, we added a bonus track for Android developers, with a “10 simple tasks: tips & tricks” article, where we explain how common simple tasks performed during Android development can be done when doing Windows Phone development.

    Finally, we also included a sample “Notification Service”, which shows how to build a multiplatform push-notification services supporting the different providers used by Android, iPhone and Windows Phone. Documentation is available here and sample code is here.

    SQLite to SQL Server Compact database conversion tool

    Windows Phone 7.5 “Mango” includes relational database support by way of Microsoft SQL Server Compact (SQLCE). So we thought it might be handy to create a tool to aid developers in getting their database (data, schemas and views) ported over to Windows Phone without too much trouble. Differences in data types between various database platforms can make the manual migration of your data a daunting task. SQLite2SQLCE is a tool developed to make the conversion process simple by converting a SQLite database into SQLCE while simultaneously creating the default classes needed to incorporate the new database into your Windows Phone application.


    With the database conversion tool, we’ve also included a nifty tool designed to aid developers in converting their SQL queries to LINQ while simultaneously helping them to learn the new query language. LINQ (Language-Integrated Query) is a native data querying toolset integrated into the .NET Framework and use on Windows Phone.


    Documentation and a simple migration sample are available here. And by the way, the source code of these utilities is available on CodePlex.

    Updated API Mapping tool

    The API Mapping tool has been expanded: it now covers a few more features like sensors (Camera, Compass & Gyro), multitasking (notification, app switching & background agents) , data access (SQL, file access), launchers/choosers.
    The API Mapping tool is available here: http://wp7mapping.interoperabilitybridges.com/

    Porting apps to Windows Phone: we’re here to help!

    Finally, once you’ve be through all our “Porting” guidance, I recommend that you follow at your own pace the “Window Phone Mango Jump Start” online video training.

    We encourage developers to leave comments and questions on any article. We are watching and we are open to feedback. If you see something missing or want to suggest new API mapping or porting topic to include just go to http://wp7mapping.uservoice.com.

    Jean-Christophe Cimetiere-@jccim

  • Interoperability @ Microsoft

    WebSockets and HTML5 Labs @ MIX11


    Yesterday at MIX11 in Las Vegas, I had the pleasure of delivering a breakout session titled “Hot from the labs: HTML5 Web Sockets” along with my colleague Paul Batum. As it turns out there are a lot of people interested by WebSockets technology, and there was not a seat to be had, with standing room only. The streaming video of the session just went live, so I thought I would share this with all of you who are interested in WebSockets but were unable to attend our session. Enjoy!

    Don’t forget to stop by http://html5labs.com to experiment with the latest prototypes of emerging HTML5 standards and send us your feedback!


    Craig Kitterman

  • Interoperability @ Microsoft

    Entity Framework V6 (EF6) Beta 1 from Microsoft Includes Latest & Greatest Open Source Contributions


    Microsoft Corp. has just announced the Beta 1 release of Entity Framework 6 (EF6).  EF6 combines the latest and greatest open source community contributions with key features and tooling that you were asking for.  Here’s the official announcement with a full list of new features.  

    As you might recall, last summer Microsoft Open Technologies, Inc. (MS Open Tech) announced that the Entity Framework (EF) was now open source.  Since then several iterations have been released, and many new features and capabilities have been added from the development team at the Microsoft Open Tech Hub as well as some great contributions from the software developer community.  Here are some highlights from the 21 community pull requests that we accepted:

    · Custom Migrations Operations were enabled by a contribution from iceclow and this blog post provides an example of using this new feature.

    · Pluggable Pluralization & Singularization Service was contributed by UnaiZorrilla.

    · Significantly improved warm up time (view generation) – especially for large models – via a contribution from AlirezaHaghshenas.

    This Get It page has all the information on installing the prerelease and current runtime packages in Visual Studio 2012.

    Don’t know your Model First from your Code First or Database First?  Here’s a great intro to EF and EF concepts.

    The team is now putting the finishing touches on the EF6 release.  Early adopters can test drive the latest Beta features in the signed nightly build. And don’t forget to have a look at the latest Feature Specifications and Design Meeting Notes.  And follow the MS Open Tech  development team on Twitter and like them on Facebook to keep in the loop on the latest developments from the team and the community. 

    Let the MS Open Tech hub team know your experiences with EF6 by start up a discussion on CodePlex for feedback.   You can also post questions and find answers on StackOverflow by using the entity-framework tag.

  • Interoperability @ Microsoft

    February 22 is International Open Data Day – Celebrate with our Tutorial or create your own!


    Open Data Day Events around the world!

    Here at Microsoft Open Technologies, Inc. we have a lot of fun working with Open Source Software every day. For those who may be interested in sharing the experience, Microsoft is sponsoring several International Open Data Day events over the next few days, notably CodeAcross 2014 in multiple venues worldwide. Have a look here for details on CodeAcross events sponsored by Code for America. In Canada, Make Web Not War is organizing several events in Toronto, and out West, There is also an Open Data Summit in Vancouver. You can also find Open Data Day Hackathons and other events near you by accessing the Open Data Day events map.

    An Open Tutorial

    To contribute to Open Data Day I’ve put together a tutorial to show you how to enable a solution on Windows Azure that combines three open themes – Open Government, Open Data, and Open Source Software (OSS). The result in this case, is a reference map illustrating the locations of more FAA-licensed aircraft dealers across the United States. For the Open Government piece, I have selected open domain data provided by the US Federal Aviation Administration - the FAA Aircraft Registry. I have chosen to use the open source MongoDB to store data. I use the Open Data Protocol (OData) via Windows Communication Foundation (WCF) in Windows Azure to provide easy connectivity to the MongoDB data, and I use Microsoft PowerBI for Office365 to easily plot and visualize the data on a map.

    Here’s a screen shot of the finished product:


    Happy Open Data Day! Let us know how you plan to celebrate the occasion in your corner of the world.

  • Interoperability @ Microsoft

    Pointer Events Progress: Mozilla and Blink Communities Reach a Significant Engineering Milestone


    As stated in the Blink 2014 goals, the Blink team considers Pointer Events as one of their priorities to improve the mobile Web platform experience. And it has recently shown evidence of their commitment to Pointer Events by checking in touch-action functionality into the code base and making it available through an experimental flag.

    Likewise, the Mozilla Firefox team has approved a patch submitted by Nick Lebedev from Akvelon that implements the same functionality. This is the result of months of great work in the OSS community where multiple engineers from different companies contributed their design ideas and engineering insights.

    Learn more on Pointer Events progress reading our latest blog post on our new Web site : http://aka.ms/pointereventsinfirefox

  • Interoperability @ Microsoft

    HTML5 : Microsoft Participation in the W3C HTML Working Group


    W3chtml5wg I’m Paul Cotton, Group Manager, Web Services Standards and Partners, in the Interoperability Strategy Team. I’m in charge of a team that works on web services standards and interoperability.  My team is involved in W3C, OASIS, WS-I, Apache and ISO/IEC JTC1 and cooperates with the vendor and user communities to advance interoperability of the WS-* specifications.  In addition, I am co-chair of the W3C HTML Working Group that is developing the next version of HTML.

    The Web has grown significantly over the last decade based largely on the interoperability of the W3C HTML4 Recommendation.  HTML forms the backbone of interoperability on the Web and the specification is being evolved at the W3C as part of the HTML5 effort.  Along with many other companies and individuals, Microsoft is contributing significant resources and expertise to work with the W3C to ensure the success of the HTML5 efforts (see this blog post [http://blogs.msdn.com/ie/archive/2010/03/09/Working-with-the-HTML5-Community.aspx]). 

    I had a chance to sit down last week with Philippe Le Hégaret who’s a staff member of the W3C, to discuss Microsoft’s view on HTML5 interoperability and our work in the HTML WG. Please read the minutes of  the interview on the W3C blog: “Interview: Paul Cotton on Microsoft Participation in the W3C HTML Working Group

    Paul Cotton

  • Interoperability @ Microsoft

    Apache Stonehenge demoed at PDC09


    A couple weeks ago, Microsoft was at ApacheCon. We reported the progress made on the Stonehenge project and presented the roadmap.

    _stonehengeThe goal of Apache Stonehenge is to provide a public forum to test the interoperability of WS-* protocols on different vendor stacks and to build sample applications that could provide best practices and coding guidelines for better interoperability. The main sample application, StockTrader has been implemented on .NET (by Microsoft), PHP (by WSO2), WSAS JAVA stack (by WSO2), Metro (by SUN Microsystems), Spring (by SpringSource). The latest version of StockTrader uses the WS-Security and WS-Trust protocols for claims-based authentication scenarios. This allows the end-users to be authenticated through an independent Security Token Service (STS) that is trusted by the bank and to pass that token to the broker to process the transaction.

    This week at PDC09, we were demoing the project. I went to see Kent Brown, product manager for WCF and asked him to give us an update and show a demo of the different StockTrader applications working together.

    Watch the video till the end, Kent unveils the mystery on why the project was called Stonehenge!

    -- Jean-Christophe Cimetiere

  • Interoperability @ Microsoft

    Start Testing With First Implementation of IETF HTTP/2.0 Draft from MS Open Tech


    Further to our recent Blog on the first HTTP/2.0 implementable draft from the IETF, Microsoft Open Technologies, Inc. (MS Open Tech) is releasing an HTTP/2.0 server prototype based on the implementable draft. This is the first in a series of experimental implementations of HTTP/2.0 that will enhance the performance of the web.

    This implementation of HTTP/2.0 is based on the recent version 4 implementable draft and has been created on a new Microsoft open source C#-based web stack - Katana server. The prototype supports header compression (draft-ietf-httpbis-header-compression-01), HTTP/2.0 features such as stream multiplexing, and negotiation mechanisms such as ALPN and HTTP upgrade, as well as the ability to establish direct HTTP/2.0 connections. It does not yet implement server push or flow control. Apart from the server component, this prototype also includes a test command line client that makes HTTP/2.0 protocol requests to the server.

    To enable the community to try out this implementation of HTTP/2.0, we have also published endpoints (note these require HTTP/2.0 client included in source):

    http://http2katanatest.cloudapp.net:8080/ - HTTP endpoint.
    https://http2katanatest.cloudapp.net:8443/ - HTTPS endpoint using ALPN.

    These endpoints will only work with an HTTP/2.0-enabled browser or client, and host static pages that represent common websites, based on examples from the Internet Explorer Test Drive site.

    As communicated in our previous Blog, participants in the IETF HTTP working group have committed to a wide range of implementations. MS Open Tech is actively engaged and prototyping further HTTP/2.0 implementations based on the Katana project. Early interoperability testing is planned for the third interim face-to-face IETF meeting in August. We encourage you to start trying out the first implementation of HTTP/2.0 from MS Open Tech today – feel free to test using the endpoints listed above or download the code and try out your static websites on the Katana server.

    Parashuram Narasimhan

    Senior Program Manager, Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    New Interoperability Solutions for SQL Server 2012


    I am excited to share some great news about how we are opening up the SQL Server data platform even further with expanded interoperability support through new tools that allow customers to modernize their infrastructure while maximizing existing investments and extending virtually any data anywhere.

    The SQL Server team today introduced several tools that enable interoperability with SQL Server 2012.

    These tools help developers to build secure, highly available and high performance applications for SQL Server in .NET, C/C++, Java and PHP, on-premises and in the cloud.

    These new tools include a Microsoft SQL Server 2012 Native Client, a SQL Server ODBC Driver for Linux, backward compatibility with ADO.Net and the Microsoft JDBC Driver 4.0 and PHP Driver 3.0.

    You can find more information on all this goodness on the SQL Server blog here.

  • Interoperability @ Microsoft

    Interoperability at PDC09: let's recap


    mount saint helen over the cloudsI just flew back from the Microsoft Professional Developers Conference (PDC09) in Los Angeles. What a week, with a lot of announcements, surprises and achievements on multiple fronts. From the interoperability perspective, a lot happened too.

    This PDC09 further demonstrates how Microsoft is making interoperability a priority and reality by demonstrating how − as an open platform − Windows Azure offers choices to developers. We’ve been able to show our progress with practical examples (like WordPress), additional technologies to run on Windows Azure (Tomcat, MySQL) and new SDKs/tools (like AppFabric SDK for PHP, Windows Azure Tools for Eclipse version 1.0). We’re on a journey, but it’s a significant milestone!

    So let’s recap what happened:


    Ray Ozzie’s Keynote: Ray announced more options for developers on Windows Azure with Tomcat(Java), memcached and MySQL. This was illustrated by Matt Mullenwag running a demo of Wordpress running on Windows Azure and followed by Martin Cron from www.ICanHasCheezburger.com who showed their new Wordpress-based blog http://oddlyspecific.com/ which uses an image management plug-in based Windows Azure storage.

    Watch this video with Steve Marx (Technical Strategist in the Window Azure team) and Vijay Rajagopalan (Principal Architect in the Interoperability team) for an overview:


    Refer to PDC sessions Building Java Applications with Windows Azure and Developing PHP and MySQL Applications with Windows Azure for more details.


    Another interop demo: Domino's Pizza Java Tomcat-based application running on Windows Azure.
    Domino's Pizza showed up in a short video in the keynote where Jim Vitek, Domino’s Director of eCommerce stated: "We have to buy hosting infrastructure to meet our highest peak which is Super Bowl which is 50 percent above our next highest peak which is a typical Friday night. So there’s a tremendous amount of unused capacity in our hosting infrastructure that Windows Azure allows us to eliminate"
    Domino’s Pizza was also in Sumit Chawla’s talk at Web 2.0 expo demoing the scenario with Tim Wise from Domino's Pizza. Read this blog post for more details: “Domino’s Demonstrates Tomcat Site on Windows a Azure”. Sumit also made a few interoperability announcements from the #web2e expo floor.
    Check this PDC09 session as well: Lessons Learned: Migrating Applications to the Windows Azure Platform.


    clip_image006A dedicated Interoperability page on the Windows Azure portal: www.windowsazure.com/interoperability.
    You’ll find here the overview and links to resources which will enable various developer communities to leverage Windows Azure either as the primary cloud infrastructure or simply to extend their existing applications.



    Windows Azure SDKs for PHP and Java and tools for Eclipse version 1.0 released:
    This release is the culmination our team’s year-long work with our partners for bringing core scenarios to life and a release that many of our customers & open source developers have eagerly been waiting for since our last CTP release at Eclipse Summit Europe.
    Watch this video with Maarten Balliauw, initiator of the project and Vijay Rajagopalan, for a quick overview:



    AppFabricCartoon New Interoperability Bridge: PHP developers get an SDK for the Windows Azure platform AppFabric.
    Windows Azure platform AppFabric (formerly called .NET Services) includes the Service Bus and Access Control services that provide infrastructure in the cloud to connect applications.



    _phpcrud A new SQL CRUD Application Wizard for PHP:
    This tool enables PHP developers to easily generate PHP code that performs basic Create/Read/Update/Delete operations for Windows Azure Tables SQL Azure and SQL Server



    Using Windows Azure Storage from Ruby:
    We met with Johnny Halife, Principal Architect from Southworks, who has developed a Windows Azure SDK for Ruby. Watch the video for a quick overview:



    _stonehenge[1]Apache Stonehenge demoed at PDC09: Kent Brown, product manager for WCF gives us an update and show a demo of the different StockTrader applications working together. Watch the video till the end, Kent unveils the mystery on why the project was called Stonehenge!



    In case I missed anything (I’m sure I have) let me know, I’ll update the post.

    [Update 11/23]

    ASP.NET Ajax Library: the first project to be contributed to the CodePlex Foundation.
    More information on James Senior's blog: http://www.jamessenior.com/post/News-on-the-ASPNET-Ajax-Library.aspx

    -- Jean-Christophe Cimetiere, Sr. Technical Evangelist

    Bookmark and Share
  • Interoperability @ Microsoft

    Using the Cloudant Data Layer for Windows Azure


    If you need a highly scalable data layer for your cloud service or application running on Windows Azure, the Cloudant Data Layer for Windows Azure may be a great fit. This service, which was announced in preview mode in June and is now in beta, delivers Cloudant’s “database as a service” offering on Windows Azure.

    From Cloudant’s data layer you’ll get rich support for data replication and synchronization scenarios such as online/offline data access for mobile device support, a RESTful Apache CouchDB-compatible API, and powerful features including full-text search, geo-location, federated analytics, schema-less document collections, and many others. And perhaps the greatest benefit of all is what you don’t get with Cloudant’s approach: you’ll have no responsibility for provisioning, deploying, or managing your data layer. The experts at Cloudant take care of those details, while you stay focused on building applications and cloud services that use the data layer.

    You can do your development in any of the many languages supported on Windows Azure, such as .NET, Node.JS, Java, PHP, or Python. In addition, you’ll get the benefits of Windows Azure’s CDN (Content Delivery Network) for low-latency data access in diverse locations. Cloudant pushes your data to data centers all around the globe, keeping it close to the people and services who need to consume it.

    For a free trial of the Cloudant Data Layer for Windows Azure, create a new account on the signup page and select “Lagoon” as your data center location.

    For an example of how to use the Cloudant Data Layer, see the tutorial “Using the Cloudant Data Layer for Windows Azure,” which takes you through the steps needed to set up an account, create a database, configure access permissions, and develop a simple PHP-based photo album application that uses the database to store text and images:


    The sample app uses the SAG for CouchDB library for simple data access. SAG works against any Apache CouchDB database, as well as Cloudant’s CouchDB-compatible API for the data layer.

    My colleague Olivier Bloch has provided another great example of using existing CouchDB libraries to simplify development when using the Cloudant Data Layer. In this video, he demonstrates how to put a nice Windows 8 design front end on top of the photo album demo app:


    This example takes advantage of the couch.js library available from the Apache CouchDB project, as well as the GridApp template that comes with Visual Studio 2012. Olivier shows how to quickly create the app running against a local CouchDB installation, then by simply changing the connection string the app is running live against the Cloudant data layer running on Windows Azure.

    The Cloudant data layer is a great example of the new types of capabilities – and developer opportunities – that have been created by Windows Azure’s support for Linux virtual machines. As Sam Bisbee noted in Cloudant’s announcement of the service, “The addition of Linux-based virtual machines made it possible for us to offer the Cloudant Data Layer service on Azure.”

    If you’re looking for a way to quickly build apps and services on top of a scalable high-performance data layer, check out what the Cloudant Data Layer for Windows Azure has to offer!

    Doug Mahugh
    Senior Technical Evangelist
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    The Windows Azure Toolkit for Eclipse, July 2013 Preview is ready!


    Microsoft Open Technologies, Inc., has released a new update to the Windows Azure Toolkit for Eclipse. The July 2013 Preview includes a number of enhancements that make it easier for Eclipse developers to work with Windows Azure.

    July 2013 Enhancements

    For the July release, we’ve added an auto option for the Windows Azure Storage account selection in the JDK and server deployment configurations. This enables you to postpone the selection of a specific Windows Azure Storage account until you publish the deployment using the Publish to Windows Azure dialog. The Windows Azure Storage account you select in the Publish Wizard is used when you’re ready to publish. This is an enhancement to the automatic upload of a chosen JDK and App Server to Windows Azure storage that was enabled in the May 2013 release.  See the updated Creating a Hello World Application for Windows Azure in Eclipse tutorial for more details.

    Starting with this release, it’s also possible to deploy a complete cloud application to a new Windows Azure storage account within Eclipse. A key part of this capability is the addition of the New button in the Add Storage Account dialog, which creates a new Windows Azure Storage account without having to leave the Eclipse UI. More information here.

    We’ve also added new features for larger deployments. One often requested feature is the ability to specify a local storage resource as the deployment destination for your JDK and application server, in case your deployment may be too large to be contained in the default approot folder, as is sometimes the case with larger JBoss and JDK v1.7 deployments. More information on large deployments can be found here.  Another handy new feature for large deployments is our support for the new high-memory A6 and A7 Windows Azure Virtual Machines

    We also added new options for Service Endpoints. With the users of Windows Azure by 21Vianet, China in mind in particular, there is also now a way to select the service endpoints of the Windows Azure cloud you target. Service endpoint options for this release are the global Windows Azure platform, the Windows Azure by 21Vianet, China, or a private Windows Azure platform. For more information, see Windows Azure Service Endpoints. Here’s how the Endpoint selection looks in the new release:


    There is also an update to the Windows Azure Libraries for Java Package, based on version 0.4.4 of the Microsoft Windows Azure Client API. This package contains the latest SDK distribution and their open-source dependencies as an Eclipse library. Add this library to the build path of your project (not the Windows Azure project) and all relevant Windows Azure API libraries will be automatically referenced and included in your WAR file.

    Getting the Plugin

    Here are the complete instructions to download and install the Windows Azure Plugin for Eclipse with Java, as well as updated documentation.

    As always, let us know how the latest release works for you and how you like the new features! To send feedback or questions, just use MSDN Forums or Stack Overflow.

  • Interoperability @ Microsoft

    Windows Azure tools for PHP get an update and refreshed content


    The Windows Azure tools for PHP (see the list below) got an update for Christmas (well a little bit before, to be honest ;-), following up with the new version of the Windows Azure SDK 1.3 that was updated in November. As a reminder, here is what these three are doing:

    No big changes or real new features for now, but we wanted to mention as well the new and updated technical content that we are steadily publishing on the http://azurephp.interoperabilitybridges.com/ site. Brian Swan has updated his tutorial, Using the Windows Azure Tools for Eclipse with PHP. And don’t forget, Jas Sandhu’s Quicksteps to get started with PHP on Windows Azure published last week, which will help you quickly set up your machine in a "few clicks" with all the necessary tools and settings you will need.
    Great reading to get you started on Windows Azure with PHP!

    -- Jean-Christophe Cimetiere, Sr. Technical Evangelist, @openatmicrosoft

  • Interoperability @ Microsoft

    Microsoft and Novell Technical Interoperability Update


    By Jose Thomas

    Hi, I’m Jose Thomas, Technical Solutions Director for Strategic Partnerships and Licensing at Microsoft.

    Three years ago, Microsoft and Novell announced a partnership that was received with surprise and skepticism by the IT industry and customers alike. (Watch the press release at http://www.moreinterop.com/) What could possibly drive these two companies into a partnership considering the long history of competition behind them?  The answer to this question is simple – customers and their complex IT environments. 

    Over the years, in search of efficiency and competitive advantage, customers started to look at the end promise of mixed source environments without always considering the plumbing that needs to be done to get disparate systems to work as one.

    This is where the Microsoft and Novell Technical Collaboration comes into play.  Engineers from both companies work side-by-side in our joint Cambridge, MA, lab working to test our interop solutions and ensure that they work better together. And both companies agreed to develop their products on open standards so that customers don’t have to worry about the plumbing.  What started off as a lofty goal of four collaboration pillars has now grown to seven and continues to develop.

    In this post, I’ll provide an update of the initial four areas that include Virtualization, Standards Based Systems Management, Standards Based Identity and Federation, and Document Format Compatibility.  I’ll also review the incremental collaborations that include Moonlight, Linux Management for MS System Center, and Windows Accessibility.


    Starting with Virtualization, the two companies agreed to optimize their respective Server OS platforms to take advantage of each other’s virtualization Hyper Visor.   This was made possible by a set of VM adapters that were designed to broker communications between the XEN Visor and Windows Hyper V.  These Hyper-call adapters, along with drivers for synthetic devices and storage were packaged up together and offered to customer as the Linux Integration Components.    The Integration Components could be downloaded and copied into the Guest OS which when rebooted would experience the additional performance of being and enlightened or para-virtualized  guest.   This was a key differentiator for Novell as SUSE Linux is the only enlightened guest supported on Hyper-V.  Most recently, Microsoft has contributed the Integration Components to the community thru a GPL V2 License

    In the last six months, we’ve crossed the threshold into the Virtualization V2 solution.  The key differentiator here is that SUSE Linux is an enlightened guest on Windows Server 2008 R2 with Live Migration.  Now administrators can move Windows or Linux Guest across physical hosts without experiencing any downtime.  With Live Migration supporting SUSE Linux, Microsoft and Novell have been able to narrow the perception gap in heterogeneous virtualization between Hyper-V and ESX from Virtualization Competitor, VMware.



    On the Management front, the initial agreement was for both companies to adhere to WSMan protocol standards for Systems Management. Both Microsoft System Center Operations Manager and Novell’s Zenworks Management Platform leverage WSMan protocols for server monitoring. But the innovation continued in the form of a Linux Management Pack that Novell release last year for Microsoft’s System Center. Novell’s Linux Management Pack extends the cross platform capabilities of System Center by monitoring seven key services within SUSE Linux. They include Samba, Bind/DNS, DHCP, LDAP, CUPS, Firewall, and NFS. Novell’s Linux management pack is currently only supported for SUSE Linux.


    Identity and Federation

    The next and most recent technical solution involves the Identity and Federation Pillar. The agreement was for both companies to adhere to WS* for directory and Identity Federation. This has been brought to life thru Microsoft’s AD FS (Active Directory Federation Service) and Novell’s Access Manager. Both of these products communicate thru the WS Federation Protocols include WS Trust and WS Security. Thru this federation model, customers can take advantage of AD based applications like Microsoft SharePoint in E-directory or other LDAP directory environments. We are currently developing a packaged solution that will extend SharePoint to non AD environments thru this AD FS – Access Manger federation model expected to ship in Q2 of CY10.


    More Technical Interop Projects

    I’ll spend this last section discussing the remaining technical projects which are Document Format Compatibility, MS SilverLight and Moonlight, and Windows Accessibility extended to Linux

    • Office Format Compatibility – Microsoft and Novell, in conjunction with others, developed a set of bi-directional translators that provide conversion between the Microsoft Office and Open Office formats. These translators exist for word processing, spreadsheets, and presentations and can be found on Source Forge. Novell extends the interoperability between the two productivity application suites by including support for Microsoft’s Open XML format in Novell’s version of Open Office. http://www.novell.com/news/press/novell_boosts_openoffice_org_and_microsoft_office_interoperability
    • Microsoft Silverlight extended thru Moonlight –Microsoft worked with Novell to enable them to deliver Silverlight support for Linux called Moonlight. The browser based plug-in allows SilverLight content to be consumed by Linux users running Firefox or other open source browsers. http://www.mono-project.com/Moonlight
    • Accessibility Collaboration – Novell is building a set of adapters that allows Microsoft’s User Interface Automation (UIA) framework to work within Linux Accessibility Projects. This will allow the common Windows Accessibility capabilities to be leveraged by Linux accessibility projects. http://www.novell.com/linux/microsoft-accessibility.html

    As we celebrate the 3rd anniversary, we’re happy to see the technical collaboration between Microsoft and Novell is alive and thriving with most of the key milestones completed, and our teams continuing to collaborate for our customers’ IT future. With over 475 customers who are taking advantage of the benefits, there’s no doubt that these two companies are taking their customers’ needs seriously. The bridge that was built between the two companies, supported by a mutual respect for intellectual property, continues to deliver interoperability solutions that lead the way to the ever-complex, next generation data center.

    Jose Thomas, Technical Solutions Director

  • Interoperability @ Microsoft

    OData v4.0 and OData JSON Format v4.0 approved as OASIS Standards


    Ram Jeyaraman, co-Chair of the OASIS OData Technical Committee, and Senior Standards Professional, Microsoft Open Technologies, Inc.

    Brian Benz, Senior Technical Evangelist, Microsoft Open Technologies, Inc.

    I am excited and proud to share the news that Open Data Protocol (OData) version 4.0 and OData JSON Format version 4.0 have been approved as OASIS Standards by OASIS (an open standards consortium). Congratulations to the OASIS OData Technical Committee for achieving this important milestone. Here’s the official announcement <link> from OASIS.

    This is the result of the collective handiwork of many talented people across many organizations (Axway Software, Blackberry, CA Technologies, Citrix Systems, IBM, Microsoft, Progress Software, Red Hat, SAP AG, SDL, and many others) who cooperated in a truly remarkable fashion to accomplish the common goal of creating a standard open data protocol to create and consume data services on the Web.

    Read the full post at msopentech.com

  • Interoperability @ Microsoft

    February Updates to the Windows Azure Toolkit for Eclipse – SSL Support, plus new JDKs, Windows Azure configurations and more


    Microsoft Open Technologies, Inc., has released the February preview of the Windows Azure Toolkit for Eclipse. This release includes multiple updates since our October 2013 release, including SSL support, additional support for the latest versions of GlassFish and the Azul Zulu OpenJDK package, a new option to choose the A5 instance on Windows Azure, Windows Server 2012 R2, some tweaks to the menu, and a new “Auto” option for private endpoints. Have a look at the documentation update for full details.

    Support for SSL

    Instead of having the user manually configure every Java-based Web Application Server running on Windows Azure to accept SSL certificates and authentication, which varies from server to server, our Engineering team has developed what we call SSL Offloading. Offloading allows you to easily enable HTTPS support (one of our most requested features) without requiring configuration of SSL on your Java application server. Instead, SSL authentication is handled set up by the Toolkit automatically, using IIS + and Application Request Routing (ARR) under the hood in your VM. So after the decryption, your Java Web application Server receives (and responds with) just standard HTTP. This also works in conjunction with sticky sessions for session persistence and the ACS filter for user authentication.

    To enable SSL offloading, select the Worker Role you want to work with in Role Properties, then click on Enable SSL Offloading (HTTPS), as shown below. You will be asked to confirm an endpoint change to 443 (HTTPS) and provide a certificate. Note that this change will only happen for this role. This allows you to have some roles without SSL, for example for a Website home page, but other roles with SSL enabled for access only by authenticated users or requiring more secure communication.


    Customizable certificate name (CN) in the self-signed certificate creation UI

    You may already be familiar with the Toolkit’s UI to easily generate self-signed certificates for testing purposes. (It’s recommended that you use a certificate verified by a recognized SSL certificate provider for staging and production to avoid users seeing browser warnings about untrusted connections and unsigned certificates).

    Previously, you could generate certificates with the same hard-coded Common Name (CN) for all new certificates. Specifying your own name helps track and manage multiple certificates in the Windows Azure portal used for different purposes (like SSL vs Remote Desktop). Here’s a sample of the enhanced UI in action:


    Support for GlassFish OSE 4

    Glassfish OSE 4 joins the multiple versions of Tomcat, Jetty, JBoss and Glassfish OSE 3 as the latest option to include as part of your deployment package. As before, you can test your deployments locally in Eclipse before you deploy with full emulation.

    Here’s the full list of Application Servers recognized by the Toolkit in this release:


    More Options for Azul’s Zulu Open JDK package

    In July we announced a partnership with Azul Systems, and in September Azul Systems released Zulu, an OpenJDK Build for Windows Azure leveraging the latest advancements from the open source community. Zulu has been an option under the 3rd party JDK Deployment Project options since September’s announcement, and since then Zulu v7 update 40 and now update 45 are available options that the Toolkit knows how to deploy automatically under the hood in Windows Azure, without you having to download them to your local computer first.

    Here’s an example of the new JDK selection, showing a deployment being configured with the latest version of Zulu selected to be part of the deployment package:


    In other OpenJDK news, Java developers working with the latest Azul Zulu OpenJDK v1.7 package on 64 bit Windows Server machines can now automate the process using the Microsoft Web Platform Installer (WebPI). Full details here.

    New Features when Publishing: Select a Target OS

    In the October release we moved the target OS from the project properties a more prominent place in the publishing process. In this release we’ve added Windows Server 2012 R2 support for the target OS:


    A5 VM support

    In this release we’ve also added support for the Windows Azure A5 instance configuration. The A5, A6, and A7 instances provide larger amounts of memory more suited for high-throughput applications. Detailed configurations of these instances are available here.


    A new Toolbar button look, and a new button for creating Self-Signed Certificates

    The engineering team engaged a designer to create new menu icons to match the standard eclipse “flat” look. They’re still all there in the same place, but they look a little different now. We’ve also added a button to the self-signed certificate creation wizard. The graphical face lift of the Toolkit is still a work in process with more coming later, primarily motivated by Windows Azure’s own latest graphical scheme updates.



    Set private endpoint ports to Auto

    Now you can set a private port to “auto” for input endpoints and internal endpoints, the equivalent of using “*” as the private port number in CSDEF. Previously, you could only assign a specific port number. The auto setting lets you rely on Windows Azure, when appropriate, to assign a free port number to that endpoint.


    Getting the Toolkit

    Here are the complete instructions to download and install the Windows Azure Toolkit for Eclipse, as well as updated documentation.

    Ongoing Feedback

    We listen and respond to the community, you are our compass to know we’re going in the right direction! We value your feedback on how we can make it make it easier to test and deploy your Java applications on Windows Azure and we appreciate code contribution proposals. As always, let us know how the latest release works for you and how you like the new features!  To send feedback or questions, just use MSDN Forums or Stack Overflow.

  • Interoperability @ Microsoft

    Working with Microsoft Silverlight on PHP


    Architecture diagram for an embedded Silverlight controlSilverlight Microsoft Silverlight, now at version 3.0, is a great way to create rich web applications that run on Windows, Mac OS and Linux. It provides an engaging, rich, safe, secure, and scalable cross-platform experience. Best of all you can run it off any web server (IIS, Apache for e.g.) and it can be called from any PHP website! Our team has released some helper samples to get you started. You can find the project on the Samples for PHP with Silverlight web page, and the project source can be found on Codeplex. The project includes sample HTML and PHP scripts.

    How it works? Silverlight content is embedded into an HTML or PHP web page and in turn is transferred to the client browser where it is displayed by the Silverlight runtime (plugin) installed on the client computer. The architecture is shown on the right.

    You will first create a Silverlight application file (.xap). We have provided a sample file, HelloPHPDevelopers.xap within the download or you can also create one for yourself by using another tech bridge we have, Eclipse Tools for Silverlight. Our colleague Steve Sfarz in France has a great post up on his site describing how to get started with it and create your own .xap file. This file is essentially a packaged archive or .zip file (try changing .xap to .zip and browse into it) with a collection of libraries that you have compiled for your application. If you follow the directions on the site you will end up with a button on a form with some custom actions.

    You will then copy the .xap file you have created to a directory within your web site where you plan to host the Silverlight content. You will then want to create a custom HTML or PHP page that includes the following code in it’s body


    That’s all you need to run the .xap file you created and you can swap it out to any other file Silverlight application you choose to use.  If a user does not have the Silverlight plugin installed they will be presented with a 'Get Microsoft Silverlight' image and a link to install the plugin too. You should see an example of this in action right below this paragraph.


    To do this dynamically from PHP, you can use the function below. This is handy if you have Silverlight content in more than one place on your website.


    That’s all you need to take advantage of Silverlight as a content source for your PHP website. Have fun and share your experience back with us!

    Jas Sandhu
    Technical Evangelist, Interop Vendor Alliance Manager, Interoperability Strategy Team
    Twitter@jassand, FriendFeed@jassand

  • Interoperability @ Microsoft

    MS Open Tech releases updated Azure Node.JS SDK and Command Line Tools for Mac and Linux


    More news for our Linux friends deploying virtual machines to the cloud. Today at Microsoft Open Technologies, Inc. (MS Open Tech), we’d like to share an update to the Node SDK and Command Line tool for Mac and Linux, offering support for virtual networks, endpoints and more. This tool helps developers and IT admins to deploy and manage Linux (and Windows) virtual machines on Windows Azure.

    We’ve received lots of feedback on the Windows Azure command line tool for Mac and Linux since our team at MS Open Tech released project last year. As a result, we’re now updating the tools by adding several commonly requested features, including:

    • Virtual network configuration
    • Improved billing management for stopped VMs
    • Endpoint management
    • Load Balanced Endpoint update

    Following is a summary of the new features. As usual, send us a pull request if you’d like to contribute to these tools, or leave a comment/email if you have some feedback for us.

    1. Virtual Networks

    Since Virtual Networks have been added to the Windows Azure REST API, we added support for this feature to both the Azure SDK for Node.js and in the Command Line tool for Mac and Linux:

    In order to support virtual networks we’ve contributed a new API to the Windows Azure SDK for Node.JS that enables configuration of Virtual Networks. This API can be used standalone in Node.JS apps for configuring VNETs.

    For example, the following sample node.js code demonstrates how to configure a VNET by using the service management API.

    var service = azure.createServiceManagementService(

          subscriptionId, auth,

          { serializetype: 'XML'});

    var vnetObject = {

      VirtualNetworkConfiguration: {

        VirtualNetworkSites: [


            Name: 'test',

            AffinityGroup: 'test-ag',

            AddressSpace: [''],

            Subnets: [


                Name: 'sub1',

                AddressPrefix: ''







    service.setNetworkConfig(vnetObject, function (err, response) {

    // handle errors / process the result


    Refer to our full documentation on GitHub for complete details of ‘VirtualNetworkConfiguration’ object model.

    This SDK also provides the foundational pieces for the Command Line Tools. This makes it possible for admins to use same functionality via our Command Line Tool. Here is a sample usage showing how to create a Virtual Network in your subscription, with default settings.

    $ azure network vnet create vnet1 --location "West US" -v

    info: Executing command network vnet create

    info: Using default address space start IP:

    info: Using default address space cidr: 8

    info: Using default subnet start IP:

    info: Using default subnet cidr: 11

    verbose: Address Space [Starting IP/CIDR (Max VM Count)]: (16777216)

    verbose: Subnet [Starting IP/CIDR (Max VM Count)]: (2097152)

    verbose: Fetching Network Configuration

    verbose: Fetching or creating affinity group

    verbose: Fetching Affinity Groups

    verbose: Fetching Locations

    verbose: Creating new affinity group AG1

    info: Using affinity group AG1

    verbose: Updating Network Configuration

    info: network vnet create command OK

    For more information please refer to our wiki page for a full list of commands to manage Virtual Networks on Windows Azure.

    2. VM Stop Billing Feature

    In the first release of the Windows Azure infrastructure services, Windows Azure kept a reserved deployment spot for every stopped VM in the compute clusters, and continued to bill the user for VM compute resource unless user explicitly deleted the deployment. This changed, and now Windows Azure no longer charges users compute time for any stopped VMs. However, it still preserves the deployment state and configuration.

    MS Open Tech updated the Windows Azure SDK for Node.js and Windows Azure Command Line tool for Node.js to support this scenario. Consequently, when a VM is stopped using the azure vm shutdown command, the account will no longer be billed. Note that IP address of the VM with state StoppedDeallocated (i.e. stopped and not billed) will be released, and there is not guarantee that restarting the VM will result in the same IP being allocated.

    If you need your VM to stay allocated and preserve the IP address, we offer the --stay-provisioned switch for the azure vm shutdown command. Note, however, that in this case your account will continue to be charged for the compute time.

    3. Endpoint Update

    We have added a new command which allows users to change load balancer port, virtual machine port, end point name and protocol associated with an existing endpoint. The usage and options are listed below. For more information, read the article Load Balancing Virtual Machinesin the Windows Azure Documentation.

    $ azure vm endpoint update --help

    help: Update a VM endpoint


    help: Usage: vm endpoint update [options] <vm-name> <endpoint-name>


    help: Options:

    help: -h, --help output usage information

    help: -v, --verbose use verbose output

    help: --json use json output

    help: -d, --dns-name <name> only consider VM for this DNS name

    help: -n, --endpoint-name <name> the new endpoint name

    help: -t, --lb-port <port> the new load balancer port

    help: -t, --vm-port <port> the new local port port

    help: -o, --endpoint-protocol <protocol> the new transport layer protocol for port (tcp or udp)

    help: -s, --subscription <id> the subscription id

    4. Load Balanced Endpoint Update

    One of the cool new features in Windows Azure is updating load balanced sets:

    Let’s suppose you create two virtual machines ‘vm-1’ and ‘vm-2’ under the same cloud service ‘my service’ and added a load balanced endpoint ‘lbset1’ to both VMs. The new Windows Azure API will allow user to update the load balanced set ‘lbset1’ (for example change the probe protocol) so that it will be applied to all VM roles with this load balanced set endpoint defined.

    To support this new Azure functionality, we have added a new API updateLoadBalancedEndpointSet to the Windows Azure SDK for Node.JS and we will be also adding command line tool support soon (this wiki contains a list of all the proposed LB set commands)

    5. Other Improvements

    Finally, we made a couple more updates to the vm create command such as adding the ability to use any user name when creating Windows VMs (in the past one had to use ‘Administrator’), and displaying the image copy progress while using --community option. In addition there are a number of “under the hood” changes such as early failure in the face of common problems and more informative error reporting. These features make the tool easier to use in a variety of situations.

    Getting the Node.js SDK for Windows Azure

    The Node.js SDK and CLI make it easy to work with Windows Azure from within your own applications or from the command line. If you already have a version of the node.js tools all you need to do it run npm update azure-cli -g. If you are new to the tools then you have a couple of simple setup steps to follow, these are fully documented on the VM Depot help site. Since we mentioned VM Depot it might be worth reminding you that VM Depot has over 700 pre-configured virtual machine images ready for deployment, using the CLI, to Windows Azure.

  • Interoperability @ Microsoft

    Corona SDK coming to Windows devices thanks to open source ANGLE project


    Corona SDK, the popular mobile 2D platform made by Corona Labs, now offers closed beta support for Windows Phone 8. Microsoft Open Technologies helped the Corona Labs team integrate the ANGLE project into Corona SDK to add support for Windows Phone 8. This allows the more than 300,000 developers using Corona SDK today to easily port their apps to Windows Phone 8 with minimum effort, extending their reach to millions of new users.

    Learn more on the MS Open Tech blog.

  • Interoperability @ Microsoft

    Being a polyglot developer II: learning Windows Phone from an Android perspective


    As I wrote in this post “Being a polyglot developer: tools & guidance to help iPhone developers learn Windows Phone 7” about a few weeks ago, I think it is essential to be a “polyglot” developer. And although you might have a preferred language, opening your mind to others will bring considerable value to your abilities and your resume. It’s true that jumping from one platform or language to another can break your habits, but change can be stimulating and will ultimately expand your opportunities.

    Today we have released a comprehensive package for Android developers to easily learn Windows Phone and port their app to Microsoft’s phone platform. There’s no magic wand that will do the work for you, but we have put together a great package to help you get started.
    The package consists of:

    All the details are explained on the Windows Phone Developer blog.

    clip_image003I just want to point a few things. Mapping is tedious on-going work. Don’t expect a mapping for all of the APIs, simply because the platforms are built upon different architectures and user interfaces. We’re working on expanding the coverage of the API Mapping tool for both iOS and Android, but there will be some situations where you might be stuck, not knowing what way to port your feature over from iOS or Android to Windows Phone.

    We’re willing to help! We have hired the “App Guy” who crawls developer forums aggregating discussions from different locations to answer questions related to porting iOS and Android applications to Windows Phone, but hey, that’s just one guy for now, anybody can help out. Tell us if we’ve missed something and tag your questions/answers so that we can find them (see guidance) and show them off.

    Open for feedback

    When we opened the API mapping tool, we invited developers to offer up their ideas (http://wp7mapping.uservoice.com) about what mapping we should cover. With this new version including Android, we’ve also introduced the possibility to add comments directly on the existing mapping. So if you want to provide additional details or if you spot something inaccurate, just add a comment, we’re listening!

    Jean-Christophe Cimetiere, Sr. Technical Evangelist – Interoperability
    @jccim - blogs.msdn.com/interoperability

  • Interoperability @ Microsoft

    Tutorial: Finding Virtual Machine Images for Windows Azure in VM Depot


    For users of VM Depot, our repository of community managed Virtual Machines for Azure, we have added significant enhancements to the search feature of the website. With this expanded search capability, it is now easier than ever to find an open source, Linux-based, virtual machine for Windows Azure.

    Search and you shall find

    Basic search functionality has not changed. You can still type into the search box on VM Depot and hit return. The results will include all virtual machines that contain your search term in their description, title, tags or other common fields.

    Sorting Results

    Using the sorting options available you can make the most interesting images rise to the top of the list as described in the table below.

    This approach works well if you know precisely what you are looking for. However, with over 900 images to choose from it can be difficult to find what you need. For this reason we have added a new search language to the site. This feature allows you to conduct much more targeted searches.

    Sort Option Description
    Featured Featured images are ones that MS Open Tech have, at some time, flagged as being of special interest. This sort option is perhaps the most useful if you don’t know precisely what you are looking for.
    Date Added This sort order puts the most recently added images at the top of the list. As such is most useful if you know what you are looking for and thus have a fairly narrow search, but need to find the most recent image.
    Name Sorting by name displays the resulting list in alphabetical name order. This is useful if you have a large number of results and want to skip through the pages to a specific image name.
    Platform The platform is the base operating system used in the image. Sorting on platform lists images in alphabetic order of platform and thus can help you find an image based on your preferred operating system. Whilst this sort order can sometimes be useful you might prefer to narrow your results to your chosen platform (see the description of our search language below).
    Rating This option lists images in order of their user rating. That is the most highly rated will appear at the top of the list. This can help ensure that images that have been tested by end users are displayed first, however, don’t be put off by images that have not yet received a rating.

    Power Searching within the VM Depot repository

    The new search features of VM Depot allow you to use a number of qualifiers (see table below) to construct more specific queries. This makes it possible to target specific information stored alongside each VM Depot virtual machine image.

    The available qualifiers include:

    Qualifier (these are case-sensitive) Description
    tag (or keyword) Images can include descriptive tags (keywords), defined by the publisher (e.g. CMS, blog, forum, app server).
    package Search for a VM that contains a specific package (note that this is not a complete list of packages on the image, they are the ones the publisher has chosen to draw attention to)
    region Search for images available in specific regions.
    platform Look for a VM built on a specific operating system.
    name Limit the search term to the virtual machine image name.
    description (or desc) Limit the search term to the description of the image.
    publisher Look for images from a specific publisher.
    rating Only return images with this rating (or higher) – takes a non-integer number from 1 through 5.

    As an example, to search for an image that includes the python language you would use the search term "package:python". To limit results to ones using the CentOS operating system you would use "package:python platform:centos".

    In addition to the various qualifiers available we also provide two different operators. The one used in the example above (':') means “contains”, that is, if the identified qualifier contains the string then it is considered a match. For example, “package:python” means “return all VMs that contain any package with the string ‘python’ within its name”. This search will match “python” as well as “python1.7”. You can also use the operator ':=' which looks for an exact match, rather than a partial match.

    VM Depot has a huge range of images available for easy deployment to Windows Azure. We invite you to use the new search feature the next time to wish to access and deploy an image from the repository.

  • Interoperability @ Microsoft

    SAML 2.0 interoperability testing: passed


    passed-SAML20-ADFS Active Directory Federation Services (AD FS) 2.0, formerly known by codename “Geneva” Server, passed SAML 2.0 interoperability testing. You can read more on the Forefront team blog in today’s post: MSFT Identity and Access news: Forefront Identity Manager RC1 and ADFS 2.0 SAML interoperability

    Additional readings:


    Jean-Christophe Cimetiere - Sr. Technical Evangelist

  • Interoperability @ Microsoft

    Putting customer feedback into action to advance interoperability


    IECC-interoperability-White-Paper As the Interoperability Executive Customer (IEC) Council moved into its 4th year of existence and embarked on tackling interoperability issues in new areas, we just published a whitepaper(PDF 1.25Mb) listing the discussions and major achievements by the council over the last 3 years.

    This is the first time we have gone public with any of the operational details and results achieved by the council.

    As a technical lead, running the day to day workings of this council, I will also like to thank all the member organizations, their CIOs and other technical leads and architects for their support and participation in this council. I encourage you to read comments from Council members in the following article:
    Microsoft and Customer Executives Team Up to Improve Interoperability”.

    These organizations spend a lot of time and effort in attending the meetings and providing us candid feedback on many of our strategies, products and technologies without which the council wouldn’t be able achieve what it has in these past 3 years. The council also sees a lot of engagements from many Microsoft product teams and other employees from various parts of the company but I would especially like to call out and thank Connie Dean, Meghan Raftery and Monty O’Kelley for their contributions over the last 3+ years.

    The IEC Council is led by Bob Muglia, President of Server and Tools Business and his direct involvement is a major factor in its successful existence and ability to produce tangible results over the past 3 years. It plays a key role in influencing Microsoft’s overall strategy around interoperability and providing feedback on this important subject. As you will be able to readily recognize, many of the blog posts on this site and our work at www.interoperabilitybridges.com have been highly influenced by discussions taking place within the IEC Council. This is strictly by design.

    All the information gathered from the IEC Council process has been categorized into areas of focus called “work streams”. Work stream efforts are led by executives from numerous Microsoft divisions and product teams who interact and partner with council members’ technical architects and CIOs to identify and develop solutions within these specific areas. These are:


    We would love to hear some feedback on the topics discussed, results achieved and in general on interoperability issues being addressed through the workings of this council.

    Looking forward to more productive discussions and positive results from the IEC Council for many more years.

    Kamaljit Bath, Principal Program Manager

  • Interoperability @ Microsoft

    Windows Azure Plugin for Eclipse with Java – November 2012 Preview


    I’m pleased to announce the availability of a major update to our Eclipse tooling, the “Windows Azure Toolkit for Eclipse, November 2012 Preview (version 1.8.0)”. This release accompanies the release of the Windows Azure SDK v1.8, as well as the AMQP 1.0 messaging protocol support in Windows Azure Service Bus, and exposes a number of related features recently enabled by Windows Azure.

    The key highlights of this release include:

    a) The updated “Windows Azure Plugin for Eclipse with Java” supports using Windows Server 2012 as the target operating system in the cloud

    b) The plugin also now allows you to easily configure Windows Azure Caching, so you can use a memcached-compatible client for co-located, in-memory caching scenarios

    c) The toolkit includes a new component: “Package for Apache Qpid Client Libraries for JMS (by MS Open Tech)”, which is a distribution of the latest client libraries from Apache supporting AMQP 1.0-based messaging recently enabled by Windows Azure Service  Bus

    d) Plus a number of additional customer-feedback driven enhancements and bug fixes

    To learn more, see our latest documentation.

    Martin Sawicki
    Principal Program Manager
    Microsoft Open Technologies, Inc.
    A subsidiary of Microsoft Corporation

  • Interoperability @ Microsoft

    MS Open Tech brings a new WebSQL plugin for Apache Cordova and enhancements to the popular Contacts plugin


    Microsoft Open Technologies is publishing the new open source WebSQL plugin for Apache Cordova and PhoneGap. This plugin allows developers to integrate a persistent SQL-based local storage solution in their Cordova apps using the exact same JavaScript code across Android, iOS, Windows Phone and Windows Store. MS Open Tech is also contributing new features inspired by Windows to the popular Contacts plugin as well as a better Windows Store apps support.

    Read more on our new blog: websqlpluginforcordova

  • Interoperability @ Microsoft

    Using LucidWorks on Windows Azure (Part 3 of a multi-part MS Open Tech series)


    LucidWorks Search on Windows Azure delivers a high-performance search service based on Apache Lucene/Solr open source indexing and search technology. This service enables quick and easy provisioning of Lucene/Solr search functionality on Windows Azure without any need to manage and operate Lucene/Solr servers, and it supports pre-built connectors for various types of enterprise data, structured data, unstructured data and web sites.

    In June, we shared an overview of the LucidWorks Search service for Windows Azure, and in our first post in this series we provided more detail on features and benefits. In December we covered the main features of LucidWorks Search, but today Microsoft Open Technologies, Inc, is happy to share with you a few new data sources that are Available in LucidWorks Search on Windows Azure, and a new easier way to sign up for LucidWorks Search Service on Windows Azure.

    A new option for signing up

    LucidWorks Search is still listed under applications in the Windows Azure Marketplace, and from there you can create an account via the LucidWorks Account Signup Page. But getting started is now even easier as we’ve integrated LucidWorks’ service with the Windows Azure Store, so you can now set up an instance on Windows Azure By clicking 0n the Store option in the Windows Azure Dashboard:


    Next, you’ll be prompted to choose an Add-on from a list. Select LucidWorks Search. The next screen invites you Personalize your new Add-On:


    At this point, all you have to do is enter a new Name for your LucidWorks Search Add-on and the region you want your instance to be located in.

    Right now the only option for signup via the Windows Azure Store is the Micro level, which is great for getting started. Should you exceed the limits of the Micro level, you can also sign up for other enterprise-level accounts from the LucidWorks Dashboard using the LucidWorks account that is automatically created when you sign up via the Window Azure Store.

    LucidWorks support for Windows Azure SQL Databases, Windows Azure Tables and Windows Azure Blobs

    Along with the Windows Azure Store integration, we also released LucidWorks Search support for Windows Azure SQL Databases, Windows Azure Blobs, and windows Azure Table Storage. All are available via the LucidWorks Search Dashboard under Indexing > Data Sources:


    Windows Azure Blobs provide a way to store large amounts of unstructured, binary data, such as video, audio, and images, including streaming content such as video or audio. There are two types of blob storage available, block blobs and page blobs. Block blobs are optimized for streaming and referenced by a unique block ID. Page blobs are optimized for random access and composed of pages that are referenced by offsets from the beginning of the blob. More information on Windows Azure blobs can be found here.

    Windows Azure Table storage is a collection of non-relational structured data. Unlike tables in a database, there is no schema that enforces a certain set of values on all the rows within a table. Windows Azure Storage tables are more like rows within a spreadsheet application such as Excel than rows within a database such as SQL Server. Each row can contain a different number of columns, and of different data types, than the other rows in the same table. You can find more information on Windows Azure Table storage here.

    Windows Azure SQL Databases are similar to an on-premise instance of SQL Server, but not the same.  Windows Azure SQL Databases expose a tabular data stream (TDS) interface for Transact-SQL-based database access, so they can be used the same way you use on-premise SQL Server.

    However, there are some very important differences for administration. Windows Azure SQL Database abstracts the logical administration from the physical administration. That means that you continue to administer databases, logins, users, and roles, but Windows Azure manages the physical hardware and networking to ensure enterprise-class availability, scalability, security, and self-healing. More information on Windows Azure SQL Databases is available here.

    To set up a new Azure SQL Database as a Data source, select Database as your data source option under Indexing > Data Sources.


    There are a few tips for setting up a Windows Azure SQL Database as a data source for LucidWorks that you need to know. First of all, copy the URL for your Database from the JDBC connection strings in your Windows Azure Dashboard, using this format:


    Next, select the SQL Server JDBC driver as the Driver for your Windows Azure SQL Database. You also have to include at least one SQL SELECT statement that includes an id column in the result. The id column is used at the Document identifier in LucidWorks search, and relates each row returned by the SELECT statement as fields in that Document. Have a look at my first post in this series for more information on how LucidWorks works with Documents, Fields, and Collections to return search results.

    When done your Data Source configuration should look something like the sample here:


    Next there are two additional options for setting up SELECT statements to work with your database. The Delta SQL Query uses the primary key to compare new records in the database with existing Documents in the LucidWorks Search Index, and only indexes the new or updated rows. Nested Queries allow you to set up one-to many relationships in the source Windows Azure SQL Database to include multiple rows of data in a single LucidWorks index Document, based on the primary key. Full instructions on setting up these queries as well as other options can be found in the LucidWorks help documentation here.


    These are just the latest new features to help you easily and quickly set up LucidWorks Search service on Windows Azure, and there are more on the way. Get started with your own LucidWorks Search solution by signing up via the Windows Azure Store, and let us know what you think!

  • Interoperability @ Microsoft

    Vagrant and Hyper-V Provides Managed DevOps Work Environments


    imageMS Open Technologies Inc. (MS Open Tech) has released code for Vagrant that brings initial Hyper-V support to this very popular DevOps tool.

    Vagrant managed work environments can be controlled by a single, consistent workflow, to help you maximize the productivity and flexibility of your team. Alongside industry-standard provisioning tools such as shell scripts, Chef, or Puppet, Vagrant supports a range of end-to-end management and deployment scenarios to create a single, consistent workflow that spans your entire team:

    Developers can define and build virtual machines (VMs) that contain everything required to get work done. These VMs are disposable and consistent and thus ensure that you, and all your colleagues, are developing in the same environment. As the Vagrant documentation points out this means you can say goodbye to "works on my machine" bugs.

    Operations engineers can use these same disposable environments and consistent workflows to develop and test infrastructure management scripts. Vagrant plays well with whatever operations tooling you use. When that tooling is designed for interoperability between platforms, such as Chef and Puppet, Vagrant really sets the operations team free.

    Designers can use Vagrant to ensure that they are working in the exact same environment as the rest of their team, regardless of their chosen host operating system. Designers can run a simple command to bring up the latest configuration and thus will no longer be working in an environment that differs from the development or deployment environments used by the rest of their teams.

    The Vagrant community has been asking for Hyper-V support for some time, in hopes of extending the experience across a heterogeneous platform environment. MS Open Tech are working with the Vagrant project to further enhance this work, specifically we are working on packaging, provisioning shell, and Chef & Puppet bootstrapping.

    We encourage interested parties to get their hands on the Vagrant Hyper-V provider, play with it, examine it and provide us with feedback!

  • Interoperability @ Microsoft

    MS Open Tech, Linux and Open Source at LinuxFest 2013


    I was fortunate to be invited to speak on behalf of MS Open Tech at last weekend’s LinuxFest Northwest in Bellingham, WA. This was a local event with a wide variety of developers and tech enthusiasts who gathered at Bellingham Technical College to participate in a broad spectrum of presentations, demonstrations, and labs.

    My presentation Microsoft, Linux and the Open Source Community was part of the Developing a Community Track at LinuxFest so, given Microsoft Open Technologies, Inc. had just celebrated our One Year Anniversary, I took this opportunity to demonstrate some of the MS Open Tech projects that are enabling the open source community to benefit from new interoperability technology initiatives:

    Linux on Windows Azure – Just prior to LinuxFest, the Azure team announced general availability of Windows Azure Infrastructure-as-a-Service. Windows Azure Infrastructure Services enable you to deploy and run durable VMs in the cloud. As well as Windows Server options, the built-in image gallery of VM templates includes Linux images for Ubuntu, CentOS, and SUSE Linux distributions. During my presentation session, I used Windows Azure Web Sites to create a new cloud-based WordPress site including a MySQL instance.

    VM Depot – Built on the capabilities of Linux on Windows Azure, VM Depot is a cloud-based catalog of more than 200 open source Linux virtual machine images for Windows Azure contributed by the community. Developed by MS Open Tech, on VM Depot the community can build, deploy and share their favorite Linux configurations and other freely downloadable images, create custom open source stacks, and work with others to build new architectures for the cloud that leverage the openness and flexibility of the Windows Azure platform.

    OData – OData is an open data protocol jointly developed by Microsoft, IBM, SAP, Citrix, and other industry partners and currently undergoing standardization via OASIS. We have recently revamped the http://odata.org website and encourage community contributions to develop consumer and producer services using OData as highlighted in the Ecosystem subsection. My demonstration showed how OData can be used by the community to publish and access open government data using the DataLab open source code on GitHub.

    Pointer Events - Pointer events is an emerging standard developed by the W3C to define a single device input model – mouse, pen and touch – across multiple browsers. Microsoft contributed the initial specification and is working to demonstrate cross browser interoperability for Pointer Events. MS Open Tech developed an open source Pointer Events prototype for WebKit on HTML5 Labs and submitted the patch to the WebKit community. We encourage the developer community to learn more about Pointer Events on Web Platform Docs and join the #PointerEvents discussion.

    I would like to thank the LinuxFest organizers for the opportunity to participate. Events like LinuxFest are an ideal way for us to share the work we do at MS Open Tech with the open source community and seek feedback on our efforts. I look forward to the next opportunity.

  • Interoperability @ Microsoft

    AppFabric ACS: Single-Sign-On for Active Directory, Google, Yahoo!, Windows Live ID, Facebook & Others


    Until today, you had to build your own custom solutions to accept a mix of enterprise and consumer-oriented Web identities for applications in the cloud or anywhere. We heard you and we have built a service to make it simpler.

    Today at MIX11, we announced a new production version of Windows Azure AppFabric Access Control service, which enables you to build Single-Sign-On experience into applications by integrating with standards-based identity providers, including enterprise directories such as Active Directory, and consumer-oriented web identities such as Windows Live ID, Google, Yahoo! and Facebook.

     The Access Control service enables this experience through commonly used industry standards to facilitate interoperability with other software and services that support the same standards: 

    • OpenID 2.0
    • OAuth WRAP
    • OAuth 2.0 (Draft 13)
    • SAML 1.1, SAML 2.0 and Simple Web Token (SWT) token formats
    • WS-Trust, WS-Federation, WS-Security, XML Digital Signature, WS-Security Policy, WS-Policy and SOAP.

     And, we continue to work with the following industry orgs to develop new standards where existing ones are insufficient for the emerging cloud platform scenarios: 

     Check out the Access Control service! There are plenty of docs and samples available on our CodePlex project to get started.


    Asir Vedamuthu Selvasingh

    Technical Diplomat, Interoperability

  • Interoperability @ Microsoft

    ActorFx Updates – New features, improved performance and a new plugin to ease deployment to Windows Azure


    From the ActorFx team:

    Claudio Caldato, Principal Program Manager Lead, Microsoft Open Technologies, Inc.
    Brian Grunkemeyer, Senior Software Engineer, Microsoft Open Technologies Hub

    Today Microsoft Open Technologies, Inc, would like to share the news of a new version of ActorFx, V0.7.

    ActorFx provides an open source, non-prescriptive, language-independent model of dynamic distributed objects for building highly available objects, including data structure objects, via a standardized framework and infrastructure. ActorFx is based on the idea of the mathematical Actor Model for cloud computing.

    With this release, developers now have a more stable code base (based on the Windows Azure SDK 2.0, a new prerequisite) onto which we will build new features that will make ActorFX a more solid framework for building highly distributed applications.

    The new release is based on an improved version of the Actor Runtime’s replication support, and contains improvements in several areas:

    • A new AddOnce method for our List actor.
    • Embraced async methods more fully.  Look at GetActorProxyAsync for a good example.
    • Delay-loaded our JavaScript and IronPython language packs.

    We also improved reliability and fixed some issues within the networking layer:

    • Continuations on IActorPromises work better.
    • Significantly better error handling for network problems, including adjusted timeouts & retry logic.
    • Better error handling on the server side for a number of scenarios.

    On the deployment side, we now have a way to deploy an ActorFX app on Windows Azure using a new plug-in to streamline the deployment process. The instructions are here.

    Note that the 0.7 release also requires that the Windows Azure SDK 2.0 be installed before you download the code from the CodePlex site.

    Be sure to subscribe to the CodePlex feed and our Blog to be kept current on the latest developments.

    If you are using ActorFx in implementations, we’d like to hear more about how you’re using it, how it’s useful to you and how it can be improved. We are looking forward to your comments/suggestions, and stay tuned for even more cool stuff coming in our next release!

  • Interoperability @ Microsoft

    Vagrant Supports Hyper-V "Out-of-the-box"


    Our code providing Hyper-V support to Vagrant has been included in the latest Vagrant 1.5 release, and so users need not install Hyper-V support separately.

    Mitchell Hashimoto, creator of Vagrant and Founder of HashiCorp, said “This is an example of why Vagrant is open source. Our users asked for Hyper-V support and MS Open Tech stepped up to provide it. Including Hyper-V support in the Vagrant 1.5 release was a no-brainer once MS Open Tech had released their code as open source.”

    Full details on the MS Open Tech blog.

  • Interoperability @ Microsoft

    OData v4.0 approved as Committee Specification by the OASIS Open Data Protocol Technical Committee


    Microsoft Open Technologies, Inc is pleased to announce the approval and publication of OData Version 4.0 Committee Specification (CS) by the members of the OASIS Open Data Protocol (OData) Technical Committee. As we reported back in May, this brings OData 4.0 one step closer to becoming an OASIS Standard.

    The Open Data Protocol (OData) uses REST-based data services to access and manipulate resources defined according to an Entity Data Model (EDM).

    The Committee Specification is published in three parts; Part 1: Protocol defines the core semantics and facilities of the protocol. Part 2: URL Conventions defines a set of rules for constructing URLs to identify the data and metadata exposed by an OData service as well as a set of reserved URL query string operators. Part 3: Common Schema Definition Language (CSDL) defines an XML representation of the entity data model exposed by an OData service.

    The CS also includes schemas, ABNF components, Vocabulary Components and the OData Metadata Service Entity Model.

    You can also download a zip file of the complete package of each specification and related files here.

    Join the OData Community

    Here are some resources for those of you interested in using or implementing the OData protocol or contributing to the OData standard:

    · Visit OData.org for information, content, videos, and documentation and to learn more about OData and the ecosystem of open data producer and consumer services.

    · Join the OData.org mailing list.

    · Check out the #OData discussion on twitter.

    · Join the OASIS OData technical committee (OData TC) and contribute to the standard.

    · Send comments on OData version 4.0 to the OASIS OData Technical Committee

    Our congratulations to the OASIS OData Technical Committee on achieving this milestone! As always, we’re looking forward to continued collaboration with the community to develop OData into a formal standard through OASIS.

  • Interoperability @ Microsoft

    Microsoft Open Technologies and Azul Systems® to Partner on an OpenJDK™ Build for Windows Azure


    New OpenJDK-based offering will be free and open source, with contributions back to the community

    O'Reilly OSCON, PORTLAND, Ore. – July 24, 2013 – Microsoft Open Technologies, Inc. (MS Open Tech), a subsidiary of Microsoft Corp. dedicated to bridging Microsoft and non-Microsoft technologies, and Azul Systems®, the award-winning leader in Java runtime scalability, announced today at the O’Reilly Open Source Convention (OSCON) that they are partnering on a Windows distribution build of the community-driven open source Java™ implementation, known as OpenJDK™, for Windows Server on the Windows Azure platform.

    As part of this partnership, Azul Systems will build, certify and distribute a compliant OpenJDK-based distribution meeting the Java SE specification for use with Windows Server environments on Azure. The new OpenJDK-based offering will be freely distributed and licensed under the GNU General Public License version 2 (GPLv2) with the Classpath Exception.

    Open source is now a key building block for enterprise IT strategies. Customers also require choice in where and how they deploy new and existing Java applications. Through this partnership the global community of Java developers gain access to open source Java on the Windows Azure cloud. It will also serve the growing number of Java applications that both small and medium businesses and global enterprises depend on to run their businesses.

    Scott Sellers, Azul Systems president and CEO, said, “This initiative is all about bringing Java to the masses in the cloud. We will be providing a fully open and unconstrained Java environment — with open choice of third-party stacks — for developers and essential applications deployed on Windows Azure.”

    Jean Paoli, president of MS Open Tech said, “Microsoft Open Technologies and our Azul Systems partner are motivated by a common goal to make the world of mixed IT environments work better together for customers. This partnership will enable developers and IT professionals to ensure their mission-critical apps deploy and run smoothly on Windows Azure, using the open source Java environment they prefer. With Azul Systems rich Java heritage and strong customer track record,  partnering was a natural decision.”

    A June 14, 2013, Forrester Research report, titled: “The Forrester Wave™: Enterprise Public Cloud Platforms, Q2 2013,” states “Microsoft’s strategy for Windows Azure is very strong for two reasons … creating a single platform spanning many clouds is achievable, valuable, and a natural act for Microsoft. … Microsoft’s openness to other platforms, languages, databases, development environments, and tools is genuine and virtually assures Windows Azure’s relevance as technology evolves.”

    With the support of Azul Systems and MS Open Tech, customers will be assured of a high-quality foundation for their Java implementations while leveraging the latest advancements in OpenJDK. The OpenJDK project is supported by a vibrant open source community, and Azul Systems is committed to updating and maintaining its OpenJDK-based offering for Windows Azure, supporting current and future versions of both Java and Windows Server. Deploying Java applications on Windows Azure will be further simplified through the existing open source MS Open Tech Windows Azure for Eclipse Plugin with Java.

    The new Azul Systems offering will be available later this year. For more information and updates about the new product or the MS Open Tech and Azul Systems partnership, subscribe to the MS Open Tech Blog. Customers and partners of Microsoft and Azul are also invited to contact Azul at AzureInfo@azulsystems.com for additional information about Azul’s Early Access Program.

    About Azul Systems
    Azul Systems (Azul) is an award-winning provider of Java runtimes for the enterprise. Based in Sunnyvale, California, Azul has been delivering Java solutions for more than 10 years with deep domain knowledge in Java runtimes, elastic memory, Pauseless Garbage Collection, and runtime resource monitoring. Azul is also a member of the Executive Committee of the Java Community ProcessSM (JCP) and has licenses to the OpenJDK Community Technology Compatibility Kit (TCK). Azul's enterprise products enable organizations to simplify their Java-based operations while achieving lower average latencies, improved scalability, greater response time consistency and dramatically improved operating costs. For additional information, visit: http://www.azulsystems.com.

    About Microsoft Open Technologies
    Microsoft Open Technologies, Inc. (MS Open Tech), is a wholly owned subsidiary of Microsoft dedicated to advancing the company’s investment in openness including interoperability, open standards and open source. MS Open Tech is focused on providing our customers with even greater choice and opportunity to bridge Microsoft and non-Microsoft technologies together in heterogeneous environments, because we’re convinced that openness is good for our customers, good for the community and good for our business. For additional information on MS Open Tech, visit www.msopentech.com.

    # # #

    All other product and service names mentioned are the trademarks of their respective companies.

  • Interoperability @ Microsoft

    Microsoft, Interoperability at XML-in-Practice 2009


    I have just returned from a busy two days in the Washington DC area for XML-in-Practice 2009. The event was held in the Arlington VA Hilton on September 30 and October 1. The conference’s purpose is to showcase real world applications and solutions that XML has enabled, enhanced and or made possible. The event was put together by the IDEAlliance and in tradition with the XML Conference, the tracks covered a number of different topics with technical depth and explored issues beyond the fundamentals. The tracks included  the Electronic Medical Records Summit covering President Obama’s Economic Plan,  eGovernment Program , Publishing & Media Program , Applications, Foundations and Interoperability Program,  and a Tools Summit. You can also find the Conference Program. Dan Kasun & Jas Sandhu, Open Government & Interoperability

    I wore a few hats at the event, I was a member of the Program Advisory Committee, was a co-chair/track leader of the Applications, Foundations and  Interoperability Program with G. Ken Holman from Crane Softwrights Ltd. and co-presented a session on Open Government and Interoperability with Dan Kasun who leads our US Developer and Platform Evangelism  Public Sector team. The session gave us an opportunity to start a discussion about how Microsoft is participating, sharing our thoughts and work in engaging with Recovery.gov which is built on SharePoint and consumes multiple disparate data sources, interoperates with a number of other technologies, and to share our Open Government Data Initiative (OGDI) which complements Data.gov

    Keith Hurwitz demonstrating OGDI at Demo Jam Keith Hurwitz, our State and Local Government Evangelism Manager on Dan’s team, also participated in the Demo Jam at the reception hosted by one of our InteropVendorAlliance.org partners Mark Logic using OGDI. He dived deeper into OGDI in a session the next day titled Microsoft’s eGovernment Solutions: Government Transparency and Cloud Computing: Publishing government data in Windows Azure with Microsoft’s Open Government Data Initiative open source toolkit. Keith shared some of the thinking on how it can be used, it’s architecture and demonstrating some good examples, including the OGDI sample site and a visualization by a partner IDV Solutions called Visual Fusion that utilizes the OGDI data. OGDI is a great cloud solution for Government hosted on Windows Azure. It supports calling from a number of different languages including Flash, Java, Silverlight, Google Maps and Bing Maps. It also utilizes some of the Technical Bridges that have been highlighted on this blog including the Toolkit for PHP with ADO.NET Data Services,  Open XML Daisy Translator. OGDI has also been used as a demo in our latest technical bridge published, Restlet Extension for ADO.NET Data Services.XML-in-Practice 2009 Audience

    I had a great opportunity to learn a bunch of new stuff and I would like to thank the organizers, IDEAlliance, it’s board, the track leaders and members of the advisory committee, our great speakers and to the attendees for the interaction and stimulating conversation. Special thanks to Joy Donat and Ken Holman for cat herding. I look forward to working with you all again at the next event.  

    Jas Sandhu
    Senior Technical Evangelist, Interop Vendor Alliance Manager, Interoperability Strategy Team
    Twitter@jassand, FriendFeed@jassand

  • Interoperability @ Microsoft

    Azul Systems Releases Zulu, an OpenJDK Build for Windows Azure, in Partnership with MS Open Tech


    Today I’m happy to report the news that our Microsoft Open Technologies, Inc., (MS Open Tech) partner Azul Systems has released the technology preview for Zulu, an OpenJDK build for Windows Servers on the Windows Azure platform. Azul’s new OpenJDK-based offering has passed all Java certification tests and is free and open source.

    Azul’s new build of the community-driven open source Java implementation, known as OpenJDK, is available immediately for free download and use under the terms of the GPLv2 open source license.

    Built and distributed by Azul Systems, Zulu is a JDK (Java Development Kit), and a compliant implementation of the Java Standard Edition (SE) 7 specification.  Zulu has been verified by passing all tests in the Java SE 7 version of the OpenJDK Community TCK (Technology Compatibility Kit).

    Azul has a lot of information about this exciting news on their website, including this press release that we would like to share.

    With the support of Azul Systems and MS Open Tech, customers will be assured of a high-quality foundation for their Java implementations while leveraging the latest advancements from the community in OpenJDK. The OpenJDK project is supported by a vibrant open source community, and Azul Systems is committed to updating and maintaining its OpenJDK-based offering for Windows Azure, supporting current and future versions of both Java and Windows Server. Deploying Java applications on Windows Azure will be further simplified through the existing open source MS Open Tech Windows Azure Plugin for Eclipse with Java.

    Key details of Azul Zulu include:

    • Free and open source offering, based on OpenJDK
    • Compatible with Java SE 7, verified using Java SE 7 OpenJDK Community TCK
    • Integrated with MS Open Tech’s Windows Azure Plugin for Eclipse with Java tooling
    • Patches and bug fixes contributed back to the OpenJDK community by Azul
    • ISV-friendly binary licensing for easy embedding with 3rd party applications
    • Availability for download and immediate use

    Executives of both companies highlighted the benefits of this new effort:

    Jean Paoli, president of MS Open Tech said, “Java developers have many development and deployment choices for their applications, and today MS Open Tech and Azul made it easier for Java developers to build and run modern applications in Microsoft’s open cloud platform.” 

    Scott Sellers, president and CEO of Azul Systems said, “Azul is delighted to announce that Zulu is fully tested, free, open source, and ready for the Java community to download and preview – today. We are looking forward to serving the global Java community with this important new offering for the Azure cloud.”

    Zulu is available for download at www.azulsystems.com/products/zulu. Zulu Community Forums are listed on the Stack Overflow website under the tags “azure zulu” and “azul zulu.”

    MS Open Tech and Azul Systems first announced our partnership on July 24, 2013

    Customers and partners of Microsoft and Azul interested in participating in future Zulu tech previews are also invited to contact Azul at AzureInfo@azulsystems.com for additional information. And of course, please send questions and feedback to our MS Open Tech team directly through our blog.

    Gianugo Rabellino, Senior Director of Open Source Communities, MS Open Tech

  • Interoperability @ Microsoft

    VM Depot Crosses Another Milestone


    In January of last year, Microsoft Open Technologies, Inc. (MS Open Tech) launched VM Depot- a community-managed repository of open source virtual machine images for deployment on Microsoft Azure. The vision we articulated for this repository is that it be a place where "the community can build, deploy and share their favorite Linux configuration, create custom open source stacks, work with others and build new architectures for the cloud that leverage the openness and flexibility of the Windows Azure platform."

    Today, I am happy to report that VM Depot crossed the threshold of 1,000 images!

    MS Open Tech's success in attracting image publishers to VM Depot has encouraged us to turn our attention to making the site and its images even easier to use. Whatever it is you are looking for, there is a good change that you will find it on VM Depot and thus can deploy it to Azure. Earlier this week, we announced a new search feature to help you more quickly hone in on the right image for your needs. We will continue to work on improving integration with the Azure Management Portal to make it easier to deploy VM Depot images using a web browser.

    For those who prefer to use the command line for deployment and management, we support that, too. We continue to make improvements to the Microsoft Azure Node.js SDK, as we wish to ensure that developers will continue to have full access to VM Depot and Azure regardless of which operating system they are working on.

    For those just getting started with VM Depot, we have created a Site Walkthrough. Keep an eye out for a set of materials and documentation in the coming weeks which will help you make the most of this repository as it continues to expand.

    And let us know if there are specific areas that need more attention or support.

  • Interoperability @ Microsoft

    Zend Framework 1.11 Ships


    At the annual ZendCon 2010 in Santa Clara, CA today, Zend Technologies announced general availability of Zend Framework 1.11, the latest release of its PHP application framework. This adds support for mobile application development and includes the open source Simple Cloud API, which allows PHP developers to build portable cloud applications.

    The Zend Framework is a PHP application framework with more than 15 million downloads and over 500 contributors, including Microsoft, Amazon, IBM, Adobe and Google.

    According to Zend's announcement, Zend Framework 1.11 gives developers access to the first deliverables for the Simple Cloud API project, including:

    • Document Service integration, which allows developers to utilize a variety of NoSQL cloud storage solutions including Amazon SimpleDB and Microsoft Windows Azure Table storage.
    • Queue Service integration, which lets developers perform asynchronous operations in order to offload heavy-lifting, pre-cache pages, and more. Queue Service integrations include Amazon Simple Queue System (SQS), Microsoft Windows Azure Queue service, and all adapters supported by the Zend Framework Zend_Queue component.
    • Storage Service integration, which allows developers to push static resources such as images and archives to the cloud. Currently supported services include Amazon Simple Storage Service (S3), Microsoft Windows Azure Blog storage, and Nirvanix.

    Windows Azure access from the Simple Cloud API is made possible by the Windows Azure SDK for PHP, a project sponsored by Microsoft and developed by RealDolmen. This is yet another example of Microsoft's continuous commitment to the openness of Windows Azure Platform by working with larger open source community.

    For its part, Microsoft is pleased to see the role this project is playing in "driving adoption among PHP developers for cloud computing platforms, and hope that many of these developers will be encouraged to use Windows Azure," says Jean Paoli, General Manager of Interoperability Strategy at Microsoft Corp.

    "The Simple Cloud API is an important catalyst for open and interoperable cloud computing, and Microsoft has an ongoing investment in the Simple Cloud API project, together with Zend and other contributors," Paoli says.

    The new mobile device support in Zend Framework 1.11 provides functionality for detecting mobile device types and their capabilities. Developers can choose from the  WURFL database, TeraWurfl, or DeviceAtlas to retrieve device capabilities, or they can write their own classes to leverage additional device databases.

    Zend Framework 1.11 mobile support also includes the Dojo Toolkit 1.5 update, which includes the dojox.mobile subproject. This delivers a flexible, lightweight mobile application framework, including CSS3 and JavaScript widgets optimized for use on mobile devices and for mobile-specific contexts.

  • Interoperability @ Microsoft

    Offloading work to PHP Worker Roles on Windows Azure


    There are many common scenarios in web development that require processing of information, gathering data, or handling message traffic that can be accomplished asynchronously – meaning in the background while the user is doing other things with the application. A common example of this is sending email or when thousands of users are posting comments on your blog. When you open an account or change your password, often web applications will send you some kind of confirmation email as part of the workflow. This is typically done from the server using SMTP relay. Anytime an application is connecting to an internal service there are times when network issues can cause problems. These problems range from slow bandwidth to high latency to server outages – each having the possibility to cause a connection timeout or just simply take a long, long time.

    When doing this type of processing, you have two options: to “block” and process the message while the user waits on a response from the server, or to allow the user to simply carry on and queue the work for background processing. Windows Azure provides simple tools to make this type of background processing a snap.

    To see how this can be done simply with the Windows Azure SDK for PHP and Eclipse, check out my new tutorial: “Tutorial - Using Worker Roles for Simple Background Processing”.

    That's one more update for this week on the http://azurephp.interoperabilitybridges.com site (see others here).
    I hope this is useful and I look forward to sharing many more tutorials and demos on simple ways to achieve powerful things with PHP and Windows Azure in the coming weeks.


    Craig Kitterman, Sr. Interop Evangelist, @craigkitterman

  • Interoperability @ Microsoft

    Interoperability Award Winners at Imagine Cup 2009


    Imagine Cup Interop award Last week under gaze of the Great Pyramids on the Giza Plateau, the only remaining monument of the Seven Wonders of the Ancient  World, I was fortunate to participate in the final ceremony of the Imagine Cup 2009 competition, called the World Festival and the announcement of our Interoperability Award winners. Before I go there I wanted to provide a brief recap of the proceedings of the event.

    After a long trip for many of the competitors, judges and the Microsoft staff. My role was captain and finals judge for the Interoperability award and that ALB_1474_webstarted with a briefing for all participants, the judges and the competitors plus the ability to tour the competition rooms. After the housekeeping was done with, we all filed for a tour and our opening ceremony at the Citadel in Cairo, a major landmark there housing a beautiful and grand Mosque, a fort and museums. We had a great ceremony in the courtyard with a cool breeze that cut the heat and a beautiful sunset.

    We then started the proceedings with a bunch of keynotes and the highlight of the evening was definitely the presentation from Ray Ozzie, our chief software architect at Microsoft who pepped up the students CIMG0229about how they can shape the future through technology, innovation, and creativity with his own personal anecdotes of starting in the world of software. Joe Wilson, senior director of Academic Initiatives at Microsoft, then inspired and gave some advice to our students on the competition, and with all our keynoters joining him onstage started the competition off with a grand laser light display that made our historical venue show off grandly.

    I had a spectacular set of judges for our award, the judges pictured here with me, from left Tiago Cardoso from Institute for the Development of New Technologies (UniNova) in Portugal, Rob Miles from University of Hull in the UK and Dennis Anderson from Pace University in New York. They all have great credentials, had an eye for interoperability and were very fair in scoring our teams. We all seemed to be very in sync on how we gave out points. They’re also a fun bunch of guys :)  The criteria we used and the points percentages was 10% for Architectural Design, 20% for Innovation, 30% for Interoperability, 20% for Coolness and 20% for Presentation.

    The final awards were presented at the World Festival by Jon Perera, General Manager for Education Strategy and Audience Marketing, All of these teams have spent numerous hours perfecting their solutions and highlight a disparate set of technologies and multiple platforms to showcase Interoperability.

    … and the winners are …CIMG0311

    Third Place, winning US$3,000, went to Team ECRAM from Jordan, with their Elder & Children Remote Mobile Application. Their application allowed for a mobile phone to  be remotely control by another client, typically another mobile, especially in the use of elder or child care. It was particularly interesting that it came from a real world problem that one of the team members was facing with his grandmother who wanted to place calls and speak to family members but had difficulties using the phone and required the help of her grandchildren. Being a busy student he was not always available and so thought of solving the problem using technology and software. The system utilized multiple different systems including mobile carriers and web services to solve the problem. Here’s a picture of the team speaking to S. Somasegar, senior vice president of Developer Division at Microsoft

    CIMG0308  Our Second Place, winning US$4,000 went to Team FteamS from Poland,  with their Universal Solution for Remote Education, Eduko. These guys were innovative and cool in the use of disparate technologies on multiple platforms and devices to create a system that enabled teachers and students to interact using a virtual whiteboard system that was enabled on the desktop and even projected on any surface. What was particularly interesting was the use of a WII controller as a camera for their custom IR marker. It served as a very captivating presentation tool. The team also were very smart in the use of mobile devices sending things like text and coursework via SMS and MMS. Very little payload for a lot of information, did you know a single MMS message can send 15 pages of documentation? The guys also put together a very well rehearsed presentation with every team member participating and that impressed our judges too.

    Our First Place winner, winning the US$8,000 went to Team Proativa from Brazil, with their Virtualized and Social Education system ProLearning whichCIMG0312 is designed to maximize the experience of distance learning. The use of an immersive virtual reality environment, where students exchange experience and study together the interaction between tutor and pupils dynamic and communal. they utilized social networks to keep students interested in the learning process and engaged continually not just during a lesson. It was a holistic system that facilitated the learning process end to end and that impressed the judges who were all teachers themselves and whom felt they could use it today in their classes. The students had also the capability of using mobile devices to personal and automatically update students on schedules and prompting their network for activities when doing distance learning. It was also novel that they integrated the social networks, mobile devices and voice over IP to get students who were friends or classmates to engage with each other for lessons making the learning experience a team based activity. The main reason that the team won this award however was that they had built a piece of software on the server that brokered different services that didn’t necessarily plug in with each other serving as a technical bridge of sorts. This proved to be the differentiator that help them cinch the award. They had a rousing fanfare by their Brazilian teammates at the finals by being the first prize recipients of the night and helping their country grab the most awards at the competition this year.

    Here are the teams videos entries:

    First place Proativa Team from Brazil

    Get Microsoft Silverlight

    Second place FteamS from Poland

    Get Microsoft Silverlight

    Third place: ECRAM from Jordan

    Get Microsoft Silverlight

    I would like to thank all the competitors who participated in the awards, their mentors, Academic Developer Evangelists, family and friends. Congratulations to our final three winners on behalf of the judges, the Interoperability Strategy team and all of us at Microsoft. I know a lot of work and sweat went into your entries and I want to share how much we all appreciate your contributions! I hope that you all will join me again next year for the Interoperability Award at Imagine Cup 2010. See you in Poland!


    Jas Sandhu
    Senior Technical Evangelist, Interoperability Strategy Team
    Twitter@jassand, FriendFeed@jassand

  • Interoperability @ Microsoft

    New contribution from MS Open Tech: full Windows 8 and Windows Phone 8 support in Cocos2D-X


    Using (or planning to use) Cocos2D-X to build mobile cross platform games in C++? You will certainly love the news: Microsoft Open Technologies, Inc. is making it easy to port a Cocos2D-X game to the Windows Store and to Windows Phone. Today, at the event Cocoa China, Zhe Wang, founder of Cocos2D-X praised MS Open Tech’s contribution that opens up a wide range of Windows devices to the popular open source game engine Cocos2D-X, allowing developers to easily reach new customers for their games.

    Check out our full blog post on msopentech.com/blog

  • Interoperability @ Microsoft

    Windows Phone Interoperability site


    The announcement of the Windows Phone Developer Tools Update is the opportunity for us to say a few words about the Windows Phone Interoperability site. We opened the site last December with the focus on helping developers who have been creating phone applications on various platforms ramp up quickly on the Windows Phone 7 platform. The site initially includes content designed for iPhone developers and we will add resources for Android developers.

    The site has a wealth of information for the new and experienced developer, with more content arriving in the next weeks.

    Resources are organized into chapters, where developers can find the following detailed guides for Windows Phone development:


    The first 4 chapters are now available for download (DOCX or PDF).

    The Windows Phone Interoperability site also includes several videos of developers explaining how they transitioned from other platforms to Windows Phone 7, and revealing their secrets for successfully designing and building applications.

    clip_image004Groundspeak testimonial: experience developing the Geocaching phone application for Windows Phone 7

    At Microsoft, we’re committed to ensuring phone developers have the necessary tools for building applications on the Windows Phone platform. The goal of the Windows Phone Interoperability site is to make it easy for developers with experience on other platforms to learn as quickly as possible. The site will also provide tools and guidance to help developers building applications for multiple platforms.

    -- Jean-Christophe Cimetiere, Sr. Technical Evangelist, @openatmicrosoft

  • Interoperability @ Microsoft

    OpenNebula Clouds on Windows Server Hyper-V


    More good news on Microsoft's commitment to Interoperability in the cloud: last week Sandy Gupta, the General Manager for Microsoft's Open Solutions Group, announced that Windows Server Hyper-V is now an officially supported hypervisor for OpenNebula.

    This open source project is working on a prototype for release next month and it will soon be possible for customers to build and manage OpenNebula clouds on a Hyper-V based virtualization platform.

    "Windows Server Hyper-V is an enterprise class virtualization platform that is getting rapidly and widely deployed in the industry. Given the highly heterogeneous environments in today’s data centers and clouds, we are seeing enablement of various Linux distributions including SUSE, CentOS, Red Hat, and CS2C on Windows Server Hyper-V, as well as emerging open source cloud projects like OpenStack -- and now OpenNebula," Gupta said in a blog post.

  • Interoperability @ Microsoft

    W3C Pointer Events Gains Momentum Within Web Communities


    MS Open Tech Announces Intent to Implement in Blink While Continuing WebKit Implementation


    Asir Vedamuthu Selvasingh, Principal Program Manager
    Microsoft Open Technologies, Inc.

    Adalberto Foresti, Principal Program Manager
    Microsoft Open Technologies, Inc.

    The W3C Pointer Events emerging standard continues to gain traction, advancing support for interoperable mouse, touch, and pen interactions across the web. Today, Microsoft Open Technologies, Inc. (MS Open Tech) made the first step towards interoperable support for Pointer Events in Blink by submitting a formal Intent to Implement to enable our engineering team to actively collaborate and work toward a positive adoption of Pointer Events by the Blink developer community.

    Earlier this year, MS Open Tech published a Pointer Events prototype for WebKit on HTML5 Labs and submitted the patch to the WebKit developer forum. To help even more developers adopt the Pointer Events technology, we plan to continue our collaboration with the WebKit community.

    Pointer Events makes it easier to support many browsers and devices by saving Web developers from writing unique code for each input type. Today people interact with Web content on a range of devices – phones, tablets, PCs, even the living room TV. Pointer Events unifies how you code for point, click and touch across these devices. The input model is based on the APIs already available in IE10 on Windows 8 and Windows Phone 8 and you can start building websites incorporating point, click, and touch today.

    Pointer Events continues to receive positive feedback from the developer community -- many are already embracing it as a unified model for cross-browser multi-modal input:

    The jQuery team has been watching the progress of Pointer Events and participating in the W3C standardization process as it moves to Candidate Recommendation. Congratulations to the W3C working group for their hard work in getting to the CR stage. We see Pointer Events as a great way to unify the haphazard models that exist today for mouse, touch, and other pointer devices. Our team looks forward to supporting web developer use of Pointer Events as implementations begin to arrive.

    Dave Methvin, President jQuery Foundation

    Pointer Events is a great way to add cross-browser support for multi-modal input from mouse, pointer, and touch.  With Pointer Events reaching Candidate Recommendation stage, it is time all mobile html5 application developers paid attention.  The best part; you can start using it today….

    Jesse MacFadyen, Adobe Developer, Cordova Committer

    Pointer Events Advances to W3C Candidate Recommendation (CR)

    As announced last week by the W3C and shared by our colleagues in IE, the W3C has now published the Pointer Events specification as a Candidate Recommendation, an important step toward a standard. This progression from Last Call Working Draft to Candidate Recommendation is a mark of the effective collaboration among Microsoft Corp., Google, Mozilla, Opera, Nokia, jQuery, and others to help sites take advantage of new interactive devices for the Web.

    ‘Candidate Recommendation’ indicates that the W3C considers the specification widely reviewed and satisfying the Working Group’s technical requirements. It signals a call for additional implementation experience to inform the group.

    MS Open Tech and the Microsoft Internet Explorer teams will continue to work with our colleagues across the industry, engaging developers to test and provide feedback on the specification to W3C.

    Learn more about Pointer Events on Web Platform Docs

    As you start building, migrating, or testing your apps using Pointer Events on various browser platforms, you should check out the resources available on the Pointer Events Wiki at Web Platform Docs:

    • You can Try out the cool multi-model input capabilities with Pointer Events Demos.
    • You can Learn about Pointer Events by reading the specification documentation or watching Jeff Burtoft explaining how to easily upgrade from mouse to Pointer Events. And, you can learn even more by checking out the Pointer Events Primer on WebPlatform.org.
    • You can check out code samples such as the hand.js polyfill and even validate your own code with Pointer Events Test cases.


    So much progress -- Pointer Events enables you to build for the future of the Web, today. So when someone invents the next big input breakthrough (such as Tom Cruise’s crime lab from Minority Report or Tony Stark’s holographic CAD console from Iron Man), you’re already on your way to supporting new input features.

    Jump in, have fun with the demos, join the discussion at #PointerEvents and update your site with the cool capabilities of Pointer Events. Point. Click. Touch.

  • Interoperability @ Microsoft

    April Updates to the Azure Toolkit for Eclipse– Azure SDK 2.3, Tomcat 8, New Zulu versions, and more!


    Microsoft Open Technologies, Inc., has now published the Azure Toolkit for Eclipse (by Microsoft Open Technologies) - April 2014 release. This update accompanies the release of Azure SDK 2.3, which is a pre-requisite. You will be offered the option to install it automatically when you create the first project after installing the toolkit.

    This release includes multiple enhancements since the February 2014 release, including support for new versions of application servers (Tomcat 8), JDKs (Azul Zulu v1.7 update 51 and v1.6 update 47), support for larger, bigger memory Azure instances (A8 and A9), improved handling of SSL and HTTPS, and in-place upgrading of deployed applications.

    Have a look at the msopentech.com Blog post for more details.

  • Interoperability @ Microsoft

    PHP with Microsoft’s OGDI via ADO.NET and REST (OData)


    My last post, Microsoft, Interoperability at XML-in-Practice 2009 mentioned a project  called Open Government Data Initiative (OGDI) which complements Data.gov by providing an SDK that allows you to easily access publicly available government data. It’s a pretty useful tool toOGDI SDK quickly build applications on top of the datasets. I had a couple of questions on this project and how to interact with the PHP language and I wanted to highlight some simple ways on how you can do so.

    The most interesting way you can do so is by using PHP via our Toolkit for PHP with ADO.NET Data Services. This project makes it easier for PHP developer to take advantage of the ADO.NET Data Services, a set of features now available in the .NET framework. It simply exposes data in a RESTful way via proxy classes that are generated by the toolkit at design time by using the metadata that is exposed. Your code at runtime uses these classes to work with the .NET based service over http. You can easily adapt the example given in the toolkit also described by Claudio here, to use the OGDI service. 

    You will want to PHP on Windowsinstall the toolkit as per instructions (/docs folder has a good Users Guide, it’s also available here)  by copying all the files and folders into an accessible folder with the proper include_path reference in your php.ini file, as well creating the proper variables and enabling the proper extensions such as php_curl an php_xsl. This stumped quite a few folks as generating proxy classes using the PHPDataSvcUtil.php client will not work otherwise and neither will the proxy, editor or the entity you generate. With that done, you should be able to point to the uri, you want on the OGDI data service (e.g. http://ogdi.cloudapp.net/v1/dc/ ) DC Red Light Camerasand with that you can generate your proxy classes or Entity Container. You can find a working example that has a full browser for the data at http://ogdiphpsample.cloudapp.net/ , with source code available that you can reference. There is also an ADO.NET Data Services Client Library that can be found here in which you can build using Visual Studio 2008, Service Pack 1 or later and create a svc proxy using the above method.

    The next option is to use the REST Web Services, that let’s you query using PHP and have a return result  in either ATOM Publishing Protocols, Javascript Object Notation (JSON) and JSON with Padding (JSONP) which is used in quite a few Web2.0 frameworks. There is also the ability to call using straight Javascript from within your PHP apps. You would ideally however want to create a REST client service class, with a pointer to the URL, typically one of the data services on http://ogdi.cloudapp.net/v1. You will then create a query, using a format, using the methods defined here. After grabbing executing with the proper exception handling and managing the responses for display or processing. You can see an example of the PHP code by using the data catalog. This query for example, will return the Domestic Per Diem Rates for 2009 from the General Services Administration entity container. You can also apply filters to narrow down your result as in the examples above.

    There is also the ability to return your data in Geospatial form by using the Keyhole Markup Language (KML) which is compatible with popular mapping tools including Bing Maps and services from Google and yahoo. All you need to do is to append format=kml to your query just like the filters and you will be able to visualize the data that is returned. You will find some good examples of usage in the data catalog mentined earlier. That should add some interesting color to your application along with the other methods mentioned above if the data lends itself to the solution you create.

    Jas Sandhu
    Senior Technical Evangelist, Interop Vendor Alliance Manager, Interoperability Strategy Team
    Twitter@jassand, FriendFeed@jassand

  • Interoperability @ Microsoft

    Microsoft Interoperability at EclipseCon 2011


    imageI've just returned from EclipseCon 2011, in wet and less than usually sunny Santa Clara California, and it's been definitely a jam packed and busy event with a lot of things going on. Interoperability @ Microsoft was a Bronze Sponsor for the event and we also had a session, "Open in the Cloud:- Building, Deploying and Managing Java Applications on Windows Azure Platform using Eclipse” by Vijay Rajagopalan, previously architect on our team, Interoperability Strategy, and now leading the Developer Experience work for the Windows Azure product team.

    The session primarily covers the work we have done on Windows Azure to make it an open and interoperable platform which supports development using many programming languages and tools. In the session, you can learn the primers on building large-scale applications in the cloud using Java, taking advantage of new Windows Azure Platform as a Service features, Windows Azure applications using Java with Eclipse Tools, Eclipse Jetty, Apache Tomcat, and the Windows Azure SDK for Java.

    We have been working on improving the experience for Java developers who use Eclipse to work with Windows Azure. At this session we announced the availability of a new Community Technology Preview (CTP) of a new plugin for Eclipse which provides Java developers with a simple way to build and deploy web applications for Windows Azure. The Windows Azure Plugin for Eclipse with Java, March 2011 CTP, is an open source project released under the Apache 2.0 license, and it is available for download here. This project has been developed by Persistent Systems and Microsoft is providing funding and technical assistance. For more info in this regard please check out the post, “New plugin for Eclipse to get Java developers off the ground with Windows Azure” by Craig Kitterman and the video interview and demo with Martin Sawicki, Senior Program Manager in the Interoperability team.  Please send us feedback on what you like, or don’t like, and how we can improve these tools for you.

    I would like to thank the folks at the Eclipse foundation and the community for welcoming us and I look forward to working with you all in the future and hope to see you at EclipseCon next year!

    Jas Sandhu, Technical Evangelist, @jassand

  • Interoperability @ Microsoft

    W3C Accepts Microsoft’s Tracking Protection Standard Submission


    The W3C announced today that they have formally accepted Microsoft's proposal on a common W3C standard for Web Tracking Protection, which means that the standardization process can now begin. 

    An important part of our work with W3C is being an active part of existing working groups as well as identifying important new areas where users and the industry can benefit from a common approach. 

    Clearly, privacy is a great candidate for standardization, given the concern that consumers, academics and governments worldwide have expressed, as highlighted in today's blog by Dean Hachamovitch, the Corporate Vice President for Internet Explorer.  

    A common question has been what exactly has been submitted for standardization and how does that process work. Essentially, the Web Tracking Protection specification is designed to help users block content associated with online tracking.  

     The proposal has two parts:

    • Filter lists, which can enforce user privacy preferences by preventing the user agent from making unwanted requests to Web servers that track users.
    • A user preference, which is conveyed by a DOM property and an HTTP header, to be used by Websites and pages to respect the user's privacy.

    Together these technologies can be used to enhance privacy protection for users, and provide access to content and services that respect user privacy preferences.  

     As to how the standardization process works, this is pretty much the flow:

    • The W3C receives many proposals for new standards, and it filters these proposals based on whether the standard will have broad interest across its members before accepting. This is where this proposal is now.
    • The W3C may hold a workshop to build consensus across stakeholders about how to build a standard technology. In this case the workshop is to seek consensus on the scope of the work to be done on the Recommendation Track.  
    • W3C and wider community members then express their interest in W3C taking up work on a standard. Assuming there is enough interest and enough resources, a Working Group is approved and work starts.

    Working group participants come from three places: W3C member companies, outside experts, and W3C employees.  

    A specification can go through many revisions, is open to broad feedback, and there is also a requirement that the actual implementations are interoperable before the specification finally becomes a W3C Recommendation or standard.

     We are currently implementing Tracking Protection Lists in IE9 RC, which expresses both user intent as well as a way to enforce this by the user. 

    We look forward to working with the other members of the W3C on a common standard for tracking protection and improving privacy for users on the web.

     Jean Paoli

    GM: Interoperability Strategy

  • Interoperability @ Microsoft

    Updated Windows Azure Plugin for Eclipse with Java – New JDK and App Server Options, Simplified Publishing


    Microsoft Open Technologies, Inc., has released the October preview of the Windows Azure Plugin for Eclipse with Java. This release includes multiple updates since our September release, including support for version 2.2 of the Windows Azure SDK, and some changes to eclipse version support and how JDKs and App Servers are deployed. For full details, have a look at the documentation update.

    Today’s release includes an update for the new OpenJDK build for Windows Azure from Azul, new Application Server version (Jetty 9), and a few improvements to increase the speed and convenience of configuring and deploying your Java code to Windows Azure.

    Support for the Azul Zulu OpenJDK package

    In July we announced a partnership with Azul Systems, and in September Azul Systems released Zulu, an OpenJDK Build for Windows Azure leveraging the latest advancements from the open source community. At that time, Zulu became an option under the 3rd party JDK Deployment Project options, so you would not have to find and upload it to make it part of your deployment package. Now, Zulu (OpenJDK v7 based offering) update 40 is the latest available option there.

    Here’s an example of the new JDK selection, showing a deployment being configured with the latest version of Zulu selected to be part of the deployment package:


    Support for the Jetty Application Server

    In addition to multiple versions of Tomcat, GlassFish, JBoss and Jetty, the latest version of the plugin also knows how to include the Jetty Application Server version 9 as part of your deployment package. As before, you can not only deploy these App Servers to Windows Azure, but also test your deployments locally in Eclipse before you deploy with full emulation. Here’s the full list of Application Servers supported in this release:


    One-click to your Cloud Service from Eclipse

    In previous versions of the plugin, you would publish, wait for the activity status to change to “Running,” then switch to your browser and navigate to your deployment’s main page in the Windows Azure Portal, and click on a link to view your deployed code in action.

    Although that was not terribly complicated, we’ve made it even simpler – now you can click on the link in the activity log when the green status bar changes to “Published,” and the deployment location will open in a new browser windows automatically. This saves time for those of you looking for quick code iterations!


    New Features when Publishing: Select a Target OS and Overwrite Deployment

    In past plugin versions, you would set a target OS in the project properties before publishing, which was easy to overlook and challenging to find. Now the Target OS can be specified each time you publish to Windows Azure as part of the publishing process. Also, in the past, if you did not unpublish your deployment from the target site before trying to publish again, Windows Azure would return a “409 conflict” error. The new Overwrite previous deployment check box permits publishing to the same target without first manually stopping and unpublishing the previous deployment.

    Here’s the new Publish to Windows Azure dialog with both new features highlighted:



    Add a role from the Eclipse Project Context menu

    In previous releases, adding and configuring Windows Azure Roles was a multi-step process, starting with going to the deployment project’s properties. Now, new Roles can be added more directly via the “Add Role…” command on the Project context menu:


    Latest Windows Azure Libraries for Java (v0.4.6) included

    The Plugin includes the latest distribution of the Windows Azure Libraries for Java (v0.4.6), in its usual location in the Eclipse library list (as “Package for Windows Azure Libraries for Java (by MS Open Tech”).

    Getting the Plugin

    Here are the complete instructions to download and install the Windows Azure Plugin for Eclipse with Java, as well as updated documentation.

    Ongoing Feedback

    Several of these features are a direct result of feedback we’ve received form the community, and we’re listening and taking action. We value your feedback on how we can make it make it easier to test and deploy your Java applications on Windows Azure. As always, let us know how the latest release works for you and how you like the new features!  To send feedback or questions, just use MSDN Forums or Stack Overflow.

  • Interoperability @ Microsoft

    MS Open Tech Brings the Creative World of Cinder to Windows Store Applications


    Great news for Agencies, Creative Coders and Design Engineers

    The open source programming library Cinder is growing in popularity for creative coding in C++, and now these cool Cinder coders can extend the reach of their apps to a broader audience on the Windows Store.

    Microsoft Open Technologies, Inc. (MS Open Tech), and the Microsoft Platform Evangelism team have been working with the Cinder community to enable Windows Store support for Cinder. This code is now available on a public branch on GitHub and it means that creative developers of all kinds can now build a new generation of Windows 8 apps with Cinder. For those not already familiar with it, Cinder is a cross platform framework designed for professional-quality creative coding in C++ and is typically used for design engineering.

    The Windows 8 operating system introduces a new type of application, called a Windows Store app. The new architecture is called Windows Runtime, or WinRT for short. Windows Store apps are presented and can be accessed through their respective Live Tiles. An application's Live Tile is registered automatically when that app is installed from the Windows Store.

    There is still a bit of work to do, such as adding XAML support, but the broader creative coding community is already embracing it. The screen shots above are all from the DirectX, Windows Store samples that ship with the branch.

    In order to run Cinder on Apple, Android and Windows devices prior to Windows 8, the rendering libraries leveraged OpenGL as the open source, cross platform solution. Even though DirectX has been Microsoft's preferred rendering solution for advanced graphics programming, Windows traditionally provided both DirectX and OpenGL support from the desktop. However, Windows 8 Store applications are now exclusively DirectX based, to maximize reusability across the entire domain of Microsoft experiences including Windows Phone, Windows RT, Windows 8, and gaming.

    To get a Cinder project running as a Windows Store app, the Cinder project needs to leverage a DirectX render instead of the default OpenGL renderer. Both OpenGL and DirectX have undergone significant changes over the years. As hardware and software continue to advance, both libraries continue to progress in their own distinct ways. Windows 8 Store apps leverage the most recent version of DirectX 11.1.

    Because DirectX is now directly supported by Cinder, a developer can now write code such as the sample below. Here is some example code for a Cinder BasicApp “Hello World” drawing app. It draws a line while the user is touching the screen (or dragging the mouse):

    #include "cinder/app/AppBasic.h"
    #include "cinder/dx/dx.h"

    using namespace ci;
    using namespace ci::app;
    using namespace std;

    // We'll create a new Cinder WinRT Application by deriving from the Cinder AppBasic class
    class BasicApp : public AppBasic {
           void mouseDrag( MouseEvent event );
           void draw();

           // This will maintain a list of points which we will draw line segments between
           list<Vec2f>         mPoints;

    void BasicApp::mouseDrag( MouseEvent event )
           mPoints.push_back( event.getPos() );

    void BasicApp::draw()
           dx::clear( Color( 0.1f, 0.1f, 0.15f ) );
           dx::color( 1.0f, 0.5f, 0.25f ); 
           dx::begin( GL_LINE_STRIP );
           for( auto pointIter = mPoints.begin(); pointIter != mPoints.end(); ++pointIter ) {
                 dx::vertex( *pointIter );

    // This line tells Cinder to create and run the WinRT application
    CINDER_APP_BASIC( BasicApp, RendererDx )

    As a result, developers who are familiar with either Cinder or DirectX should find themselves right at home with the new capabilities that Windows Store support has just added to the framework. Here’s some early feedback we have received from the Cinder developer community:

    We couldn't be happier about having WinRT support in Cinder. The possibility of distributing apps in the Windows Store, as well as targeting new hardware like the Surface is going to be a big deal for our users. And providing such tangible support for open source through the MS Open Technologies team is really forward-thinking and exciting in its own right. – Andrew Bell, Lead Architect of Cinder

    As a community developed open source project, Cinder separates the stable, official version of its Cinder framework from newer branches that developers setup as they program future functionality. WinRT support for Cinder is currently being developed off of one of these feature branches, with the goal of integrating in to a future iteration of the master project. The DirectX/Windows Store branch of this library can be cloned from Github.

    You can read the Getting Started With Cinder For Windows Store Apps guide here which explains more about Cinder, DirectX and how to setup Visual Studio and Windows 8. We encourage you to share this information with your designer developer colleagues and join the discussion on the official Cinder forums - http://forum.libcinder.org/#Topic/23286000001540037

    We expect this announcement will open up a whole new world of opportunities for creative applications from artists, designers, and developers. We hope you enjoy the Cinder for Windows Store experience and we look forward to seeing your cool new applications.

    Adalberto Foresti, Principal Program Manager
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    ActorFx v0.50 – more stability, scalability, extensibility, Inter-Actor programmability and a new MapReduce demo for our cloud based Actor Runtime


    By the ActorFx team:

    Claudio Caldato, Principal Program Manager Lead, Microsoft Open Technologies, Inc.

    Joe Hoag, Senior Software Engineer, Microsoft Open Technologies Hub

    Brian Grunkemeyer, Senior Software Engineer, Microsoft Open Technologies Hub


    The ActorFx team is happy to announce that the ActorFx v0.50 is available now, with several improvements since our v0.40 release in March. We also have a great new demo available, based on an algorithm employing MapReduce-like functionality.

    ActorFx provides an open source, non-prescriptive, language-independent model of dynamic distributed objects for building highly available data structures and other logical entities via a standardized framework and infrastructure. ActorFx is based on the idea of the mathematical Actor Model for cloud computing. Have a look at the CodePlex site for more information.

    This release contains some significant improvements:

    · Stability: We fixed a few bugs to eliminate deadlocks and race conditions.

    · Diagnostics: we added support for Event Tracing for Windows (ETW) and now ActorFx emits new ETW event types that can be used to diagnose issues at runtime.

    · Scalability: we implemented port sharing and per-node assembly caching

    · Inter-Actor Programmability: we added the ability for actors to create and delete other actors

    · Extensibility: We did some refactoring and added a StatelessActorApp that will enable us to implement alternative persistence mechanisms based on Azure Tables, SQL Azure and others in the future

    With the v0.50 release we also added a new demo: WordCount. WordCount demonstrates ActorFx’s ability to effect dataflow-type computations over dynamic topologies, employing a MapReduce-type algorithm to count the occurrences of all words in a selected set of textual documents.

    WordCount launches three classes of actors: mapper actors, reducer actors, and an aggregation actor.  Each are populated with the necessary logic to perform their respective functions by sending an assembly containing actor methods to each.

    The WordCount sample demonstrates many of the advantages of ActorFx:

    · Actor behavior is assigned via the passing in of an assembly containing actor methods.

    · File names and progress messages are passed from one tier to the next using actor-to-actor method calls.

    · Status information is emitted and collected using ActorFx pub/sub mechanisms.

    Details on how to run the WordCount application can be found in the CodePlex site.

    We are already working on the v0.60 release and on some new demos that show how ActorFx can be used on a wide range of scenarios. As always, we welcome input from the community. For those of you who are using ActorFx in implementations, we’d like to hear more about how it’s useful to you and how it can be improved.

    We are looking forward to your comments/suggestions, and stay tuned for more cool stuff coming in our next release!

  • Interoperability @ Microsoft

    Microsoft Releases New Dev Tools Compiled With Open Source Code


    Jason Zander blogged about new releases of Microsoft’s developer tools today – tools that include many contributions from the open source community with the MS Open Tech Hub on CodePlex.

    The OSS community helped build out the source code for ASP.NET MVC 4, Web API, Web Pages 2 and Entity Framework 5 – key components in the new releases of Visual Studio 2012, Team Foundation Server 2012, and .NET Framework 4.5. Through CodePlex, developers outside Microsoft submitted patches and code contributions that the MS Open Tech Hub development team reviewed for potential inclusion in these products. I described this process in more detail last month, More of Microsoft’s App Development Tools Goes Open Source.

    Today’s news had an additional cool factor. As Jason highlighted in his blog, “Developing great apps for Windows 8 is an important goal of this release. Therefore, in coordination with today’s developer tools releases, you’ll notice that the final version of Windows 8 has released to the web as well.”

    There is a ton of great resources on these tools that you can check out and download today. The ASP.net website is a great place to start. I also recommend my friend Scott Hanselman’s new videos.

    Microsoft’s partner-centric approach has been with the company since the very beginning. Today’s milestone shows that all developers can contribute to and benefit from Microsoft’s open platforms in the future.

    Gianugo Rabellino
    Senior Director Open Source Communities
    Microsoft Open Technologies, Inc.
    A subsidiary of Microsoft Corporation

  • Interoperability @ Microsoft

    Windows Gets Eclipse Platform Improvements


    Today, David Green at Tasktop posted a blog about the latest Eclipse platform improvements for Windows. As part of Tasktop’s ongoing partnership with Microsoft, they’ve been working hard to bring two more Eclipse platform improvements for Windows this year: Desktop Search and Glass.

    You can read more about both of these improvements here.

    We look forward to continuing to work with both Tasktop and the Eclipse community going forward, and would love to hear from you about new features you would like to see in the future. Feel free to let David know about these at david.green@tasktop.com.


    Martin Sawicki

    Principal Program Manager: Interoperability

  • Interoperability @ Microsoft

    Using LucidWorks on Windows Azure (Part 2 of a multi-part MS Open Tech series)



    LucidWorks Search on Windows Azure delivers a high-performance search service based on Apache Lucene/Solr open source indexing and search technology. This service enables quick and easy provisioning of Lucene/Solr search functionality on Windows Azure without any need to manage and operate Lucene/Solr servers, and it supports pre-built connectors for various types of enterprise data, structured data, unstructured data and web sites.

    In June, we shared an overview of the LucidWorks Search service for Windows Azure, and in our first post in this series we provided more detail on features and benefits. For this post, we’ll start with the main feature of LucidWorks – quickly creating a LucidWorks instance by selecting LucidWorks from the Azure Marketplace and adding it to an existing Azure Instance. It takes a few clicks and a few minutes.

    Signing up

    LucidWorks Search is listed under applications in the Windows Azure Marketplace. To set up a new instance of LucidWorks on Windows Azure, just click on the Learn More button:


    That takes you to the LucidWorks Account Signup Page. From here, you select a plan, based on the type of storage being used and the number of documents to index. There are currently four plans available: Micro, which has no monthly fee, Small and Medium, which have pre-set fees, and Large, which is negotiated directly with LucidWorks based on several parameters. All of the account levels have fees for overages, and the option to move to the next tier is always available via the account page.

    The plans are differentiated on document limits in indexes, the number of queries that can be performed per month, the frequency that indexes are updated, and index targets. Index targets are the types of content that can be indexed – for a Micro, only Websites can be indexed, for small and large, files, RDBMS, and XML content can also be indexed. For large instances ODBC data drivers can be used to make content available to indexes.


    Once the plan is selected, enter your information, including Billing Information:


    Once the payment is processed (Or in the case of Micro, no payment), a new instance is generated and you’re redirected to an account page, and invited to start building collections!



    In the next part of the series we’ll cover setting up collections in more detail, for now let’s cover the account settings and configuration. Here’s the main screen for collections:


    The first thing you see is the Access URL options. You can access your collections via Solr or REST API, and here’s where you get the predefined URL for either. When you drill down into the collections you see a status screen first:


    This shows you the index size and stats about modification, queries per second, and updates per second, displayable by the last hour, day or week. This screen is also where you can see the most popular queries.

    Data Sources

    If you were managing external data sources, here’s where you configure them, via the Manage Data Sources button.


    From here you can select a new data source from the drop-down. The list in this drop-down is as of this writing, and may change over time – check here for more information on currently supported data sources.


    The Indexing Settings are the next thing to manage in your LucidWorks on Azure account. Here’s the Indexing UI:


    Indexing Settings

    De-duplication manages how duplicate documents are handled. (As we discussed in our first post, any individual item that is indexed and/or searched is called a document.) Off ignores duplicates, Tag identifies duplicates with a unique tag, and Overwrite replaces duplicate documents with new documents when they are indexed. Remember that de-duplication only applies to the indexes of data, not the data itself – only the indexed reference to the document is de-duplicated – so duplicates will still exist in the source data even if data in the indexes has been de-duplicated. Duplicates are determined based on key fields that you set in the fields editing UI.

    Default Field Type is used for setting the type of data for fields whose type LucidWorks cannot determine using its built-in algorithms.

    Auto-commit and Auto-soft commit settings determine when the index will be updated. Max time is how long to wait before committing, and max docs is how many documents are collected before a commit. Soft commits are used for real time searching, while regular commits manage the disk-stored indexes.

    Activities manage the configuration of indexes, suggested autocomplete entries, and user result click logging.

    Full documentation of indexing settings can be found here.

    Field Settings

    Field Settings allow configuration of each field in the index. Fields displayed below are automatically defined by data extraction and have been indexed:


    Field types defined by LucidWorks have been optimized for most types of content, and should not generally be changed. The other settings need to be configured once the index has run and defined your fields:


    For example, a URL field would be a good candidate for de-duplication, and you may want to index it for autocomplete as well. You can also indicate on Field Settings whether you want to display URLs in search results. Here is full documentation of Field Settings.

    Other Indexing Settings

    Dynamic Fields are almost the same as fields, but are created or modified when the index is created. For example, adding a value before or after a field value, or adding one or more fields together to form a single value.

    Field Types is where you add custom field types in addition to the default field types created by your LucidWorks installation.

    Schedules is where you add and view schedules for indexing.


    Querying Settings is where you can edit the configuration for how queries are conducted:



    The Default Sort sets results to be sorted by relevance, date, or random.

    There are four Query Parsers available out of the Box for LucidWorks; a custom LucidWorks parser, as well as standard Lucene, dismax and extended dismax. More information on the details of each parser is available here.

    Unsupervised feedback resubmits the query using the top 5 results of the initial query to improve results.

    This is also where you configure the rest of your more familiar query behavior, like where stop words will be used, auto complete, and other settings, the full details of which are here.

    Next up: Creating custom Web site Search using LucidWorks.

    In the next post in the series, we’ll demonstrate setting up a custom Web site that integrated LucidWorks Search, and the configuration settings we use to optimize search for that site. After that, in future posts we’ll discuss tips and tricks for working with specific types of data in Lucidworks.

    Brian Benz
    Senior Technical Evangelist
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    Oracle Database, WebLogic Server and JDK are now Generally Available on Windows Azure


    Microsoft Open Technologies, Inc, is pleased to share the news that select Oracle Software is now Generally Available on Windows Azure and Windows Server Hyper-V.

    This means that Microsoft Open Technologies, Inc. and Oracle now provide best in class, end to end support for customers running Oracle software on Windows Azure and Windows Server Hyper-V. You can now use one of Windows Azure’s license-included Oracle images for Windows with full support, and you can still use your existing licenses to run Oracle software on Windows Azure Infrastructure-as-a-Service (IaaS) in either Windows or Linux.

    Microsoft Windows Server has long been an important Oracle supported platform.  Last September at Oracle Open World, Oracle and Microsoft extended that support by providing certification and support for Oracle applications, middleware, Database, Java and Oracle Linux on Windows Server Hyper-V and Windows Azure.  

    For more information, please have a look at the following resources:

    Overview and Licensing Information at windowsazure.com

    Overview and Licensing Information at oracle.com

    A list of Oracle Virtual Machine Images for Windows

    Support Policy for Oracle Images Provided by Microsoft Open Technologies, Inc.

    Oracle Cloud Licensing Policy at oracle.com (PDF)

    Oracle Self Service Kit

    How to use Oracle images on Windows Azure

    Pricing Details

    We’re excited that we’re providing this important service with Oracle’s partnership. We’d like to hear what you have to say! Please share comments here.

  • Interoperability @ Microsoft

    More W3C Pointer Events Implementations with Dojo and IE11


    The W3C Pointer Events emerging standard continues to gain traction, advancing support for interoperable mouse, touch, and pen interactions across the web. Further to our previous Blog where we highlighted the work the Dojo team are doing with Pointer Events, we can now confirm an implementation of Pointer Events has now been added to the patch list for Dojo Toolkit 2.0.

    Pointer Events makes it easier to support a variety of browsers and devices by saving Web developers from writing unique code for each input type. The specification has earned positive feedback from the developer community -- many are already embracing it as a unified model for cross-browser multi-modal input.

    In our previous Blog on W3C Pointer Events, we highlighted feedback shared by members of the jQuery, Cordova, and Dojo communities. The team at Nokia are also excited about progress with the Pointer Events standardization work as Nokia's Art Barstow, Chair of the W3C's Pointer Events Working Group noted:

    Google, Microsoft, Mozilla, jQuery, Opera and Nokia are among the industry members working on the Pointer Events standard in the W3C's Pointer Events Working Group. Pointer Events is designed to handle hardware-agnostic multi user inputs input from devices like a mouse, pen, or touchscreen and we are pleased to see it achieve Candidate Recommendation status in W3C. Pointer Events is a great way for developers to enable better user interaction with the mobile Web and we are excited to see the various implementations around the Web that are already underway. Web developers can start coding with Pointer Events today and we look forward to further progress with the standard and adoption within the Web community.

    Pointer Events at //Build 2013

    During the recent //Build 2013 event, Jacob Rossi of the Internet Explorer (IE) team presented Lighting Your Site Up on Windows 8.1 which included guidance on how Web developers can use the capabilities of Pointer Events to make web sites ‘shine’ across many devices such as touch/mouse/pen, high resolution screens, and screen sizes from phones to desktops, taking advantage of sensors and other hardware innovations. The Internet Explorer 11 Preview implementation has been updated from Internet Explorer 10 to include the latest Candidate Recommendation specification for W3C Pointer Events - see Pointer Events updates in the IE11 Developer Guide for further details.

    As we continue to work with the vibrant Web community, we look forward to seeing even more Pointer Events support across a growing number of JavaScript libraries and frameworks – there’s more to come! To learn more about using and implementing Pointer Events, feel free to check out and contribute to the Pointer Events Wiki on Web Platform Docs which includes community generated polyfills, tests, demos, and tutorials, or join the discussion at #PointerEvents. Point. Click. Touch.

  • Interoperability @ Microsoft

    Community Participation


    I'm heading off to Paris this weekend to participate in the annual Open Source Think Tank and Open World Forum events held in that wonderful city next week.

    I'm really looking forward to chatting with all those folk interested in this space, from enthusiasts to developers and end users.

    I will be joined at these events by my colleague and Technical Ambassador Craig Kitterman, as well as by our local market interoperability program lead Alfonso Castro.

    We will present technical sessions and participate in a number of panel discussions, ranging from what Open Source, Open Standards and Open Systems mean today to Open Source as an agent of change.

    Our participation in these Paris events complements our existing broad engagement with OSS communities, and we look forward to meeting our friends from the PhP, Node.js, Drupal, Joomla, and WordPress.communities as well as to making a lot of new ones.

    You can read more about our participation in Paris here, and we look forward to meeting those of you lucky enough to be attending in person.

  • Interoperability @ Microsoft

    Microsoft Interoperability at Zend PHP Conference 2009


    ZendCon 2009 just wrapped up on Thursday. It was held at the San Jose McEnery conference center from the 19-22 October 2009. The conference is a great opportunity to catch up on PHP development and deployment. There are intensive tutorials and crash courses where developers can get up to speed quickly and get certified. An Un-Conference runs alongside the main sessions in an informal setting and is mostly presented by the attendees themselves. An exhibit hall has  a few partners on display including our  Microsoft Website Spark team. There was something for those new to the technology, and plenty to chew on for experts, with plenty of opportunities to network and get to know one another.

    Zend Conference 2009 ZendCon is put together by Zend Technologies Inc. They are also is known as ‘the PHP Company’ in the industry. The founders, Andi Gutmans (CEO) and Zeev Suraski (CTO) are key contributors to PHP and the creators of the core PHP scripting engine, the Zend Engine as well as the Zend Framework. The company provides important leadership for PHP and other open source communities, and plays a central role in the explosive growth of PHP.The conference also serves as an opportunity for the rest of the contributor community  to have a real-world venue to connect, which is an important thing in itself as they usually interact virtually. You get to hear about some of the key developments and trends right from the source and not just as the sessions.

    Microsoft has been participating in ZendCon since 2006 and so we weren’t exactly strangers to this community. At this conference however we had some key information that we wanted to share with the community. These projects can be found on our  Interoperability Bridges page and are also on this blog. Featuring …PHP Installed

    PHP on Windows has come a long way on Windows! At first it was a framework you had to compile from source and run on a web server, it is now installable from many popular ftp/websites like windows.php.net. You can easily get PHP downloaded  along with the rest of your favorite apps and tools on your web development stack  by using the Microsoft Web Platform Installer. It’s tiny and free! The install for PHP happens in minutes once you pull it down from the web. More and more applications that are frequently being adopted can be found on the Windows Web App Gallery. For example applications such as  Drupal, a popular Content Management System and Wordpress, a popular Blog engine are available on there.

    Getting PHP on Windows easily installed for development and deployment was one of the most frequently asked question by most PHP developers and administrators I have talked to. Many are shocked when they first download the installer and in a few check boxes have a fully configured PHP environment and application running. You can also modify and create custom deployments of your applications fairly easily and have the same environment running in your staging and production environments in a few mouse clicks too.

    Developing on the Cloud PanelThe keynotes are a big draw at the event …  Andi Gutmans in his kickoff and state of the union keynote, ‘PHP at the Heart of Mainstream IT’, spent some time on the partnership with Microsoft. You can read a little more about what was said on  Information Week and Visual Studio Magazine. We were also on a special Keynote Panel, Developing on the Cloud. Vijay Rajagopalan, Principal Architect on the team and a person who is very instrumental in developing some of the technical bridges mentioned in this post participated on behalf of Microsoft. He was joined by a few other cloud players including Wil Sinclair (Zend), Doug Tidwell (IBM), Thorsten von Eicken (RightScale) and Dave Nielsen (CloudCamp). Stephen O'Grady (RedMonk) was the moderator. Most of the panels participants are from the Simple Cloud effort. The questions were mostly taken from the #ZendCon Twitterstream in real-time and that gave a bit of a dynamic feel to the panel and allowed observers to provide live and, most of the time, candid commentary. There was a range of discussion from developer tools and frameworks, to management and security, and to more abstract discussions about the offerings from different vendors in the industry.

    Some notable sessions that covered Microsoft and Interoperability topics, SimpleCloud.org

    • Josh Holmes, a Microsoft Architect Evangelist based in Michigan, presented ‘What’s new in PHP on Windows’. He covered some of improvements on various aspects of running PHP on Windows.
    • Kevin Leneway, a Microsoft Audience Marketing Manager from Redmond presented an Un-Conference session titled ‘Forget the Hype: Real-World Experiences Running PHP Frameworks in the Cloud’. An informal discussion with developers on what is works and doesn’t and the state of the space.
    • Will Sinclair, from the panel above, gave a session ‘PHP and Platform Independence’ in which he describes the Simple Cloud API which we contributed to and how it abstracts out and gives a common interface for making applications interoperable across cloud vendors.
    • Aaron Wormus, had an interesting and well attended session on ‘Mastering Open XML Documents with PHP’ where he talked about PHPExcel and the tricks on how to use it to create, read  and manipulate powerful documents programmatically.
    • Rob Richards, session on ‘Digital Identity: OpenID and Information Cards’ covered authentication benefits and considerations on implementing the two methods.

    Neat thing about this community of web experts, they share their slides online! You can find them at the ZendCon 2009 and Unconference Joind.in event page.

    There was a lot to learn! I had a very pleasant experience at the conference and I’m very glad that I attended. I even bumped into some old friends and made many new ones too. I would like to thank all the folks at Zend Technologies & S+S media  for putting the conference together and to the PHP community for the great discussion on technology, the web, PHP and all sorts of geekdom …  y’all rulz!

    Jas Sandhu
    Senior Technical Evangelist, Interop Vendor Alliance Manager, Interoperability Strategy Team
    Twitter@jassand, FriendFeed@jassand

  • Interoperability @ Microsoft

    BuildNewGames.com to help developers write cross-browser code


    BuildNewGames.com, a new site to make building web games easier for developers using HTML5, CSS3 and JavaScript, is now live!

    Along with a new partnership with Bocoup, Microsoft announced @ JSConf the launch of this new site.

    You can read the post from Justin Garret, Senior Product Manager in the IE team, announcing the partnership and the new site launch.

    Over the next few months, the site will feature 50 tutorials ranging from the coding basics of games all the way to how to make money across a range of platforms.  Follow @buildnewgames or @IE for the latest.

    Developers want to be able to write code that works reliably in all modern browsers, including ie10/9, Chrome and Firefox, along with mobile browsers, resulting in a complex test matrix and higher development costs. Through standards bodies leadership and practical learning, Microsoft wants to help Web developers have an easier time targeting various browsers at once, allowing them to concentrate on innovating and delivering an outstanding Web and gaming experience to final users.

    BuildNewGames.com already features technical articles on Animation, Compositing, Graphics, Mobile, SVG, Sprites, Tools, WebSockets.

    Developing games is becoming lots of fun again!

  • Interoperability @ Microsoft

    Windows Azure Mobile Service updates and added support for Android push notifications via Google Cloud Messaging


    Listening to the developers’ feedback, the Windows Azure Mobile Services team is releasing new features and updates to make Mobile Services a more robust and flexible backend for mobile apps that scale. Contributing its expertise in bridging Microsoft and non-Microsoft technologies, MS Open Tech built the new Android Notification Hubs SDK and updated the Android SDK for Windows Azure Mobile Services.

    Updates to Windows Azure Mobile Services

    Mobile Services makes it fast and easy to build dynamic and engaging mobile apps that scale. Windows Azure is expanding the Mobile Services capabilities:

    • Adding support for Custom API allowing developers to write server-side scripts that aren’t associated with a SQL database table and giving them additional control over the HTTP request and response so that they can receive types other than JSON and then detect and append their own HTTP headers.
    • Adding source control via git.

    You can find more details on these updates reading the Windows Azure and ScottGu’s blogs.

    MS Open Tech contributed the Android push notifications support in Notification Hubs

    Notification Hubs lets you broadcast push notifications to millions of devices across platforms from almost any backend hosted in Windows Azure. Notification Hubs are a great way to modernize existing apps hosted in Virtual Machines, Cloud Services or Web Sites by engaging users through push notifications; it’s also a great way to enrich the push notifications support available through Mobile Services by subscribing different subsets of users to different topics.

    Notification Hub enables broadcast push notifications scenario not only for consumer apps but also for enterprise apps that need to update thousands or millions of mobile users simultaneously.

    Building on our learning and experience in previous releases, MS Open Tech contributed the support for Android push notifications via Google Cloud Messaging (GCM) to the suite of supported platforms. With this release, developers can now broadcast push notifications to Windows Store, iOS and Android devices via WNS, APNS, and GCM, respectively.

    To get started broadcasting push notifications to Android devices, you’ll need the Service Bus .NET Preview SDK, the Android SDK, and the new Android Notification Hubs SDK. Learn more on the Windows Azure blog.


    As for previous releases, the Android Notification Hubs SDK is open sourced and you can find the code on GitHub.

    Free 20MB SQL Database

    Last but not least, and still responding to developers’ feedback, Windows Azure now offers a 20MB SQL Database to every Windows Azure subscription that can be used with Windows Azure Mobile Services or Web Sites. This will definitively help developers building mobile and web apps and need to store relational data in the cloud. And this will also be handy to have a free data option during development and test.

    Next steps

    You can start building Mobile Services powered that leverage Custom API and local git for source control today. You can also add Android broadcast push support to any app built on Windows Azure with Notification Hubs.

    Visit the Mobile Developer Center and MSDN for more information regarding Mobile Services and Notification Hubs, respectively. Visit Scott Guthrie’s blog post for additional information regarding this release.

    And as usual, feel free to let us know what you think about our work commenting on this post or sending us an email.

  • Interoperability @ Microsoft

    Live from //build/: Windows Azure Mobile Services and Web Sites GA, Autoscale Preview and new Virtual Machines Images


    Windows Azure Mobile Services and Windows Azure Web Sites are now generally available, offering a rich set of services for building what we call “Modern Applications.” Modern applications are invariably web based and accessible by a broad spectrum of mobile devices. Microsoft Open Technologies has taken an active part in these releases, contributing its expertise in bridging Microsoft and non-Microsoft technologies and building the Android SDK for Windows Azure Mobile Services and the Android Notification Hubs SDK.

    Windows Azure Mobile Services

    Windows Azure Mobile Services makes it fast and easy to build connected applications that scale and reach every user on every device. The Windows Azure team not only provides SDKs for building native Windows Store, Windows Phone, Android, iOS and HTML5 apps, but also open sources the Windows Azure Mobile Services SDKs on GitHub and offers a REST API developers can use to reach additional client platforms. Server-side extensibility allows apps to consume other Windows Azure services like blob and table storage and third party services like SendGrid and Pusher, as well as connect to on-premises systems.

    Windows Azure Web Sites

    Windows Azure Web Sites is the fastest way to build, scale and manage business- and enterprise-grade Web applications. It is flexible and provides support for multiple languages, frameworks and databases. It has the features needed for business-class web presence like SSL and authentication via Windows Azure Active Directory. Web agencies can create socially connected applications and automatically scale them as their campaigns grow. Visual Studio users will find that Windows Azure Web Sites provides the best-in-class experience for cloud development and deployment.

    Additional Service Updates

    Additional services are also coming to Windows Azure in preview, along with new Windows Azure Virtual Machines images (SQL Server 2014 and Windows Server 2012 R2) and enhancements to Windows Azure Active Directory.

    Auto scale, alerts and monitoring are now available in preview. These services allow you to monitor the health and availability of your applications, receive notifications when your service availability changes, perform action-based events, and automatically scale to match current demands.

    Last but not least, in today’s keynote, Satya Nadella gave a sneak peek into future enhancements to Windows Azure Active Directory. Windows Azure is working with third parties like Box and others so they can take advantage of Windows Azure Active Directory to enable a single sign-on (SSO) experience for their users. If a higher level of security is needed, you can leverage Active Authentication to give you multifactor authentication.

    Learn more

    To learn more on these announcement, visit the Windows Azure blog. You can also stream today’s //build/ keynote on channel 9.

  • Interoperability @ Microsoft

    Apache Qpid Proton AMQP libraries now available for Windows.


    Back in November Microsoft Open Technologies, Inc. announced that Advanced Message Queuing Protocol (AMQP) 1.0 was approved as an OASIS Standard.  AMQP 1.0 enables interoperability using wire-level messaging between compliant clients and brokers. Applications can achieve full-fidelity message exchange between components built in multiple languages and frameworks and running on different operating systems.  

    Today we’re happy to share the news that the Apache Qpid Proton C AMQP library has been updated to support Windows. Proton C also includes bindings for several interpreted languages including PHP, Python, Ruby and Perl, all of which can now be used on Windows.

    UPDATE 04/18/2013 - The following paragraph was in error.  The Windows Proton libraries do not work with the latest preview release of service bus due to lack of SSL support. We apologize for the error. 

    These Proton clients can be used in conjunction with Windows Azure Service Bus, which introduced support for AMQP 1.0 as a preview feature last October, with GA planned later this year. Applications can use AMQP to access the queuing and publish/subscribe brokered messaging features.  Service Bus is a multi-protocol service, so in addition to AMQP, applications can also use REST/HTTP to access Service Bus from any platform.

    For more information, check out the official OASIS site, this developer’s guide, and downloads(the 0.4 version supports Windows) for Qpid Proton. MS Open Tech was one of many contributors to this project, and we appreciate all the work that the community is doing to help developers take full advantage of AMQP across many different languages, frameworks, and platforms.

  • Interoperability @ Microsoft

    MS Open Tech releases Kinect Common Bridge, a simple open source way for infusing the magic of Kinect in creative development



    Want to control your 3D model animation with your body, Minority Report style? We’ve got you covered. Today, Microsoft Open Technologies released the open source project Kinect Common Bridge for Kinect for Windows.

    To learn more about this release and access the project on GitHub, visit out post on our new blog: http://aka.ms/kinectcommonbridgeblog

  • Interoperability @ Microsoft

    Add a pinch of Pointer Events to your Apache Cordova or PhoneGap app thanks to MS Open Tech


    clip_image0023_thumb1Here is a new open source plugin for Apache Cordova by Microsoft Open Technologies, Inc. The plugin makes it easy to use the Pointer Events model in your Cordova or PhoneGap projects.

    To learn more about Pointer Events and see a cool demo of this plugin in action, check out the full post on our new blog: http://aka.ms/pointereventscordova

  • Interoperability @ Microsoft

    MS Open Tech Releases Open Source Patch for OpenSSL to Enable HTTP/2.0 Secure Negotiation


    As part of our commitment to the progress of HTTP/2.0 in an open and interoperable fashion, Microsoft Open Technologies, Inc., has yesterday reached out to the OpenSSL community with a proposed contribution supporting Application Layer Protocol Negotiation (ALPN) in the OpenSSL encryption libraries. We submitted a patch request to http://www.openssl.org/ that implements the relevant part of the HTTP/2.0 specification available at http://tools.ietf.org/html/draft-ietf-httpbis-http2-03#section-2.3.

    Security and encryption are critical components of the next version of the HTTP protocol. If you have been following the HTTP/2.0 effort, the industry is collaborating in the IETF Transport Layer Security Working Group (TLS WG) and ALPN has been adopted as a WG draft with a broad set of contributors including Microsoft, Cisco, Google, and Orange. The latest working draft at IETF requires the use of ALPN as the mechanism for secure negotiation which means ALPN will now be a key part of HTTP/2.0.

    The availability of an open source implementation of ALPN in the most popular open source encryption library allows interested developers to verify the benefits of ALPN and its compliance with established TLS design principles. This was called out in our earlier prototype that introduced support in the OpenSSL library for ALPN.

    We will continue the technical conversation about this proposed contribution on the OpenSSL mailing lists as well as working closely with the IETF WG to collaborate in designing the next major version of the HTTP protocol. We encourage you to join in the discussion and participate in the HTTP/2.0 standardization effort.

    Adalberto Foresti
    Principal Program Manager
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    Start Prototyping With the First Implementable Draft of HTTP/2.0 from the IETF Standards Community


    I am excited to share that the long awaited first HTTP/2.0 implementable draft has been published by the IETF HTTP Working Group at the Internet Engineering Task Force (IETF). This is the first in a series of experimental implementations of HTTP/2.0 that will enhance the performance of the web.

    This draft is a direct outcome from the First Interim Meeting in Tokyo in January - “The most important outcome of the interim meeting in Tokyo was the recommendation to create a HTTP/2.0 ’Implementation Draft Specification’ based on the set of features that have achieved rough consensus in the HTTPBIS working group at this time. The intent is to converge on the details using the IETF HTTPBIS mailing list and then implement and validate the subsequent implementation draft. And then repeat the process based on our experience and new understanding – as Mark Nottingham (IETF HTTPBIS chair) has clarified:

    “Note that we are NOT yet firmly choosing any particular path; rather, we're working on proposals in code as well as text, based upon discussion to date. As such, we're likely to have several such implementation drafts that progressively refine the approach we're taking. I.e., we don't have to agree that the above is what we want HTTP/2.0 to look like -- only that it's interesting to make these changes now, so that we can test them.”

    I am also pleased to announce that Microsoft has made its necessary patents that cover the current draft available under royalty-free terms.

    Participants in the HTTP working group have committed to a wide range of implementations. Microsoft Open Tech is actively engaged and prototyping a HTTP/2 server based on the Katana project. Early interoperability testing is planned for the third interim face-to-face meeting in August.

    I encourage the community to openly and actively review the implementable draft and start implementing today.

    HTTP/2 Second Interim Meeting

    To converge on the remaining issues blocking the first implementable HTTP/2.0 draft, the IETF HTTPBIS working group held its second interim face-to-face meeting on 6/13-6/14 at the Twitter offices in San Francisco. I attended with representatives from Microsoft, Gabriel Montenegro and Rob Trace.

    As captured in the minutes, there was an open and lively discussion of the issues and rough consensus to adopt an updated header compression proposal. Mark Nottingham, the HTTPBIS chair, summarized the meeting outcomes on the mailing list for wider review.

    To accelerate the development of HTTP/2.0 prototypes, I shared the news that Microsoft Open Technologies proposed to contribute our implementation of Application Layer Protocol Negotiation (ALPN) to the OpenSSL community. ALPN is required to support HTTP/2 secure negotiation. More details are available here.

    Looking Ahead for the HTTP/2.0 Standardization Work

    The working group is meeting on a frequent schedule to make progress on HTTP/2.0

    • IETF 87, July 28 – August 2 in Berlin, Germany
    • Third interim HTTP/2.0 meeting, August 5 – August 7 hosted by Adobe in Hamburg, Germany
    • Proposed Fourth interim HTTP/2.0 meeting, October 30 – November 1 hosted by Microsoft Open Technologies, Inc. (with participation from Microsoft product groups) in Bellevue, WA
    • IETF 88, November 3 – November 8 in Vancouver, BC, Canada

    Representatives from Microsoft Corporation and Microsoft Open Technologies, Inc. plan on participating in these meetings and encourage the community to also attend and become more involved in defining the next generation of HTTP at the IETF. And remember, you can start prototyping the first implementable draft of HTTP/2.0 from the IETF standards community today.

  • Interoperability @ Microsoft

    Microsoft Brings Cloud Interoperability Down to Earth


    I wanted to share this Feature Story that we have just posted on the Microsoft News Center:


    Interoperability in the Cloud

    Cloud-Interoperability-practical Cloud interoperability is specifically about one cloud solution, such as Windows Azure, being able to work with other platforms and other applications, not just other clouds. Customers also want the flexibility to run applications either locally or in the cloud, or on a combination of the two. Microsoft is collaborating with others in the industry and working hard to ensure that the promise of cloud interoperability becomes a reality.

    Leading Microsoft’s interoperability efforts are general managers Craig Shank and Jean Paoli. Shank spearheads the company’s interoperability work on global standards and public policy, while Paoli collaborates with Microsoft’s product teams as they map product strategies to customers’ needs.

    Shank says one of the main attractions of the cloud is the degree of flexibility and control it gives customers: “There’s a tremendous level of creative energy around cloud services right now — and the industry is exploring new ideas and scenarios together all the time. Our goal is to preserve that flexibility through an open approach to cloud interoperability.”

    Adds Paoli, “This means continuing to create software that’s more open from the ground up, building products that support the existing standards, helping customers use Microsoft cloud services together with open source technologies such as PHP and Java, and ensuring that our existing products work with the cloud.”


    Read the complete story: Microsoft Brings Cloud Interoperability Down to Earth


  • Interoperability @ Microsoft

    Sharing proposals for negotiation and flow control for HTTP/2.0 at IETF 85



    Gabriel Montenegro
    Principal Software Development Engineer, Microsoft Corporation

    Brian Raymor
    Senior Program Manager, Microsoft Open Technologies, Inc.

    Rob Trace
    Senior Program Manager Lead, Microsoft Corporation


    We just returned from the IETF 85 meeting in Atlanta, where the HTTPbis working group held face to face meetings to begin work on HTTP/2.0. As outlined in our previous IETF 84 report, there are seven key technical areas where consensus has not yet emerged or the initial draft did not specify clear behavior for an interoperable implementation. The IETF 85 meeting focused on three of these areas:

    Discussion on server push was deferred until more data is available.


    As noted in the HTTPbis charter, the working group needs to explicitly consider:

    A negotiation mechanism that is capable of not only choosing between HTTP/1.x and HTTP/2.x, but also for bindings of HTTP URLs to other transports (for example).

    To move the discussion forward, Microsoft presented Upgrade-based Negotiation for HTTP/2.0 at the HTTPbis meeting. This presentation is based on our draft proposal which allows HTTP/2.0 to be negotiated either in the clear or over TLS. Further details on its design and MS Open Tech related HTML5 Labs prototype are available in More HTTP/2.0 Prototyping: a Suggested Approach to the Protocol Upgrade.

    The working group consensus was “to pursue this path” and gather more data on its success in real world deployments when the connection is not secure. Drafts for alternatives that enhance or bypass the Upgrade approach were also solicited.

    Flow Control

    There has been limited discussion in the HTTPbis working group on flow control. Microsoft presented Flow Control Principles for HTTP 2.0 to build consensus around the rules and guidelines for future Flow Control prototypes and experimentation. Based on the response to the presentation, Mark Nottingham, the HTTPbis chair, requested a draft proposal to be submitted which incorporated suggestions from other participants. Microsoft submitted the first version of HTTP 2.0 Principles for Flow Control with contributions from Ericsson. Further versions with additional contributors are expected.


    We were very pleased with the progress of the discussions as reflected in the audio and the draft meeting minutes.

    As Lao Tzu wrote “A journey of a thousand miles begins with a single step”. IETF 85 was the first step towards the proposed completion date of November 2014. Next steps are a potential interim face to face meeting in January or February 2013 and then IETF 86 in March 2014. We’re looking forward to contributing and participating in these sessions.

    Gabriel Montenegro, Brian Raymor, and Rob Trace

  • Interoperability @ Microsoft

    Try the June CTP of Windows Azure AppFabric Service Bus REST API from Java, PHP


    Good news for all the PHP and Java developers out there: today we are publishing some Windows Azure AppFabric Service Bus samples just for you.

    Since the AppFabric Service Bus REST API can be used from almost all programming languages and operating systems, it makes it very easy for applications written on any platform to interoperate with each another through Windows Azure.

    To illustrate the point, we took the chat application that is already available as part of the Silverlight samples and made sample clients in PHP and Java that can all work seamlessly together.

    You can download the new PHP and Java samples, as well as all others for all other supported environments, from CodePlex.

    The Java application is implemented as a stand-alone client application and these are the steps you need to follow to build it:

    1. Edit the src\config\appfabric.properties file and add your Service Namespace, Issuer Name and Issuer Secret Key (obtained here).
    2. Compile the source using Apache Ant: navigate to the application directory in a command prompt and run “ant”.
    3. Once the build is complete, cd to the new “dist” directory and run the jar file: “java –jar AppFabricChat.jar”.

    To use the PHP app, you need to:

    1. Add your Service Namespace, Issuer Name and Issuer Secret Key to application\configs\appfabric.ini (obtained here). 
    2. Then point your webserver at the “public” directory and browse to the site.

    To set up a new site in IIS:

    1. Open “Internet Information Services (IIS) Manager”
    2. Click “View Sites”, then “Add Web Site…”
    3. Give the site a name such as AppFabricChat and point “Physical path” to the “public” directory of the PHP application.
    4. Pick port and hostname information, and click OK.
    5. Click the link under “Browse Web Site” to see the application.

    Note: If PHP isn’t enabled on your web server, use WebPI to install it.

    We would really like to get your feedback on these Java and PHP samples, so please feel free to ask questions and provide feedback on this at the Windows Azure AppFabric CTP Forum.


    Alessandro Catorcini
    Principal Group Program Manager
    Interoperability Strategy Team

  • Interoperability @ Microsoft

    Moonlight 2 is now available


    From the Silverlight Team blog: Moonlight 2 is now available

    “We are pleased to announce the availability of Moonlight 2, an open source Linux implementation of Silverlight first announced by Microsoft and Novell in September of 2007.  Moonlight is the first and only open source project that provides Linux users access to Silverlight content.  Microsoft has provided Novell with access to its test suites for Silverlight, and provides Linux end users of Moonlight with free access to the Microsoft Media Pack, a set of licensed media codecs for video and audio. In addition, Microsoft and Novell are also announcing the expansion of their collaboration on Moonlight to include support for Moonlight implementations of Silverlight 3 and Silverlight 4. As part of the companies’ interoperability agreement, Microsoft will deliver new test suites and specifications for Silverlight 3 and 4 to Novell. “

    Read the announcement on the the Silverlight Team blog: Moonlight 2 is now available.

    moonlight Miguel de Icaza from Novell have some details as well:

    Releasing Moonlight 2, Roadmap to Moonlight 3 and 4.




  • Interoperability @ Microsoft

    MongoDB Seattle recap


    DSC_4062Last Friday I had the opportunity to attend and participate in the MongoDB Seattle conference down along the Seattle waterfront at Bell Harbor Conference Center. It was a great way to end a week of MongoDB-related activities around Seattle and Redmond! I met many people who are working with MongoDB and considering their options for cloud deployment, and I co-presented with 10gen software engineer Sridhar Nanjundeswaran on “MongoDB and Windows Azure.”

    On the day before the conference, I caught up with Aaron Heckman, Node.js engineer at 10gen, and we recorded a video of a cool demo app he had built and deployed on Windows Azure that uses Node.js and MongoDB. Aaron knows Node.js and MongoDB very well but had never worked with Windows Azure before, so his experience is a great example of how quickly and easily Node+Mongo developers can deploy apps on Azure.

    Thanks to the team at 10gen for putting on a great event, and thanks to everyone who participated and helped make it so useful and fun! You can find links to additional information about deploying MongoDB on Windows Azure over on the 10gen blog, and also be sure to check out the Windows Azure section on MongoDB.org.

    For those on the US east coast, MongoDB Boston is coming up on October 24, and my colleague Jim O’Neil will be presenting on the details of running MongoDB on Windows Azure. To find other MongoDB events check out the events page on 10gen’s site, and for information on upcoming Windows Azure events see the Windows Azure Events page on WindowsAzure.com.

    Doug Mahugh
    Senior Technical Evangelist
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    Developers and Citizens Can Now Harness the Power of More Open Data with CKAN and Windows Azure


    Open data is becoming increasingly important for governments and public research. Based on the openness and interoperability of the Windows Azure platform, open data technologies are enabling more open data to be available in the cloud. CKAN (Comprehensive Knowledge Archive Network) is one of the most popular open data platforms in use by Governments, universities and enterprises around the globe. Here at Microsoft Open Technologies, Inc. we are pleased to see open source platforms such as CKAN taking advantage of the scalability, flexibility, openness and interoperability features of Windows Azure.

    Deploy CKAN in the Cloud using VM Depot and Windows Azure

    CKAN is an open source, web-based data management system that makes data accessible by providing tools to streamline publishing, sharing, finding and using data. CKAN is aimed at data publishers (national and regional governments, universities, companies and organizations) wanting to make their data open and available. The CKAN project is maintained by the Open Knowledge Foundation (OKFN) and implementations are commonly used as a public platform for various government data catalogues, such as the UK's http://data.gov.uk and US http://data.gov. Indeed, the UK Meteorological Office (Met Office) is using the capabilities of CKAN and Windows Azure to host their weather data archives and make the data broadly available via http://data.gov.uk/metoffice-data-archive.

    Developers wishing to deploy a CKAN installation in the cloud can now do so using the CKAN images available on VM Depot. Microsoft Public Sector and Microsoft Open Tech has partnered with OKFN who have provided CKAN Version 2 as an Ubuntu VM running on Windows Azure. There are two methods to install CKAN on Azure using the images available on VM Depot: through the management interface and using the command line tool. For a step-by-step guide to deploying CKAN on Windows Azure, see the CKAN Wiki.

    CKAN and Azure in Yokohama City

    Yokohama City, which is the largest city in Japan, recently published its Yokohama Open Data Solution using CKAN running with Windows Azure and supported by the Japan Linked Open Data Initiative. This is the first implementation in Japan of CKAN and Windows Azure for a local open data catalogue. As well as Japanese, the catalogue is available in several languages, including English – see more here http://data.yokohamaopendata.jp/en/.

    Windows Azure and OData

    Data that is hosted on Windows Azure can also be published using the Windows Azure Marketplace which utilizes the OData open data protocol. For example, because the Windows Azure Marketplace provides support for OData, citizens and developers can easily analyze the aforementioned UK National Weather data using an OData feed which allows the use of tools such as PowerPivot within Excel. This provides unprecedented access to powerful meteorological data including hourly, daily, and five-day forecasts - see the Microsoft in Government Blog Big Weather, Big Data, and That Little Device You Carry for further details on how this data is being used. Based on a collaboration between Citrix, IBM, Microsoft, Progress Software, SAP AG, WSO2, and others, we recently announced that the OASIS OData Technical Committee initiated a public review of OData v4.0 which is expected to become an OASIS Standard in 2013.

    These open data initiatives add to the many open data projects based on Windows Azure. Together they facilitate openness and transparency in public data. This work provides an extremely solid foundation upon which open data services can be built. When coupled with our work on cross platform client side tooling, developers are provided with an environment in which new and exciting opportunities are revealed. We look forward to working with you as we strive to open yet more data.

    Ross Gardler, Senior Technical Evangelist
    Microsoft Open Technologies, Inc.

    Mark Gayler, Senior Technical Evangelist
    Microsoft Open Technologies, Inc.

  • Interoperability @ Microsoft

    Another milestone for open source cloud programming model ActorFx, more stability, async actor communication and more


    Our team is making steady progress on building a solid framework for our new open source computing model for the cloud ActorFx, and we’re happy to report that we just released version 0.40 for this ActorFx project on CodePlex.

    ActorFx provides a non-prescriptive, language-independent model of dynamic distributed objects for highly available data structures and other logical entities via a standardized framework and infrastructure.

    Since Microsoft Open Technologies, Inc., announced that ActorFx joined the MS Open Tech Hub in December, we’ve been hard at work at adding new features in regular releases.

    For this release we focused on adding some interesting features that enriches the framework and makes it suitable for a wider range of scenarios.

    • We added a DictionaryActor, accompanied by a C# CloudDictionary<TKey,TValue> client. This is just another example of rich distributed data structures that can leverage the ActorFx infrastructure for high availability.
    • We added support for asynchronous actor-to-actor method calls (details can be found in the documentation included in the "ActorFx Basics" doc on the codeplex project).
    • We added support for actor methods written in languages other than C#. For now, we support actor methods written in JavaScript. Documentation is included in the "ActorFx Basics" doc.
    • We also spent some time to improve stability. We've added sensible handling for "transient" errors from the Actor Runtime (like NoWriteQuorum).

    We are already working on the V0.50 release. Let us know if there is any feature you would like to be added to the ActorFx project and, as always, comments and feedback are welcome.

    The ActorFx team:

    Claudio Caldato, Principal Program Manager Lead, Microsoft Open Technologies, Inc.

    Brian Grunkemeyer, Senior Software Engineer, Microsoft Open Technologies Hub

    Joe Hoag, Senior Software Engineer, Microsoft Open Technologies Hub

  • Interoperability @ Microsoft

    Kinect Common Bridge update


    The newest release of Kinect Common Bridge makes it even easier to track faces and recognize speech in your C++ applications with Kinect for Windows.

    This is the first update to the open source Kinect Common Bridge (KCB) released recently by MS Open Tech to make it simple to integrate Kinect for Windows scenarios and experiences in creative software development. The openFrameworks and Cinder communities have already adopted the Kinect Common Bridge. If you have been using either framework and experimented with KCB, you will find yourself right at home with its added capabilities. In the spirit of “focusing on the cool stuff” that motivates creative developers, starting the sensor and displaying a simple video treatment with face tracking can now be achieved in less than 10 lines of code! Incorporating Kinect for Windows magic in software experiences couldn’t be any easier…

    To learn more about this update of Kinect Common Bridge, read our post on our new blog: http://aka.ms/KCBUpdate

  • Interoperability @ Microsoft

    Webcast “Connecting PHP to Microsoft Technologies”


    Last week I had a chance to attend a live webcast “Connecting PHP to Microsoft Technologies” presented by my colleague Sumit, where he demoed the PHP projects (samples toolkits, frameworks and SDK) that we announced in May (Announcing PHP SDK for Windows Azure… and much more!).

    These projects enable PHP developers to easily extent their web applications using some of the Microsoft technologies. Here’s a recap of the current projects:

    Sumit also introduced new project during the webcast:

    The offline recording is now available for download at http://www.phparch.com/conferences/webcasts (there are a couple minor glitches in the audio, just skip ahead for a few seconds when it happens ;-) and you’ll find bellow a zip containing Sumit’s presentation (PDF and PowerPoint PPTX)

    sponsort This webcast is part of CodeWorks 09 summer series organized by PHP|Architect website. The series touch a number of PHP related topics including two additional sessions focused on PHP and Microsoft technologies interoperability.
    Please mark your calendar:

    phparchmag In addition you might want to check out the free May 2009 issue of php | architect magazine which focuses on running PHP on Windows, and additional technical details on how to use some of the Microsoft products with PHP.


    Jean-Christophe Cimetiere - Sr. Technical Evangelist

  • Interoperability @ Microsoft

    AMQP 1.0 is one step closer to being recognized as an ISO/IEC International Standard


    From Ram Jeyaraman, Senior Standards Professional, Microsoft Open Technologies, Inc. and co-Chair of the OASIS AMQP Technical Committee

    Microsoft Open Technologies is excited to share the news from OASIS that the formal approval process is now underway to transform the AMQP 1.0 OASIS Standard to an ISO/IEC International Standard.

    The Advanced Message Queuing Protocol (AMQP) specification enables interoperability between compliant clients and brokers. With AMQP, applications can achieve full-fidelity message exchange between components built using different languages and frameworks and running on different operating systems. As an inherently efficient application layer binary protocol, AMQP enables new possibilities in messaging that scale from the device to the cloud.

    Submission for approval as an ISO/IEC International Standard builds on AMQP’s successes over the last 12 months, including AMQP 1.0 approval as an OASIS Standard in October 2012 and the ongoing development of extensions that greatly enhance the AMQP ecosystem.

    The ISO/IEC JTC 1 international standardization process is iterative, and consensus-driven. Its goal is to deliver a technically complete standard that can be broadly adopted by nations around the world.

    Throughout the remainder of this process, which may take close to a year, the MS Open Tech standards team will continue to represent Microsoft and work with OASIS to advance the specification.

    You can learn more about AMQP and get an understanding of AMQP’s business value here. You can also find a list of related vendor-supported products, open source projects, and details regarding customer usage and success on the AMQP website: http://www.amqp.org/about/examples.

    If you’re a developer getting started with AMQP, we recommend that you read this overview. For even more detail and guidance here’s a Service Bus AMQP Developer's Guide, which will help you get started with AMQP for the Windows Azure Service Bus using .NET, Java, PHP, or Python. Also, have a look at this recent blog post from Scott Guthrie, called Walkthrough of How to Build a Pub/Sub Solution using AMQP.

    Whether you’re a novice user or an active contributor the community, we’d like to hear from you! Let us know how your experience with AMQP has been so far by leaving comments here. As well, we invite you to connect with the community and join the conversation on LinkedIn, Twitter, and Stack Overflow.

Page 3 of 4 (341 items) 1234