"Containerization is the new virtualization." - James Turnbull
Greetings data delvers! In part eight of this series we deployed our first multi-service system. In this part, we examine more deeply how we are deploying our services with Docker and look for opportunities to make our deployment more optimized and secure.
"The first rule of any technology used in a business is that automation applied to an efficient operation will magnify the efficiency. The second is that automation applied to an inefficient operation will magnify the inefficiency." - Bill Gates
"What are the biggest challenges you've faced when integrating AI into your work?"
Greetings data delvers! I had the opportunity to serve on a multi-disciplinary panel recently where I was asked that very question. At the time, my answer focused on immediate challenges with data quality and access to tooling. While those are legitimate concerns, the question has stuck with me for the past few weeks as requiring a deeper answer. As I've been thinking more about it, I've developed a more nuanced view which I'd like to capture here. Hopefully, it may be of use if you are looking to adopt more AI into your workflows!
Hello data delvers! I recently had the opportunity to give a guest lecture at my Alma Mater to students about the differences between practicing data science in academia vs industry. It was a lively discussion and I wanted to capture some of my thoughts as I think they could be particularly useful to individuals transitioning from an academic setting to an industrial one. The objectives, methods of working, and ultimately what determines your success are vastly different in academia compared to industry. To illustrate this here is an example of a conversation I had early in my career:
Hello data delvers! I recently revisited my Raspberry Pi after a long hiatus. As part of this I made sure to update all the packages and OS to the latest version. If you've read my previous Raspberry Pi delve, you'll know that being able to make applications full screen isn't as straightforward as it should be. Much to my surprise, after updating everything my fullscreen keyboard shortcut broke!
After spending some time internet sleuthing I'd like to share what the fix is with you all!
"Only a small fraction of real-world ML systems is composed of the ML code... The required surrounding infrastructure is vast and complex." - Hidden Technical Debt in Machine Learning Systems, Sculley et al.
Greetings data delvers! In part seven of this series we finally deployed a model! For this part we'll examine how to utilize our model as part of a larger microservice ecosystem!
Hello data delvers! I recently successfully wrapped up a journey to find a new job! Along the way, I had the opportunity to interview at several different companies, experience many different styles of interviews, and explore different types of roles. For this delve, I intend to distill some thoughts about this process and share some lessons learned in the hopes they may be useful to others either looking to break into this field or find their next opportunity within it. If that sounds of interest stick around!
Hello data delvers! In part six of this series we containerized our application, making it portable and easy to deploy. For this part we will take a step back. Introduce machine learning (finally!), and explore how we can begin to incorporate machine learning models into our microservice ecosystem!
"This containers revolution is changing the basic act of software consumption. It’s redefining this much more lightweight, portable unit, or atom, that is much easier to manage… It’s a gateway to dynamic management and dynamic systems." - Craig McLuckie
Hello data delvers! In part five of this series we added automated tests to our application to make it easier to catch bugs. In this part we'll cover packaging and deploying the app!
Hello data delvers! In part four of this series we refactored our application to include a configuration file to make it easy to switch configuration values per development environment. In this part we'll cover a critical element to building scalable systems: Testing.
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: