Mathieu Goeminne
Mathieu Goeminne
@mgoeminne.bsky.social
Data architect
Intéressés par la gestion de la concurrence et du parallélisme à grande échelle? Je vous propose de découvrir le modèle d'acteur, une approche alternative au verrouillage des ressources partagées.
Un système d’acteurs pour le traitement distribué
Introduction Une grande variété de systèmes informatiques actuels, du composant embarqué au serveur dans un data center, en passant par le smartphone et l'ordinateur portable, sont conçus pour l'exécution parallèle de tâches concurrentes: plusieurs programmes s'exécutent simultanément, sur une architecture à plusieurs processeurs. Les programmes eux-mêmes organisent leurs exécutions en processus, threads, et autres abstractions, ce qui permet une division fine en tâches pouvant s'exécuter de manière concurrente.
mgoeminne.com
December 13, 2025 at 11:12 AM
Reposted by Mathieu Goeminne
Scala Days 2025 is a wrap! 🎉 Conference highlights and talk recordings are here!

🏔️ Lausanne was buzzing with talks, workshops, and community energy.

▶️ All recordings are now live on YouTube

👁️ Read more: scala-lang.org/blog/...
November 26, 2025 at 2:01 PM
Reposted by Mathieu Goeminne
Scala 2.13.17 is here! It improves compatibility with JDK 25 LTS, supports Scala 3.7, improves Scala 3 compatibility and migration, and more.

It also has a few minor potentially breaking changes.

For details, refer to the release notes on GitHub: github.com/scala/scala...
Release Scala 2.13.17 · scala/scala
The Scala team at Akka is pleased to announce Scala 2.13.17. This release is compatible with the new JDK 25 LTS. The following are highlights of this release: Compatibility JDK 25 support in optim...
github.com
October 7, 2025 at 2:22 AM
Un élément innovant de l'algorithme Gorilla est la manière dont les séries temporelles y sont encodées. Elle permet une très bonne compression des données sans perte. Dans cet article, j'en présente les principales caractéristiques.
Gorilla : un encodage efficace des séries temporelles
Un élément innovant de l'algorithme d'encodage Gorilla est la manière dont les séries temporelles y sont encodées. Elle permet une très bonne compression des données sans perte, ce qui réduit l’espace disque utilisé ainsi que le temps et les ressources nécessaires à son traitement. Un article scientifique décrit l'approche suivie en détail, je n’en exposerai ici que les caractéristiques qui me semblent les plus intéressantes.
mgoeminne.com
October 4, 2025 at 12:03 PM
Reposted by Mathieu Goeminne
🏖️🐻 Les Logiciels Libres de l'été, jour 65

OpenObserve : une alternative Open Source à Splunk ou Datadog.
August 24, 2025 at 6:24 PM
Panne de courant à Plopsa Coo. Toutes l3mes attractions à l'arrêt. Pensée pour ceux bloqués dedans (chenille, ...)
August 23, 2025 at 1:16 PM
Reposted by Mathieu Goeminne
🏗️ The Scala Days "Domain Driven Design in Scala 3" workshop with David Gil Méndez showed how to go from PoC to MVP in hours using Scala-CLI and DDD libraries.

🚀 Attendees built full-stack apps and learned how Scala 3 makes complex domains safer and more expressive.
August 18, 2025 at 3:45 PM
Quelques réflexions sur une approche pour détecter des traces GPS similaires et récupérer les traces historiques semblables à une trace quelconque.
Recherche de traces GPS similaires
Introduction Il y a quelques temps, sur LinkedIn, une question est apparue dans mon fil de discussion : comment géreriez-vous la recherche de similarité de parcours réalisés par des véhicules et enregistrés sous la forme de traces GPS? L'auteur insistait sur le besoin d'un algorithme et d'une structure de données efficaces, pour d'une part être robuste aux erreurs de coordonnées propres aux traces GPS, et d'autre part pour gérer un nombre potentiellement élevé de points.
mgoeminne.com
July 24, 2025 at 4:01 AM
Découvrez une méthode permettant de calculer le hachage de grandes collections d'objets, en ignorant leur ordre, sans nécessiter une grande quantité de mémoire et sans devoir attendre d'avoir obtenu la collection entière avant de commencer le traitement.
Hachage d’une collection d’objets qui ne tient pas compte de l’ordre
Découvrez une méthode permettant de calculer le hachage de grandes collections d'objets, en ignorant leur ordre, sans nécessiter une grande quantité de mémoire et sans devoir attendre d'avoir obtenu la collection entière avant de commencer le traitement.
mgoeminne.com
June 11, 2025 at 6:29 AM
Savez-vous ce qu'est un front de Pareto? Découvrez la propriété des éléments qui le constituent, et ce que son utilisation peut vous apporter.
Le front de Pareto pour la recherche d’éléments dominants
Savez-vous ce qu'est un front de Pareto? Découvrez la propriété des éléments qui le constituent, et ce que son utilisation peut vous apporter.
mgoeminne.com
May 8, 2025 at 5:03 PM
Exceptions: la voie à suivre ou un cul-de-sac?

Cet article discute des défis liés à l'utilisation des exceptions dans la programmation, notamment leur sémantique, leur complexité et leur coût en ressources. Il propose des alternatives, comme les types Option, Either et Try en Scala, qui favorisent…
Exceptions: la voie à suivre ou un cul-de-sac?
Cet article discute des défis liés à l'utilisation des exceptions dans la programmation, notamment leur sémantique, leur complexité et leur coût en ressources. Il propose des alternatives, comme les types Option, Either et Try en Scala, qui favorisent une gestion fonctionnelle des erreurs, rendant ainsi le code plus clair et la gestion des erreurs plus explicite.
mgoeminne.com
May 2, 2025 at 1:10 PM
TIL: la spécification de Yaml est telle que la représentation de la Norvège par son code à deux lettres doit être interprétée comme le booléen Faux. www.bram.us/2022/01/11/y...
YAML: The Norway Problem
Earlier this week, Haroen Viaene posted this tweet about YAML: worst part of yaml: https://yaml.org/type/bool.html — Haroen Viaene (@haroenv) January 10, 2022 The linked-to page contains the documenta...
www.bram.us
April 23, 2025 at 12:51 AM
Vous connaissez probablement le design pattern Builder, qui facilite la création d'objets en la décrivant par petites touches. Mais comment assurer systématiquement qu'une description est complète et correcte?

Découvrez-le avec cet article consacré au type-safe builder.
Type-safe builder pattern
Introduction En programmation orientée objet, la création d'objets est parfois laborieuse: elle peut être le résultat de la prise en compte de nombreux paramètres, de configurations contextuelles et d'un processus de construction parfois tordu. Une première étape consiste à internaliser la création de l'objet : plutôt que de laisser le code client se dépatouiller avec la construction, on place toute la logique afférente au sein d'une méthode généralement (bien) nommée…
mgoeminne.com
April 15, 2025 at 3:14 AM
Premiers pas avec #flutter sous #intellij. Très agréable surprise: l'IDE affiche les icônes mentionnées dans le code source, ce qui est très pratique, même si le hot reload évite de perdre beaucoup de temps.
April 2, 2025 at 4:49 PM
Il vous est peut-être déjà arrivé d'avoir à créer un système de licence logicielle simple, efficace, et nécessitant peu voir pas d'infrastructure pour assurer son fonctionnement. Une solution largement utilisée par les applications Web vous aider dans cette tâche.
Un système de vérification de licence logicielle simple et efficace
Il vous est peut-être déjà arrivé d'avoir à créer un système de licence logicielle simple, efficace, et nécessitant peu voir pas d'infrastructure pour assurer son fonctionnement. Une solution largement utilisée par les applications Web vous aider dans cette tâche.
mgoeminne.com
March 20, 2025 at 9:31 AM
Dans tout projet logiciel ayant un minimum d'envergure, la gestion de la configuration est un besoin récurrent. Dans ce domaine, HOCON est un autre format de configuration qui a plus d'un tour dans son sac!
HOCON : une alternative élégante à JSON et YAML
Dans tout projet logiciel ayant un minimum d'envergure, la gestion de la configuration est un besoin récurrent. Dans ce domaine, HOCON est un autre format de configuration qui a plus d'un tour dans son sac!
mgoeminne.com
March 11, 2025 at 5:38 AM
Treize vertus prônées par Benjamin Franklin

1. Tempérance
2. Silence
3. Ordre
4. Résolution
5. Économie
6. Industrie
7. Sincérité
8. Justice
9. Modération
10. Propreté
11. Tranquillité
12. Chasteté
13. Humilité
March 2, 2025 at 10:18 PM
"All opinions hereinbelow are my own and not my employer's. They can only dream that they own them."-- @mandrikov.bsky.social at the jChampion Conferences
January 28, 2025 at 2:46 PM
@martinelli.ch also recalls us the first law of distributed object design by @martinfowler.com : Don't distribute your objects.
January 24, 2025 at 1:37 PM
"Microservice is neither about micro nor service" -- Simon Martinelli durant la jChampions Conference @martinelli.ch #java #microservice
January 24, 2025 at 1:36 PM
La jChampion conference vient de commencer. Si vous êtes intéressés par les évolutions de Java, c'est top, c'est gratuit et c'est ici: jchampionsconf.com
JChampions Conference
Conference organized by Java Champions and featuring Java Champions in the presentations.
jchampionsconf.com
January 23, 2025 at 3:21 PM
Reposted by Mathieu Goeminne
⚠️ Trigger warning : ce post contient des expressions régulières

Un moteur d'échecs en 84 688 expressions régulières

👉 nicholas.carlini.com...
January 8, 2025 at 11:30 AM
Capture de contexte avec le framework Play

Play est un framework de développement Web dit fullstack: il propose la gestion d'un site Web, aussi bien au niveau du backend que de celui du frontend. Dans cet article, je vous propose une technique, inspirée de ce qui est proposé par Pekko HTTP, afin…
Capture de contexte avec le framework Play
Play est un framework de développement Web dit fullstack: il propose la gestion d'un site Web, aussi bien au niveau du backend que de celui du frontend. Dans cet article, je vous propose une technique, inspirée de ce qui est proposé par Pekko HTTP, afin de capturer efficacement le contexte dans lequel le backend répond aux requêtes qu'il reçoit.
mgoeminne.com
January 2, 2025 at 8:40 AM
Un système simple et efficace de sélecteurs en Scala

Cet article aborde la gestion de comportements variés en programmation, en mettant en avant la notion de "sélecteurs", représentés par des classes en programmation orientée objet. Ces sélecteurs choisissent la méthode d'approche en fonction des…
Un système simple et efficace de sélecteurs en Scala
Cet article aborde la gestion de comportements variés en programmation, en mettant en avant la notion de "sélecteurs", représentés par des classes en programmation orientée objet. Ces sélecteurs choisissent la méthode d'approche en fonction des contextes d'exécution. Une approche fonctionnelle est proposée pour simplifier cette gestion et éviter les duplications d'efforts, en privilégiant la combinaison et l'évaluation des sélecteurs.
mgoeminne.com
December 26, 2024 at 7:22 AM
Reposted by Mathieu Goeminne
The Universe doesn't care.
December 23, 2024 at 4:33 PM