How Vodacom uses marimo to drive operational intelligence across 15,000 mobile network sites
“A lot of the applications we built at Vodacom would have required full data science and engineering teams in the past. With marimo, we could prototype and operationalise them directly from the notebook environment, moving from machine learning research to executive-facing applications far faster than was previously possible.” — Dr. Jaco du Toit, Head of AI/ML & Data Technology Strategy & Assurance at Vodacom, South Africa’s largest telecommunications company.
marimo is the world’s best programming environment for working with data, and it’s all free and open source. Just pip install marimo or uv add marimo to get started.
Vodacom is South Africa’s largest telecommunications company, operating a nationwide mobile network of more than 15,000 cell sites serving millions of customers across urban, rural, and remote regions. The network carries enormous volumes of voice and data traffic every day and relies on a highly distributed infrastructure footprint consisting of radio equipment, transmission systems, battery backup installations, and core network infrastructure spread across the country.
Each site has its own unique energy profile, equipment configuration, traffic demand characteristics, and geographic context. Across the network, Vodacom processes millions of operational telemetry records every day, including energy meter readings and performance measurements collected at minute-level intervals, and a continuous stream of network alarms and infrastructure events that can reach hundreds of events per second during major incidents periods.
Keeping this infrastructure running efficiently is a massive operational and analytical challenge, particularly in a country affected by rolling power outages, fluctuating grid reliability, rising energy costs, and diverse environmental conditions. Operational data is also inherently noisy and incomplete, with missing telemetry, delayed measurements, evolving infrastructure configurations, and measurement artefacts requiring sophisticated machine learning, streaming analytics, and geospatial analysis techniques to identify inefficiencies, prioritise interventions, and support operational decision-making at scale.
Jaco leads AI/ML & Data Technology Strategy & Assurance at Vodacom, working directly with executives to solve high-impact business problems using data. After discovering marimo through Vincent Warmerdam’s YouTube videos, Jaco transitioned his workflow; exploratory analysis, data cleaning, visualization, research projects, and internal applications, from Jupyter notebooks to marimo. Today, marimo powers a growing suite of internal applications at Vodacom that connect directly to live databases and support executives, engineers, planners, and operations teams with interactive insights on demand.
Challenge
Managing a geographically distributed mobile network at national scale creates a unique set of operational and analytical challenges.
Maintaining energy efficiency at scale. Every site has different equipment, energy consumption patterns, and environmental conditions. Operational telecom data is also inherently noisy and incomplete, with missing measurements, inconsistent telemetry, evolving infrastructure configurations, and measurement artefacts that can easily distort analysis if not properly understood. Identifying which sites are consuming more energy than they should (and why) therefore requires comparing thousands of heterogeneous site profiles against expected baseline values while accounting for the operational context and quality of the underlying data. Traditional reporting tools didn’t provide enough flexibility, mathematical tooling, or analytical capabilities to support this kind of rapid, iterative analysis across large-scale, noisy operational datasets.
Battery capacity planning during load shedding. South Africa’s national power grid experiences planned outages known as load shedding. These outages can cause mobile network sites to fail, directly impacting customer experience and network availability. Vodacom needed a way to identify which sites were most vulnerable during power instability, which geographic regions were most affected, and where battery upgrades would deliver the greatest operational benefit. The problem required combining Eskom load shedding schedules with real-world site downtime data, ranking sites by severity, and presenting the results in a way that executives and operational teams could immediately act on.
Core network failure detection. Traditional threshold-based monitoring systems struggled to reliably identify genuine failures within Vodacom’s mobile core network. Mobile traffic naturally exhibits strong daily and weekly seasonality, long-term growth trends, and measurement inconsistencies that often resemble genuine outages. This resulted in excessive false alarms, delayed incident detection, and operational inefficiencies. The solution required an adaptive online learning approach capable of continuously learning evolving traffic behaviour from streaming telemetry data while distinguishing between benign anomalies and genuine customer-impacting failures.
Renewable energy feasibility. Vodacom also needed to evaluate which sites were viable candidates for renewable energy investments such as solar and wind installations. This required combining site-level energy consumption data, weather and solar irradiation datasets, geographic information, battery performance metrics, and infrastructure configuration data. The challenge was both operational and financial: renewable energy investments needed to be prioritised where they could deliver the greatest impact in terms of resilience during load shedding, reduced diesel dependency, improved battery autonomy, and long-term cost savings. Static spreadsheet-based planning approaches were insufficient for analysing infrastructure at this scale.
Field operations and travel claim validation. When third-party technicians visit network sites for maintenance, they submit travel claims based on distances travelled. With thousands of geographically distributed sites and numerous field teams operating across the country, manually validating travel claims was time-consuming, inconsistent, and difficult to scale. Vodacom needed a geospatially-aware operational tool capable of estimating realistic travel routes and identifying claims that deviated significantly from expected driving distances.
How Vodacom uses marimo
Jaco builds marimo notebooks that connect directly to Vodacom’s internal databases, pull live data, and serve interactive applications to executives and operations teams via an internal server. The applications are designed to help stakeholders move quickly from raw data to actionable operational insights. marimo’s reactive execution model and built-in UI components made it possible to build highly interactive analytical workflows without requiring separate front-end engineering teams.
Identifying energy-inefficient sites
To identify energy-inefficient sites, the project combines operational site telemetry with graph-based embedding techniques to learn representations of site behaviour.
The work uses PyMDE, an open-source dimensionality reduction library developed by Dr Akshay Agrawal, together with a custom energy-aware distortion function. Structurally similar telecom sites are connected through a k-nearest-neighbour graph, while pairwise distortions are modified using relative energy consumption differences between neighbouring sites.
The key idea is that inefficient sites should deviate from their local structural neighbourhoods. In the learned embedding space, sites with unusually high energy consumption relative to similar peers are pushed outward and flagged as anomalies.
Unlike traditional regression-based approaches, the methodology does not require labelled ground truth or predefined efficiency baselines. Instead, inefficiency is defined geometrically as inconsistency within a local neighbourhood of structurally similar sites.
The project has already demonstrated significant operational value by identifying multiple real-world infrastructure failures across the network, including:
- Sites where both air conditioners were running simultaneously
- Ventilation failures caused by dust-clogged air vents
- Sites where temperature controllers or sensors had malfunctioned
These issues would previously have been extremely difficult to identify systematically across thousands of geographically distributed sites.
The resulting embeddings provide a richer representation of site behaviour than the original telemetry alone. Downstream machine learning models trained on the learned embeddings consistently outperform models trained directly on the raw operational features, improving anomaly detection and enabling scalable energy-efficiency analysis across the network.
marimo played a critical role in enabling rapid experimentation throughout the project. Its reactive execution model allowed Jaco to iteratively test embedding strategies, custom distortion functions, visualisations, and anomaly detection approaches while immediately seeing the impact of changes.

Battery capacity planning for load shedding
The battery planning application overlays Eskom’s published load shedding schedules with real-world site downtime to rank network sites by outage severity and operational risk.
The application helps prioritise battery installations by identifying which sites are most affected during periods of grid instability.
A key part of the methodology involved experimenting with multiple distance and similarity metrics to compare site outage behaviour against expected load shedding patterns. These included:
- Weighted in-band versus out-of-band downtime scoring
- Cosine similarity
- KL divergence (both directions)
- Jensen–Shannon divergence
- Wasserstein distance
- Correlation analysis
- Geographically-aware routing and proximity metrics
Within the marimo application, users can interactively explore sites on a map, analyse outage profiles, and compare prioritisation methodologies in real time.
marimo made this level of experimentation possible. Jaco describes being able to test dozens of cost functions and distance metrics in a single notebook session, swapping implementations in and out with the help of LLMs and receiving immediate feedback through marimo’s reactive execution model.
The result is a highly interactive operational planning tool that enables faster, more data-driven infrastructure investment decisions.
Validating field technician travel claims
When maintenance teams visit network sites and submit invoices for travel, Vodacom needs to verify that the claimed distances are operationally reasonable.
Jaco built an interactive geospatial marimo application where users can select visited sites on a map and automatically calculate optimal travel routes between them using real road network data from OpenStreetMap.
By combining graph-based shortest-path routing algorithms with site GPS coordinates, the system estimates realistic driving distances and flags claims that deviate significantly from expected routes for further review.
The application provides operations teams with an intuitive workflow for visually inspecting routes, exploring schedules dynamically, and validating maintenance claims across large numbers of site visits.
marimo enabled the rapid development of this interactive operational workflow directly within the notebook environment without requiring separate front-end engineering.
Core network outage identification
To improve service-affecting failure detection within Vodacom’s mobile core network, Jaco and his research team at Stellenbosch University developed a two-stage online learning framework for adaptive anomaly detection.
The framework continuously analyses streaming telemetry data, including aggregated traffic volumes, infrastructure counters, APN statistics, and temporal indicators collected across the network.
The system first learns expected baseline traffic behaviour using online machine learning models. Deviations from the learned baseline are then analysed together with contextual indicators to determine whether anomalies represent genuine customer-impacting outages or benign operational artefacts.
marimo played an important role in rapidly prototyping, visualising, and evaluating the streaming ML workflows and detection models within an interactive operational environment.
Experimental results on real Vodacom network data showed that the approach significantly outperformed traditional monitoring systems while maintaining low false positive rates under highly imbalanced operational conditions.

Renewable energy feasibility
Machine learning forecasting models, geospatial analysis, optimisation techniques, and financial modelling were used to estimate renewable energy potential, future energy demand, ROI, and payback periods under different battery and renewable energy sizing scenarios.
marimo enabled Jaco to rapidly build interactive geospatial applications that combined these models into a single operational workflow.
Engineers and decision-makers could dynamically explore renewable energy scenarios, adjust assumptions in real time, and immediately evaluate the operational, environmental, and financial impact across thousands of network sites.
This significantly reduced the complexity traditionally associated with building operational planning tools that combine geospatial analysis, optimisation, and financial modelling.
Why marimo
Several aspects of marimo proved particularly valuable for Vodacom’s operational and analytical workflows.
Interactivity without front-end development.
Jaco’s role sits at the intersection of AI/ML strategy and hands-on data work. marimo’s flexible, built-in UI elements let him build applications that executives can use without investing hours wrangling front-end frameworks.
“I’d much rather send someone an interactive notebook or application than spend weeks building a separate front-end interface. marimo lets me turn analytical work directly into something the business can actually use.”
Geospatial analysis as a first-class workflow. With 15,000 sites spread across South Africa, geographic context is everything. marimo’s support for interactive maps, OpenStreetMap layers, and point selection made geospatial analysis native to the workflow rather than a separate tool.
Rapid experimentation. marimo’s reactive execution model enabled rapid iteration of complex analytical workflows. Jaco could test dozens of distance metrics, ranking approaches, anomaly detection strategies, and optimisation techniques within a single notebook session while receiving immediate visual feedback.
Seamless data export. Executives and operational teams often needed to export data into Excel, presentations, or operational reports. marimo’s built-in export capabilities eliminated the need to build custom export workflows for every application.
“Everything is just in marimo.”
Direct database connectivity. Each application connects directly to Vodacom’s internal operational databases, allowing stakeholders to work with continuously updated live network and telemetry data rather than static exports or delayed reporting layers.
The marimo applications are deployed internally on Red Hat Enterprise infrastructure and served through Apache Web Server environments within Vodacom’s internal network. This architecture provides a lightweight but scalable deployment model where interactive analytical applications can be hosted centrally and accessed securely by executives, engineers, planners, and operational teams through their browsers.
Results
marimo is now embedded in Jaco’s daily workflow at Vodacom, supporting both executive and operational decision-making across multiple teams.
Applications developed using marimo are actively used for:
- Energy efficiency analysis
- Geospatial operational planning
- Renewable energy modelling
- Core network anomaly detection
- Travel claim validation
- Executive reporting and operational decision support
The platform has significantly accelerated the speed at which analytical ideas are converted into usable operational applications.
What previously may have required separate data science, engineering, and front-end teams can now often be prototyped and operationalised directly within a single marimo workflow.
marimo’s application-oriented design and reactive execution model have enabled faster iteration of complex analytical business problems, allowing ideas to move rapidly from experimentation into operational use.
Usage continues to grow across Vodacom, with data scientists, network engineers, operational teams, and executives regularly interacting with marimo-powered applications and outputs.
While Jupyter notebooks are still used for some data ingestion workflows, marimo has increasingly become the preferred environment for building interactive, production-oriented analytical applications.
Key outcomes include:
- Executive-ready applications built without dedicated front-end engineering
- Faster experimentation and operational deployment of ML-driven workflows
- Improved visibility into energy inefficiencies across thousands of network sites
- Faster and more data-driven operational decision-making
- Improved collaboration between technical teams and business stakeholders
- Interactive geospatial operational tooling deployed directly from notebook workflows
Dr. Jaco du Toit summarises:
“marimo fundamentally changed how quickly we can move from analytical exploration to operational applications. It allowed us to build highly interactive, data-driven tools directly within Python and put them in front of executives and operational teams far faster than traditional development approaches.”
