TERMINAL
~/portfolio $ 
HOME DATA & AI PHOTOGRAPHY CONTACT ↓ CV

// portfolio.init() — system_ready


SCROLL
// 01 — IDENTITY

WHO I AM

I'm a Master's student in Business Analytics at the Louvain School of Management, building at the intersection of data science and business strategy. My work spans NLP, machine learning, operational research, and full-stack development.

Based in Belgium (Mons · Lessines), preparing for an Erasmus exchange in Norway. I target roles in consulting and data & AI where analytical rigour meets strategic clarity.

Two identities: data builder — who models, optimises, and predicts; and visual storyteller — who frames, captures, interprets. Both demand precision. Both reward curiosity.

0Projects Built
0Experiences
0Native Languages
0Running Hobby
// PYTHON ECOSYSTEM
PythonPandasNumPy Scikit-learnMatplotlib FlaskSurpriseNLTK
// BI & DATA TOOLS
Power BISQL FICO XpressOdoo ERP
// WEB & CREATIVE
JavaScriptReact / Vite HTML / CSSGitHubAdobe Suite
// HARDWARE & TINKERING

Raspberry Pi projects (RFID reader → LCD feedback, 2-button game on LCD display), sensors (temperature · light · humidity), motors & basic electronics. Converted an old PC into a home NAS running TrueNAS. Also into repairing and repurposing devices.

Raspberry PiTrueNAS / NAS RFIDLCD Display GPIO / SensorsDC & Servo Motors Device Repair
// LANGUAGES
French — Native Dutch — Native English — C1
// 02 — WORK

PROJECTS

NLP  ·  FEATURED

Web Mining — ESG Benchmarking

Scraped 3 major Belgian green retailers to measure the semantic gap between sustainability marketing language and official ESG reports. NLP-based greenwashing detection using cosine similarity on TF-IDF vectors.

PythonBeautifulSoup NLTKTF-IDFPandas
// SEMANTIC GAP SCORES
Retailer A
0.82
Retailer B
0.61
Retailer C
0.45
Avg. Gap
0.63

Higher = greater gap between marketing claims & ESG reports

$ python esg_analyzer.py --targets retailers_be.json
[INFO] Scraping sustainability pages... 3/3 done
[INFO] Building TF-IDF corpus... 48,302 tokens
[WARN] Semantic gap δ=0.63 avg — greenwashing signals detected
[DONE] esg_gap_analysis_2024.pdf ✓
ML / AI

AI Gesture Recognition

3D hand gesture classification across 10 types using DTW, BiLSTM and Three-Cent. Full ablation study and statistical significance testing across methods.

PythonBiLSTMDTWScikit-learn
$ python train.py --model bilstm --gestures 10
[TRAIN] Epoch 48/50 — loss: 0.0821 · acc: 93.2%
[INFO] DTW: 87.3% · Three-Cent: 89.1%
[BEST] BiLSTM: 94.1% — p<0.01 ✓
ML / AI

Movie Recommender System

Full-stack recommender with collaborative filtering, SVD/SVD++ matrix factorisation, Ridge regression blending, and a React/Vite frontend over a Flask API.

PythonSVD++FlaskReactSurprise
$ python evaluate.py --model hybrid --k 20
[INFO] SVD RMSE: 0.871 · SVD++ RMSE: 0.849
[INFO] Hybrid blending RMSE: 0.832
[DONE] API :5000 · React UI :3000 ✓
OPTIMIZATION

CHwapi Surgical Scheduling

MIP-based optimisation of OR block allocation and surgical unit scheduling at CHwapi hospital — balancing capacity constraints with patient flow throughput.

PythonPuLPMIPOR
$ python mip_solver.py --hospital chwapi
[SOLVE] GLPK optimal · gap: 0.00%
[RESULT] Utilisation +18% · Avg wait -23% ✓
OPTIMIZATION

GlobalFlow Supply Chain

Network cost minimisation across a multi-echelon transhipment problem, formulated as MIP in FICO Xpress Mosel with facility and arc flow decision variables.

FICO XpressMoselMIP
$ xpress globalflow.mos -c "MAXTIME=600"
[SOLVE] MIP gap: 0.12% after 847 nodes
[OPT] Logistics savings: €2.3M/year ✓
WEB · BOT

University Menu Scrapper

Daily menu image scraped from UCLouvain restaurant, text extracted via Tesseract OCR, and automatically dispatched to a Telegram bot — 47 active subscribers.

PythonTesseract OCRTelegram APIcron
$ python menu_bot.py [cron: 08:00 mon-fri]
[OCR] Confidence: 96.4% · Menu parsed
[BOT] Sent to 47 subscribers ✓
WEB · EXTENSION

Privacy Guard Extension

Chrome extension that automatically parses privacy policies, terms of service, and GDPR documents — flagging high-risk clauses in real time with a risk score.

JavaScriptChrome APINLPGDPR
> Analyzing: privacy-policy.html [12,847 chars]
[WARN] §4.2 — Data shared with third parties
[WARN] §7.1 — Indefinite retention period
[DONE] Risk score: 7.2/10 · 3 red clauses ✓
BI · DASHBOARD

Sales KPI Dashboard

Interactive Power BI dashboard — regional breakdowns, YTD vs. budget tracking, trend forecasting, and 14 real-time KPIs with drill-through capability.

Power BISQLExcel
// Loading sales_dashboard.pbix
Revenue YTD: €4.2M (+12.3% vs. budget)
Top region: Wallonia · Conversion: 34.7%
// Dashboard refreshed · 14 KPIs live ✓
WEB · DASHBOARD

Command Center

Personal productivity dashboard built with Next.js — Google OAuth sign-in, unified Calendar and Gmail views in a single interface. Full-stack TypeScript with server actions.

Next.jsTypeScriptGoogle APIOAuth
$ npm run dev [Next.js 15 · TypeScript]
[AUTH] Google OAuth · session active
[SYNC] Calendar + Gmail loaded ✓
[LIVE] Command Center ready at :3000
HARDWARE · RPI

GPIO → OSC Lighting Trigger

Raspberry Pi script that monitors a BERM sensor on GPIO 27 and fires a random OSC message to QLC+ on each passage detection — automated gate-triggered stage lighting with 2-second debounce.

PythonRaspberry PiGPIOOSCQLC+
$ python3 auto_scene.py [GPIO 27 · pull-up]
[SENSOR] Falling edge detected — passage!
[OSC] → /chaser/3 · value 255 → QLC+
[INFO] Debounce 2s · next trigger ready ✓
// 03 — EXPERIENCE

TIMELINE

APR 2025 — APR 2026
FUCaM Junior Consulting
Financial Manager & Treasurer

Led full ERP restructuration into Odoo. Managed financial operations, budgeting, and reporting. Co-organised events with 100+ attendees.

JAN 2025 — FEB 2025
Berma
Business Engineer Intern

Hands-on immersion in business operations, accounting workflows, ERP system management, and product database structuring in an industrial SME context.

SEP 2023 — PRESENT
Above Belgium
Founder & Freelance Photographer

Founded and operate a solo photography business in Hainaut. Client work spans corporate identity, live events, sports, and aerial drone coverage. Licensed drone operator.

// 04 — ABOVE BELGIUM
ABOVE
BELGIUM

Where code stops
and light begins.

LESSINES, HAINAUT  ·  BELGIUM  ·  SINCE 2023  ·  30+ PROJECTS

CORPORATE
Executive portraits, team days & brand content for businesses across Hainaut.
EVENT
Full-coverage photography of galas, conferences, launches & private gatherings.
SPORTS
Fast-action sports captures that freeze the decisive moment with precision.
DRONE & AERIAL
Licensed drone operator delivering cinematic aerial perspectives of Belgium.
ASTROPHOTO
Long-exposure Milky Way & night-sky captures from dark-sky sites in Belgium.

Above Belgium was born in September 2023 in Lessines, Hainaut — from a need to see the familiar differently. What started as a passion for composition and light has grown into a freelance practice covering corporate identity, live events, sports, drone cinematography, and long-exposure astrophotography. Each specialty demands its own technical mastery: the patience of a night shoot, the reflexes of sports coverage, the strategic eye of a corporate brief. The result is a photography business built on the same mindset as data work — precision, iteration, and an obsession with the right output.

2023 Founded
Hainaut Belgium
0 Specialties
0 Drone License
"Every frame is a dataset.
Every shutter click is a decision."

LET'S BUILD
SOMETHING.

Open to internship opportunities  ·  Feb–May 2027  ·  Consulting  ·  Data & AI

Currently: Master's student @ LSM  ·  Available Feb 2027

// EMAIL COPIED TO CLIPBOARD