# Friday, March 8, 2019

The Internet of Things, or IoT, allows you to capture data from devices across the planet and use the power of the cloud to store and manage that data.

Microsoft Azure offers IoT Hubs as a way to capture data from Internet-connected devices.

To create a new IoT hub, navigate to the Azure portal and log in.

Click the [Create a resource] button (Fig. 1) and select Internet of Things | IoT hub from the menu, as shown in Fig. 2.

Fig. 1

Fig. 2

The "IoT hub" blade displays, as shown in Fig. 3.

Fig. 3

At the "Subscription" field, select the subscription in which you want to store this hub. Many of you will have only one subscription and it will already be selected.

At the "Resource Group" field, select a Resource Group in which to store this hub. You can create a new Resource Group by clicking the "Create new" link and entering a name for the new group, as shown in Fig. 4.

Fig. 4

At the "Region" field, select the geographic region in which you want your hub to be located. Considerations include the location of the devices that will connect to this hub and the location other systems with which the hub will interact.

At the "IoT Hub Name" field, enter a unique name for this hub.

After you have completed the form, click the [Review + create] button. A summary page displays, as shown in Fig. 5.

Fig. 5

If any errors display, click the [Previous] button and correct them; Otherwise, click the [Create] button to create a new IoT Hub. It will take several minutes to deploy all the necessary resources and create this hub.

After the hub is created, you can navigate to it, as showing in Fig. 6.

Fig. 6

The "Overview" blade is selected by default and displays summary information about your hub, as well as links to documentation, so you can learn more about managing and working with this hub.

In this article, you learned how to create a new Azure IoT hub. A hub requires more configuration to be useful. We will cover this configuration in a future article.

Azure | IoT
Friday, March 8, 2019 9:47:00 AM (GMT Standard Time, UTC+00:00)
# Thursday, March 7, 2019

GCast 38:

Azure Search

Azure Search allows you to make your internal data searchable in the same way that search engines like Google and Bing make public information on the Internet searchable.

Thursday, March 7, 2019 9:50:00 AM (GMT Standard Time, UTC+00:00)
# Wednesday, March 6, 2019

The Internet of Things (or IoT) has revolutionized the way we think of computing.

In the past, computers were self-contained, general purpose machines that could load complex operating systems, run multiple applications, and perform a wide variety of tasks. They could communicate with one another in order to either share data or distribute workloads.

Now, tiny computers can be found in a huge number of devices around one's home or workplace. When these devices are connected to the cloud, they become far more powerful because much of the processing and storage traditionally done on the computer is moved to the massively-scalable cloud.

At home, refrigerators, thermostats, and automobile contain computers that send and receive information, making them better able to adapt to the world around them.

Businesses take advantage of devices connected to manufacturing machines or vehicles or weather detectors to monitor local conditions and productivity. Capturing data from these devices allows them to respond to anomalies in the data that may indicate a need for action. Imagine a monitor on a factory floor that monitors the health of an assembly line and sends an alert to a repair team if the line breaks down. Or, better still, if the data indicates a strong probability it will break down soon. Imagine a shipping company being able to track the exact location and health of every one of their trucks and to re-route them as necessary.

Industries as disparate as transportation, clothing, farming, and healthcare have benefited from the IoT revolution.

Cloud tools, such as Microsoft Azure IoT Hub allow businesses to capture data from many devices, store that data, analyze, and route it to a particular location or application. As applications become more complex, cloud tools become both more powerful and simpler to create.

These tools offer things like real-time analytics, message routing, data storage, and automatic scalability.

This IoT revolution has enabled companies to capture huge amounts of data. Tools like Machine Learning allow these same companies to find patterns in that data to facilitate things like predictive analysis.

The cost of both hardware and cloud services has fallen dramatically, which has accelerated this trend.

The trend shows no signs of slowing and companies continue to think of new ways to connect devices to the cloud and use the data collected.

The next series of articles will explore how to process IoT data using the tools in Microsoft Azure.

Wednesday, March 6, 2019 9:46:00 AM (GMT Standard Time, UTC+00:00)
# Tuesday, March 5, 2019

HamiltonCombine a history lesson with great music, great dancing, and a very talented cast and you begin to understand "Hamilton". The extremely popular Broadway musical has been playing continuously at Chicago's CIBC Theater for over two years, and I finally saw a performance Sunday afternoon.

This hype for this show was considerable, but Sunday's performance was up to matching it.

The show's story focuses on the friendship and rivalry between Alexander Hamilton and Aaron Burr. Both were major figures in early American history. Hamilton was the first Secretary of the Treasury, who built the U.S. financial system. Burr was a Senator, a state Attorney General, a Vice President and (spoiler alert) the man who killed Hamilton in a duel.

Some actors got the day off for this matinee performance - most notably, JJ Jeter for Miguel Cervantes as Hamilton and Keith Webb for Akron Watson, but I would not have known I was seeing understudies without looking at the program. Jeter and Webb captured the spirit of their characters - Hamilton's idealism and Burr's ambition - perfectly.

A high point of the interpretation was the character of Thomas Jefferson, who was portrayed as a cocky Prince clone, returning from Paris to set the new country afire.

One of the most interesting aspect of the Hamilton musical is that nearly every major part is played by a person of color - African-American or Latinx. George III was the only speaking role is played by a Caucasian. Of course, the leaders of 18th century United States were almost all white. But this change works well and fits the music, features a lot of R&B and Hip-Hop influences.

I bought tickets to treat myself to a birthday present and I invited my son to join me. We both enjoyed it immensely. I would not be surprised to see this show run for another 2 years in Chicago.

Tuesday, March 5, 2019 9:45:00 AM (GMT Standard Time, UTC+00:00)
# Monday, March 4, 2019

Episode 553

Jennifer Marsman on AI for Earth

Jennifer Marsman describes how Microsoft's AI for Earth team is using data to make the world a better place.

Monday, March 4, 2019 9:07:00 AM (GMT Standard Time, UTC+00:00)
# Sunday, March 3, 2019

Today I am grateful that my shower is finally fixed.

Today I am grateful for the many kind words posted here yesterday.
Today I am grateful for another successful trip around the sun.

Today I am grateful for someone to recruit me personally and sincerely (even though I'm not going anywhere).

Today I am grateful to Tim for helping me connect my sound bar to my TV last night.

Today I am grateful for my personal trainer.

Today I am grateful for a Spartan victory over um in both men's and women's basketball yesterday.

Today I am grateful for my new living room furniture.

Today I am grateful to sleep in this morning.

Today I am grateful to live close to so many good restaurants.

Today I am grateful for the opportunity to mentor high school students on their STEM projects in southwest Chicago yesterday.

Today I am grateful for a hot bath on a cold afternoon.

Today I am grateful for cheeseburgers with Tim last night.

Today I am grateful to see bluesman Jimmy Johnson at The Lagunitas Tap Room last night.

Today I am grateful that I finally bought a new couch for my home to replace the beat-up old furniture I've been living with all these years.

Today I am grateful for a call from Kevin last night.

Today I am grateful to see a home Chicago State University basketball game last night for the first time.

Today I am grateful I finally got my broken Surface Book replaced.

Today I am grateful for a walk around central Ottawa with my team in last night's snowfall.

Today I am grateful for an unexpected jazz big band at dinner last night.

Today I am grateful to see an overtime Bruins-Avalanche game yesterday in Boston.

Today I am grateful for my first visit to Williamstown to see Nick this weekend.

Today I am grateful to attend my first home Williams College basketball game last night.

Today I am grateful to see an exciting Lakers-Celtics game on my first visit to TD Garden last night.

Today I am grateful for 3 consecutive days with my personal trainer.

Today I am grateful to see an exciting basketball game in Champaign last night.

Today I am grateful to the friend who reached out to me when he noticed I was down.

Today I am grateful for a chance to donate blood yesterday for the first time in years.

Sunday, March 3, 2019 11:48:00 PM (GMT Standard Time, UTC+00:00)
# Saturday, March 2, 2019

APassageToIndiaAziz was a doctor and a father and a widow living in central India during the time of British colonization.

He was friendly and open with the English people and become close with some of those visiting, including the elderly Mrs. Moore, Adela Quested, who was engaged to Mrs. Moore's son, and Cyril Fielding, who ran a nearby government college. One day, Aziz invited some of his new friends to explore nearby caves.

During their spelunking expedition, Adela and Aziz were separated. Adela became disoriented inside a cave and later accused Dr. Aziz of trying to rape her.

Aziz's guilt was assumed, and the trial began quickly.

In A Passage to India, E.M. Forster focuses more on his characters than on the action of those characters and the most interesting character in the novel is Dr. Aziz.

Falsely accused by one he trusted and to whom he showed kindness, Aziz re-evaluates his attitude toward the British colonizers.

The novel explores the difference between the cultures and the attitudes of the English and Indians. It shows the bigotry inherent in colonialism, particularly (but not solely) among the English. Sometimes that bigotry is explicit, as many English consider themselves superior to the Indians - or any darker race, for that matter. Sometimes, it is more subtle, as when the English authorities and population are more likely to believe the false accusations of Adela, even before the trial begins.

The book explores whether personal friendships can exist under the shadow of colonialism. Aziz's opinion on this subject changes, after he is falsely accused.

A Passage to India is a beautifully written novel that makes the reader feel for the characters and think about the relationship between people, countries, and races.

Saturday, March 2, 2019 9:23:00 AM (GMT Standard Time, UTC+00:00)
# Friday, March 1, 2019

Azure Search allows you to create a service making your own data searchable, in much the same way that public search engines like Google and Bing make data on the Internet searchable.

In previous articles, I showed how to create an Azure Search Service; and how to import and index data in that service.

In this article, I will show how to use a REST API exposed by the Azure Search service to return indexed results, based on search criteria.

You can do some limited searching using the Azure portal. Navigate to the Azure portal and login; then, navigate to the Azure Search service, as shown in Fig. 1.

Fig. 1

Click the [Search explorer] button (Fig. 2) to display the "Search explorer" blade, as shown in Fig. 3.

Fig. 2

Fig. 3

At the "Query string" field, you can enter a search term and click the [Search] button to return all the data (in JSON format) that matches the search term in any field you marked "FILTERABLE" in your index. Clicking the [Search] button issues an HTTP GET against the Search service's REST API. The results are shown in Fig. 4.

Fig. 4

You have more flexibility calling the REST API with a POST request. This is not possible through the portal; but you can use a tool like Postman to make these requests.

The URL to which you POST can be found on the Azure service's "Overview" tab, as shown in in Fig. 5.

Fig. 5

The URL takes the form:


where <servicename> is the name you assigned to this service.

You will also need the Query key. You can find the Query key by opening the Azure Search service's "Keys" blade (Fig. 6) and clicking "Manage query keys" to display the "Manage query keys" blade, as shown in Fig. 7.

Fig. 6

Fig. 7

To test POSTing to the REST API, open Postman and open a new tab, as shown in Fig. 8.

Fig. 8

At the Verb dropdown, select "POST".

At the "Request URL" field, paste in the URL. This will be the URL copied from the "Overview" tab, followed by "/indexes/<indexname>/docs/search?api-version=2017-11-11

where <indexname> is the name of the index you created in the Azure Search service.

This is shown in Fig. 9.

Fig. 9

Select the "Headers" tab, as shown in Fig. 10.

Fig. 10

Enter the following 2 key/value pairs:

Key="api-key"; value=the Query key copied from the service.

Key="Content-Type"; value="application/json"

These are shown in Fig. 11.

Fig. 11

Select the "Body" tab to enter search parameters, as shown in Fig. 12.

Fig. 12

The example shown
   "select": "*",
  "filter": "state eq 'IL'",
  "orderby": "presentationDate desc"

instructs the API to select all the fields' to filter the data, returning only those in which the "state" field equals "IL"; and sort the results in descending order by presentation date.

The results are shown in Fig. 13.

Fig. 13

In this article, you learned how to use the REST API to access an Azure Search service.

Click  the [Send] button to POST to the API.

Friday, March 1, 2019 9:27:00 AM (GMT Standard Time, UTC+00:00)
# Thursday, February 28, 2019

GCast 37:

Managing Blobs with the Azure Storage Explorer

The Azure Storage Explorer is a free resource to manage Azure Storage Accounts.
This video shows how to manage Azure blobs with this tool.

Thursday, February 28, 2019 8:55:00 AM (GMT Standard Time, UTC+00:00)
# Wednesday, February 27, 2019

Azure Search allows you to create a service making your own data searchable, in much the same way that public search engines like Google and Bing make data on the Internet searchable.

There are three steps to configuring Azure Search:

  1. Create Azure Search Service
  2. Create Index
  3. Import data

In a previous article, I showed how to create an Azure Search Service.

This article will show how to import data into Azure Search service; then index that data.

Navigate to the Azure portal and log in.

For this demo, I am indexing a Table in Azure storage containing information about my public speaking events, as shown in the Azure Data Explorer in Fig. 1.

Fig. 1

Open your Azure Search Service, as shown in Fig. 2.

Fig. 2

Click the [Import data] button (Fig. 3) to display the "Import data" blade, as shown in in Fig. 4.

Fig. 3

Fig. 4

At the "Data Source" dropdown, select "Azure Table Storage", as shown in in Fig. 5.

Fig. 5

The "Connect your data" tab displays, as shown in Fig. 6.

Fig. 6

At the "Name" field, enter a name for this data source.

At the "Connection string" field, click "Choose an existing connection" and select the storage account containing your data, as shown in Fig. 7.

Fig. 7

At the "Table name" field, enter the name of the table containing your data.

Click the [Next] buttons at the bottom of the tab until you advance to the "Customize target index" tab, as shown in Fig. 8.

Fig. 8

This tab displays all the fields in your data. Here you can select which fields can be retrieved, which can be filtered on, which can be sorted on, etc.

After making all your selections, click the [Next: Create an indexer] button at the bottom of the tab to advance to the "Create an indexer" tab, as shown in Fig. 9.

Fig. 9

On this tab, you can configure how often your index will be updated from data changes. You can also decide whether to remove deleted items from your index (which will slow down indexing).

Click the [Submit] button to begin the first indexing and set the indexing schedule as configured.

A few minutes after the indexer runs, you should see the DOCUMENT COUNT and STORAGE SIZE values in the "Indexes" tab of the Search Service's "Overview" blade, as shown in Fig. 10.

Fig. 10

In this article, I showed how to import data into an Azure Search Service; then index that data.

In a future article, I will show how to call the search service.

Wednesday, February 27, 2019 9:21:00 AM (GMT Standard Time, UTC+00:00)