# Posts



- HTML page: https://antoineboucher.info/CV/blog/posts/
- Language: en
- Translation (fr): https://antoineboucher.info/CV/blog/fr/posts/index.md

Each entry links the HTML page and its Markdown view (append `index.md` to the URL).

- [Six Shadertoy shaders, read line by line](https://antoineboucher.info/CV/blog/posts/shadertoy-six-shaders/) — [Markdown](https://antoineboucher.info/CV/blog/posts/shadertoy-six-shaders/index.md) · 2026-11-06
  A code reading of six GLSL shaders I published on Shadertoy in 2024: domain warping, a spiral, an anti-aliased grid, a sea scene, sun rays and a mouse-driven warp.
- [What a Canadian salary guide says once the tables are read correctly](https://antoineboucher.info/CV/blog/posts/salary-guide-2023-results/) — [Markdown](https://antoineboucher.info/CV/blog/posts/salary-guide-2023-results/index.md) · 2026-11-05
  Re-reading the 2023 salary guide text kept in AlgoETS/Salary: 19,387 rows, the finance tables that were read as experience levels, and what pay looks like by job family, province and city.
- [Website refonte with Hugo (part 2)](https://antoineboucher.info/CV/blog/posts/portfolio-hugo-website-refonte/) — [Markdown](https://antoineboucher.info/CV/blog/posts/portfolio-hugo-website-refonte/index.md) · 2026-10-24
  Rebuilding my Hugo portfolio: shared visual identity, bilingual articles, repository skills, interactive diagrams and local publication.
- [TrueMapData: from measured height maps to usable assets](https://antoineboucher.info/CV/blog/posts/truemapdata-height-maps/) — [Markdown](https://antoineboucher.info/CV/blog/posts/truemapdata-height-maps/index.md) · 2026-10-24
  TrueMapData connects TrueMap and GelSight files to visualisation, surface metrics, wear analysis and mesh export.
- [MistubaVideo: rendering simulation recordings with Mitsuba](https://antoineboucher.info/CV/blog/posts/mistubavideo-rendered-video/) — [Markdown](https://antoineboucher.info/CV/blog/posts/mistubavideo-rendered-video/index.md) · 2026-10-24
  From recorded body poses and surface fields to rendered frames, heatmaps and video.
- [IPC Toolkit: collision and friction inside a simulation](https://antoineboucher.info/CV/blog/posts/ipc-toolkit-contact-library/) — [Markdown](https://antoineboucher.info/CV/blog/posts/ipc-toolkit-contact-library/index.md) · 2026-10-24
  How IPC Toolkit supplies collision detection, distance derivatives and friction calculations to a simulation.
- [Following financial news through AINewsTracker](https://antoineboucher.info/CV/blog/posts/ainewstracker-financial-news/) — [Markdown](https://antoineboucher.info/CV/blog/posts/ainewstracker-financial-news/index.md) · 2026-10-24
  Following financial news from collection to analysis and historical backtesting with AINewsTracker.
- [Dimension: connecting Rust mathematics to a renderer](https://antoineboucher.info/CV/blog/posts/dimension-rust-math-rendering/) — [Markdown](https://antoineboucher.info/CV/blog/posts/dimension-rust-math-rendering/index.md) · 2026-10-23
  Inside my Dimension workspace: matrix storage, numerical methods, scene transforms and a wgpu renderer for native and web targets.
- [DasherControl: a homelab dashboard built around workspaces](https://antoineboucher.info/CV/blog/posts/dashercontrol-homelab-workspaces/) — [Markdown](https://antoineboucher.info/CV/blog/posts/dashercontrol-homelab-workspaces/index.md) · 2026-10-23
  A look back at DasherControl: Vue applets, Rust and Rocket handlers, persisted workspaces and a Docker interface.
- [My bloc fork: browsing S3 and MinIO from Blender](https://antoineboucher.info/CV/blog/posts/bloc-blender-cloud-storage/) — [Markdown](https://antoineboucher.info/CV/blog/posts/bloc-blender-cloud-storage/index.md) · 2026-10-23
  A code tour of my Blender cloud-storage fork: multiple connections, folder browsing, fuzzy search and mesh imports.
- [My reverse proxy: separating provisioning, configuration and health checks](https://antoineboucher.info/CV/blog/posts/reverse-proxy-infrastructure/) — [Markdown](https://antoineboucher.info/CV/blog/posts/reverse-proxy-infrastructure/index.md) · 2026-10-22
  A code-based look at my Caddy infrastructure: Terraform for the VPS and DNS, Ansible for configuration, the order a deployment really runs in, and why its health checks and CI do not gate anything yet.
- [Teaching Python through an end-to-end data workshop](https://antoineboucher.info/CV/blog/posts/algoets-python-workshop/) — [Markdown](https://antoineboucher.info/CV/blog/posts/algoets-python-workshop/index.md) · 2026-10-20
  Inside AlgoETS Workshop1: nine notebooks connect Python fundamentals, APIs, pandas and visualization to an Apple stock EMA exercise.
- [Serilog.Sinks.SentrySDK: connecting structured logs to error reporting](https://antoineboucher.info/CV/blog/posts/serilog-sentrysdk-structured-errors/) — [Markdown](https://antoineboucher.info/CV/blog/posts/serilog-sentrysdk-structured-errors/index.md) · 2026-10-20
  A tour of the Serilog Sentry sink: SDK initialization, event handling, ASP.NET Core context, NuGet packages and observable project activity.
- [Porting sm64coopdx to Switch and New 3DS: keep the platform boundary small](https://antoineboucher.info/CV/blog/posts/sm64coopdx-switch-new3ds-port/) — [Markdown](https://antoineboucher.info/CV/blog/posts/sm64coopdx-switch-new3ds-port/index.md) · 2026-10-20
  A code-based tour of the Switch and New 3DS CoopDX targets: graphics, controllers, audio, build isolation and current hardware-validation limits.
- [Inside BatchBacktesting: parallel runs, explicit assumptions and useful outputs](https://antoineboucher.info/CV/blog/posts/batchbacktesting-engine/) — [Markdown](https://antoineboucher.info/CV/blog/posts/batchbacktesting-engine/index.md) · 2026-10-20
  Reading BatchBacktesting’s Python engine: worker pools, 0.2% commission, strategy defaults, CSV outputs and pitfalls in aggregate analysis.
- [ComfyUI-UML: diagrams as nodes, images and shareable source](https://antoineboucher.info/CV/blog/posts/comfyui-uml-diagram-workflows/) — [Markdown](https://antoineboucher.info/CV/blog/posts/comfyui-uml-diagram-workflows/index.md) · 2026-10-20
  How ComfyUI-UML turns Mermaid and PlantUML source into images, file outputs and viewer links, with Kroki and optional local renderers.
- [Artemis Switch: following a frame from the network to the screen](https://antoineboucher.info/CV/blog/posts/artemis-switch-frame-pacing/) — [Markdown](https://antoineboucher.info/CV/blog/posts/artemis-switch-frame-pacing/index.md) · 2026-10-20
  Inside Artemis Switch: Moonlight transport, NVDEC, deko3d, frame pacing and the telemetry that makes streaming delays easier to diagnose.
- [Thesis submitted at ÉTS](https://antoineboucher.info/CV/blog/posts/thesis-submitted-ets/) — [Markdown](https://antoineboucher.info/CV/blog/posts/thesis-submitted-ets/index.md) · 2026-10-10
  The ÉTS master's thesis on real-time surface wear is submitted, with thanks to Sheldon Andrews and the people who helped.
- [Claude Academy: Building with the Claude API](https://antoineboucher.info/CV/blog/posts/claude-academy-claude-api/) — [Markdown](https://antoineboucher.info/CV/blog/posts/claude-academy-claude-api/index.md) · 2026-10-10
  Anthropic issued the Claude Academy credential Building with the Claude API in October 2026.
- [uml-mcp — UML diagrams from chat via MCP](https://antoineboucher.info/CV/blog/posts/uml-mcp/) — [Markdown](https://antoineboucher.info/CV/blog/posts/uml-mcp/index.md) · 2026-09-02
  Open-source MCP server for Mermaid, PlantUML, and Kroki diagrams in Cursor and ChatGPT — why I built it, how to install, and links to earlier diagram tooling.
- [Handheld streaming and homebrew — Artemis-Switch, moonlight-N3DS, sm64coopdx-switch](https://antoineboucher.info/CV/blog/posts/handheld-streaming-homebrew/) — [Markdown](https://antoineboucher.info/CV/blog/posts/handheld-streaming-homebrew/index.md) · 2026-09-02
  PC game streaming on Nintendo Switch with Artemis (Apollo/Sunshine), Moonlight on New 3DS, and a Switch port of sm64coopdx — three homebrew repos and what each one does.
- [Joining La Caisse as a development intern](https://antoineboucher.info/CV/blog/posts/joining-la-caisse/) — [Markdown](https://antoineboucher.info/CV/blog/posts/joining-la-caisse/index.md) · 2026-08-18
  Internship at La Caisse on business-process automation with SharePoint, TypeScript, C#, .NET, APIs, and SnapLogic migration.
- [Master's thesis — contact–appearance coupling for wear in texture space](https://antoineboucher.info/CV/blog/posts/thesis-wear-texture-space/) — [Markdown](https://antoineboucher.info/CV/blog/posts/thesis-wear-texture-space/index.md) · 2026-08-14
  ÉTS master's thesis on real-time surface wear in interactive simulation — frictional dissipation, GPU texture atlases, GelSight validation, WearPaper and TextureFriction.
- [Make figurines with AI for 3D printing](https://antoineboucher.info/CV/blog/posts/ai-figurines-3d-printing/) — [Markdown](https://antoineboucher.info/CV/blog/posts/ai-figurines-3d-printing/index.md) · 2026-05-22
  Chibi vinyl figures, ComfyUI with OmniGen2 and Hunyuan3D v2, and resin printing notes with GLB examples.
- [CAÉC 2026 poster, second place in Optics](https://antoineboucher.info/CV/blog/posts/caec-2026-optics-poster/) — [Markdown](https://antoineboucher.info/CV/blog/posts/caec-2026-optics-poster/index.md) · 2026-04-24
  Poster at CAÉC 2026 on real-time visual texture wear from experimental data, second place in the Optics category.
- [Exploring movie similarities with vector search algorithms](https://antoineboucher.info/CV/blog/posts/vector-databases-similar-movies/) — [Markdown](https://antoineboucher.info/CV/blog/posts/vector-databases-similar-movies/index.md) · 2026-04-13
  A teaching narrative: pgvector kNN in SQL, Qdrant dense and sparse vectors on MovieLens behind a FastAPI app, then LangChain + Ollama RAG on the same catalog.
- [Python library for MarketWatch virtual trading](https://antoineboucher.info/CV/blog/posts/marketwatch-python-trading/) — [Markdown](https://antoineboucher.info/CV/blog/posts/marketwatch-python-trading/index.md) · 2026-04-13
  PyPI package marketwatch — Python client for MarketWatch’s virtual stock game, API surface, limits, and how it pairs with backtesting experiments.
- [From BMC to pitch — QcES journey notes (Spring 2024)](https://antoineboucher.info/CV/blog/posts/qces-lean-discovery-pitch/) — [Markdown](https://antoineboucher.info/CV/blog/posts/qces-lean-discovery-pitch/index.md) · 2026-04-13
  Notes from the QcES entrepreneurship program — business canvas, customer interviews, feedback, roadmap, and pitching without drowning in jargon.
- [AlgoÉTS MarkÉTS — first ÉTS paper-trading competition](https://antoineboucher.info/CV/blog/posts/algoets-markets-first-competition/) — [Markdown](https://antoineboucher.info/CV/blog/posts/algoets-markets-first-competition/index.md) · 2026-01-15
  First MarkÉTS paper-trading competition at ÉTS: 4,154 orders, 170+ participants, 99%+ uptime, and a club grown to 20 members.
- [GraphQuon 2025 — University of Toronto](https://antoineboucher.info/CV/blog/posts/graphquon-2025-university-of-toronto/) — [Markdown](https://antoineboucher.info/CV/blog/posts/graphquon-2025-university-of-toronto/index.md) · 2025-11-15
  Presented Where to Wear? at the Quebec–Ontario pre-SIGGRAPH workshop in Toronto—frictional wear, texture updates, and slides from GraphQuon 2025.
- [25k uses for the diagram tool on the GPT Store](https://antoineboucher.info/CV/blog/posts/gpt-store-diagram-tool/) — [Markdown](https://antoineboucher.info/CV/blog/posts/gpt-store-diagram-tool/index.md) · 2025-10-24
  The UML diagram tool reached 25k uses on the GPT Store. I built it to stop dragging boxes in Lucidchart and I am open to handing it on.
- [A Method to Install Python Packages for Add-ons & Plugins in Blender (Windows, Blender 4.2+)](https://antoineboucher.info/CV/blog/posts/blender-python-packages/) — [Markdown](https://antoineboucher.info/CV/blog/posts/blender-python-packages/index.md) · 2025-02-08
  Install pip packages into Blender’s embedded Python — user modules folder, background thread, popups — without breaking the core install.
- [GraphQuon 2024 — ÉTS (Montréal)](https://antoineboucher.info/CV/blog/posts/graphquon-2024-ets/) — [Markdown](https://antoineboucher.info/CV/blog/posts/graphquon-2024-ets/index.md) · 2024-11-09
  GraphQuon 2024 at ÉTS — Quebec–Ontario pre-SIGGRAPH talks, the conference site we shipped, and hallway chats (including NVIDIA diffusion texture painting).
- [Starting as a teaching assistant at Polytechnique Montréal](https://antoineboucher.info/CV/blog/posts/polytechnique-teaching-start/) — [Markdown](https://antoineboucher.info/CV/blog/posts/polytechnique-teaching-start/index.md) · 2024-09-02
  I started as a teaching assistant at Polytechnique Montréal. On the CV, that role is DevSecOps, LOG 8100, from September 2024.
- [Multiple Technical Indicators Backtesting on Multiple Tickers using Python](https://antoineboucher.info/CV/blog/posts/multiple-indicators-backtesting/) — [Markdown](https://antoineboucher.info/CV/blog/posts/multiple-indicators-backtesting/index.md) · 2024-05-30
  Scaled BatchBacktesting across stocks and crypto — reading aggregate leaderboards without mistaking screening for a strategy.
- [Economics of LEGO Sets with Data Science](https://antoineboucher.info/CV/blog/posts/economics-lego-data-science/) — [Markdown](https://antoineboucher.info/CV/blog/posts/economics-lego-data-science/index.md) · 2024-05-30
  Rebrickable trends, BrickEconomy prices, Playwright scraping, and a humble regression on classic set 001-1 — narrative with charts, code in LegosTracker.
- [Experimenting with technical indicators using Python and backtesting](https://antoineboucher.info/CV/blog/posts/experimentation-indicateurs-backtesting/) — [Markdown](https://antoineboucher.info/CV/blog/posts/experimentation-indicateurs-backtesting/index.md) · 2024-05-14
  BatchBacktesting with an EMA strategy on the S&P 500 and crypto: the code, the leaderboard, and how to read extreme returns.
- [Making Caddy, AWS EC2, CloudWatch, Step Functions, and Lambda Work Together](https://antoineboucher.info/CV/blog/posts/caddy-ec2-cloudwatch-lambda/) — [Markdown](https://antoineboucher.info/CV/blog/posts/caddy-ec2-cloudwatch-lambda/index.md) · 2024-05-14
  Caddy on a t4g.nano EC2 instance: JSON access logs, a nightly Python shipper to CloudWatch, a Step Functions workflow that runs Logs Insights and geolocation Lambdas, and the fixes I would make today.
- [A Journey to AWS Certified Cloud Practitioner](https://antoineboucher.info/CV/blog/posts/aws-certified-cloud-practitioner/) — [Markdown](https://antoineboucher.info/CV/blog/posts/aws-certified-cloud-practitioner/index.md) · 2024-05-14
  Two-week study plan — Udemy, AWS Skill Builder, Cloud Quest, Escape Room, and Pearson VUE tips (extra time, Credly badge).
- [Predicting Stock Prices with Monte Carlo Simulations](https://antoineboucher.info/CV/blog/posts/predicting-stock-prices-monte-carlo/) — [Markdown](https://antoineboucher.info/CV/blog/posts/predicting-stock-prices-monte-carlo/index.md) · 2024-05-14
  Forward Monte Carlo bands for AAPL from historical log returns — hold-out coverage, percentiles, and how that differs from MCMC.
- [MediaBox homelab — what I run in Docker (and what stayed a bookmark)](https://antoineboucher.info/CV/blog/posts/mediabox-homelab-docker-catalog/) — [Markdown](https://antoineboucher.info/CV/blog/posts/mediabox-homelab-docker-catalog/index.md) · 2024-03-15
  How MediaBoxDockerCompose grew out of a homelab port map — what I actually wired up, and where Proxmox helper-scripts fit.
- [Kinectron + p5.js — gestures, sketch controls and GIF export](https://antoineboucher.info/CV/blog/posts/kinectron-p5-sketch-gif/) — [Markdown](https://antoineboucher.info/CV/blog/posts/kinectron-p5-sketch-gif/index.md) · 2024-03-15
  Stream Kinect v2 skeletons from Kinectron into p5.js, detect simple gestures from joint positions, replay recorded frames, stop/play the sketch, and save the canvas as a GIF.
- [Byzantium’s first workshop — Solidity and an ERC-20 token on Ethereum](https://antoineboucher.info/CV/blog/posts/byzantium-solidity-ethereum-workshop/) — [Markdown](https://antoineboucher.info/CV/blog/posts/byzantium-solidity-ethereum-workshop/index.md) · 2024-03-11
  Byzantium’s first Ethereum workshop — Remix and Sepolia, OpenZeppelin ERC-20, deploy a token, and swap transfers with the room. Led by Khalil Anis Zabat.
- [Create a portfolio with Hugo (week 1)](https://antoineboucher.info/CV/blog/posts/portfolio-hugo-week-1/) — [Markdown](https://antoineboucher.info/CV/blog/posts/portfolio-hugo-week-1/index.md) · 2024-01-06
  Week one of a Hugo portfolio — what the old repository held, a first Hugo links page, HBTheme tradeoffs, data embeds, Substack split, iframe shortcode, and what I would do differently today.
- [LiDAR apartment scan with Rhino on iPhone](https://antoineboucher.info/CV/blog/posts/rhino-lidar-apartment-scan/) — [Markdown](https://antoineboucher.info/CV/blog/posts/rhino-lidar-apartment-scan/index.md) · 2024-01-02
  Room-by-room LiDAR with Rhino on iPhone — layout checks, limits of consumer scanning, and when it beats full CAD.
- [My journey in software engineering](https://antoineboucher.info/CV/blog/posts/software-engineering-journey/) — [Markdown](https://antoineboucher.info/CV/blog/posts/software-engineering-journey/index.md) · 2023-12-30
  From Flash games and Unity demos to Algolux, ÉTS capstones, co-ops, and today’s backend, platform, and DevSecOps work—a personal timeline with project links.
- [Creating a professional résumé with JSON Resume](https://antoineboucher.info/CV/blog/posts/professional-resume-json-resume/) — [Markdown](https://antoineboucher.info/CV/blog/posts/professional-resume-json-resume/index.md) · 2022-09-10
  Write your CV once in JSON, then export HTML or PDF with community themes—or wire the same data into a Hugo site.
- [Snowflake Data-for-Breakfast Conference Insights](https://antoineboucher.info/CV/blog/posts/snowflake-data-for-breakfast/) — [Markdown](https://antoineboucher.info/CV/blog/posts/snowflake-data-for-breakfast/index.md) · 2022-09-06
  Expanded breakfast conference notes — healthcare scale, tax analytics, clean rooms, Infostrux keynote, and when a warehouse beats spreadsheets.
- [Snapchat Lens Creator](https://antoineboucher.info/CV/blog/posts/snapchat-lens-creator/) — [Markdown](https://antoineboucher.info/CV/blog/posts/snapchat-lens-creator/index.md) · 2022-09-06
  Snapchat lenses with millions of plays (2017-2020), Fiverr clients, a GIF-to-PNG tool, Lens Studio feedback, and 2026 Lens Insights totals.
- [Run:ai on AWS — webinar notes (inference & autoscaling)](https://antoineboucher.info/CV/blog/posts/runai-aws-inference-webinar/) — [Markdown](https://antoineboucher.info/CV/blog/posts/runai-aws-inference-webinar/index.md) · 2022-09-06
  Sketches from a Run:ai webinar — GPU inference on AWS, dashboards, CLI, and scaling models in shared clusters.
- [Live chat and support platforms compared (3CX, ManyChat, Kommunicate, Chatwoot)](https://antoineboucher.info/CV/blog/posts/livechat-platform-notes/) — [Markdown](https://antoineboucher.info/CV/blog/posts/livechat-platform-notes/index.md) · 2022-09-06
  Notes from picking website chat, bots, and a team inbox—how 3CX, ManyChat, Kommunicate, and Chatwoot differ, with logos, a decision flow, and links.
- [GitHub Copilot session at Cédille (with GitHub & Arctiq)](https://antoineboucher.info/CV/blog/posts/github-copilot-cedille-session/) — [Markdown](https://antoineboucher.info/CV/blog/posts/github-copilot-cedille-session/index.md) · 2022-09-06
  Cédille hosted GitHub and Arctiq for Copilot Chat, /createNotebook, and GitHub Next — expanded recap with photos and student takeaways.
- [Expo Manger Santé 2023 — olives, kiosks, and discoveries](https://antoineboucher.info/CV/blog/posts/expo-manger-sante-2023/) — [Markdown](https://antoineboucher.info/CV/blog/posts/expo-manger-sante-2023/index.md) · 2022-09-06
  Two days at Montreal’s health-food expo — olive kiosk sales, vendor notes, photo credits, and products worth buying again.
- [Diagram prompts with ChatGPT and AIPRM (PlantUML, Mermaid, and more)](https://antoineboucher.info/CV/blog/posts/chatgpt-airprm-sequence-diagrams/) — [Markdown](https://antoineboucher.info/CV/blog/posts/chatgpt-airprm-sequence-diagrams/index.md) · 2022-09-06
  AIPRM prompt template for diagram type, elements, purpose, and tool — plus PlantUML and Mermaid sequence examples (React, FastAPI, Redis, MongoDB, cache hit/miss).
- [D2C OpenAI plugin — diagrams with PlantUML, Mermaid, and D2](https://antoineboucher.info/CV/blog/posts/d2c-openai-diagram-plugin/) — [Markdown](https://antoineboucher.info/CV/blog/posts/d2c-openai-diagram-plugin/index.md) · 2022-09-06
  ChatGPT plugin for PlantUML, Mermaid, and D2 diagrams — why I built it, install path, example prompts, and limits vs AIPRM templates.
- [Skate rack — from CAD to plywood](https://antoineboucher.info/CV/blog/posts/skate-rack-cad-to-object/) — [Markdown](https://antoineboucher.info/CV/blog/posts/skate-rack-cad-to-object/index.md) · 2021-12-21
  Vertical skate rack — shop-class welded frame detour, then Home Depot plywood, CAD slots, and a rental-friendly build, December 2021.
- [Renpho scale, Home Assistant, reverse-engineering the API, and a weight forecast](https://antoineboucher.info/CV/blog/posts/renpho-health-api-blueprint/) — [Markdown](https://antoineboucher.info/CV/blog/posts/renpho-health-api-blueprint/index.md) · 2021-10-10
  Forking hass_renpho for Home Assistant — old Renpho app API, APKLeaks, Lovelace dashboards, proxy quirks, a pandas + LSTM notebook that forecasts weight from the export, and habits that keep bio-impedance useful.
- [Networking evolution — building a home network lab](https://antoineboucher.info/CV/blog/posts/home-networking-evolution/) — [Markdown](https://antoineboucher.info/CV/blog/posts/home-networking-evolution/index.md) · 2021-09-06
  Homelab evolution — Dell R710, closet wiring, Docker stacks, Caddy, WireGuard, Proxmox, and why I still draw the network on the wall.
- [CodePen demos (collection)](https://antoineboucher.info/CV/blog/posts/codepen-demos-antoinebou13/) — [Markdown](https://antoineboucher.info/CV/blog/posts/codepen-demos-antoinebou13/index.md) · 2017-01-10
  Live CodePen embeds from the mid-2010s front-end era—forms, jQuery widgets, getDisplayMedia, Canvas blackboard, and a Three.js wave—in one bookmark.

