Blogs
Run an Ubuntu VM on your Mac with a single command
I recently needed to run Linux so I could test out what Python version was installed, and how to upgrade it for some documentation I’m creating. I don’t have a spare machine to set up as a Linux box, and didn’t want to use a Raspberry Pi, I wanted a clean Ubuntu install. My …
Subscribe to messages from an iRobot Create3 using ROS
In my last post I showed how I connected a Raspberry Pi to an iRobot Crete3 robot. In this post I show how to subscribe to messages sent by the robot to the Pi using rclpy, the ROS Python library. One downside to ROS is that the documentation needs some love. It covers in great detail how to do …
Connect a Raspberry Pi to an iRobot Create 3
iRobot, the makers of robotic vacuum cleaners also make educational robots designed for learning how to do robotics programming. I recently managed to get my hands on one of their new Create3 robots as part of the Microsoft Global Hackathon, one of the cool perks of working for Microsoft. These …
Led Ticker Tape
Anyone who knows me knows I’m a big fan of IoT and LEDs. I love using IoT devices to control lights, from the LEDs behind my desk to smart pumpkins! I’ve been giving the .NET IoT libraries a spin for an upcoming project using a Raspberry Pi Zero W 2. I’m usually a Python person …
Auto-posting to dev.to using a GitHub action
I’ve been wanting to build a tool to post markdown automatically to blogging platforms. That way I (or anyone else) can write a blog post in markdown, save it in a GitHub repo, and have it automatically posted to a blogging platform of their choice. I’ve created a small Python app to do …
Getting started with GitHub Codespaces
The bane of every new developers life is getting your environment set up to be productive. And when I say new developer - I don’t just mean a dev who is new to a team, but every developer who needs to work on a project they haven’t worked on before. Each project has it’s own …
New year - new me!
Jim’s got a new job as a Regional Cloud Advocate in Redmond, Washington.
Announcing a New Free Curriculum: IoT for Beginners
It is our very great pleasure to announce the release of a new, free, MIT-licensed open-source curriculum all about the Internet of Things: IoT for Beginners. Brought to you by a team of Azure Cloud Advocates, Program Managers, and Microsoft Learn Student Ambassadors, we hope to empower students of …
Using TinyML to identify farts
TLDR; Find a complete hands-on lab to build a TinyML audio classifier at github.com/microsoft/iot-curriculum/tree/main/labs/tiny-ml/audio-classifier. My 8-year-old daughter bought me “Farts - a spotters guide” - a book with some buttons down the side and when you press them, they make …
Installing Scikit-Learn on a Apple Silicon
At the end of last year I splashed out on a shiny new Apple MacBookAir with the M1 processor as I was fed up with an old Intel-based MacBookPro that was quite honestly crippled by corporate anti-virus software. Out the box this machine is amazing. It’s ridiculously fast, and lasts for ever on …
Build a virtual IoT Lab with Raspberry Pis and Azure IoT Hub
The rise of virtual education has led to sweeping changes in how students are taught. A lot of computer science lessons can be run with only small changes thanks to the cloud - Azure Lab Services can provide virtual machines with developer tooling, or GitHub Codespaces can replace the physical lab …
What is edge computing, why do it, why send IoT data to the cloud?
I recently had a student reach out to me with some great questions around Edge computing and how it matches to IoT, and indeed why even use the cloud with IoT. They have to write a paper on the difference between edge computing and just using the cloud, and were researching these terms and trying to …