Using GitHub Actions to Manage Certbot (Let’s Encrypt) Certificates

GitHub Actions is an excellent source for all things automation. For personal accounts, there’s a limited free offering that allows you to run automation jobs. I use GH actions to update my websites. I don’t think I would have written this if no existing solution worked with GitHub Actions. But after a search, I did…

Azure Migrations - Part 4
Database Migration Assistant Assessment

Azure offers a lot of options for moving SQL databases from SQL Server to Azure. Knowing which choice is the best choice for your database can sometimes be challenging. Microsoft provides a tool, the Database Migration Assistant, that assesses your database to show you if it is compatible or not. And what changes you may…

ML & AI for Software Developers - Part 12
PCA-Based Anomaly Detection

Anomaly detection is a branch of machine learning that seeks to identify anomalies in datasets or data streams. Airbus uses it to predict failures in jet engines and detect anomalies in telemetry data beamed down from the International Space Station. Credit-card companies use it to detect credit-card fraud. The goal of anomaly detection is to…

ML & AI for Software Developers - Part 11
Principal Component Analysis

Principal Component Analysis, or PCA, is one of the minor miracles of machine learning. It’s a dimensionality-reduction technique that reduces the number of dimensions in a dataset without sacrificing a commensurate amount of information. While that might seem underwhelming on the face of it, it has profound implications for engineers and software developers working to…
Windows 11

Windows 11 — Initial Reactions and Thoughts

Windows 11 made a big splash with the announcement of the new version of the OS that was supposed to never have another version again. In any case, as part of the Windows Insider Program (WIP), I got my hands on the latest preview version of the OS, installed it, and poked around in it…

ML & AI for Software Developers - Part 9
Multiclass Classification

The three previous posts in this series introduced binary classification and provided working examples of its use, including sentiment analysis and spam filtering. Now it’s time to tackle multiclass classification, in which there are n possible outcomes rather than just two. A great example of multiclass classification is performing optical character recognition: examining a hand-written…

ML & AI for Software Developers - Part 8
Binary Classification: Spam Filtering

My previous post introduced a machine-learning model that used logistic regression to predict whether text input to it expresses positive or negative sentiment. We used the probability that the text expresses positive sentiment as a sentiment score, and saw that expressions such as “The long lines and poor customer service really turned me off” score…

ML & AI for Software Developers - Part 6
Binary Classification

The machine-learning model featured in my previous post was a regression model that predicted taxi fares based on distance traveled, the day of the week, and the time of day. Now it’s time to tackle classification models, which predict categorical outcomes such as what type of flower a set of measurements represent or whether a…

Azure Migrations - Part 3
App Services Migration Assistant Assessment Report

Azure App Services is a popular choice for migrating apps to Azure because it gets users out of the business of managing servers. But with App Services, some limitations might mean reconfiguring or refactoring an application. The Migration Assistant utility can provide a quick report that shows you things you need to consider before moving…

ML & AI for Software Developers - Part 5
Regression Modeling

When you build a machine-learning model, the first and most important decision you make is what learning algorithm to use to fit the model to the training data. In my previous post, I introduced some of the most widely used learning algorithms for regression models: linear regression, decision trees, random forests, gradient-boosting machines (GBMs), and…