The goal of this site is to put relevant and applicable tools and information at the fingertips
With this blog we want to inform you on our latest initiatives.
Enjoy reading and stay tuned!
Are you are a mobile developer and want to extend your reach and your customer base?
Do you want to make your mobile app available on more stores?
Are using open source technologies?
Well lets look at the opportunity of using open source technologies to build apps for Windows Phone and the Windows Store (Windows 8)
Windows has always been a great playground for developers and many open source technologies already support Windows devices. MS Open Tech is working closely with the open source communities interested in cross platform development including engagement with Web and C++ open source communities to enable a wide range of popular open source frameworks on Windows devices.
Open source and the Windows Stores and Windows Phone 8
To learn details on the use of open source licenses for Windows Store apps, you can read the App Developer Agreement. For Windows Phone store, read the App Provider Agreement.
Both the Windows dev center and Windows Phone dev center provide extensive details and instructions on what is required to build apps for Windows devices. In a nutshell, you need to have Visual Studio, which runs on Windows. You can build and publish apps to both stores using the free version of Visual Studio.
If you are developing on a Mac, here are some interesting pointers for you in order to set things up to build apps for Windows devices on your Mac:
If you are familiar with Android or iOS development, and not with Windows or Windows Phone dev, then we recommend looking into the following documentation that has extensive information adapted to your background:
For Windows Phone apps
Solutions exist to help developers build apps across mobile devices running various operating systems. There are different approaches addressing different specific needs. Lots of these solutions are open source like Rhodes from RhoMobile, Appcelerator Titanium, Xamarin or Apache Cordova (a.k.a. PhoneGap), and happen to support Windows devices.
With Xamarin for example, C# developers can build apps for iOS, Android, and Windows devices with a single code base.
MS Open Tech has worked closely with these communities to enable these frameworks on Windows Phone and Windows Store apps which both provide native support for C++ development.
jQuery now fully supports WinRT (the Windows Runtime, powering Windows Store apps), allowing web developers to build Windows 8 apps reusing their existing code and skills. As a direct result from this work, web developers can also use other frameworks that are based on jQuery to build Windows Store apps. You can learn more about what it took to make jQuery support WinRT on this Nettuts tutorial
These other frameworks include
Debugging is another area that is pretty critical for developers and while native development tools (Visual Studio for both Windows and Windows Phone apps) offer extensive tooling, there are some gaps. One of the few example is the missing support for remote DOM inspection of HTML5 code running on an actual Windows Phone 8 device. MS Open Tech filled this gap, contributing to the project weinre, enabling it on Internet Explorer 10 and allowing remote debugging of HTML5 pages.
Most and foremost, MS Open Tech have all the info on the latest open source technologies simply visit http://msopentech.com/
I’m pleased to announce that the 1st edition of “Building Windows Phone Apps: A Developer’s Guide” is available to download.
This e-book is a community effort to capture useful information and learning about building apps on the Windows Phone platform.
Download Building Windows Phone Apps: A Developer’s Guide
For more details on this publication and its authors see Mike Ormond's Blog, please feel free to use this book with students and your courses also if you have any comments suggestions or ideas for additional chapters or content please post your feedback on Mike’s Blog.
As your aware from the Building Windows 8 blog a key driver for Microsoft is that All editions of Windows 8 offer a no-compromise experience.
One of the key announcements by the Windows team is that, Windows 8 will be the official product name for the next x86/64 editions of Windows. PCs and tablets powered by x86 processors (both 32 and 64 bit), we will have two editions: Windows 8 and Windows 8 Pro.
NOTE: As with previous versions of Windows, we will also have an edition of Windows 8 specifically for those enterprise customers with Software Assurance agreements. Windows 8 Enterprise includes all the features of Windows 8 Pro plus features for IT organization that enable PC management and deployment, advanced security, virtualization, new mobility scenarios, and much more.
Windows RT will be the official product name for Windows on ARM or WOA. This single edition will only be available pre-installed on PCs and tablets powered by ARM processors and will help enable new thin and lightweight form factors with impressive battery life. Windows RT will include touch-optimized desktop versions of the new Microsoft Word, Excel, PowerPoint, and OneNote.
The below chart breaks down key features by edition (this list should not be considered an exhaustive list of features):
Windows 8 Pro
Upgrades from Windows 7 Starter, Home Basic, Home Premium
Upgrades from Windows 7 Professional, Ultimate
Start screen, Semantic Zoom, Live Tiles
Apps (Mail, Calendar, People, Messaging, Photos, SkyDrive, Reader, Music, Video)
Microsoft Office (Word, Excel, PowerPoint, OneNote)
Internet Explorer 10
Installation of x86/64 and desktop software
Updated Windows Explorer
Enhanced Task Manager
Switch languages on the fly (Language Packs)
Better multiple monitor support
Windows Media Player
ISO / VHD mount
Mobile broadband features
Remote Desktop (client)
Reset and refresh your PC
Touch and Thumb keyboard
BitLocker and BitLocker To Go
Boot from VHD
Encrypting File System
Remote Desktop (host)
Over the coming months,the Windows Team will share more information about Windows 8, including details on pricing.
Check out the preview of Windows 8 for yourself.
If your interested in developing for Windows 8 check out the following example from my colleague Mike Taulty, from the UK MSDN team. Mike has produced a number of walkthroughs in screencast form these include a simple music 'app' in HTML and a app for searching flickR in both XAML and HTML.
Windows Server 2012 Training & Certification Now Available to all Microsoft IT Academy members
if your interested in IT Academy please visit http://www.microsoft.com/en-us/itacademy/
1) Certifications and official Microsoft training and certifications are now available for Windows Server 2012, Windows 8, Private Cloud, Windows Store Application
In addition to this we now have new structure for Microsoft Technical Certifications
With a dedicated number of suitable examinations for the FE/HE education market which adds added value to the student experience and curriculum content aligning your courses with employees requirements.
2) Windows Server Certification and examination tracks
3) Microsoft Second Shot promotion is active so students (and lecturers) get a FREE retake if they do not pass first time for more info click here
4) Courseware available for Windows Server 2012 is now available to all Microsoft IT Academy members
Module 1: Managing a Windows Server 2012 Infrastructure
•What's New in Server Manager
•Introducing IP Address Management
•PowerShell and Server Core Enhancements
•What’s New in Active Directory
•Introducing Dynamic Access Control
Module 2: Network, Storage, and Service Access in Windows Server 2012
•What's New in Remote Access
•New and Improved Networking Technologies
Module 3: Server Virtualization in Windows Server 2012
•What’s New in Networking
•Introducing Hyper-V Replica
•What’s New in Live Migration
•What’s New in Guest Clustering and VM Monitoring
First Look Clinic Syllabus
Hands On Lab Syllabus
5) Microsoft IT Academy now includes a number of enhanced resources including new online digital content and resources for more information click here
Click Here for the FREE E-Book on Windows Server 2012
Just over a month we released the Azure toolkit for Windows Phone 7, Microsoft has now released the Azure tookit for iOS, and Android is next in line.
The toolkit contains a “compiled Objective-C library for working with services running in Windows Azure (e.g. push notification, authN/authZ, and storage),” along with Objective-C source code and Xcode project files. It also includes a sample iOS application and its source code, designed to show developers how Azure can be used inside of the platform.
The toolkit has been posted to github and can be found at the following three links:
Details on how to get started can be found here.
This is a great starter kit developed by one of my colleague Petri Tapio Wilhelmsen who is a member of the Microsoft Western Europe team.
Petri has created an excellent HTML5 Game starter kit that will help you set up a new Windows 8 game project in short time, this is ideal for schools, colleges and University who teach game development with HTML5.
By using this starter kit you can get most of this functionality ready, for more details see http://digitalerr0r.wordpress.com/2012/10/08/html5-game-starter-kit-for-windows-8/ or look at the following quick guides below.
Here is a quick video to using the HTML5 Starter kit
5 Step Guide to Bulding HTML5 games with the HTML5 Starter Kit
Step 1a. You need to have Visual Studio 2012 installed on a Windows 8 device to use this. If you are a student and have access to Dreamspark.com (MSDNAA) or a MSDN Subscription you can download both products from there.
You can use the free version of Visual Studio 2012 (express) and can be downloaded here: http://www.microsoft.com/visualstudio/eng/downloads
The Release Preview can be downloaded for free here: http://windows.microsoft.com/en-US/windows-8/release-preview
Step 1b. Download HTML5 Game Starter Kit for Windows 8
Click on File->New->Project…
Give your project a name (here: Mitt Spill) and press OK.
A new project is generated and the structure will look like this:
Step 3. What we will do now is to add the HTML5 Game Starter Kit files to the newly created project. We just copy the content of the HTML5 Game Starter Kit folder to the project folder.
So, copy thse files from the HTML5 Game Starter Kit:
Navigate to your new game soludtion and open the project folder. Paste the files here, and replace if asked:
The project folder will look somewhat like this:
Step 4. Go back to your Visual Studio 2012 project and update if needed:
Step 5. Include the new files in your project. The last thing you need to do is to include the new files in your project structure from Visual Studio 2012.
Click on the button highlighted in the red circle below. It will show the files that exist in the filestructure but not in the project structure(dark gray).
Select the following files (hold control and click them):
Right click one of the files and select “Include in project”:
6. Test if it works. Congratulations, you are now having a working game project! Run the app and test that it works.
Whats in the starter kit?
Full screen mode
Snap view mode
Full screen with other app in snap view.
Remember! The example game is using CreateJS. It’s located under js/CreateJS. You can remove this folder if it’s not needed in your project. But if you do so, the example game will not compile.
Last week I attended The 2012 Eduserv Symposium. The event was focused on 'Big Data' and discussed whether Big Data represents a challenge or an opportunity and how we can best make use of it. This year's event was held at the Royal College of Physicians.
The key message from the introduction was the importance of uncoupling the issues of Big Data from the industry hype. Throughout the event the Gartner 3 V’s (velocity, volume and variety of data ) were discussed in depth.
Volume as a defining attribute of Big Data
Whilst it is fairly obvious that data volume is the primary attribute of big data, people often ask for a definitive quantity in GB, TB, PB etc. that would qualify as big data.
Whilst simplest answer is to give a data volume, for example 50TBytes which today present represents a reasonably large and expensive dataware house –this answer of course changes as the technology changes over time due to Moore’s Law.
But it’s also worth thinking about what it is you are looking as data, for instance for a large library of photographs the actual data contained in all the images themselves is very large for instance a RAW File from a Nikon D300 is about 25MB, so library with 2 million such images would be about 50TBytes , but the meta data describing those images isn’t that large perhaps 2GBytes.
So to someone actually searching the images for content, e.g. using facial recognition find all the photos of Adele, then that is a big data problem, but if the photos have already been labelled and tagged as being of Adele then that isn’t really a big data challenge as you are only search the Meta data.
Data Feed Velocity as a defining attribute of Big Data
Big data can be described by its velocity or speed. Or you may prefer to think of it as the frequency of data generation or frequency of data delivery. For example, think of the stream of data coming off of any kind of sensor, say thermometers sensing temperature, microphones listening for movement in a secure area, or video cameras scanning for a specific face in a crowd. This isn’t new; many firms have been collecting click stream data off of Web sites for years, using streaming data to make purchase recommendations to Web visitors. With sensor and Web data flying at you relentlessly in real time, data volumes get big in a hurry.
Technologies such as Stream Insight are well positioned for certain types of streaming data, whilst other applications may need specialist development or tools.
Data Feed Variety.
A proliferation of data types from social, machine to machine, and mobile sources add new data types to traditional transactional data. Data no longer fits into neat, easy to consume structures. New types include content, geo-spatial, hardware data points, location based, log data, machine data, metrics, mobile, physical data points, process, RFID’s, search, sentiment, streaming data, social, text, and web. The addition of unstructured data such as speech, text, and language increasingly complicate the ability to categorize data. Some technologies that deal with unstructured data include data mining, text analytics, and noisy text analytics.
A key message was Big Data and the role of the Data Scientist, was not limited to the computer Scientist of the future as Big Data is of use to all disciplines.
Please find below a quick overview deck of how we see the Big Data opportunity at Microsoft.
A interesting case study is Klout Data Services Firm Uses Microsoft BI and Hadoop to Boost Insight into Big Data
Klout wanted to give consumers, brands, and partners faster, more detailed insight into hundreds of terabytes of social-network data. It also wanted to boost efficiency. To do so, Klout deployed a business intelligence solution based on Microsoft SQL Server 2012 Enterprise and Apache Hadoop. As a result, Klout processes data queries in near real time, minimizes costs, boosts efficiency, increases insight, and facilitates innovation.
Klout helps clients make sense of the hundreds of terabytes of data generated each day by more than 1 billion signals on 15 leading social networks including Facebook and LinkedIn. The data that Klout analyzes is generated by the more than 100 million people who are indexed by the firm. This includes Klout members and the people that they interact with on social sites. Individuals join Klout to understand their influence on the web, which is rated on a scale from 1 to 100. They also sign up to participate in campaigns where they can receive gifts and free services. More than 3,500 data partners also join Klout to better understand consumers and network trends including changes in demand and how peoples’ influence might affect word-of-mouth advertising.
To deliver the level of insight that customers seek and yet meet the budget constraints of a startup firm, Klout maintained a custom infrastructure based on the open-source Apache Hadoop framework, which provides distributed processing of large data sets. The solution included a separate silo for the data from each social network. To manage queries, Klout used custom web services, each with distinct business logic, to extract data from the silos and deliver it as a data mashup.
Maintaining Hadoop and the custom web services to support business intelligence (BI) was complex and time-consuming for the team. The solution also hindered data insight. For example, accessing detailed information from Hadoop required extra development, and so mashups often lacked the level of detail that users sought. In addition, people often waited minutes, or sometimes hours, for queries to process, and they could only obtain information based on predetermined templates.
Klout wanted to update its infrastructure to speed efficiency and support custom BI. Engineers sought technologies that could deliver mission-critical availability and still scale to meet big-data growth and performance requirements.
In 2011, Klout decided to implement a BI solution based on Microsoft SQL Server 2012 Enterprise data management software and the open-source Hive data warehouse system. Based on employees’ previous experience with the Microsoft BI platform, Klout also knew that SQL Server offers excellent compatibility with third-party software and it can handle the data scale and query performance needed to manage big-data sets.
In August 2011, engineers implemented a data warehouse with Hive, which consolidates data from all of the network silos hosted by Hadoop. In addition, Klout deployed SQL Server 2012 on a system that runs the Windows Server 2008 R2 Enterprise operating system to take advantage of Microsoft SQL Server 2012 Analysis Services. Engineers use it to manage all business logic required to facilitate multidimensional online analytical processing (MOLAP). Data is stored in multidimensional cubes, which helps preserve detail and speed analysis. To provide high availability, Klout replicates the database to a secondary system using SQL Server 2012 AlwaysOn.
At the time that Klout was initially deploying its solution, SQL Server 2012 and Hive could not communicate directly. To work around this issue, engineers set up a temporary relational database that runs MySQL 5.5 software. It includes data from the previous 30 days and serves as a staging area for data exchange and analysis. Klout engineers are currently working to implement the new open database connectivity driver in SQL Server 2012 to directly join Hive with SQL Server 2012 Analysis Services. In addition, to enhance insight Klout plans to work with Microsoft to incorporate other Microsoft BI tools into its solution, such as Microsoft SQL Server Power Pivot for Microsoft Excel.
With its new solution, Klout expects to boost efficiency, reduce expenses, expand insight, and support innovation.
Speeds Efficiency and Cuts Costs By taking advantage of the Microsoft platform for BI, users will be able to get the data they seek in near real time.
Klout is implementing the flexible and scalable infrastructure it needs to continue to push the limits of data analysis.
This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
The following is a quick guide on HTML5 Video and the Microsoft Media Platform, I have recently had a number of question and interest from a number of UK universities whom are looking at providing streamed media content both on and off campus.
Microsoft has developed the IE Test Drive Video Format support page to see some examples of how various codecs work across the different browsers.
Web developers are generally happy to leave their existing solution in place to play their pre-existing video/audio content using plugins. However many are now supplementing these plugins with the HTML5 Video and Audio tag if the browser is able to play their particular codec of choice natively. This is ideal as the most popular mobile platforms H.264, AAC and MP3 are generally well supported using the HTML5 video and audio tags.
The Microsoft Media Platform (MMP) frameworks are the glue that holds together individual pieces of the Microsoft end-to-end media solution.
Microsoft MMP is the the video platform that sits behind the Rugby World Cup 2011 event.
The Microsoft Media Platform: Player Framework (that is licensed for commercial use under the Microsoft Public License Ms-PL) has recently added a preview of support for HTML5 (API Documentation) that enables you as web developers to compliment the Silverlight player framework with a HTML5 video experience that enables you to reach additional mobile platforms.
There are a number of commercial solutions available that do all the work for you.
Example of these include
JW Player™ (licensed for commercial use)
SublimeVideo® (Player as a Service).
It is surprisingly easy to utilise your own video solution using the default browser controls and codecs that the browser supports. The markup below shows what you need to play a video in HTML5 with a “Fall Back” to an unlisted video on YouTube.
1. Video MIME types supported
Cross Browser HTML5 video running under IIS
Video Formats supported -
The order of your markup does matter please list them as above
Add in the MIME Types support to IIS.
Under IIS 7+ this is found under Website -> IIS -> MIME Types, and you’ll want to add:
File name extension / MIME type:
Turn off Compression under Website -> IIS -> Compression, and unchecking “Enable dynamic content compression”, and “Enable static content compression
Azure Storage Explorer also allows you to do this on individual files. of one of the following formats:
3. Byte Range Requests (seeking)
There are currently a few key areas not addressed by the current W3C Video Standard (full screen support, live streaming, real time communication, content protection, metadata and accessibility). Recently the W3C Web and TV Workshop discussed some of these areas and offered some early thinking on how they may be adopted as web standards in the future.
A real issues is the lack of a solution for live and adaptive streaming. Currently there are three proprietary solutions that support live and adaptive streaming.
Dynamic Adaptive Streaming over HTTP (DASH) is currently in Draft International Standard. It looks likely that it will get W3C support if it is offered royalty free.
HTML5Labs is where Microsoft prototypes early and unstable specifications from web standards bodies such as W3C. Sharing these prototypes helps Microsoft have informed discussions with developer communities to provide better feedback on draft specifications based on this implementation experience.
On the labs site Microsoft has released a Media Capture Audio Prototype that implements the audio portion of this W3C specification. The next prototype will support Speech recognition and will implement the Microsoft proposal available on the W3C website.
If you are hosting progressive download video and audio on the web you should be looking to support HTML5 video and audio today to extend the reach of your content.
Here is some useful guidance from the Windows UX team on the correct way to refer to various features in the Windows 8 UI.
These approved terms & phrases are used in the latest materials on http://design.windows.com so please familiarise yourself with these definitions and use them consistently in your teaching and learning.
Metro design style
· Styles that can be applied to enable apps to have a Windows look/feel, be touch targetable, etc.
· The surface that appears along the top or bottom edges of the screen and includes app commands.
· Swipe in from the top or bottom of the screen to see the app commands.
· Developer: To access the commands for an app, swipe in from the top or bottom edge of the screen to open the app bar.
· The charms connect your app to other apps, the web, your friends, and your devices. Charms provide access to the key Windows features: Search, Share, Start, Devices, and Settings.
· Tap the Search charm to find what you’re looking for in the app you’re using, on the web, or in other apps on your PC.
· Tap the Share charm to share files and info with other apps on your PC.
· Tap the Devices charm to print and connect to other external devices like media players.
· Tap the Settings charm to change common system settings or the settings of the app you’re using.
· Do NOT use “charms bar”
· Don't use in UI text.
· The area that's the outermost part or the part farthest away from the center of something.
· Swipe in from the right edge to access Search, Share, Devices, Start, and Settings.
· Do not use “edgy”
· To quickly slide a finger a short distance
· Swipe in from the right edge to show the charms.
· Swipe in from the top or bottom edge to show the app commands.
· Swipe in from the left edge to return to an app you were just using.
· Swipe across an email in your inbox to select it.
· Swipe down on a tile to select it.
· Shortcuts to places within an app or to other content.
· You can personalize your Start screen by creating tiles that act as shortcuts to your favourite content.
· Secondary tiles let users personalize their Start screen by creating deep links to specific places within your app.
· Do not use “pinned tile”
Python Tools for Visual Studio is a free & open source plug-in for Visual Studio 2010 from Microsoft's Technical Computing Group. PTVS enables developers to use all the major productivity features of Visual Studio to build Python code using either CPython or IronPython and adds new features such as using High Performance Computing clusters to scale your code. Together with one of the standard distros, you can turn Visual Studio into a powerful Technical Computing IDE...
Advanced editing, Intellisense, browsing, “Find all refs”, REPL, …
Supports CPython and IronPython
Local & Cluster/remote debugging
Profiling with multiple views
Interactive parallel computing via integrated IPython REPL
Support for HPC clusters and MPI, including debugging support
NumPy & SciPy for .Net
Support for Cloud Computing (soon)
Support for Dryad (large scale, data-intensive parallel programming) (soon)
Free & Open Source (Apache 2.0)