Follow Us on Twitter
We are excited to be attending and participating at Node Summit in San Francisco this week.
Among those Microsoft staffers on site are Server & Tools Corporate Vice President Scott Guthrie - who participated on a panel about Platform as a Service this morning and also gave a keynote address - and Gianugo Rabellino, the Senior Director for Open Source Communities, who was on a panel discussing the importance of cross-platform.
You can read more about Scott's keynote on the Windows Azure blog here.
As this work continues inside of Microsoft as well as with the Node.js community and our partner ecosystem, new and exciting capabilities are coming available allowing Node.js developers to have great experiences on the Windows platform.
Today, during his keynote, Scott Guthrie demonstrated how easy it is to get up and running with Node.js on Windows and Windows Azure, while our partners at Cloud9 showcased new tooling experiences that provide even greater flexibility to Node.js for developers who want to build for Windows Azure.
Microsoft has been closely partnering with Joyent for some time now to port Node.js to Windows. We have built an IO abstraction library with them that can be used to make the code run on both Linux and Windows.
We also recently released the Windows Azure SDK for Node.js as open source, available on Github. These libraries are the perfect complement to our recently announced contributions to Node.js and provide a better Node.js experience on Windows Azure. The Windows Azure Developer Center provides documentation, tutorial, samples and how-to guides to get started with Node.js on Windows Azure.
The Joyent team also recently updated the Node Package Manager for Windows (NPM) code to allow use of NPM on Windows. NPM is an essential tool for Node.js developers so now having support for it on Windows we have a better development experience on Windows.
We are also working with the Joyent team on improving the development experience by leveraging the power of Microsoft Development tools and documentation that will make easier for developers to use Node.js APIs.
And, relatedly, we have also been working closely with 10Gen and the MongoDB community in the past few months, and MongoDB already runs on Windows Azure. If you’re using the popular combination of Node.js and MongoDB, a simple straightforward install process will get you started on Windows Azure. You can learn more here.
Our interest in, and support for Node.js is just one of the ways in which Windows Azure is continuing on its roadmap of embracing Open Source Software tools developers know and love, by working collaboratively with the open source community to build together a better cloud that supports all developers and their need for interoperable solutions based on developer choice.
As Microsoft continues to provide incremental improvements to Windows Azure, we remain committed to working with developer communities.
We also clearly understand that there are many different technologies that developers may want to use to build applications in the cloud: they want to use the tools that best fit their experience, skills, and application requirements, and our goal is to enable that choice.
All of this delivers on our ongoing commitment to provide an experience where developers can build applications on Windows Azure using the languages and frameworks they already know, enable greater customer flexibility for managing and scaling databases, and making it easier for customers to get started and use cloud computing on their terms with Windows Azure.
Good news for all you Java developers out there: I am happy to share with you the availability of Windows Azure libraries for Java that provide Java-based access to the functionality exposed via the REST API in Windows Azure Service Bus.
You can download the Windows Azure libraries for Java from GitHub.
This is an early step as we continue to make Windows Azure a great cloud platform for many languages, including .NET and Java. If you’re using Windows Azure Service Bus from Java, please let us know your feedback on how these libraries are working for you and how we can improve them. Your feedback is very important to us!
You may refer to Windows Azure Java Developer Center for related information.
Openness and interoperability are important to Microsoft, our customers, partners, and developers and we believe these libraries will enable Java applications to more easily connect to Windows Azure, in particular the Service Bus, making it easier for applications written on any platform to interoperate with each another through Windows Azure.
Thanks,
Ram Jeyaraman
Senior Program Manager, Microsoft’s Interoperability Group
As Microsoft continues to deliver on its commitment to Interoperability, I have good news on the Open Source Software front: today, the OData Library for Objective-C project was submitted to the Outercurve Foundation’s Data, Languages, and Systems Interoperability gallery.
This means that OData4ObjC, the OData client for iOS, is now a full, community-supported Open Source project.
The Open Data Protocol (OData) is a web protocol for communications between client devices and RESTful web services, simplifying the building of queries and interpreting the responses from the server. It specifies how a web service can state its semantics such that a generic library can express those semantics to an application, meaning that applications do not need to be custom-written for a single source.
The Outercurve Foundation already hosts 19 OSS projects and, as Gallery Manager Spyros Sakellariadis notes in his blog post, this is the gallery’s second OData project, the first being the OData Validation project contributed last August.
“With this new assignment, we expect to involve open source community developers even more in the enhancement of seminal OData libraries,” he said.
Microsoft Senior Program Manager for OData Arlo Belshee notes in his blog post that the Open Sourcing of the OData client library for Objective C will enable first-class support of this important platform. “Combined with exiting support for Android (Odata4j, OSS and Windows Phone (in the odata-sdk by Microsoft), this release provides strong, uniform support for all major phones,” he said.
In assigning ownership of the code to the Outercurve Foundation, the project leads are opening it up for community contributions and support. “They firmly believe that the direction and quality of the project are best managed by users in the community, and are eager to develop a broad base of contributors and followers,” Belshee said.
As Microsoft continues to build and provide Interoperability solutions, Sakellariadis thanked the Open Source communities for their continued support, noting that together “we can all contribute to achieving a goal of device and cloud interoperability, of true openness.”
Congratulations to all the people involved in the PhoneGap community for the recent release of version 1.3 of their HTML5 open source mobile framework!
This release includes many new features, and you can find more details here. You may remember that we announced back in Sept that Microsoft was helping to bring Windows Phone support in PhoneGap: I am happy to say we can now checkthis box!
We’re also pleased to note that all features in PhoneGap 1.3 are now supported for Windows Phone, as you can see on their site here.
Also, beyond the core PhoneGap features, developers can enjoy a selection of PhoneGap plugins that support social networks - including Facebook, LinkedIn, Windows Live and Twitter - and a solid integration into Visual Studio Express for Windows Phone.
We have also developed further plugins to give HTML5 developers a feel for Windows Phone’s unique features like Live Tile Update and Bing Maps Search.
Please check out Jesse MacFadyen’s blog, PhoneGap’s dev lead, on his experiences developing PhoneGap on Windows Phone.
For more technical details of using the framework, see Glen's and Jesse’s technical walk thru blogs. For a quick a spin of what PhoneGap and Visual Studio allow you to do, see this WP7 and Android camera app created in 3 minutes! Phonegap bits are located here; plugins are here.
Looking ahead:
As mentioned in PhoneGap’s announcement blog post, the next PhoneGap 1.4 release will be from the Cordova incubation project at Apache. We at Microsoft are proud to be members of this project and to offer technical resources. We welcome the involvement of Adobe, IBM and RIM and look forward to collaboratively growing PhoneGap at its new home in Apache while helping evolve an open web for any device.
Microsoft’s commitment to HTML5 in IE9 has been instrumental in achieving this level of support. We are also building on our HTML5 investment through initiatives like bringing jQuery Mobile support as we outlined few weeks ago. Partnering with open source communities to bring this level of openness continues to be an important goal here at Microsoft.
So, stay tuned for more news on our support for popular mobile open source frameworks on WP7.5!
Abu Obeida Bakhach
Interoperability Strategy Program Manager
Today Microsoft is hosting the Learn Windows Azure broadcast event to demonstrate how easy it is for developers to get started with Windows Azure. Senior Microsoft executives like Scott Guthrie, Dave Campbell, Mark Russinovich and others will show how easy it is to build scalable cloud applications using Visual Studio. The event is be broadcasting live and will also be available on-demand.
For Java developers interested in using Windows Azure, one particularly interesting segment of the day is a new Channel 9 video with GigaSpaces. Their Cloudify offering helps Java developers easily move their applications, without any code or architecture changes, to Windows Azure.
This broadcast follows yesterday’s updates to Windows Azure around an improved developer experience, Interoperability, and scalability. A significant part of that was an update on a wide range of Open Source developments on Windows Azure, which are the latest incremental improvements that deliver on our commitment to working with developer communities so that they can build applications on Windows Azure using the languages and frameworks they already know.
We understand that developers want to use the tools that best fit their experience, skills, and application requirements, and our goal is to enable that choice. In keeping with that, we are extremely happy to be delivering new and improved experiences for popular OSS technologies such as Node.js, MongoDB, Hadoop, Solr and Memcached on Windows Azure.
You can find all the details on the full Windows Azure news here, and more information on the Open Source updates here.
As Microsoft’s Senior Director of Open Source Communities, I couldn’t be happier to share with you today an update on a wide range of Open Source developments on Windows Azure.
As we continue to provide incremental improvements to Windows Azure, we remain committed to working with developer communities. We’ve spent a lot of time listening, and we have heard you loud and clear.
We understand that there are many different technologies that developers may want to use to build applications in the cloud. Developers want to use the tools that best fit their experience, skills, and application requirements, and our goal is to enable that choice.
In keeping with that goal, we are extremely happy to be delivering new and improved experiences for Node.js, MongoDB, Hadoop, Solr and Memcached on Windows Azure.
This delivers on our ongoing commitment to provide an experience where developers can build applications on Windows Azure using the languages and frameworks they already know, enable greater customer flexibility for managing and scaling databases, and making it easier for customers to get started and use cloud computing on their terms with Windows Azure.
Here are the highlights of today’s announcements:
In addition to all this great news, the Windows Azure experience has also been significantly improved and streamlined. This includes simplified subscription management and billing, a guaranteed free 90-day trial with quick sign-up process, reduced prices, improved database scale and management, and more. Please see the Windows Azure team blog post for insight on all the great news.
As we enter the holiday season, I’m happy to see Windows Azure continuing on its roadmap of embracing OSS tools developers know and love, by working collaboratively with the open source community to build together a better cloud that supports all developers and their need for interoperable solutions based on developer choice.
In conclusion, I just want to stress that we intend to keep listening, so please send us your feedback. Rest assured we’ll take note!
I am thrilled to announce the availability of a new specification called SQL Database Federations, which describes additional SQL capabilities that enable data sharding (horizontal partitioning of data) for scalability in the cloud.
The specification has been released under the Microsoft Open Specification Promise. With these additional SQL capabilities, the database tier can provide built-in support for data sharding to elastically scale-out the data. This is yet another milestone in our Openness and Interoperability journey.
As you may know, multi-tier applications scale-out their front and middle tiers for elastic scale-out. With this model, as the demand on the application varies, administrators add and remove new instances of the front end and middle tier nodes to handle the workload.
However, the database tier in general does not yet provide built-in support for such an elastic scale-out model and, as a result, applications had to custom build their own data-tier scale-out solution. Using the additional SQL capabilities for data sharding described in the SQL Database Federations specification the database tier can now provide built-in support to elastically scale-out the data-tier much like the middle and front tiers of applications. Applications and middle-tier frameworks can also more easily use data sharding and delegate data tier scale-out to database platforms.
Openness and interoperability are important to Microsoft, our customers, partners, and developers, and so the publication of SQL Database Federations specification under the Microsoft Open Specification Promise will enable applications and middle-tier frameworks to more easily use data sharding, and also enable database platforms to provide built-in support for data sharding in order to elastically scale-out the data.
Also of note: The additional SQL capabilities for data sharding described in the SQL Database Federations specification are now supported in Microsoft SQL Azure via the SQL Azure Federation feature.
Here is an example that uses Microsoft SQL Azure to illustrate the use of the additional SQL capabilities for data sharding described in the SQL Database Federations specification.
-- Assume the existence of a user database called sales_db. Connect to sales_db and create a federation called orders_federation to scale out the tables: customers and orders. This creates the federation represented as an object in the sales_db database (root database for this federation) and also creates the first federation member of the federation.
CREATE FEDERATION orders_federation(c_id BIGINT RANGE) GO
-- Deploy schema to root, create tables in the root database (sales_db)
CREATE TABLE application_configuration(…) GO
…
-- Connect to the federation member and deploy schema to the federation member
USE FEDERATION orders_federation(c_id=0) … GO
-- Create federated tables: customers and orders
CREATE TABLE customers (customer_id BIGINT PRIMARY KEY, …) FEDERATED ON (c_id = customer_id) GO
CREATE TABLE orders (…, customer_id BIGINT NOT NULL) FEDERATED ON (c_id = customer_id) GO
-- To scale out customer’s orders, SPLIT the federation data into two federation members
USE FEDERATION ROOT … GO
ALTER FEDERATION orders_federation SPLIT AT(c_id=100) GO
-- Connect to the federation member that contains the value ‘55’
USE FEDERATION orders_federation(c_id=55) … GO
-- Query the federation member that contains the value ‘55’
UPDATE orders SET last_order_date=getutcdate()… GO
I am confident that you will find the additional SQL capabilities for data sharding described in the SQL Database Federations specification very useful as you consider scaling-out the data-tier of your applications. We welcome your feedback on the SQL Database Federations specification.
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 both 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.
Hello web and mobile developers!
As you probably noticed, jQuery Mobile version 1.0 was announced this week. We are pleased to use this exciting occasion to reinforce our commitment to supporting popular open source mobile frameworks.
Of the most recent activities, I want to highlight the work done to supporting PhoneGap by adding support for Windows Phone 7.5 (Mango), and now we are moving up the stack to improve support of jQuery Mobile on Windows Phone 7.5.
As you probably know, jQuery Mobile framework is a Javascript HTML5-based user interface system for mobile device platforms, built on the jQuery and jQuery UI foundation.
While today’s version 1 and the recent RC releases contain many features, we wanted to take a minute and highlight the collaboration we started with the jQuery Mobile team. In the last few weeks we have focused our attention on supporting Kin Blas and others in the community to improving the performance on Windows Phone 7.5.
In particular, as the RC3 blog published earlier this week outlines, Windows Phone performance has improved quite dramatically as shown by the two showcase apps:
The jQuery team has additional performance optimization tips for Windows Phone in the change log that saves additional perf time in certain scenarios.
We are pretty encouraged with this progress, and will continue working with community to bring higher levels of performance and support for jQuery features to Windows Phone... stay tuned, and congratulations again to the jQuery Mobile Team!
Great news for all Node.js developers wanting to use Windows: today we reached an important milestone - v0.6.0 – which is the first official stable build that includes Windows support.
This comes some four months after our June 23rd announcement that Microsoft was working with Joyent to port Node.js to Windows. Since then we’ve been heads down writing code.
Those developers who have been following our progress on GitHub know that there have been Node.js builds with Windows support for a while, but today we reached the all-important v.6.0 milestone.
This accomplishment is the result of a great collaboration with Joyent and its team of developers. With the dedicated team of Igor Zinkovsky, Bert Belder and Ben Noordhuis under the leadership of Ryan Dahl, we were able to implement all the features that let Node.js run natively on Windows.
And, while we were busy making the core Node.js runtime run on Windows, the Azure team was working on iisnode to enable Node.js to be hosted in IIS.
Among other significant benefits, Windows native support gave Node.js significant performance improvements as reported by Ryan on the Node.js.org blog.
Node.js developers on Windows will also be able to rely on NPM to install the modules they need for their application. Isaac Schlueter from the Joyent team is currently working on porting NPM on Windows, and an early experimental version is already available on GitHub. The good news is that soon we’ll have a stable build integrated in the Node.js installer for Windows.
So stay tuned for more news on this front.
Claudio Caldato
Principal Program Manager, Interoperability Strategy Team
In a couple of weeks it will be my one year anniversary here at Microsoft and I couldn’t wish for a better anniversary gift: now that Microsoft has laid out its roadmap for Big Data, I’m really excited about the role that Apache HadoopTM plays in this.
In case you missed it, Microsoft Corporate Vice President Ted Kummert earlier today announced that we are adopting Hadoop by announcing plans to deliver enterprise class Apache Hadoop based distributions on both Windows Server and Windows Azure.
This news is loaded with goodies for the big data community, broadening the accessibility and usage of Hadoop-based technologies among developers and IT professionals, by making it available on Windows Server and Windows Azure.
But there is more. Microsoft will be working with the community to offer contributions for inclusion into the Apache Hadoop project and its ecosystem of tools and technologies.
I believe that all of this will really benefit not only the broader Open Source community by enabling them to take their existing skill sets and assets use them on Windows Azure and Windows Server, but also developers, our customers and partners. It is also another example of our ongoing commitment to providing Interoperability, compatibility and flexibility.
As a proud member of the Apache Software Foundation, I personally could not be happier to see how Microsoft is willing to engage in such an important Open Source project and community.
Technical Considerations
On the more technical front, we have been working on a simplified download, installation and configuration experience of several Hadoop related technologies, including HDFS, Hive, and Pig, which will help broaden the adoption of Hadoop in the enterprise.
The Hadoop based service for Windows Azure will allow any developer or user to submit and run standard Hadoop jobs directly on the Azure cloud with a simple user experience.
Let me stress this once again: it doesn’t matter what platform you are developing your Hadoop jobs on -you will always be able to take a standard Hadoop job and deploy it on our platform, as we strive towards full interoperability with the official Apache Hadoop distribution.
This is great news as it lowers the barrier for building Hadoop based applications while encouraging rapid prototyping scenarios in the Windows Azure cloud for Big Data.
To facilitate all of this, we have also entered into a strategic partnership with Hortonworks that enables us to gain unique experience and expertise to help accelerate the delivery of Microsoft’s Hadoop based distributions on both Windows Server and Windows Azure.
For developers, we will enable integration with Microsoft developer tools as well as invest in making Javascript a first class language for Big Data. We will do this by making it possible to write high performance Map/Reduce jobs using Javascript. Yes, Javascript Map/Reduce, you read it right.
For end users, the Hadoop-based applications targeting the Windows Server and Windows Azure platforms will easily work with Microsoft’s existing BI tools like PowerPivot and recently announced Power View, enabling self-service analysis on business information that was not previously accessible. To enable this we will be delivering an ODBC Driver and an Add-in for Excel, each of which will interoperate with Apache Hive.
Finally, in line with our commitment to Interoperability and to facilitate the high performance bi-directional movement of enterprise data between Apache Hadoop and Microsoft SQL Server, we have released two Hadoop-based connectors for SQL Server to manufacturing.
The SQL Server connector for Apache Hadoop lets customers move large volumes of data between Hadoop and SQL Server 2008 R2, while the SQL Server PDW connector for Apache Hadoop moves data between Hadoop and SQL Server Parallel Data Warehouse (PDW). These new connectors will enable customers to work effectively with both structured and unstructured data.
I really look forward to sharing updates on all this as we move forward. For now, check out www.microsoft.com/bigdata and check back on the DPI blog tomorrow.
Gianugo
I recently returned from Paris, where I attended both the annual Open Source Think Tank and Open World Forum events. It was really great getting to chat with some of the folks representing the myriad of businesses that have sprung up around Open Source solutions, and having some in-depth discussions about broad industry trends.
The Open Source Think Tank is pretty much a unique event in that it gives attendees the opportunity to examine open source and cloud evolution through detailed analysis and discussions of specific industry related case studies, as well as panels, presentations and networking opportunities with a collaborative group of folks from across the industry.
For its part Open World Forum brings together hundreds of decision-makers, developers and users from across the world to discuss Open technological, business and societal initiatives to help shape the digital future
I was happy to be able to participate in a number of panel discussions at both events. At the Think Tank, I got to brainstorm on the topic of “Open Source Ethos as an Agent of Change," which essentially looked at how closed source companies use the open source ethos to energize their companies and change how they relate to their customers, partners and employees. I was joined by Erynn Petersen of AOL and Gil Yehuda of Yahoo, and a lively conversation ensued.
From a Microsoft perspective I pointed out how we recognize the value of openness in working with a diverse array of OSS communities to help developers, customers and partners succeed in today's heterogeneous IT environments.
I noted that we now have a better appreciation for how the open source development model can be useful for our own software development as well as the potential for Microsoft technologies to be great platforms for open source applications. I also briefly talked about our increased investments in standards, interoperability and integration with Open Source Software.
The second Think Tank discussion revolved around Open Source, Open Systems and Open Standards and what that means today. Larry Augustin from SugarCRM and Yahoo's Gil Yehuda also participated, and a lively discussion ensued, a lot of which was way off topic :-)
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.
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 Alfonso Castro, our local market interoperability program lead.
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.
Microsoft today signed a collaboration agreement with China Standard Software Corporation (CS2C), the country’s leading domestic Linux operating system provider, to jointly develop, market and sell solutions for the cloud-computing market in China.
The deal will help provide the mixed source infrastructure necessary to facilitate the rapid growth and change taking place across China, where cloud-based infrastructure is budding across cities and provinces.
The primary goal of this agreement, which was announced at a joint event in Beijing today, is to provide public and private cloud solutions to a diverse array of industries through a rich partner ecosystem.
The mixed source solutions stemming from this collaboration will be built on Microsoft’s Hyper-V Open Cloud architecture and will include support to run CS2C NeoKylin Linux Server products.
As Sandy Gupta, the General Manager for Microsoft’s Open Solutions Group, notes in his blog, Microsoft is working with CS2C to bring about a true, open architecture in the area of cloud management and automation for IT organizations throughout China.
“A cornerstone of this agreement is for CS2C-branded Linux servers to run under the Hyper-V Cloud architecture as a first class guest. CS2C and Microsoft will work together to enable CS2C Linux to run well on Hyper-V and be managed through Microsoft System Center,” Gupta says.
Microsoft and CS2C have also pledged to sponsor a joint virtual technology lab in Beijing for solution development and testing of cloud solutions that will allow customers to move to virtualization and a cloud-based IT infrastructure.
The lab will focus on the certification of CS2C NeoKylin Operating System on Windows Server 2008 R2 with Hyper-V, creating Microsoft Systems Center management packs for CS2C NeoKylin Operating System application workloads, and incorporating support for CS2C NeoKylin Operating System within the Hyper-V Cloud architecture.
As part of the collaboration, CS2C will also join the Interop Vendor Alliance, an established community of software and hardware vendors that have been working together to enhance interoperability with Microsoft systems.
In addition to establishing market and technology collaboration, the two companies have also signed a customer legal covenant agreement.
In line with Microsoft’s ongoing commitment to Interoperability, Gupta notes that “interoperable Linux and Windows offerings will empower customers to build solutions that will enable them to capitalize on opportunities to expand, grow and achieve the focus necessary to fuel innovation.”
Han Naiping, the president of CS2C, notes that this is an “important opportunity to collaborate with Microsoft to deliver comprehensive, flexible, cloud-based solutions that will serve as a platform for business growth.”
You can read more about this agreement on Sandy Gupta’s blog and in the press release.