Since the launch of Windows Azure a couple years ago, we’ve been working on driving Interoperability scenarios that enable various developers to harness the power of the Windows Azure cloud platform. In parallel, we’ve supported interoperability projects, in particular on PHP and Drupal, in which the focus is showing how to simply bridge different technologies, mash them up and ultimately offer new features and options to the developers (azurephp.interoperabilitybridges.com).
Today, I’d like to show you the result of some hands-on work with Drupal on Windows Azure: We are announcing today the availability 4 new Drupal Modules, Bing Maps, Windows Live ID, OData and the Silverlight Pivot Viewer that can be used with Drupal running on Windows Azure. The modules are developed by Schakra and MindTree.
To showcase this work, the new Drupal 7was deployed on Windows Azure with the Windows Azure Companion: Check out the Drupal & Windows Azure Companion tutorial[ IMPORTANT NOTE - July 13, 2011The Windows Azure Companion was an experimental tool to provide a simple experience installing and configuring platform-elements (PHP runtime, extensions) and web applications on Windows Azure. Based the feedback and results Microsoft has decided to stop any further development of the Windows Azure Companion and instead we recommend using the new tools available at http://azurephp.interoperabilitybridges.com/downloads to deploy applications to Windows Azure.]
On top of this Drupal instance running on Windows Azure, are deployed the four NEW generic modules that allow Drupal administrators/developers to provide their users with new features:
The Bing Maps Module for Drupal provides for easy & flexible embedding of Bing Map in Drupal content types, such as a technical article or story.
The Windows Live ID Module for Drupal allows Drupal user to associate their Drupal account to their Windows Live ID, and then to login on Drupal with their Windows Live ID.
The OData Module for Drupal allows developers to include data sources based on OData in Drupal content types. The generic module includes a basic OData query builder and renders data in a simple HTML Table. In this case, we are taking the Netflix OData catalog and using a simple visual query engine, generating a filtered query to display on our Drupal “Article” page.
The Silverlight Pivot viewer Module for Drupal enables enables easy & flexible embedding of Silverlight PivotViewer in Drupal content types, using a set of preconfigured data sources like oData producers or existing Pivot collections
In this example, we are using the wedding venues pivot collection exposed on http://beta.hitched.co.uk to render the interactive Silverlight PivotViewer of that collection with deep zoom image support and a complete visual query experience.
These modules are independently developed and contributed by Schakra and MindTree, with funding provided by Microsoft. The modules have all been made available on GitHub, and we hope to see them moved to the Drupal module gallery in the near future. As always I look forward to your comments and feedback.
Craig Kitterman, Sr. Interoperability Evangelist, Microsoft
W3C is the home of web standards
The World Wide Web Consortium (W3C) has been the home of web standards since 1994 and is a unique place where every major browser vendor (Apple, Firefox, Google, Microsoft, Opera) participate as one of the 322 W3C members.
Logo now available
Today, the W3C is introducing a new logo program for HTML5. A logo with a consistent visual design is an important indication of the growing maturity of many components of HTML5. As developer and site owners see this logo across the web, we hope it will signal that while there is still a lot of work to do until all the HTML5 technologies are ready, real sites are starting to take advantage of them today.
The logo links back to W3C, the place for authoritative information on HTML5, including specs and test cases. It’s time to tell the world that HTML5 is ready to be adopted. You can find some examples of how real sites are using HTML5 today here.
Microsoft and the W3C
Microsoft, as part of its ongoing focus on interoperability, is committed to the W3C and we currently have had some 66 participants in 38 technical groups. We work closely with other members on a range of matters, from drafting early specifications to developing test suites to improve interoperability.
Parts of HTML5 are ready to be used today
HTML5 offers tremendous improvements in interactivity, graphics, typography and more. One question we often hear is “When should my site start embracing HTML5?” Our answer is simple. Today. But it’s important to recognize that HTML5 is not just one technology, but rather that it encompasses a broad set of technologies. So, while there are some parts that are very stable and are ready to be used in real sites today, there are also some parts that are still changing rapidly.
With IE9 and HTML5 Labs - which gives developers a stable foundation to build their experiences on IE9 knowing that their sites will continue to work with build updates - we are making this line clearer to encourage adoption rather than waiting. In IE9, we have put the site-ready parts of HTML5 that can be used today without worrying about the site breaking as the specification changes.
In the HTML5 Labs environment, we are building prototypes for unstable specifications where we can iterate quickly and freely as we make it clear to developers not to include these in sites as yet. Microsoft’s Interoperability Bridges & Labs Center has started publishing prototype implementations of unstable specifications where significant change is expected.
Congratulations to the W3C on the new HTML5 logo program!
GM: Interoperability Strategy
The new version of Drupal 7 was released a couple weeks ago, and now that people have finally recovered from the many Drupal release parties around the world (like in London), we, at Microsoft, want to formally welcome this new version. From our point of view, Drupal version 7 marks an important milestone because it includes great improvements, some of which are the result of efforts from Microsoft and the Drupal community to bring users greater interoperability and more choices/options.
Let’s review our favorite improvements:
It shouldn’t be too surprising that our favorite addition is support for Microsoft SQL Server (version 2005 or later), which we announced last year at DrupalCon when we shipped the community technology preview (CTP) of the SQL Server Driver for PHP 2.0 with PDO support. The new driver was then released in August. Special thanks to Commerce Guys, who actually developed SQL Server support in Drupal and contributed the code.
Bryan House - Sr. Director, Marketing, from Acquia commented: “The Drupal 7 release with enhancements for the Microsoft platform is a tremendous milestone giving Drupal developers the freedom to use their existing Microsoft resources to build extraordinary web experiences with Drupal. It expands the set of options Drupal developers have to choose from when building the best solutions for their customers and end-users. We’re also pleased to see Microsoft really participating in the community, providing valuable assistance, and taking a long term approach to supporting Drupal.”
What I think is interesting about the SQL Server Driver for PHP 2.0 is that it enables PHP applications like Drupal 7 to use the PDO “PHP style” and interoperate smoothly with Microsoft’s SQL Server database. This reduces the complexity of targeting multiple databases and makes it easier for PHP developers to take advantage of SQL Server’s business intelligence & reporting feature (which is also included in the free SQL Server Express edition), as well as SQL Azure features like exposing OData feeds.
Another neat improvement has to do with Drupal installation packages and modules – those that are current, as well as any that are newly submitted. Previously, they were only available as a TGZ archive but now they’re also available as ZIP archives. This removes the burdens for Windows users trying to install Drupal. Along the same lines, the Drupal 7 Windows package now includes a “web.config” file designed specifically for Microsoft Internet Information Server (IIS), which is now listed in the supported web servers for Drupal 7. For more on the latest Drupal 7 developments, check out this video with Drupal expert Jim Taylor.
You can get the latest Drupal 7 distribution directly from the community project site, or you can install one of its distributions built by Commerce Guys from the Microsoft Web Platform Installer (Web PI), which lets you install not only Drupal, but our entire Web stack in a breeze. And for developers who want to dive deep into Drupal 7 PHP code and start hacking around to customize it, we recommend taking a look at the newly released WebMatrix tool. In response to the WebMatrix announcement, Damien TOURNOUD, CTO of Commerce Guys, said that ”Microsoft has become a citizen of the Drupal world, and the integration of Drupal 7 in WebMatrix is great news for the Drupal community.” Damien is a key contributor to Drupal 7 and the main developer of Drupal 7/SQL Server integration.
Of course we think these improvements are great, and we hope they attract even more developers to our platform. But there’s more on our to-do list and today we’re excited to announce four new generic modules developed by Schakra and MindTree that allow Drupal administrators/developers to provide users with new features:
To learn more about these modules, check out the Interoperability Hands-On , which shows off Drupal on Windows Azure using Bing Maps + Windows Live ID + OData + Silverlight Pivot Viewer.
As for on-going projects, there is also work under way to create demonstrations of how to harness the benefits of the cloud with Windows Azure and PHP (see azurephp.interoperabilitybridges.com). Drupal is among the popular PHP applications we’ve demonstrated on Windows Azure, using the Windows Azure Companion. Now we’re working, for example, on bringing the full elasticity and scalability of Windows Azure cloud to Drupal and other PHP applications.
Microsoft supports the work of Commerce Guys, MindTree and Schakra , as well as that of the Open Source community, in improving the interoperability of Drupal with Microsoft’s platform. This work is representative of Microsoft’s broader commitment to openness by expanding choice and opportunity for customers, partners and developers. As always, we welcome any feedback, so feel free to leave a comment, or contact us.
Jean-Paoli, General Manager for Interoperability Strategy
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
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