Note: this article has been translated by an AI; original is in French Introduction I have always been fascinated by AlphaGo, then AlphaZero, and this concept of reinforcement learning. A machine that plays against itself, learns on its own, and reaches superhuman levels. There is something magical there that goes beyond mere technical prowess. When in 2016, AlphaGo defeated Lee Sedol, one of the greatest Go players of all time, it wasn’t simply a technological victory.| Unladen swallow - Olivier Wulveryck
Since its announcement a couple of months ago, the Model Context Protocol (MCP) has gained significant attention. Initially, MCP served as a straightforward mechanism, essentially a plugin system, to grant Large Language Models (LLMs) the ability to interact seamlessly with their environment, thus enhancing AI assistants and agents. Applying Wardley’s theory to trace the protocol’s evolution, I’d argue that MCP has progressed beyond Stage I (labeled genesis in the image), establishing a...| Unladen swallow - Olivier Wulveryck
This exploration of the Model Context Protocol (MCP) is presented in three distinct parts: Part I, the current article, introduces the foundational concepts of MCP. Part II will delve into a specific implementation, demonstrating a custom host leveraging Google’s VertexAI API and the Gemini model. Part III will showcase a practical custom server implementation tailored for a particular use case. The parts are linked, but loosely coupled: you can read them separately. About Agentic Systems B...| Unladen swallow - Olivier Wulveryck
In the first part of this series, I explored some concepts and convictions regarding agentivity in AI and the potential of tooling to enhance agents. The final words were about the host (the application) running LLM-powered assistants (Claude, ChatGPT, …). These applications will represent the true battleground. The companies that gain a monopoly on assistant systems will govern tomorrow’s digital business. This is one reason why, for my experimentation, I do not want to rely on an existi...| Unladen swallow - Olivier Wulveryck
This final article in a three-part series explores decoupling tools from the host using the Model Context Protocol (MCP) for flexibility and reusability. The author builds an MCP-based tool in Go to execute SQL queries via DuckDB, enabling seamless chatbot interaction while preserving privacy. The implementation covers JSON-RPC handling, tool encapsulation, and integration. The project validates MCP’s effectiveness, with future plans to replace VertexAI with Ollama and add multi-session sup...| Unladen swallow - Olivier Wulveryck
In today’s hyper-competitive world, businesses no longer rely solely on gut decisions or intuition; they depend on data-driven insights to stay agile and make fast, smart decisions. However, data alone isn’t the answer; it’s the enabler to create momentum on a business & technology flywheel: a model where data drives decisions, decisions drive actions, and those actions drive value, propelling the business forward in a self-reinforcing cycle. In a previous post, I used a model to explai...| Unladen swallow - Olivier Wulveryck
Context In a recent meetup I organized in my hometown of Lille, I had the pleasure of hosting Jean-Georges Perrin, who provided a comprehensive introduction to data contracts. As a geek, I felt compelled to test this concept to fully grasp its practical implications. The goal of this article is to demonstrate how data contracts can be applied to and add value within a small ecosystem facing cross-domain challenges. To illustrate, I will use my personal experience in the fields I work in, whic...| Unladen swallow - Olivier Wulveryck
In this article, I delve into the concept of RAG, aiming to write a RAG nearly from scratch to view it as a pure engineering problem. Learning by doing from scratch will help me eventually discover a kind of exaptation that can guide my decisions as an engineer and clarify any points of confusion I have in understanding the system. I used information from an article in Go because I am fluent in that language. I will write a step-by-step method to create a simple (though not efficient or effec...| blog.owulveryck.info
Using Simon Wardley’s evolution model, I propose a framework for visualizing the maturity of data within a business context, emphasizing the importance of treating data as a product and implementing data contracts to facilitate integration and ensure trust. Ultimately, I suggest that starting with a focus on data-as-a-product is crucial for organizations embarking on their data mesh journey, paving the way for a comprehensive and agile transformation.| Unladen swallow - Olivier Wulveryck
Discover how I transformed my reMarkable tablet into a portable whiteboard 📒✨, accessible from anywhere via a secure WireGuard VPN (tailscale) and cloud-based reverse proxy setup. From the comforts of WFH to the dynamic world of mobility, learn the tech behind the solution.| blog.owulveryck.info
This article explores the transition from a WebSocket-based implementation to a simpler, more direct stream over HTTP in the context of capturing touch screen inputs on Linux. It begins by introducing the main theme, encapsulated in the statement Everything is a file is a stream of byte. The need to capture finger positions on a touchscreen by reading /dev/input/events in Linux is initially discussed, followed by a dilemma of transferring this data to a JavaScript client in a browser. Initial...| blog.owulveryck.info
Exploring the innovative concept of Data-as-a-product This article is about the transformation of data into a strategic asset within organizations. It outlines the pivotal role of data in decision-making, emphasizing the importance of Business Intelligence (BI) in the digital landscape. The article distinguishes between digital products and data products, highlighting how data-as-a-product enhances data management and supports data products in analytical and operational systems. Central to th...| blog.owulveryck.info
The article delves into the evolving platform economy where digital platforms, such as ChatGPT powered by Large Language Models (LLMs), serve as intermediaries connecting stakeholders. These platforms, unlike traditional pipelines, leverage digital technology to create value through mass personalized interactions. Using a hypothetical use-case, the article demonstrates how ChatGPT can be an intuitive personal assistant, bridging users with various service providers. However, with the rise of ...| blog.owulveryck.info
I am Olivier Wulveryck and this is my personal blog.| blog.owulveryck.info
In the digital age, traditional PowerPoint presentations often fail to engage audiences due to their static nature. Research suggests that audience attention dwindles after just 10 minutes without engagement. The proposed method in this article aims to revitalize presentations by Incorporating live doodling with the assistance of tools like the reMarkable tablet for real-time interaction. Using a script to create PDFs from images, blending the familiar structure of slides with spontaneous on-...| blog.owulveryck.info
In this article, I expose the new version of the streaming tool for my reMarkable tablet. Originally crafted in 2021, this tool allowed me to stream sketches during video calls. Aiming for more user-friendliness, I revamped the design to a clientless implementation. This articles describes the implementation with some code illustrations in Javascript and Go on how to get the picture and to display it in a canvas optimize the flow by playing with uint4 and RLE| blog.owulveryck.info
Introduction C4 (Context, Containers, Components, and Code) is a powerful and flexible approach to visualizing software architectures. In a previous article I explained how I created a DSL to describe my C4 as data thanks to the CUE language. On Wardley’s evolution axis the initial article was in stage I of evolution: making it work In this article, in a first part, we’ll explore how I effectively use the C4 tool based on CUE to organize my code, handle tags, manage versioning, and integr...| blog.owulveryck.info
This article provides an overview of the Wardley Mapping methodology, which is a strategic planning tool that helps organizations to understand and visualize the evolution of their products, services, and technologies. The article cover key concepts such as the construction of a Wardley Map, the placement of components on the evolutionary axis, the application of climatic patterns, and the decision-making process. The methodology is based on the principles of evolution and economics, and help...| blog.owulveryck.info
This article describes how I use the wardleyToGo SDK to create a plugin in Go for ChatGPT (to display Wardley Maps)| blog.owulveryck.info
wardleyToGo is a library and a language to describe Wardley Maps as code/data. This is the rationale behind this library| blog.owulveryck.info