Bio, best work on Medium and extended online portfolio

Hey there, welcome to my Medium profile! My name is Ahmed. This blog is a place where I learn and share articles about machine learning, software, and programming tips.

Hey there!

A short bio 📖

In a few words

I’m currently a machine learning engineer at a French scale-up and I’ve previously worked as a data…

Quick sanity checks before hitting the production road

Photo by Arie Wubben on Unsplash

Being part of a company that values scalability, I daily see, as a data scientist, the challenges that come with putting AI-based solutions in production.

These challenges are numerous and cover a variety of aspects: modeling and system design, data engineering, resource management, SLA, etc.

I don’t pretend mastery in…

Stop the manual work, reuse project templates instead

Photo by Lenin Estrada on Unsplash

Here’s a situation a lot of data scientists are familiar with.

Every time you start a new project, you reuse the structure of older projects. You go through their folders and copy-paste them, you remove the unnecessary files, you rename the remaining ones with your new project’s specifics, and you…

Improving your apps goes with controlling their data quality

Image by the author — made on

In one of my previous posts, I looked at dataclasses as a way of writing python classes that act as data containers.

I found the dataclasses project amazing: it implements a lot of nifty methods under the hood to prevent you from writing boilerplate code, it provides a concise and…

Keep your settings and credentials private with .env files

Image made by the author

As a data scientist, I daily use Python to build applications that rely on credentials and sensitive settings.

Here are some examples of those, off the top of my head:

  • API keys to access third-party services
  • Passwords and credentials
  • Email addresses or personal data (name, age, social security number, etc.)

A quick guide to using cachetools

Picture of Anton Makarenko from Pexels

A few weeks ago, I started looking into optimizing my code. I learned about common anti-patterns and worst practices, looked at how memory was allocated when Python objects are created and finally understood concepts such as multithreading and multiprocessing as well as the difference between the two.

Today, I’ll tell…

Combine TQDM with multiprocessing

Photo by Marc-Olivier Jodoin on Unsplash

Python is a great programming language. It’s a swiss knife that’s used in multiple areas: analyzing and visualizing data, training machine learning models, building APIs, scraping websites, DevOps, MLOps, and obviously, much more things.

The versatility of this language, among other things, comes however with a cost: Python is slow

Improve displaying dataframes with the best JavaScript data grid

Photo de MART PRODUCTION provenant de Pexels

I use Streamlit a lot.

It’s a great library to quickly prototype visually appealing web applications that interact with data and machine learning models in a fun way.
As a data scientist, I find Streamlit extremely helpful to share experiments with other team members.

What makes Streamlit even better, besides being a world-class product, is…

Ahmed Besbes

🇫🇷 🇹🇳 Machine Learning engineer with a taste for software and automation | Creative problem solver | Subscribe @

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store