Microsoft Connect() is a virtual conference that is meant to Inspire developers to build the apps of the future. Today, Day 1 of Connect(), started with a keynote from Scott Guthrie, Executive Vice President, Microsoft Cloud and Enterprise Group sharing how Microsoft is empowering developers to lead the new digital revolution by creating apps that will have a profound impact on the world. There are lots of feature announcements and other great content and highlights included in Connect() in addition to the inspiration given by Scott and others. This post lists out some highlights of some of the things announced and discussed at Microsoft Connect() 2017. Read More
On August 11, 2017, it was announced that OpenAI beat the world’s top professionals at 1v1 matches of Dota 2 tournament under standard rules. The bot’s Artificial Intelligence (AI) learned the game from scratch through self-play. This is a feat of achievement for AI as Elon Musk states this is “vastly more complex than traditional board games like chess & Go.” Shortly after it was announced that the AI bot won the tournament, Elon Musk also tweeted out his appreciation and thanks to Microsoft for using the Microsoft Azure cloud computing platform and it’s “massive processing power” to win the tournament. This is a really great example of how the massive computing power of Microsoft Azure can be used, in addition to yet another stepping stone in the path towards much more advanced Artificial Intelligence (AI). Read More
Building out an IoT (Internet of Things) solution can be a difficult problem to solve. It sounds easy at first, you just connect a bunch of devices, sensors and such to the cloud. You write software to run on the IoT hardware and in the cloud, then connect the two to gather data / telemetry, communicate, and interoperate. Sounds easy, right? Well, it’s actually not as simple as it sounds. There are many things that can be difficult to implement correctly. The biggest problem area is Security, as it is in most other systems types as well. Then you can device management, cloud vs edge analytics, and many other aspects to a full IoT solution.
Traditionally you would need to build all this out yourself, however, with offerings from Microsoft there are a few options available for building out IoT solutions. The Azure IoT Suite offers PaaS (Platform as a Service) capabilities that are flexible for any scenario, while the newer Microsoft IoT Central is offering more managed SaaS (Software as a Service) capabilities to further assist in easing development, deployment and management.
PaaS IoT with Azure IoT Suite
There are many Microsoft Azure cloud services that can be used to build out an IoT solution. In order to more easily choose which services, Microsoft has created a marketing umbrella called the “Azure IoT Suite” that includes the following core services:
- Azure IoT Hub provides 2-way device messaging to the cloud with full device management and security integration among other IoT features.
- Azure Notification Hubs enables the ability to implement mobile push notification easily within the cloud that supports all major mobile platforms from iOS to Android and Windows.
- Azure Machine Learning provides the ability to build powerful cloud-based predictive analytics tools using pre-built machine learning algorithms that greatly lower the barrier to embracing machine learning for your solutions.
- PowerBI allows for rich visuals to be displayed providing easier analysis and reporting on your data.
- Azure Stream Analytics is a Real-Time event stream processing pipeline in the cloud thats built for high scale and ease of integration.
In addition to the listed services, you could really use any other Azure service that fits your particular solution. For example you may integrate Azure Storage, Azure CosmosDB, Azure Functions, among many others to build out the full capabilities of your own IoT solutions. It’s really up to you to choose what Azure services fit your scenario best and build out the best solution for your needs.
The Azure IoT Suite is based on using Azure PaaS (Platform as a Service) offerings to build out your solutions in a manner where you don’t need to manage any of the underlying Virtual Machine, Operating System updates / patches, and so on. These underlying VM in the PaaS services are fully managed for you within Microsoft Azure. This allows you to focus on your solution, your business, and your data; essentials you only focus on what matters to your core business in building out your IoT solutions.
SaaS IoT with Microsoft IoT Central
With the announcement of Microsoft IoT Central, Microsoft is entering into an area of offering a SaaS (Software as a Service) offering for building out and managing IoT (Internet of Things) solutions. This mean that not only do you benefit from the managed VMs and other aspects of the Azure IoT Suite PaaS offering, but you will also benefit from a great level of abstraction and managed services built / designed specifically for IoT form the ground up.
I speculate that Microsoft IoT Central is in fact running on top of Azure IoT Suite at it’s core; this is the pattern Microsoft operates with when adding higher levels of abstract in the Azure cloud. Similarly, Azure Functions provides serverless compute and execution of method of code in the cloud, and is built as an abstraction layer on top of the Azure Web Jobs PaaS feature of Azure App Service.
The further abstraction of Microsoft IoT Central creates a SaaS (Software as a Service) offering from Microsoft for more easily implementing and managing IoT solutions using a SaaS model. This is great for organizations that do not have much cloud solution and device expertise. It also helps those organizations build IoT solutions that offer more predictable pricing without the necessity to completely build the entire IoT solution themselves.
Choosing PaaS or SaaS for Your IoT Solution
Choosing PaaS (Platform as a Service) or SaaS (Software as a Service) is a choice that’s similar to the options of hosting a traditional application using either IaaS or PaaS. It’s really a comparable analogy. When deciding which of them to choose, here are some highlights of each option that you can use to help decide between a SaaS-based IoT solution or a PaaS-based IoT solution:
SaaS-based IoT Solution
- Fully managed solution
- Less flexibility – you will need to use the pre-built or builtin features to build out your IoT solution
- More features builtin – You don’t have to build everything yourself, as there are more features builtin that you can “automatically” take advantage of
- Lower barrier to entry
PaaS-based IoT Solution
- Fully customizable solution
- More flexible – you can implement pretty much any IoT solution you need
- Implement more yourself – With more flexibility, comes an increased responsibility to implement more of the various features of your IoT solutions yourself
- More expertise required
Looking at the previous highlights of PaaS vs SaaS based IoT solutions, it really does appear that SaaS is the better option. This really may be the case. Coming back to the IaaS vs PaaS analogy for hosting application, you want to start with the more managed service and then go more customizable if you need the flexibility. The same thing goes for IoT solutions as well. You’ll want to evaluate the SaaS based services that Microsoft IoT Central offer you before starting to build out your IoT solution. If SaaS offers you everything, then the more managed system will likely be best for you to use. However, if there is anything you require than SaaS (via Microsoft IoT Central) doesn’t support, and you really truly do require that feature in your solution, then you’ll likely want to go the PaaS route with Azure IoT Suite to build your own custom implementation.
I hope the outline provided in this article helps you decide whether SaaS-based or PaaS-based framework and services are the most appropriate choice for your organizations next IoT solution.
It seems there is constant news on the Microsoft certification front. Last fall, Microsoft shook up the entire MCP program with some amazing changes to how Azure certifications are integrated in the tracks, as well as the ability to renew MCSD and MCSE certifications annually with an elective exam. Now they are continuing to expand with new certification targeting the extremely popular realm of Machine Learning. The all new MCSA: Machine Learning certification is being added as an option to earn!
Update May 27, 2017: Microsoft announced that they’ve renamed the MCSA: Data Science certification to MCSA: Machine Learning.
So far the servers within Microsoft Azure data centers have been running Intel processors (CPUs). For a long time I’ve wondered if the power efficiency of ARM CPUs could make them more cost effective than Intel x64 CPUs that are more powerful. It’s possible through the use of parallel computing that distributing load across many more ARM CPU cores that consumer lower power could be more cost effective than distributing the same load across fewer more powerful Intel CPUs. Since I first came up with the idea, I’ve assumed that ARM would be more cost effective, however, I haven’t seen anything to back it up. With recent news about Microsoft exploring Windows Server running on ARM, and ARM based cloud server, it looks like they’re dedicating some serious money to this very research effort.
ARM has already revolutionized mobile devices and Internet of Things (IoT). Could the next step for ARM CPUs be to revolutionize the Cloud and server market? Read More
In the effort of expanding out the breadth of certification offerings, Microsoft has added the Analyzing Big Data with Microsoft R (70-773) exam. This exam focuses on using Microsoft R Server and SQL R Services for analyzing Big Data.
Certification Target Audience
The focus on the Analyzing Big Data with Microsoft R (70-773) exam is centered around Microsoft R Server and SQL R Services. The exam is designed to target candidates who are Data Scientists or Analysts who are processing and analyzing large data sets using R. This exam will test your familiarity with data structures, as well as basic programming concepts (such as control flow and scope), and your ability to write and debug R code functions.
Here is a high level list of the skills and objectives measured on this exam:
- Read and Explore Big Data
- Read data with R Server
- Summarize data
- Visualize data
- Process Big Data
- Process data with rxDataStep
- Perform complex transforms that use transform functions
- Manage data sets
- Process text using RML packages
- Build Predictive Models with ScaleR
- Estimate linear models
- Build and use partitioning models
- Generate predictions and residuals
- Evaluate models and tuning parameters
- Create additional models using RML packages
- Use R Server in different environments
- Use different compute contexts to run R Server effectively
- Optimize tasks by using local compute contexts
- Perform in-database analytics by using SQL Server
- Implement analysis workflows in the Hadoop ecosystem and Spark
- Deploy predictive models to SQL Server and Azure Machine Learning
When studying for this exam, you’ll certainly want to look at the official exam page from Microsoft for the full list of exam objectives. You’ll need to be sure to study every one of them that will be measured on the exam.
At the time of writing this summary of the 70-773 Analyzing Big Data with Microsoft R, the exam is still in Beta as it was just recently published. This means there aren’t any exam guide books, or practice exams available yet. To study for this exam, you’ll need to rely mostly on the Microsoft documentation for the different technologies covered on this exam.
Machine Learning is one of the hottest topics and technologies in the industry right now. Machine Learning is being used to combine with Big Data to automate the processes of gaining insights and predicting future behavior of systems, devices, and people. In an effort to expand out the breadth of certifications and exams offered around Microsoft Azure and the cloud, Microsoft has added the Perform Cloud Data Science with Azure Machine Learning (70-774) exam.
Certification Target Audience
The focus on the Perform Cloud Data Science with Azure Machine Learning (70-774) exam is centered around Azure Machine Learning, Bot Framework, and Cognitive Services. The exam is designed to target candidates who are Data Scientists or Analysts using the Microsoft Azure cloud services to build and deploy intelligent solutions. This exam will test your understanding and familiarity with common data science processes such as filtering and transforming data sets, model estimation, and model evaluation.
Here is a high level list of the skills and objectives measured on this exam:
- Prepare Data and Analytics in Azure Machine Learning and Export from Azure Machine Learning
- Import and export data to and from Azure Machine Learning
- Explore and summarize data
- Cleanse data for Azure Machine Learning
- Perform feature engineering
- Develop Machine Learning Models
- Select an appropriate algorithm or method
- Initialize and train appropriate models
- Validate models
- Operationalize and Manage Azure Machine Learning services
- Deploy models using Azure Machine Learning
- Manage Azure Machine Learning projects and workspaces
- Consume Azure Machine Learning models
- Consume exemplar Cognitive Services APIs
- Use Other Services for Machine Learning
- Build and use neural networks with the Microsoft Cognitive Toolkit
- Streamline development by using existing resources
- Perform data sciences at scale by using HDInsights
- Perform database analytics by using SQL Server R Services on Azure
When studying for this exam, you’ll definitely want to look at the official exam page from Microsoft for the full list of exam objectives. You’ll need to be sure to study every one of them that will be measured on the exam.
At the time of writing this summary of the 70-774 Perform Cloud Data Science with Azure Machine Learning, the exam is still in Beta as it was just recently published. This means there aren’t any exam guide books, or practice exams available yet. To study for this exam, you’ll need to rely mostly on the Azure Machine Learning documentation, as well as the documentation for the other Azure services and technologies listed in the exam objectives.
Not specific to just this exam, there are some additional resources available from various sources that do cover the technologies and skills measured on this exam. Here’s a short list of a few of these additional resources that may help in studying for this exam:
- Free eBooks
- Microsoft Azure Essentials: Azure Machine Learning by Jeff Barnes
- Introducing Microsoft Azure HDInsight by Avkash Chauhan, Valentive Fontama, and 3 others
- Video Courses from Opsgility
- Video Courses from Pluralsight
- Getting Started with Azure Machine Learning by Jerry Kurt
- Getting Started with Building Bots with Microsoft’s Bot Framework by Matthew Kruczek
- HDInsight Deep Dive: Storm, HBase, and Hive by Elton Stoneman
The Learn about Microsoft IoT Vision session from the Microsoft Ignite 2016 conference gives some really good overview of what Microsoft’s vision of the Internet of Things (IoT) is, as well as answering some questions about “What?” and “Why?” around IoT.
The Internet of Things (IoT) is here today in the devices, sensors, cloud services, and data your business uses. Microsoft delivers a flexible cloud-based approach that enables enterprises to capitalize on IoT by gathering, storing, and processing data centrally. When centrally connecting distributed LoB assets, the edge of an enterprise’s infrastructure can be redefined, and the breadth of the Microsoft data platform can be harnessed. Learn about Microsoft’s position on IoT, and the technology and services being delivered from Microsoft to help you create the Internet of Your Things.
About the Speaker
Arjmand Samuel is a Principal Program Manager at Microsoft, working in the Microsoft Azure Internet of Things team. In his current role, Arjmand is involved in the design and development of Microsoft Azure IoT Suite, a cloud-based offering with preconfigured solutions that address common Internet of Things scenarios. In his previous role, Arjmand led external academic collaborations around devices and services research for Microsoft Research, where he developed programs and research initiatives to harness the power of the Internet of Things. He has published in a variety of publications on topics of security, privacy, location aware access control and innovative use of mobile technology. Arjmand has a bachelor’s degree in avionics engineering from NED University of Engineering and Technology, Pakistan; a master’s degree in control engineering from Beijing University of Aeronautics and Astronautics, China; and a PhD in Information Security from Purdue University, USA.
Blog articles and Technical documentation are nice for learning technologies, but there are times when a good book just can’t be replaced. This is especially true when getting information from blogs that may have a snippet of “found code” that might or might not work as expected. At least properly technically reviewed book will have working code snippets and other directions / information.
So, here’s a bunch of eBooks on Azure topics that are available for the Amazon Kindle. After all, what better to read about the Cloud than with a “Virtual” book! Read More
This week at the Worldwide Partner Conference (WPC) 2016, Microsoft announced the release of the Microsoft Professional Degree (MPD) program. This is an online degree program from Microsoft, and the first degree being offered (in Beta) is a degree in Data Science. It seems apparent the goals of the MPD program are to help close the skills gap. According to Microsoft there’s 1.5 million jobs awaiting qualified candidates.
Update September 26, 2016: Microsoft has renamed the “Microsoft Professional Degree” (MPD) program to be the “Microsoft Professional Program” (MPP), and they are going to be added 2 more tracks for MPP in 2017. Read More