JavaScript – The Undocumented API

Tag: JavaScript

Twist My ARM – Automating Azure using PowerShell

I released my book, Microservice, IoT and Azure, in October of 2015. Within 2 weeks, the Azure PowerShell code samples were out of date. This is a testament to the velocity at which Microsoft is updating both the services and the tools for Azure.

While the concepts in the book are still relevant, the code repository that I had released became out of date quickly. In order to rectify this situation, I recently created a new code repository that leverages the advancements in Azure PowerShell as well as showcases the patterns and practices for end-to-end IoT solutions that leverage IoT Hub.

The new code repository is located here on GitHub.

This content provides foundational knowledge in how to architect and implement an IoT solution using Windows 10 Core IoT hardware devices and Azure IoT Hub and Stream Analytics. Both Device to Cloud and Cloud to Device communication patterns are covered.

At the conclusion of going through the hands-on lab, you will have provisioned an Azure environment using PowerShell that contains Storage, Service Bus, DocumentDb, IoT Hub, Stream Analytics and API Management and a custom microservices for provisioning devices. You will also develop a Windows 10 Core IoT application that sends telemetry and receives incoming commands as well as develop a real-time dashboard that displays incoming telemetry and has the ability to send commands to the remote device. Device Provisioning, IoT Hub monitoring and techniques for applying dynamic business rules to real-time streams is covered.

In this article, I am going to highlight a few interesting Azure PowerShell and Azure Resource Manager techniques that I learned along the way while creating this content. Note that all the code snippets are drawn from the code repository here.

Read More

Coding in the Cloud: Attend a Windows Azure Dev Camp


Spend the day with Windows Azure and leave with code running in the cloud.

Available in select cites, these free, one-day instructor-led workshops let you roll up your sleeves and get hands-on with Microsoft’s latest development tools and technologies.

You will learn how you can leverage the cloud for development, testing and deploying your solutions. The hands-on labs will focus on:

  • Windows Azure Websites and Virtual Machines Using ASP.NET & Microsoft SQL Server
  • Deploying Cloud Services in Windows Azure
  • Updating an App to a Modern Architecture
  • Configuring and testing a Modern Application.

All languages are welcome. With Windows Azure, you can use practically any language, framework, or tool to build or move existing applications into the cloud.

Register today for the event near you.

Continuous Innovation Applied – The Fast Path to the Windows Store

The beginning is the most important part of the work – PLATO, The Republic

For many developers participating in the app economy is an exercise in learning to be a startup. You want to create a product (app), launch it into the marketplace (Windows Store), drive sales (downloads), receive feedback from customers (ratings and reviews) , make improvements and release the next version of your app. This is a cyclical process that is explained in great detail in the The Lean Startup by Eric Reis.<

One of the concepts that Eric lays out in his book is the idea of Continuous Innovation. This is a 3 step approach to creating, publishing and marketing your product.


Continuous Innovation

One of the key tenants of Continuous Innovation is to focus on what is called a Minimal Viable Product (MVP). The goal of a minimal viable product is to get through the Continuous Innovation cycle  as quickly as possible with minimal effort.

Gone are the days of yearlong development efforts followed by the big product launches. In the app economy you need to build fast, collect feedback from your customers and iterate on the next version. You need to test both the technical as well as the business hypothesis and implement features that customers want and fail fast on the things that are not driving downloads.

By starting out with a Minimal Viable App and moving through the Continuous Innovation cycle quickly, you will learn the entire process of how to launch a product, market that product, gather customer feedback and iterate on the next version. This skill set is what every developer needs to learn to be successful going forward in our industry,

Getting Started

For many developers coming up with a product idea can be daunting. The key to successful apps is typically tied to the richness of the data that you provide to your customer along with the set of features you provide for working with that dat

To help you with the process of getting an app in the store using open data API’s and learning how to apply Continuous Innovation the Technical Evangelist team here at Microsoft has created a set of Windows App Starter Kits. These starter kits are based on open data API’s which give you the rich data set you need to create a compelling application or a mashup.

To get started let me introduce you to the wonderful world of Open Data API’s.

Motivation is what gets you started. Habit is what keeps you going. – Jim Rohn

The Wonderful World of API’s

Using open data API’s are a great way to get started creating compelling apps. The internet it turns out is source of rich content. Who knew! You can get a sense of the vast numbers of open data API’s by visiting API Hub or Programmable Web. There are thousands of API’s covering all industry segments and topics.


Upon investigation you will soon learn that not all API’s are created equal. There are differences in quality, speed, call thresholds, authentication and so on. Spending some time to validate API’s of interest is well served. Most APIs require the developer to register and request a Developer Key. Some API’s are throttled, limited to a certain number of calls a day or second. Many are free but some are not. Here is a list of criteria that you can use to validate API’s of interest:

  • Developer Key Required
  • API protocol – REST or SOAP?
  • Authentication Required – OAuth, SessionID, etc.
  • Performance – how well does the API perform?
  • Service Level Agreement (SLA) – is the API always available?
  • Payload format – JSON, XML, other
  • Throttled – If yes what is the limit?
  • Free or Pay
  • Is the API mashable – can the data be used as input to another API?

Last but not least is to read the Terms and Conditions of the API provider. The details of how often you can call the API and other usage rules such as a requirement to display their logo and to have that logo link to their site will be documented. If you are going to use an API read the T’s and C’s thoroughly before investing hours of development.

For more detailed coverage of API Basics see Stacy Mulcahy’s post here.

Windows App Kits

In order to streamline your ability to leverage API’s to create compelling apps for Windows, the US Technical Evangelist team has created a portfolio of 22 Windows 8 and 12 Windows Phone 8 Starter Kits that you can use to create your minimal viable product.


There are kits that provide solutions for Windows 8, Windows Phone and in either C# or HTML5/JS. The Chuck Norris Starter Kit also provides a VB implementation. There is also a starter kit for those who want to learn how to leverage Azure Mobile Services.

Each Kit comes with one or more Visual Studio solutions, a README.MD and associated blog posts that document how to customize each kit. There are also several kits that have corresponding Video tutorials on Channel 9.

Here are examples of apps that have been created using these starter kits: