WIE
Un émulateur x86-64 en mode utilisateur qui exécute des binaires Windows sur Apple Silicon sans Wine ni VM. JIT Cranelift par blocs, traduction d'API Win32 en Rust, fenêtres Cocoa natives et rendu Direct3D 9.
Je construis des logiciels fiables. Rust, TypeScript, programmation système. Le genre qui tient la route en production.
Projets perso, outils open-source, des trucs construits parce que le problème était intéressant.
Un émulateur x86-64 en mode utilisateur qui exécute des binaires Windows sur Apple Silicon sans Wine ni VM. JIT Cranelift par blocs, traduction d'API Win32 en Rust, fenêtres Cocoa natives et rendu Direct3D 9.
Un moteur JavaScript intégrable écrit de zéro en Rust pur. Bytecode à registres, NaN-boxing sur 64 bits, classes cachées avec inline caches, GC mark-sweep et JIT Cranelift.
Un interpréteur de bytecode écrit intégralement à partir de rien. Aucune dépendance, aucun code existant. Juste Rust et le compilateur. Allocation de registres, mapping mémoire, conception de jeu d'instructions. Le projet le plus difficile et le plus gratifiant que j'ai réalisé.
Un lecteur de manga en Rust qui récupère des chapitres depuis des sites tiers, les fusionne en séries, et les sert dans une interface web. Trois crates d'espace de travail (domaine principal, adaptateur de scraper, serveur web Axum) avec une boucle de synchronisation en arrière-plan et une persistance SQLite.
Une plateforme marketplace pour pièces auto. App mobile React Native pour les acheteurs, portail web Astro pour les vendeurs et administrateurs. Backend Supabase avec compatibilité véhicule, gestion des commandes, avis et notifications push.
Projets clients : présence web propre et professionnelle.
Langages et frameworks que j'utilise quotidiennement.
Comment je pense le développement logiciel.
Je me soucie des trucs ennuyeux. La gestion d'erreurs propre, des interfaces claires, du code qui se relit encore six mois après. J'ai assez cassé de choses en production pour savoir que « ça marche sur ma machine » n'est pas une stratégie de test. Maintenant je préfère aller lentement mais bien faire les choses.