Skip to content

DataDelver

Exploring the labyrinth of Data Science, Machine Learning, and MLOps one delve at a time.

Delve 10: Let's Build a Modern ML Microservice Application - Part 4, Configuration

Banner

"The measure of intelligence is the ability to change." - Albert Einstein

ML Microservices, The Great Env-scape

Hello data delvers! In part three of this series we refactored our application into three separate layers, allowing us to better separate concerns within our codebase. However, if we examine certain parts of our code we can still observe some brittleness:

Delve 9: Migrating from Jekyll to Material for MkDocs

Banner

"Good tools make good work." - Unknown

From one Static Site to Another

Greetings data delvers! The sharper-eyed among you may have noticed that the website looks a little bit different now. No you aren't seeing things. I recently completely changed the backend of the site from Jekyll to Material for MkDocs. The process was overall pretty smooth but had some hiccups which I think are worth documenting. However, before we get into that, why the change in the first place?

Delve 7: Let's Build a Modern ML Microservice Application - Part 2, The Data Layer

Banner

"Data is not just the new oil, it's also the new soil." - David McCandless

ML Microservices, the Second

Hello data delvers! In part one of this series we left off creating a basic application that allowed us to search for a work by title in the Metropolitan Museum of Art's collection. We were able set up a basic project structure as well as the tooling we would need to get the project off the ground. In this second part, I'd like to focus on how we can reorganize our code to make it a bit easier to manage as the complexity of our application scales. However, to begin I'd like to take a slight detour and discussing debugging.

Delve 6: Let's Build a Modern ML Microservice Application - Part 1

Banner

"The beginning is the most important part of the work." - Plato

A New Year, A New Start

Hello data delvers! Happy New Year! I hope you all have been well! It's been some time since our last delve (sorry!) but I want to kick off 2025 with a new series of delves I've been wanting to do for some time, building out an ML application using modern microservices principles.

In this multi-part series we'll focus on the tools, techniques, and strategies I use to bring ML applications to life in a maintainable, scalable, and extendable way. If that sounds of interest to you, put on your delving gear and join me as we go deep into the depths of the labyrinth!

Delve 5: The Quest for a Full Screen Raspberry Pi Application

Banner

"All life is problem solving." - Karl Popper

Full Screen Applications on the Raspberry Pi, Why so Hard?

Hello data delvers! Apologies for the lack of updates, life has been busy! For today I have a quick delve on a frustrating problem I had to solve, longer delves are on the way!

Like I'm sure many of you, I greatly enjoy doing side projects on the Raspberry Pi mini computer. If you've read my previous delve, you'll know there are lots of fun utilities you can run on a linux machine. One such application I like to use my Raspberry Pi for is to stream music from web services such as Spotify to my television and then use an audio visualizer like those covered in my previous delve to provide a visual.

Delve 4: The ML Engineer, Coming to an Enterprise Near You

Banner

"Life is like riding a bicycle. To keep your balance, you must keep moving." - Albert Einstein

Who am I?

Hello data delvers! I hope your year is off to a good start! For this delve I wanted to cover a question that I get asked often, especially whenever I meet someone new, the dialog usually goes something like this:

Me: "Hi I'm Chase, nice to meet you!"

Other Person: "Hello Chase, it's nice to meet you too! I'm \<Insert Name Here>. I'm a \<Insert Profession Here>. What do you do for work?

Me: "Oh! I'm a machine learning engineer!"

Other Person: "Oh that's neat... What's a machine learning engineer?"

Delve 3: Fun Linux Utilities

Banner

"People rarely succeed unless they have fun in what they are doing" - Dale Carnegie

*nix the Workhorse of MLOps

Welcome to 2024 data delvers! I hope you had a wonderful holiday season! As we enter into the new year I'd like wanted to take some time to talk about things that make my day to day as a developer fun! As I hope to get into in future delves, for many reasons I prefer a nix (Unix or Linux) based environment for doing development. Many people use MacOS as their nix environment of choice, however my preferred method of achieving this in recent years has been the Windows Subsystem for Linux (WSL). It is super easy to set up on any modern windows machine, integrates very nicely with my IDE of choice, Visual Studio Code, and avoids many of the dangers associated with partitioning your hard drive to dual-boot your machine with multiple operating systems. As a bonus, when working with cloud providers you are almost always deploying your model on a Linux server, so mirroring that same environment on your dev machine makes everything that much smoother.

Banner

"If I have seen further than others, it is by standing upon the shoulders of giants." - Isaac Newton

My Go To List of Machine Learning & Data Science Resources

I have often been asked what resources I recommend for those looking to get into machine learning, whether you want to be a data scientist or ml engineer. In this delve I'll cover my go to list of resources I continue to rely on whenever I need to refresh my own knowledge or delve deeper into a specific subject matter.

Delve 1: The (Hidden) Danger of Notebooks in Production

Banner

"Coming together is a beginning. Keeping together is progress. Working together is success." - Henry Ford

When Good Intentions go Awry

At many points in my career I have come across the topic of deploying code related to machine learning models in the form of Jupyter Notebooks. Often, the push towards this idea comes from a place of good intentions, of speeding up the the model deployment process or enabling better access to and understanding of the production environment by data scientists. However, despite the good intentions, this approach has in my experience created an environment of quite negative effect for the engineering teams asked to maintain these systems. In this delve, I will share my own personal experiences on working with notebooks in production systems, some of the ways I have observed them creating unnecessary friction between data scientists and ML engineers, and reflect how I think notebooks can be used as part of a healthy production system.