We’re having a great time at the OSCON Convention this week! It’s an energizing experience for us to be able to take a hands-on approach with developers, partners and customers who have come to Portland where we can share many of the open source technologies we have brought to Windows.
We’re also making some announcements. Yesterday we talked about Cloud Interop. Today we’ve released the JavaScript Dynamic Content shim to make it easier to use JavaScript frameworks to build Windows Store apps, we’ve open sourced much of the toolkit for the Windows Developer Program for Internet of Things, we are cheering on teams that are making new libraries and tools such as Boost, CMake and Bullet work on Windows, and we are inviting developers to create new open source samples for Kinect for Windows development.
As “code talks” is our mantra at MS Open Tech, we thought it’d be great to create an opportunity for developers to have some fun. OSCON attendees are invited to participate in our Code2Win challenge where they will have the chance to rediscover their favorite open source frameworks and tools trying them out on Windows! We are also running a survey that you can also take if you are not attending OSCON as we really want to hear from open source developers.
Bridging Microsoft and non-Microsoft worlds is a core part of MS Open Tech’s charter. We work closely with many open source communities with the objective of ensuring developers can easily build apps reusing their skills and code in a familiar environment, and to extend them to Windows devices and the Microsoft Cloud.
Sometimes, it is about making sure open source code works well on Windows. But it can also go beyond that in instances where we opt to open source Microsoft technologies, or when our contributions create a better cross-platform development experience.
Here are the notable programs and projects we are talking about this week at OSCON:
JavaScript Dynamic Content shim for Windows Store apps
Today MS Open Tech is releasing the JavaScript Dynamic Content shim for Windows Store apps, an open source project that makes it easier for developers to use their favorite JavaScript frameworks to build Windows Store apps.
In order to prevent unwanted access to the Windows Runtime, restrictions and measures are set in place so that malicious script will not compromise an app’s integrity. In some cases, however, this security model may prevent some JavaScript libraries from running as intended.
A handful of popular open source libraries happen to use code which is flagged as unsafe, and therefore, they will not work as expected in Windows Store apps. These libraries include, but are not limited to, AngularJS, Ember.js, and KnockoutJS. The JavaScript Dynamic Content shim unblocks these setbacks, as a mitigation to relax the manner in which checks are performed, yet still achieving the fundamental goal set by the security model. With this tool, developers can now use their favorite open source projects to build Windows Store apps without having to care about adapting them to the platform. Who doesn’t want things to be simpler… yet safe?
Open sourcing much of the Windows Developer Program for IoT toolkit
A few days ago, we talked about the new Windows Developer Program for IoT and announced that MS Open Tech would make much of the toolkit’s code open source. This code is now on GitHub, where you can find the Wiring API implementation that allows Windows to talk to Arduino shields, along with documentation for running Windows for IoT on the Intel Galileo board. As well, it enables the code for the giant piano that we brought to OSCON to let you make your code sing.
Leveraging the MS Open Tech’s Wiring API implementation for Windows, it is very simple for developers to add functionality to their project as the exact same code that comes with the shields for Arduino and that is usually developed by the community, can now be added “as-is” into their Windows projects.
Even more open source running on Windows
It is really exciting to see how Windows is evolving so that developers can build more apps that span across devices and platforms: PC, tablets, smartphones, gaming consoles, IoT devices. It is certainly also exciting to see open source technologies running on the latest versions of Windows and Visual Studio, allowing developers to extend their reach without having to learn new languages, new tools and new libraries.
We are proud of our contributions to the openFrameworks project to make it work in Universal Windows Apps and to openCV to enable it to Windows Phone 8, bringing creative development on Windows to a new level with great communities.
It is also great to see open source tools such as CMake and Boost arriving to the Windows Store and Windows Phone. Today the Windows team is announcing that they are working with the CMake community to make CMake work on Windows Store and Windows Phone apps. This is welcome news on top of Steve Gates’ blog post last week, in which he described how his team has made improvements to the Boost build system and a bunch of Boost libraries to support targeting the Windows Runtime for Windows Store and Phone.
Open sourcing + Microsoft = cross-platform
Making open source software work on Windows is definitively a great and useful achievement. But beyond simply enabling the technology to run on Windows, our work allows developers to use first class development tools and technologies to extend their reach to more platforms still using their existing skills and code.
Leveraging the popular open source mobile cross-platform project Apache Cordova and the active contribution from MS Open Tech to this project to support Windows devices, the Visual Studio team has recently shipped a preview of the Multi-Device Hybrid Apps extension for Visual Studio 2013 that allows developing Web based hybrid applications with a single code base for Android, iOS, Windows Store and Windows Phone - all from Visual Studio.
With a similar goal of letting developers reuse the same code across more platforms, MS Open Tech open sourced WinJS. The team is now working in the open on the Windows library for JavaScript, accepting community contributions. Originally designed for Windows Web Apps, the JavaScript framework can now also be used to build Web sites and mobile Hybrid apps on a variety of devices.
In another register, MS Open Tech published the SQLitePCL library which initially was meant to allow programming SQLite database with the same code across .Net, Windows Store and Windows Phone app. Since Xamarin contributed to the open source project, developers can reuse the exact same code on Android and iOS using Xamarin.Android and Xamarin.iOS which allowed the Microsoft Azure Mobile services team to add Xamarin support. And more recently, based on the community ask, we enabled support for Universal Windows apps.
Calling developers for Kinect for Windows samples
Another way we like working with the community is to jointly develop code samples. As the new Kinect for Windows sensor is now available to everyone, with a brand new SDK for developers, MS Open Tech updated the Kinect Common Bridge (KCB) open source project so that C++ developers may more easily build desktop apps integrating advanced Kinect functionality.
In addition to KCB, MS Open Tech and the Kinect for Windows product group have also setup a GitHub repository to gather community-contributed samples. The Kinect for Windows team already contributed 17 samples, and all of these are ready to be forked! And if inventing new ways of taking advantage of the new Kinect for Windows is not enough, well, we have a “Kinect Certified Contributor” shirt for you! Let us know when you contribute, describing your projects, dependencies and your contact information.
Make your code sing at OSCON: try it on Windows
If you are at OSCON this week, we invite you to drop by our booth, check out our demos, attend our sessions, learn about what we do, participate in the Code2Win Challenge MS Open Tech and Windows are animating on the Expo floor. We welcome your feedback and suggestions. Not only you will get to try your favorite open source technology on Windows, but you will also be rewarded with great prizes!
Last but not least, you can have a great original picture of you shot by Julian Cash and join the big family of those who tried Open Source on Windows!
Open source the engines – CLR/DLR/MRT and JS/Chakra with the non-visual parts of WinRT and libs. Get developer by-in.
Pingback: Expanding Open Source technologies on Windows | SDK News
Pingback: Expanding Open Source technologies on Windows
Pingback: Expanding Open Source technologies on Windows
Pingback: Expanding Open Source technologies on Windows | iyaan.info
Pingback: Expanding Open Source technologies on Windows - |