Wednesday, September 25, 2024

AI: Minds in Motion - A Simple and Fun Visual Exploration of Human Influence

As I was driving to visit a friend, I started chatting with ChatGPT about a project that I've been thinking about for some time: How humans influence each other over time. What began as a simple idea soon turned into a full-fledged visual simulation—Minds in Motion.


Thanks to the power of AI, I was able to bring this concept to life in just 3 hours—from brainstorming the idea to coding, deploying, and even writing this post.

In Minds in Motion, each particle represents an individual, defined by its color and influence—either positive or negative.

- Positive influence: When a particle interacts with another, it blends its color with the other particle, representing a dynamic visual exchange.
- Negative influence: The particle darkens when interacting with a negatively charged particle, reflecting a less constructive influence.

Each particle moves randomly, creating real-time interactions that reflect the complexity of human relationships. It’s fascinating to watch these particles evolve, influence one another, and change as they "meet" in the digital space.

It’s more than just a visual—it's an exploration of how we, as humans, shape and are shaped by the connections we make. Watching these particles evolve is both mesmerizing and insightful, as it mirrors the subtle, but powerful, influence we experience in our own lives.

The best part? The entire project—from naming it, coding it, deploying it on GitHub Pages, and writing this post—was made possible with the help of AI, all in just a few hours!

🚀 Live project: https://minds-in-motion.scientific-visualization.org

🚀 Source code: https://github.com/favreau/MindsInMotion

Big thanks to AI for turning a passing thought on a car ride into a fully deployed project. The future is here, and it’s fast!

Sunday, September 22, 2024

A Philosophy Rooted in Pragmatism, Simplicity, Art and Performance

As a new chapter of my career is about to begin, it is time to reflect on a life-long passion for high-performance computing, pragmatism, and a constant wonder for innovation, beauty, and simplicity.

From a Child’s Dream to the Exploration of Advanced Scientific Fields

The journey into the world of technology began with a child's dream and an old ZX81. Back then, I might have been fascinated by the idea of making computers do amazing things, even with severely limited power. Those early machines—like the Amstrad CPC 6128—were pushed to their limits, with 3D animations developed using every last byte of 128K of memory. Writing code that split the screen into different memory blocks to animate simple sinusoidal curves was just the beginning of a lifelong obsession with performance and efficiency.

Discovering DirectX Before the World Knew It

In 1995, an opportunity arose to intern at Microsoft, where I had access to DirectX before it was officially released. At that time, OpenGL was still emerging, and this early exposure to DirectX opened new possibilities for real-time visualization. It was no longer just about coding; it became about making things happen fast, with as little overhead as possible. That experience shaped an approach to 3D rendering, which would influence much of the work that followed.

Telecom Simplicity: Crafting Simple Yet Robust Systems

In the world of telecoms at Sopra Steria, I encountered systems that were designed to be simple yet incredibly robust. Telecom systems can often become complex, but the ones built during that time were stripped down to their essentials—no fluff, no unnecessary features, just clean, effective code. This reaffirmed the belief that simplicity is key to both performance and longevity. The notion that code should be easy to replace, rather than just easy to evolve, became a guiding principle.

Banking Frameworks: A Lesson in Complexity

After telecoms, I transitioned into banking, facing entirely new challenges. Large frameworks that, while powerful, often came with a cost: a significant loss of performance. This experience highlighted the importance of balancing compute power and data storage without sacrificing the need for speed.

Speed of Light Raytracing: Sol-R and NVIDIA Quadro K6000

The development of Sol-R, a real-time ray tracer, represented a new frontier in scientific visualization. Dubbed the Speed-Of-Light Raytracer, it used a quantum number generator to enhance image quality. This project caught the attention of NVIDIA, who sent me a Quadro K6000 to push the boundaries even further. This opened doors to high-fidelity, real-time scientific visualization, transforming the way ray tracing was applied in high-performance computing.

High-Performance Visualization at EPFL: Computational Neuroscience

Arriving at EPFL to work on the Blue Brain Project felt like everything learned up to that point was coming together. Creating Brayns, a modular rendering platform, allowed researchers to focus on their work without being overwhelmed by overly complex software. The system was designed to be flexible and replaceable—if something worked, it stayed; if not, it could be removed without disruption.

Later, Brayns evolved into BioExplorer, a tool that delves deeper into computational neuroscience. During the COVID-19 pandemic, BioExplorer was used to produce an educational film on how glucose affects the SARS-CoV-2 infection process. This tool demonstrated its adaptability, pushing the boundaries of scientific visualization into other fields like neurons, astrocytes, blood vessels, high-energy physics, and more.

Demonstrating the Brain’s Complexity: ISC 2016

In 2016, a first-of-its-kind demonstration of interactive in-silico brain tissue visualization took place at ISC in Frankfurt. This showcased the power of high-fidelity graphics and real-time brain visualization. Sharing the booth with the Stephen Hawking Center for Theoretical Cosmology, who were presenting their black hole collision simulation, made the experience even more memorable. It was a symbolic moment where brain science and cosmology—two highly complex systems—came together, each requiring immense computational power.

A Childhood Dream: Visiting the K Computer

One of the highlights of my career was visiting the K Computer in Kobe, Japan. Standing before such a machine was like seeing a childhood dream come to life. From the days of tinkering with a ZX81 to one of the world’s most powerful supercomputers, this was a moment of reflection on how far technology had come—and how much further there was to go.

CERN Legend Collaboration: Unveiling the Invisible

Collaborating with René Brun, creator of ROOT, to visualize magnetic fields and high-energy particle collisions was another significant milestone. Handling enormous datasets and creating visualizations that made these invisible phenomena understandable was a challenge that relied on an intimate balance of compute and storage, ensuring the performance remained high enough to deliver meaningful insights.

Outreach and Exhibitions: Bringing Science to the Public

Science should not be confined to laboratories; it needs to be shared with the world. That's why one has been involved in several outreach initiatives, showcasing advanced scientific work at public exhibitions. The work has been featured at the Centre Pompidou in Paris, the CCCB in Barcelona and Madrid, and the Rosey Institute in Switzerland (Featuring in the Harvard Brain Magazine). These exhibitions made computational neuroscience more accessible to the public, engaging them in the beauty and complexity of these fields.

Music, Swimming, and Simplicity in Life

Beyond technology, one finds balance through music and swimming. Playing the drums, guitar, banjo, and now learning the cello, there has always been a love for creative expression. Performing at the Montreux Jazz Festival was a highlight, showcasing that creativity and precision apply to more than just coding.

Swimming is another form of connecting to simplicity. Regularly participating in 15-kilometer marathons and monofin swimming, it’s about stripping away complications—just like in coding—and focusing on the essentials. Free diving without equipment echoes the same principle: keep it simple, keep it efficient.

Recent Work: Virtual Reality and AI

Recently, one has been working on virtual reality experiences using point clouds to allow users to navigate through a Google Earth-like version of the virtual brain. This project pushes the boundaries of immersion and visualization, offering a new way to explore complex brain structures.

Furthermore, AI has been integrated at every step of the process—from understanding the subject matter to software design and implementation, to using generative AI and style transfer for improving image quality, AI has become an indispensable tool for refining the experience and creating more visually compelling representations of brain data.

A Philosophy Rooted in Pragmatism, Simplicity, Beauty and Performance

Over the years, pragmatism has emerged as a key principle. There’s no one-size-fits-all solution—whether it’s Object-Oriented Programming versus Procedural Programming, or balancing compute and storage—every project is unique and requires the right tools for the job.

Strong support for open source has always been a part of this philosophy. Sharing code openly for over a decade has reinforced the belief that progress is achieved through collaboration rather than isolation.

Looking Forward: The Next Chapter

As the Blue Brain Project concludes, I look forward to what lies ahead. From the early days of exploring cutting edge technologies to pushing the boundaries of super-computing, AI, and science, the same principles—simplicity, performance, and adaptability—will continue to drive the journey forward.