# Jared Rhodes > A technical blog by Jared Rhodes, running 2017 to 2026. Roughly 105 published > posts, mostly Azure, IoT, Xamarin, and homelab infrastructure, plus three series still > under active development in 2026: AI on the Edge, Westworld of Warcraft, and a > Tenstorrent private-cloud edge lab. There is also a speaking portfolio of current > conference and community sessions. Full Markdown of every post concatenated: https://jaredrhodes.com/llms-full.txt ## Posts - [Two Ways to Wear a Character](https://jaredrhodes.com/blog/two-ways-to-wear-a-character/index.md): How Westworld of Warcraft drives characters two ways at once: CLR injection into a live game client as ground truth, a pure C# implementation of the WoW protocol as the... - [Westworld of Warcraft: A Server That Plays Itself](https://jaredrhodes.com/blog/westworld-of-warcraft-a-server-that-plays-itself/index.md): Series opener for Westworld of Warcraft: why I am building a server that behaves like it has a thousand people on it, the 3,000-character population shape, the layered .NET architecture,... - [The AI on the Edge Reference Architecture](https://jaredrhodes.com/blog/ai-on-the-edge-reference-architecture/index.md): Final synthesis for AI on the Edge: gateway, router, policy, RAG, IoT operations assistant, Azure governance, Azure Local lane, private cloud lab, Tenstorrent lane, and conference-ready flow. - [Building the AI on the Edge Demo System](https://jaredrhodes.com/blog/building-the-ai-on-the-edge-demo-system/index.md): Engineering wrap-up for AI on the Edge: repo layout, make demo-laptop through make teardown targets, seed, reset, and smoke tests, shared health endpoints, and a repeatable 45-minute conference flow. - [Specialized Hardware Without an App Rewrite](https://jaredrhodes.com/blog/specialized-hardware-without-an-app-rewrite/index.md): AI on the Edge Demo 6: registering a Tenstorrent or mock accelerator as an OpenAI-compatible gateway backend with capability discovery, health checks, fallback, and accelerator-preferred routing - no application rewrite.... - [When the Edge Has to Stand Alone](https://jaredrhodes.com/blog/when-the-edge-has-to-stand-alone/index.md): Demo 5 of AI on the Edge: disconnected operation, backend failures, malformed responses, cloud-blocked mode, local-only denial, smoke tests, and reset controls. - [Edge AI You Can Actually Operate](https://jaredrhodes.com/blog/edge-ai-you-can-actually-operate/index.md): Demo 4 of AI on the Edge: operating local AI with Azure Arc, GitOps, Azure Monitor, Managed Prometheus, Grafana, Key Vault, policy events, KQL, and dashboard evidence. - [From Camera Events to Operator Guidance](https://jaredrhodes.com/blog/from-camera-events-to-operator-guidance/index.md): Demo 3 of AI on the Edge: turning the existing cameras/# MQTT contract into an operations assistant using simulated, MQTT, and Event Hubs input modes. - [Private RAG That Cannot Leave the Edge](https://jaredrhodes.com/blog/private-rag-that-cannot-leave-the-edge/index.md): Demo 2 for AI on the Edge: document ingestion, local embeddings, vector search, citations, data classification, LocalOnly routing, and fail-closed cloud fallback. - [One App, Many Places to Run AI](https://jaredrhodes.com/blog/one-app-many-places-to-run-ai/index.md): Demo 1 for AI on the Edge: my .NET gateway, OpenAI-compatible facade, backend registry, route explanations, target backends, and LocalOnly denial behavior. - [AI on the Edge: Local AI Without Local Chaos](https://jaredrhodes.com/blog/ai-on-the-edge-local-ai-without-local-chaos/index.md): Why I built AI on the Edge: local execution, Azure governance, model routing, an IoT camera workload, my private cloud lab, and conference-ready demo modes. - [Cameras on Azure IoT Operations, Part 3: Data Flows, Connectors, and the Cloud](https://jaredrhodes.com/blog/azure-iot-operations-dataflows-onvif-connector/index.md): Forward camera telemetry to the cloud with Azure IoT Operations data flows to Event Hubs, then onboard ONVIF cameras as AIO assets through a connector and a bridge - all... - [Cameras on Azure IoT Operations, Part 2: Swapping in the AIO MQTT Broker](https://jaredrhodes.com/blog/azure-iot-operations-mqtt-broker-camera-fleet/index.md): Swap Eclipse Mosquitto for the Azure IoT Operations MQTT broker on Arc-enabled Kubernetes: a broker seam in .NET, TLS, per-camera X.509 identity, and attribute-based topic authorization. - [Cameras on Azure IoT Operations, Part 1: The Control Plane and Network Model](https://jaredrhodes.com/blog/azure-iot-operations-camera-control-plane/index.md): How a .NET camera control plane is built for Azure IoT Operations - the two camera classes, the MQTT control bus, and the per-property network model AIO plugs into. - [Home Lab - Tenstorrent Buildout for Multi-Cloud Edge Demos](https://jaredrhodes.com/blog/home-lab-tenstorrent-buildout-multi-cloud-edge/index.md): Building out a basement studio and mixed Tenstorrent/NVIDIA lab for reusable Azure and AWS edge demo scenarios. - [Home Lab - Utilizing the Cloud - Dynamic VPN](https://jaredrhodes.com/blog/home-lab-utilizing-the-cloud-dynamic-vpn/index.md): Home lab guide for dynamic Azure Site-to-Site VPN resources, covering VPN Gateway costs, supported routers, hybrid networking, and teardown. - [Can't access TrueNAS/FreeNAS over VPN](https://jaredrhodes.com/blog/cant-access-truenas-freenas-over-vpn/index.md): Fix for TrueNAS or FreeNAS access over VPN by adding a static route when the VPN client CIDR is outside the storage server subnet. - [Home Lab - Keeping Costs Down](https://jaredrhodes.com/blog/home-lab-keeping-costs-down/index.md): Home lab cost guide focused on matching hardware to use cases, avoiding wasteful enterprise gear, and planning servers for media, storage, dev, and AI. - [Home Lab - a lie I tell myself](https://jaredrhodes.com/blog/home-lab-a-lie-i-tell-myself/index.md): Home lab series introduction covering Debian, KVM, Docker, TrueNAS, automation, edge computing, game servers, cloud integration, and budget control. - [Error: mkisofs not found in $PATH](https://jaredrhodes.com/blog/error-mkisofs-not-found-in-path/index.md): Fix for Terraform KVM libvirt provider error mkisofs not found in PATH, explaining why mkisofs must be installed on the client machine. - [TrueNAS Azure Sync for Proxmox](https://jaredrhodes.com/blog/truenas-azure-sync-for-proxmox/index.md): Walkthrough for backing up Proxmox storage from TrueNAS NFS to Azure Blob Storage using Azure storage accounts, cloud credentials, and sync tasks. - [TrueNAS NFS for Proxmox](https://jaredrhodes.com/blog/truenas-nfs-for-proxmox/index.md): Guide to creating a TrueNAS Core NFS share for Proxmox, covering datasets, NFS service setup, share settings, and VM or container migration. - [PostgreSQL Historical Log by Table](https://jaredrhodes.com/blog/postgresql-historical-log-by-table/index.md): Guide to creating PostgreSQL historical logging per table by copying table structure, writing a trigger function, and logging old rows before updates. - [Using Cognitive Services: Custom Vision Service with Azure IoT Edge](https://jaredrhodes.com/blog/using-cognitive-services-custom-vision-service-with-azure-iot-edge/index.md): Guide to running Cognitive Services Custom Vision with Azure IoT Edge module-to-module messaging, from model creation to Python module deployment. - [New Pluralsight Courses Released!](https://jaredrhodes.com/blog/new-pluralsight-courses-released/index.md): Pluralsight course release note covering Azure data cleaning for machine learning and Xamarin.Forms architecture for reusable application code. - [gRPC C++ and Self Signed Certificates](https://jaredrhodes.com/blog/grpc-c-and-self-signed-certificates/index.md): Troubleshooting gRPC C++ TLS with self signed certificates, covering SSL handshake errors and GRPC_SSL client certificate settings for servers. - [Azure IoT Hub - OpenSSL - Generate proof of possession](https://jaredrhodes.com/blog/azure-iot-hub-openssl-generate-proof-of-possession/index.md): Steps to generate Azure IoT Hub proof of possession with OpenSSL, using self signed root certificates, verification keys, CSRs, and PEM upload. - [New Pluralsight Course Released!](https://jaredrhodes.com/blog/new-pluralsight-course-released-3/index.md): Pluralsight course announcement for Sourcing Data in Microsoft Azure, covering data types, Azure Data Catalog, Data Factory, and HDInsight. - [New Pluralsight Course Released!](https://jaredrhodes.com/blog/new-pluralsight-course-released-2/index.md): Announcement for a Pluralsight course on deploying and managing models in Microsoft Azure with Azure Machine Learning, Azure DevOps, and model lifecycle tools. - [Authoring for Pluralsight - Azure Machine Learning](https://jaredrhodes.com/blog/authoring-for-pluralsight-azure-machine-learning/index.md): Overview of Pluralsight Azure Machine Learning courses on sourcing data, cleaning and preparing data, model deployment, DevOps, and Azure workflows. - [New Pluralsight Courses](https://jaredrhodes.com/blog/new-pluralsight-courses/index.md): Pluralsight course roundup covering Azure Intelligent Edge solutions and a first data science project in Microsoft Azure for developers. - [Creating .proto definitions from existing types at runtime](https://jaredrhodes.com/blog/creating-proto-definitions-from-existing-types-at-runtime/index.md): Technique for generating .proto files at runtime from EF Core database-first types using reflection, System.Emit, protobuf-net, and ProtoMember attributes. - [numpy/core/_multiarray_umath.cpython-35m-arm-linux-gnueabihf.so: undefined symbol: cblas_sgemm - Raspberry Pi](https://jaredrhodes.com/blog/numpy-core-multiarray-umath-cpython-35m-arm-linux-gnueabihf-so-undefined-symbol-cblas-sgemm-raspberry-pi/index.md): Raspberry Pi fix for NumPy cblas_sgemm errors while running TensorFlow and Custom Vision models, covering cleanup and reinstall of python3-numpy. - [Authoring for Pluralsight - Developing Microsoft Azure Intelligent Edge Solutions](https://jaredrhodes.com/blog/authoring-for-pluralsight-developing-microsoft-azure-intelligent-edge-solutions/index.md): Pluralsight course plan for Microsoft Azure Intelligent Edge Solutions, covering IoT Hub, stream processing, Cosmos DB, Blob Storage, and TSI. - [Pluralsight Course Published - Designing an Intelligent Edge in Microsoft Azure](https://jaredrhodes.com/blog/pluralsight-course-published-designing-an-intelligent-edge-in-microsoft-azure/index.md): Announcement for the Pluralsight course Designing an Intelligent Edge in Microsoft Azure, covering Azure Stack, Data Box Edge, IoT Edge, and AI. - [iotedge: error while loading shared libraries: libssl.so.1.0.2: cannot open shared object file: No such file or directory - Raspberry Pi](https://jaredrhodes.com/blog/iotedge-error-while-loading-shared-libraries-libssl-so-1-0-2-cannot-open-shared-object-file-no-such-file-or-directory-raspberry-pi/index.md): Raspberry Pi fix for Azure IoT Edge libssl.so.1.0.2 loading errors, showing the libssl1.0.2 install and service restart checks for iotedge. - [MVP Renewal](https://jaredrhodes.com/blog/mvp-renewal-2019/index.md): Microsoft Azure MVP renewal note covering Azure Edge, Azure ML, Scry Unlimited, AI on the Edge speaking plans, and Atlanta community events. - [Multiple TensorFlow Graphs from Cognitive Services - Custom Vision Service](https://jaredrhodes.com/blog/multiple-tensorflow-graphs-from-cognitive-services-custom-vision-service/index.md): Run several exported Custom Vision Service models in one Python application by calling tf.reset_default_graph after each loaded session is saved. - [Communicating between Python and .NET Core with Boost Interprocess](https://jaredrhodes.com/blog/communicating-between-python-and-net-core-with-boost-interprocess/index.md): Example of cross-language communication between Python and .NET Core using Boost.Interprocess, Boost.Python, Boost.Signals2, shared memory, and PInvoke. - [Azure IoT Edge - YOLO, Stream Analytics Service, and Blob Storage](https://jaredrhodes.com/blog/azure-iot-edge-yolo-stream-analytics-service-and-blob-storage/index.md): Architecture for Azure IoT Edge image processing with YOLO, Stream Analytics, Blob Storage, and camera modules to detect motion and save image clips. - [Securing SSH in Azure](https://jaredrhodes.com/blog/securing-ssh-in-azure/index.md): Azure SSH hardening guide for Linux VMs, covering removal of Arcfour, CBC ciphers, weak MAC algorithms, and safer sshd_config options. - [Upcoming Pluralsight Course - Designing an Intelligent Edge in Microsoft Azure](https://jaredrhodes.com/blog/upcoming-pluralsight-course-designing-an-intelligent-edge-in-microsoft-azure/index.md): Preview of a Pluralsight course on designing an intelligent edge in Microsoft Azure with Azure Stack, Data Box Edge, IoT Edge, AI, and Databricks. - [Multi-Region Point-to-Site in Microsoft Azure (Windows Fix)](https://jaredrhodes.com/blog/multi-region-point-to-site-in-microsoft-azure-windows-fix/index.md): Fix for Windows clients using Azure multi-region point-to-site VPNs, covering route table updates, spoke VNET routes, IKEv2, SSTP, and CMAK profiles. - [New Pluralsight Course Released!](https://jaredrhodes.com/blog/new-pluralsight-course-released/index.md): Pluralsight course announcement for Azure Cognitive Services Speech to Text SDK, covering C#, customization, Azure Functions, and batch processing. - [Creating a Single Gateway, Multi-Region, VPN Architecture in Microsoft Azure](https://jaredrhodes.com/blog/creating-a-single-gateway-multi-region-vpn-architecture-in-microsoft-azure/index.md): Walkthrough for building a single gateway multi-region VPN architecture in Microsoft Azure, covering hub-spoke VNets, gateways, and address planning. - [Upcoming interview with The 6 Figure Developer](https://jaredrhodes.com/blog/upcoming-interview-with-the-6-figure-developer/index.md): Announcement of an upcoming The 6 Figure Developer interview covering Microsoft Azure, Cognitive Services, IoT, and Azure IoT Edge topics. - [Speaking at DotNetSouth.Tech](https://jaredrhodes.com/blog/speaking-at-dotnetsouth-tech/index.md): DotNetSouth.Tech AI on the Edge session preview about moving cloud logic and machine learning into edge applications with Azure services. - [Atlanta Code Camp 2019 - Save the Date](https://jaredrhodes.com/blog/atlanta-code-camp-2019-save-the-date/index.md): Save the date announcement for Atlanta Code Camp 2019, including the September event date, call for papers timing, schedule plans, and sponsors. - [Authoring for Pluralsight - Microsoft Azure Cognitive Services: Speech to Text SDK](https://jaredrhodes.com/blog/authoring-for-pluralsight-microsoft-azure-cognitive-services-speech-to-text-sdk/index.md): Course outline for Microsoft Azure Cognitive Services Speech to Text SDK, aimed at developers building AI solutions with REST APIs, JSON, and device SDKs. - [Microsoft Azure Cognitive Services: Text to Speech API - Published!](https://jaredrhodes.com/blog/microsoft-azure-cognitive-services-text-to-speech-api-published/index.md): Pluralsight course announcement for Azure Cognitive Services Text to Speech API, covering voices, machine learning voices, and custom voices. - [Speaking at Orlando Code Camp](https://jaredrhodes.com/blog/speaking-at-orlando-code-camp/index.md): Orlando Code Camp session announcement for AI on the Edge, showing how Azure IoT Edge moves cloud logic and machine learning to edge apps. - [Authoring for Pluralsight - Microsoft Azure Cognitive Services: Text to Speech API](https://jaredrhodes.com/blog/authoring-for-pluralsight-microsoft-azure-cognitive-services-text-to-speech-api/index.md): Course preview for Microsoft Azure Cognitive Services Text to Speech API, covering REST, SDKs, custom voice fonts, and JavaScript, C#, Java, C++, Python. - [Hacking Izon Cameras and using Azure IoT Edge](https://jaredrhodes.com/blog/hacking-izon-cameras-and-using-azure-iot-edge/index.md): Project walkthrough for repurposing Izon cameras with Azure IoT Edge, C modules, device twins, image feeds, audio feeds, and Edge Hub. - [Using Open CV C++ with Azure IoT Edge](https://jaredrhodes.com/blog/using-open-cv-c-with-azure-iot-edge/index.md): Guide to building an Azure IoT Edge module in C++ with OpenCV, using VS Code, Docker, Azure IoT Edge extensions, and container deployment. - [Using Protocol Buffers with Azure IoT Edge](https://jaredrhodes.com/blog/using-protocol-buffers-with-azure-iot-edge/index.md): Guide to using Google Protocol Buffers with Azure IoT Edge by sending C++ module messages to Python modules before forwarding data to IoT Hub. - [Pluralsight Course is out!](https://jaredrhodes.com/blog/pluralsight-course-is-out/index.md): Pluralsight course announcement for identifying Microsoft Azure products, services, tools, documentation, and existing workflow integration. - [.NET Rocks Podcast is out!](https://jaredrhodes.com/blog/net-rocks-podcast-is-out/index.md): Announcement of a .NET Rocks interview about Azure IoT Edge, edge computing, IoT development, and practical cloud intelligence at the device layer. - [.NET Rocks Interview](https://jaredrhodes.com/blog/net-rocks-interview/index.md): Preview of a .NET Rocks interview after Update Conference Prague about Azure IoT Edge, edge hardware choices, and IoT platform discussions. - [South Florida Code Camp - Azure IoT Overview](https://jaredrhodes.com/blog/south-florida-code-camp-virtual-reality-and-iot/index.md): South Florida Code Camp Azure IoT Overview session abstract, covering Azure IoT services, architecture, and enterprise solution planning. - [CodeMash 2019 - Alternative Device Interfaces and Machine Learning](https://jaredrhodes.com/blog/codemash-2019-alternative-device-interfaces-and-machine-learning/index.md): CodeMash 2019 session preview on alternative device interfaces, covering voice commands, speech recognition, computer vision, and machine learning. - [LeadTools common.mk as CMake](https://jaredrhodes.com/blog/leadtools-common-mk-as-cmake/index.md): A CMake equivalent of the LeadTools common.mk make file, so the Linux OCR SDK demo can be built from inside an existing CMake project. - [Authoring for Pluralsight](https://jaredrhodes.com/blog/authoring-for-pluralsight/index.md): Preview of a Pluralsight course on integrating Microsoft Azure services with .NET Core, C#, Java, JavaScript, Docker, IoT Hub, and Kubernetes. - [Generate Protocol Buffers on build with CMake](https://jaredrhodes.com/blog/generate-protocol-buffers-on-build-with-cmake/index.md): Guide to generating C++ Protocol Buffers during CMake builds using file globbing, execute_process, protoc, and generated pb files. - [Azure IoT Edge - docker.sock connect: permission denied](https://jaredrhodes.com/blog/azure-iot-edge-docker-sock-connect-permission-denied/index.md): Fix for Azure IoT Edge builds failing with docker.sock permission denied in VS Code and Docker by adding the Linux user to the docker group. - [Using Angular Kendo Grid with Elastic Search and ASP.NET Core](https://jaredrhodes.com/blog/using-angular-kendo-grid-with-elastic-search-and-asp-net-core/index.md): Back an Angular Kendo Grid with Elasticsearch by mapping the grid filter and paging options to C# objects and translating them into a NEST query. - [DragonCon 2018 - Helpful Links](https://jaredrhodes.com/blog/dragoncon-2018-helpful-links/index.md): Resource list for DragonCon 2018 covering emergency contacts, hotel and transit links, schedule tools, social channels, and unofficial guides. - [TechBash Discount Code](https://jaredrhodes.com/blog/techbash-discount-code/index.md): Archived TechBash 2018 speaker discount code, good for 40 dollars off a standard three or four day ticket. The code has long since expired. - [Elastic Search - "All shards failed" on pagination](https://jaredrhodes.com/blog/elastic-search-all-shards-failed-on-pagination/index.md): Fix the 'all shards failed' error when paging past 10000 Elasticsearch documents by raising max_result_window, and the heap cost of setting it too high. - [Quicken Loans TechCon 2018](https://jaredrhodes.com/blog/quicken-loans-techcon-2018/index.md): Speaking announcement for Quicken Loans TechCon 2018 in Detroit on Alternative Device Interfaces and Machine Learning, covering voice, speech, and vision. - [Atlanta Code Camp - Tickets for sale](https://jaredrhodes.com/blog/atlanta-code-camp-2018-tickets-for-sale/index.md): Atlanta Code Camp 2018 registration details for developers, with event time, Kennesaw State location, ticket price, and community focus. - [Update - Techbash](https://jaredrhodes.com/blog/update-techbash/index.md): TechBash 2018 update: a second talk, Alternative Device Interfaces and Machine Learning, joins the Enable IoT with Edge Computing session. - [Atlanta Code Camp - Call for Speakers](https://jaredrhodes.com/blog/atlanta-code-camp-call-for-speakers/index.md): The Atlanta Code Camp call for speakers is open, seeking talks on cloud computing, data engineering, data science, mobile computing, web development, DevOps, and more. - [Sponsors Wanted - Atlanta Medical Hackathon](https://jaredrhodes.com/blog/sponsors-wanted-atlanta-medical-hackathon/index.md): Sponsor call for the inaugural Atlanta Medical Hackathon, which brings business, technology, and medical professionals together on industry problems. - [Hosting a permanent redirect in Azure](https://jaredrhodes.com/blog/hosting-a-permanent-redirect-in-azure/index.md): Map extra domains to a cheap Azure App Service and redirect them to the primary blog domain with a web.config permanent redirect rule. - [Update Conference Prague](https://jaredrhodes.com/blog/update-conference-prague/index.md): Preview of Update Conference Prague talks on Azure IoT Edge, machine learning, Azure IoT Hub, Service Bus, SignalR, Unity, and virtual reality. - [Took my Niece to Mixed3D](https://jaredrhodes.com/blog/took-my-niece-to-mixed3d/index.md): A second trip to the Mixed3D scanning booth, this time to capture my niece dressed as Rapunzel and print the model in full color sandstone. - [WordPress iFrame using Azure](https://jaredrhodes.com/blog/wordpress-iframe-using-azure/index.md): Work around the WordPress limit on javascript by hosting the script on an Azure App Service site and embedding that page in the post as an iframe. - [MVP Renewal](https://jaredrhodes.com/blog/mvp-renewal-2/index.md): Announcement of a second Microsoft MVP year in Azure, with plans for Azure IoT Edge, Azure ML, Scry Unlimited, and AI on the Edge talks. - [TechBash 2018](https://jaredrhodes.com/blog/techbash-2018/index.md): TechBash 2018 session preview for Azure IoT Edge and machine learning, explaining edge computing, local workloads, latency, and cost. - [Announcing - Atlanta Medical Hackathon](https://jaredrhodes.com/blog/announcing-atlanta-medical-hackathon/index.md): Announcement for Atlanta Medical Hackathon at Georgia Tech, covering student teams, healthcare data transparency, imaging, and access challenges. - [Music City Code - IoT with Mobile](https://jaredrhodes.com/blog/music-city-code-iot-with-mobile/index.md): Speaking announcement for Music City Code 2018, presenting Configure, Control, and Manage IoT with Mobile using Xamarin, Bluetooth LE, and Azure. - [Third Annual Internet of Things Startup Showcase](https://jaredrhodes.com/blog/join-the-greater-atlanta-internet-of-thi/index.md): Details for the Third Annual Internet of Things Startup Showcase at Atlanta Tech Park, with the open house, collaboration session, and pitch schedule. - [Mixed3d Scans](https://jaredrhodes.com/blog/mixed3d-scans/index.md): A trip to the Mixed3D booth, where a rig of Raspberry Pis builds a 3D model, plus the full color sandstone prints and Sketchfab scans that came out of it.... - [Interview with The Cube](https://jaredrhodes.com/blog/interview-with-the-cube/index.md): Video interview with theCUBE at Cisco DevNet Create 2018 on IoT, edge computing, and bringing Azure workloads to devices. - [IRIS Conference](https://jaredrhodes.com/blog/iris-conference/index.md): Speaking announcement for the IRIS symposium at UGA, with three talks on virtual reality and IoT, edge computing, and alternative device interfaces. - [Azure Global Bootcamp Atlanta](https://jaredrhodes.com/blog/azure-global-bootcamp-atlanta/index.md): The fourth annual Azure Global Bootcamp in Atlanta, including the Global Azure Bootcamp announcement snippet and the IoT track line up. - [Home Control Flex Major Release](https://jaredrhodes.com/blog/home-control-flex-major-release/index.md): Release notes for Home Control Flex, and how a navigation page rewrite, framework cleanup, and shared App.xaml resources fixed a crash prone app. - [CodeStock](https://jaredrhodes.com/blog/codestock/index.md): I'm proud to be presenting Alternative Device Interfaces and Machine Learning at CodeStock, covering voice commands, speech recognition, and computer vision. - [Storing Event Data in Elastic Search](https://jaredrhodes.com/blog/storing-event-data-in-elastic-search/index.md): Take the Elasticsearch load off client devices by sending telemetry to Event Hubs, batching it in Stream Analytics, and indexing it from an Azure Function. - [Getting started with Elastic Search in Azure](https://jaredrhodes.com/blog/getting-started-with-elastic-search-in-azure/index.md): Deploy an Elasticsearch cluster from the Azure Marketplace template with Kibana and an external load balancer, then connect to it with the NEST client. - [DevNet Create](https://jaredrhodes.com/blog/devnet-create/index.md): I'm proud to be presenting Alternative Device Interfaces and Machine Learning at DevNet Create, covering voice commands, speech recognition, and computer vision. - [Azure IoT Edge - exec user process caused "exec format error"](https://jaredrhodes.com/blog/azure-iot-edge-exec-user-process-caused-exec-format-error/index.md): Fix the exec format error in Azure IoT Edge container logs on a Raspberry Pi by switching the Dockerfile base image to an arm32v7 .NET runtime. - [Xamarin Forms Android crashes after Custom Renderer added](https://jaredrhodes.com/blog/xamarin-forms-android-crashes-after-custom-renderer-added/index.md): Fix a Xamarin Forms Android app that crashes before the first screen after a custom renderer is added by cleaning and rebuilding the Android project. - [Azure IoT Edge stuck restarting](https://jaredrhodes.com/blog/azure-iot-edge-stuck-restarting/index.md): Recover an Azure IoT Edge runtime stuck reporting RESTARTING by stopping the edgeAgent container and running the iotedgectl setup script again. - [DevNexus 2018](https://jaredrhodes.com/blog/devnexus-2018/index.md): I'm proud to be presenting Enable IoT with Edge Computing and Machine Learning at DevNexus 2018, covering edge computing, Azure, and machine learning. - [Creating an ASP.NET Core application for Raspberry Pi](https://jaredrhodes.com/blog/creating-an-asp-net-core-application-for-raspberry-pi/index.md): Steps to build an ASP.NET Core app, publish it for linux-arm, install the .NET Core runtime on Raspbian, and serve the site from a Raspberry Pi. - [Unable to load DLL 'e_sqlite3' dotnet core Raspian](https://jaredrhodes.com/blog/unable-to-load-dll-e-sqlite3-dotnet-core-raspian/index.md): Fix the unable to load DLL e_sqlite3 error on .NET Core under Raspbian by copying the native libe_sqlite3.so into the application directory. - [Creating a Common Loading Page for Xamarin Forms](https://jaredrhodes.com/blog/creating-a-common-loading-page-for-xamarin-forms/index.md): Replace per-page loading spinners in Xamarin Forms with a single base page that wraps every child page using the ContentPropertyAttribute. - [Create Azure Function to process IoT Hub file upload](https://jaredrhodes.com/blog/create-azure-function-to-process-iot-hub-file-upload/index.md): Sync a large file off a device through Azure IoT Hub into blob storage, then merge it into an existing data set with a blob triggered Azure Function. - [Your app is currently in read-only mode because you have published a generated function.json](https://jaredrhodes.com/blog/your-app-is-currently-in-read-only-mode-because-you-have-published-a-generated-function-json/index.md): Clear the read-only mode warning on an Azure Function published from Visual Studio by deleting the generatedBy line from function.json. - [Spoke at Health Hack GT](https://jaredrhodes.com/blog/spoke-at-health-hack-gt/index.md): Recap of speaking on Virtual Reality and IoT at the Georgia Tech Health Hackathon, with a link to the talk video. - [Mentoring at HackGT's Health Hackathon](https://jaredrhodes.com/blog/mentoring-at-hackgts-health-hackathon/index.md): This Friday and Saturday I will be mentoring at HackGT's Health Hackathon. I've been looking to put together a larger medical focused hackathon in the Atlanta area. - [Big IoT week in Atlanta](https://jaredrhodes.com/blog/big-iot-week-in-atlanta/index.md): Roundup of four Atlanta IoT events in one week: an Atlanta IoT meetup, a Microsoft Cloud IoT Hack, a Georgia Tech workshop, and an IoT.ATL meeting. - [CodeMash 2018](https://jaredrhodes.com/blog/codemash-2018/index.md): Speaking announcement for CodeMash 2018, presenting Configure, Control, and Manage IoT with Mobile using Xamarin Forms and household devices. - [New Blog Site](https://jaredrhodes.com/blog/first-blog-post/index.md): I decided to move my blog to a hosted provider and actually pay for it. This makes it so much easier. The content will still be focused around Cloud, Mobile,... ## Series - [AI on the Edge series](https://jaredrhodes.com/series/ai-on-the-edge/print/): This series builds the AI on the Edge demo system: cloud-governed, locally executed AI using a .NET gateway, policy-driven model routing, private RAG, camera fleet telemetry, Azure Arc operations, and... - [Westworld of Warcraft series](https://jaredrhodes.com/series/westworld-of-warcraft/print/): This series builds Westworld of Warcraft: a private World of Warcraft server populated by AI-driven characters that quest, group, raid, trade, and talk. It covers the injection and protocol runtimes,... ## Projects - [Westworld of Warcraft](https://jaredrhodes.com/projects/westworld-of-warcraft/): A private World of Warcraft server populated by AI-driven characters that quest, group, raid, trade, and talk - the origin, the goals, and the blog series covering how it is built. - [Private Cloud Tenstorrent Multi-Cloud Edge Lab](https://jaredrhodes.com/projects/private-cloud-tenstorrent-multi-cloud-edge-lab/): Basement private cloud lab using Tenstorrent and NVIDIA for reusable Azure, AWS, and local edge demos. - [AI on the Edge](https://jaredrhodes.com/projects/ai-on-the-edge/): Cloud-governed, locally executed AI demo system for local inference, private RAG, IoT operations assistance, Azure governance, and accelerator-backed edge workloads. ## Pages - [About](https://jaredrhodes.com/about/): Jared Rhodes - Microsoft Azure MVP and software architect building edge and hybrid cloud demos across Azure, AWS, and local infrastructure. - [Archive](https://jaredrhodes.com/archive/): Every published post since 2017, newest first. - [Now](https://jaredrhodes.com/now/): What Jared Rhodes is building, speaking on, and reading this quarter. - [Community](https://jaredrhodes.com/community/): Atlanta-area .NET, Azure, and hardware meetup groups worth following. - [Speaking Events](https://jaredrhodes.com/upcoming-events/): Every conference and community event where Jared Rhodes is booked or has spoken, from Sessionize. - [Subscribe](https://jaredrhodes.com/feeds/): Feed URLs for the whole blog and for each series. - [Search](https://jaredrhodes.com/search/): Search every published post, project, and session on the site. - [Privacy](https://jaredrhodes.com/privacy/): How this site handles cookies, analytics, embeds, and media. ## Feeds - [RSS 2.0 feed](https://jaredrhodes.com/rss.xml) - the standard RSS format. - [Atom feed](https://jaredrhodes.com/feed.xml) - an alternative format supported by most feed readers. - [AI on the Edge series feed](https://jaredrhodes.com/feeds/ai-on-the-edge.xml) - just the posts in that series. - [Westworld of Warcraft series feed](https://jaredrhodes.com/feeds/westworld-of-warcraft.xml) - just the posts in that series. ## Talks Current conference and community sessions from Jared Rhodes: - [AI Ready with Microsoft Fabric](https://jaredrhodes.com/talks/ai-ready-with-microsoft-fabric/): Managing data across large organizations can feel like an endless game of catch-up. Microsoft Fabric makes it easier by giving teams tools to organize, protect, and share data without constant... - [AI on the Edge](https://jaredrhodes.com/talks/ai-on-the-edge/): Edge AI is not a new phenomenon. This session will show how models for video, audio, and sensor data run on devices close to where data is created. The result... - [Azure for the Enterprise - Getting Started](https://jaredrhodes.com/talks/azure-for-the-enterprise-getting-started/): After signing the Enterprise agreement with Microsoft, it's time to start onboarding your first team to your Azure environment. How do you setup networking? How do you manage access controls?... - [Beyond REST: .NET Apps That Talk to Hardware](https://jaredrhodes.com/talks/beyond-rest-dotnet-apps-that-talk-to-hardware/): Most app demos stop at REST APIs. This live demo talks to real hardware. I'll show a .NET app that discovers a device over BLE, exchanges data over NFC or... - [Building AI Agents with Microsoft Foundry](https://jaredrhodes.com/talks/building-ai-agents-with-microsoft-foundry/): Microsoft Foundry is Microsoft's assembly line for agents-model registry, eval, and deployment under one roof. First, we'll map the pain of stitching models, data, and CI/CD by hand. Next, we'll... - [Connecting Devices, Data, and Decisions](https://jaredrhodes.com/talks/connecting-devices-data-and-decisions/): Many organizations struggle to manage IoT sensor data and convert it into actionable insights. Disconnected approaches often waste time and overlook critical trends. Microsoft Fabric addresses these challenges by unifying... - [Microsoft Agent Framework in .NET](https://jaredrhodes.com/talks/microsoft-agent-framework-in-dotnet/): Adding AI agents to a .NET app gets complicated once you move beyond basic prompts. Tool calling, state, and orchestration introduce real design challenges. Microsoft Agent Framework gives .NET developers... - [More Software, Different Work](https://jaredrhodes.com/talks/more-software-different-work/): Generative AI and coding agents are lowering the cost of producing software, giving organizations the ability to build more products, automate more work, and pursue ideas that were previously too... - [Private AI - Home Lab on a budget](https://jaredrhodes.com/talks/private-ai-home-lab-on-a-budget/): Ever wanted to run your own private cloud but thought it was out of reach due to cost? Think again! In this session, we'll show you how to build a... - [Simplifying IoT with Azure IoT Operations](https://jaredrhodes.com/talks/simplifying-iot-with-azure-iot-operations/): Managing IoT devices across diverse environments presents challenges such as fragmented data, manual updates, and maintaining high availability. We'll start by exploring the complexities of IoT device management, including data...