Jim Bennett

Senior Cloud Developer Advocate at Microsoft, Xamarin Certified Developer, author of Xamarin In Action, blogger, speaker, father and lover of beer, whisky and Thai food. Opinions are my own.

  Reading, UK

See me soon at:

NDC London

My book:

Xamarin In Action

My podcast:

The Jim And Tonic Show
The Jim And Tonic Show on iTunes

Contact me:

  Xamarin In Action
  Twitter
  The Jim And Tonic Show
  GitHub
  LinkedIn
  YouTube
  Email
  CV

Controlling an IoT device from your phone

I've just finished watching the latest episode of Five Things, where Suz Hinton talks with Burke about Goo Goo Clusters and IoT devices. One of the devices Suz showed was the Azure IoT DevKit - an arduino compatible board made by MXChip that works beautifully with Azure, even down to having an Azure LED on board to show when it is connecte…

Read More

Running AI models on iOS, Android and Windows using Xamarin

I created a NuGet package a while ago to allow you to run models exported from the Azure Custom Vision service on iOS and Android in Xamarin apps from your cross-platform code. You can read about this here. Since then, the Custom Vision service has added ONNX export, meaning you can now run these models on-device on Windows as well. This meant it…

Read More

Describing a photo in a mobile app using Azure Computer Vision

I recently gave an introduction to Xamarin talk at Imperial College, London and wanted to build a cool app to show off what you can do on mobile using the awesome Cognitive Services available on Azure. I only had about 30-40 minutes to not only introduce Xamarin, but build an app so I decided to throw together a simple app to take a photo and descr…

Read More

Building mobile apps in F# using Xamarin.Forms and Elmish

FSharp and Xamarin Xamarin is well known for allowing you to build mobile apps in C#, but you can use F# as well. F# is fully supported by the compiler and toolchains in both Visual Studio 2017 and Visual Studio for Mac. It's also pretty much supported by all the Xamarin tools including Xamarin.Forms (except for one bug that should be fixed soon).…

Read More

Face identification with Azure Cognitive Services Face API

Recently I've been playing with a lot AI and seeing how it can be used in mobile apps to enhance the experience offered to the user. Currently I am playing with facial recognition using the Azure Cognitive Services Face API. This is a stupidly powerful API that can do a LOT of different things: Detect faces in images Analyze those faces to detect c…

Read More

Identifying my daughters toys using AI - Part 5, Plugin for on-device models

In the first part of this series I used the Azure Custom Vision service to create an image classifier to allow me to easily identify my daughters cuddly toys. Once created I tested it by uploading an image and seeing what tags the classifier found for the image. In the second part I accessed this model from a Xamarin app, so that I could use the ca…

Read More

Identifying my daughters toys using AI - Part 2, using the model

In the first part of this post I used the Azure Custom Vision service to create an image classifier to allow me to easily identify my daughters cuddly toys. Once created I tested it by uploading an image and seeing what tags the classifier found for the image. Although this works, it's a long winded way of using the model. Ideally I'd want it in a…

Read More

Getting a users Facebook profile after Authenticating your Xamarin app with Azure

I've recently been looking at the authentication offered by Azure for use in a mobile app, specifically using social auth providers like Facebook to allow a user to sign up for my app. The auth setup is incredibly easy, with Azure taking care of a lot of the hard stuff. There are also loads of great docs on how to get it set up - including the Micr…

Read More

Device.StartTimer and iOS backgrounding

I recently completed a lecture on backgrounding in iOS and Android as part of the Xamarin University. During this lecture, one topic of discussion came up with no real answer - how Device.StartTimer() in Xamarin.Forms affects backgrounding. With iOS, if you enable backgrounding using BeginBackgroundTask(), you have 3 minutes to stop all backgroun…

Read More

JimLib.Xamarin is now updated to the Unified API

Finally, after fighting with Xamarin and having my Surface die and need to be reinstalled twice, I've managed to get JimLib.Xamarin updated to use the new Xamarin Unified API so it should be suitable for submitting new apps to the iPhone app store. I'll be updating my first app Second Screen for Plex soon and sending it to the app store for approv…

Read More
 

Controlling an IoT device from your phone

I've just finished watching the latest episode of Five Things, where Suz Hinton talks with Burke about Goo Goo Clusters and IoT devices. One of the devices Suz showed was the Azure IoT DevKit - an arduino compatible board made by MXChip that works beautifully with Azure, even down to having an Azure LED on board to show when it is connecte…

Read More

Running AI models on iOS, Android and Windows using Xamarin

I created a NuGet package a while ago to allow you to run models exported from the Azure Custom Vision service on iOS and Android in Xamarin apps from your cross-platform code. You can read about this here. Since then, the Custom Vision service has added ONNX export, meaning you can now run these models on-device on Windows as well. This meant it…

Read More

Describing a photo in a mobile app using Azure Computer Vision

I recently gave an introduction to Xamarin talk at Imperial College, London and wanted to build a cool app to show off what you can do on mobile using the awesome Cognitive Services available on Azure. I only had about 30-40 minutes to not only introduce Xamarin, but build an app so I decided to throw together a simple app to take a photo and descr…

Read More

Building mobile apps in F# using Xamarin.Forms and Elmish

FSharp and Xamarin Xamarin is well known for allowing you to build mobile apps in C#, but you can use F# as well. F# is fully supported by the compiler and toolchains in both Visual Studio 2017 and Visual Studio for Mac. It's also pretty much supported by all the Xamarin tools including Xamarin.Forms (except for one bug that should be fixed soon).…

Read More

Face identification with Azure Cognitive Services Face API

Recently I've been playing with a lot AI and seeing how it can be used in mobile apps to enhance the experience offered to the user. Currently I am playing with facial recognition using the Azure Cognitive Services Face API. This is a stupidly powerful API that can do a LOT of different things: Detect faces in images Analyze those faces to detect c…

Read More

Identifying my daughters toys using AI - Part 5, Plugin for on-device models

In the first part of this series I used the Azure Custom Vision service to create an image classifier to allow me to easily identify my daughters cuddly toys. Once created I tested it by uploading an image and seeing what tags the classifier found for the image. In the second part I accessed this model from a Xamarin app, so that I could use the ca…

Read More

Identifying my daughters toys using AI - Part 2, using the model

In the first part of this post I used the Azure Custom Vision service to create an image classifier to allow me to easily identify my daughters cuddly toys. Once created I tested it by uploading an image and seeing what tags the classifier found for the image. Although this works, it's a long winded way of using the model. Ideally I'd want it in a…

Read More

Getting a users Facebook profile after Authenticating your Xamarin app with Azure

I've recently been looking at the authentication offered by Azure for use in a mobile app, specifically using social auth providers like Facebook to allow a user to sign up for my app. The auth setup is incredibly easy, with Azure taking care of a lot of the hard stuff. There are also loads of great docs on how to get it set up - including the Micr…

Read More

Device.StartTimer and iOS backgrounding

I recently completed a lecture on backgrounding in iOS and Android as part of the Xamarin University. During this lecture, one topic of discussion came up with no real answer - how Device.StartTimer() in Xamarin.Forms affects backgrounding. With iOS, if you enable backgrounding using BeginBackgroundTask(), you have 3 minutes to stop all backgroun…

Read More

JimLib.Xamarin is now updated to the Unified API

Finally, after fighting with Xamarin and having my Surface die and need to be reinstalled twice, I've managed to get JimLib.Xamarin updated to use the new Xamarin Unified API so it should be suitable for submitting new apps to the iPhone app store. I'll be updating my first app Second Screen for Plex soon and sending it to the app store for approv…

Read More