top of page
  • Writer's pictureBy Alexander Batenhorst

• Tech • SDK

Introduction

Looking back at the late '90s, I remember when computer networking was just starting out. I built my first network with two separate ethernet cables connected to a hub, allowing two computers to share a connection to the Internet. At that time, connecting multiple computers in a house was a big challenge. It would be years before routers and WiFi, which we use so easily today, became common. I recall using a big grey box with slots for four ethernet cables. In the center was a red light, and on the sides were two green lights.


These green lights showed active connections, while the red one lit up when data packets bumped into each other—inefficiency. Before we had routers, we used hubs. But there was a downside. Every time you added a computer to the hub, the speed was cut in half. It wasn't efficient, but that's how early technology often is. Today's AI might be like those old hubs. In a few years, we might look back and see how much we've improved, just like we did with computer networking.


Historical Context


The inception of artificial intelligence traces back to the 1950s. It was a period marked by foundational theories, early algorithms, and the pioneering spirit of AI researchers. Fast forward to the 90s, and the AI landscape started shifting with the popularization of machine learning techniques and the growth of computational power.


In our present era, tools and models like GPT-3 and GPT-4 represent the culmination of decades of research, refined algorithms, and vast data access. Their capabilities are a testament to the continuous innovation in the field. The current trajectory of AI's development suggests an exciting future. Considering its rapid evolution, we can only speculate about the transformative potential AI holds for our society in the coming years.


Ethics in AI: What We Need to Know


With all the cool things AI can do, there are challenges too. One big topic is ethics. When we use AI, we need to think about fairness, safety, and privacy (and copyrighting). For instance, if an AI system makes a decision, how do we know it's a fair one? These are questions experts are looking into. But AI has progressed to the point where, if you opt to use Microsoft's AI service, you will have the benefit of legal protection from their team in case of copyright infringement lawsuits.


Another concern is data. AI learns from data, and sometimes that data can have mistakes or biases. This means AI might also pick up those biases. As more people use and rely on AI, it's super important to ensure AI behaves in ways that are good for everyone. Lastly, as AI becomes a regular part of our world, it will impact jobs, daily life, and more. It's crucial to think about and plan for these changes. Whether it's training people for new jobs or setting up rules for how AI should work, preparing now will make the future smoother for everyone.


Conclusion


From basic computer networking to cutting-edge AI, our tech journey showcases human creativity at its best. As we marvel at AI's potential, we must also consider its ethical challenges. The Omaha Azure meetup highlighted AI's promise, but it's a reminder that we all play a part in shaping its future. As we move forward, thoughtful engagement and planning are key. It's not just about innovation; it's about ensuring a positive legacy for tomorrow.


And I want to be completely transparent: I can confirm that I utilized AI in crafting this blog post.


Sources:

Gajre, S. (2023). Presentation at the Omaha Azure Group, October 18.

Gujral, V. (2023). Azure OpenAI Service. Presentation at the Heartland Developer's Conference, October

24.


  • Writer's pictureBy Alexander Batenhorst

Updated: Oct 3

• SDK

Azure DevOps: A Game Changer for Software Development


Azure DevOps is a topic that I find relevant for anyone who works in software development. It is a set of cloud-based services that help you plan, develop, test, deploy, and monitor your applications. It supports any language, platform, and cloud, and integrates with GitHub and other popular tools.


How Azure DevOps Benefits Your Organization


Azure DevOps is a cloud-based platform that offers a set of tools and services for software development, collaboration, and delivery. It is designed to support various agile methodologies, such as Scrum, Kanban, and Scrumban. Azure DevOps can help your organization achieve technical, cultural, and business benefits, as I learned from a presentation by Owen (Omaha .Net meetup, September 28, 2023). I started my journey in software development with GitHub and Azure DevOps. I can’t imagine a world without these tools and the ones I mention later.


Technical Benefits


One of the features that I appreciate the most in Azure DevOps is the code review tool. As a software developer, I have used different tools for code review, but none of them compares to Azure DevOps. The code review tool in Azure DevOps allows me to collaborate with my peers, get feedback, and improve my code quality. It also integrates seamlessly with other Azure DevOps services, such as Azure Repos, Azure Pipelines, and Azure Artifacts. These services provide me with a comprehensive solution for code hosting, management, automation, and distribution. Azure DevOps also helps me ensure the quality and performance of my software, by using Azure Test Plans and Azure Monitor.


Cultural Benefits


One of the benefits of using Azure DevOps is that it creates a culture of taking chances. You can submit a pull request and have your code reviewed and confirmed before merging. This way, you can experiment with new ideas and learn from your mistakes.


Another benefit is that Azure DevOps provides you with a variety of tools to manage your projects. You can use Azure Boards to plan and track your work, using different types of work items. You can also choose the agile process that suits your needs, such as Scrum, Kanban, or Scrumban. Azure Boards can help you see your work flow, prioritize your tasks, and monitor your progress.


A third benefit is that Azure DevOps enhances the communication and feedback within your team and with your stakeholders and customers. You can use features such as pull requests, code reviews, comments, notifications, and dashboards to share your work, get feedback, and collaborate with others. Azure DevOps can help you foster a culture of collaboration and transparency in your organization.


Business Benefits


As a software developer, you want to create awesome products that your customers love. But you also want to do it fast and efficiently, without compromising on quality or security. That's where Azure DevOps comes in. Azure DevOps is a cloud service that helps you plan, develop, test, and deploy your software projects. You can use it to manage your tasks, set your goals, and track your progress, using data-driven metrics.


You can also save money and time, by choosing the best payment option for your needs, whether it's per user, per job, or pay-as-you-go. And you can scale up or down, depending on your project size and complexity, with Azure DevOps' flexible and secure cloud platform. Azure DevOps is the ultimate tool for software development, and it's easy to use and integrate with your existing tools and workflows.


Conclusion


Azure DevOps is a powerful and versatile platform that can help you improve your software development process and deliver better products to your customers. It can provide you with technical, cultural, and business benefits, such as faster and more reliable software delivery, improved collaboration and transparency, and increased customer satisfaction and value. As Owen summarized, Azure DevOps is a “one-stop shop” that can make your development faster.


Sources:

  • Owen. (2023, September 28). Azure DevOps. Presentation at Omaha .Net meetup, Omaha, NE.

  • Simplilearn. (n.d.). Azure DevOps: The Next Big Thing in Application Lifecycle Management

  • Writer's pictureBy Alexander Batenhorst

• SDK • C#


Are you ready to take your IoT (Internet of Things) game to the next level? I know I am! After all, this is my first article related directly to my domain name—www.IoTAlex.com. In this blog post, we will review Azure IoT Hub, a cloud-based service that enables developers to connect, monitor, and manage IoT devices. We’ll discuss some of its features and share an example in VS Code—via a GitHub repository (link to repo coming soon). IoT Azure Hub provides a secure and scalable platform for IoT applications and services.


IoT, as a general description, is interconnection of physical devices, vacuum cleaners, buildings, and other objects embedded with sensors, software, and network connectivity that enable them to collect and exchange data. IoT is important for developers because it enables them to create new applications and services that can improve people’s lives.


During a presentation by Sudarsan at the Azure Omaha User Group, he gave a demo over message routing, checking the message logs in Azure IoT hub using VS Code, and using a device simulator (reading from the service). To paraphrase his description of IoT, in the context of Azure IoT Hub, is any two devices (anything) that can talk to each other connected online to a central hub.


Free is Good


Azure IoT Hub provides a free trial that can be set up on Microsoft’s Azure portal page. The trial offers end-to-end VPN encryption as the first option on setup and allows users to increase partitions and devices. It also provides five security policies.


In addition to this, Azure IoT Hub offers a device provisioning service that enables scalable and secure device enrollment. It provides flexible attestation and automatic device registrations. Provisions are provided in SDKs (i.e. ways to explore programming with Azure IoT Hub via SDKs), including SDKs for multiple programming languages, Azure IoT Explorer, Azure IoT Central, and Visual Studio code-based tools.


Communication Bridge


Azure IoT Hub acts as a communication bridge between IoT devices and the cloud. It offers three paths for data processing:

  • Hot path – real-time processing

  • Warm path – data processing but not real-time

  • Cold path – accumulates data over time

For example, in the case of a thermostat alerting the user that their thermostat is not connected, the warm path would be used—data processing. These are the three different data processing paths offered between the device and Azure IoT Hub.


One of the major features of Azure IoT Hub is message routing. It offers a lot of different use cases—for extraordinary needs. Since IoT devices are expected to shut down, there is a high probability of device sleeping. Then there is the issue of pervasive availability of affordable sensors. Which isn’t a true issue but rather floods the market with all sorts of choices/applications for IoT devices. All of which could be applied using Azure IoT Hub. Then there are advancements in connectivity and the rise of cloud computing, which greatly impacts the way we can use devices presently and in the future.


Conclusion


Azure IoT Hub is a powerful and versatile service that enables developers to connect, monitor, and manage IoT devices in the cloud. It offers various features and benefits, such as device provisioning, message routing, three types of data processing, and security policies. It also supports multiple SDKs and tools for different programming languages and platforms. Azure IoT Hub is a great choice for anyone who wants to build scalable and secure IoT applications and services—yet another SDK that’s free to explore. You can explore more resources on the official documentation. I hope you enjoyed this review and learned something new about Azure IoT Hub. Thank you for reading!


If you want to try Azure IoT Hub yourself, you can check out Sudarsan's repo as an example (link coming when available). You can also find more resources and tutorials on the official Azure IoT Hub website: https://azure.microsoft.com/en-us/products/iot-hub.


Sources as of 08/02/2023 Microsoft. (2021, July 14). What is Azure IoT Hub? [Web page]. Microsoft Docs. https://docs.microsoft.com/en-us/azure/iot-hub/about-iot-hub

Srinivasan, S. (2023, July 19). IoT Azure Hub [presentation]. Presented at the Azure Omaha User Group meetup in person at Concentra.

bottom of page