Computer Technologies,
Research & Development
CNRS / UTC
mention très honorable avec les félicitations du jury
Heuristique
Diagnostic des systèmes complexes
Statistiques et non-paramétrique
Université de technologie de compiègne (UTC)
Génie informatique (système et logiciel)
Sciences cognitives, épistémologie
ESEO (Fesic)
Electronique
Mathématiques
Rigueur
Monde industriel
Technicien
Recueil d'expertise
Définition du besoin
Rédactionnel
Cahier des charges
Pédagogie, formation
Rédaction et conseils pour les dossiers JEI, CIR, AFT
Encadrement, recrutement
Levée de verrous informatiques
GNU/Linux debian (Ubuntu, Kubuntu...)
Utilisaton quotidienne depuis 15 ans
Nombreux serveurs dédiés OVH (dont administration de serveurs clients)
Apache
MySQL
Lightpd
SQLite
Serveurs divers (mail, imap...)
Scripts bash complexes
Backups (rsync, rssh, cronjobs...)
Sécurisation (SSH, failtoban, firewall, port-knocking...)
OpenWRT, WRTNode, NodeLua, DNS323...
STM32, Nucleo, etc
Yopy, Archos, Asus EA800, ESPxxx...
Portage de code linux
Librairies .NET
Android (java et c++ JNI)
Java mobile
Palm OS
Arduino (9/10)
Microcontroleur ATmel AVR (8/10)
Microchip Pic (5/10)
ARM (5/10)
Unitronics (2/10)
Capacité à apprendre un nouveau langage en quelques jours
C (10/10), C++ (9/10), Java (8/10)
PHP (10/10), Javascript (8/10), jQuery (7/10)
Command line unix (shell bash) (10/10)
SQL (9/10), UDF (User Data Functions) (7/10)
Assembleur: Motorola (9/10), Intel (7/10), ARM (5/10)
Autres: Fortran, Visual C#, R/Matlab/Octave, Python (7/10)
Grib 1 et 2
NetCDF
SHP (shapefiles), input/output
XML rapide (C++ natif)
sortie SWF (natif sans LibMing)
lecture PSD et JPEG natives
sortie SVG
lecture et écriture GIF natives
NMEA (GPS)
Divers formats propriétaires
GD, jpeg, netpbm
SDL, yGL, OpenGL (partiel), GPU (2/10)
proj4 (projections géographiques)...
MantisBT (suivis d'incidents)
DokuWiki (et autogénération de doc)
PhpMyAdmin
Versioning de code source (CVS, SVN, git)
LAMP / WAMP
Firefox, Chrome
Hugin (panoramas 3D), panotools, rawtherapee
Photoshop CS2
Visual Studio .NET et Express
Cygwin / MinGW
Cross-compilations diverses
Structuration de bases de données, requètes avancées
Conception d'interfaces applicatives (API) souples et optimisées
Appui / support aux web-agencies et web developers
Conseils et expertise (hébergement, technologies...)
Réalisations de modules PHP partiels ou complets
Microcontrolleurs (AVR, PIC, ARM...) et plateformes (Arduino, Raspberry, etc)
PCB / design de circuits intégrés (schémas, routage, réalisation)
Robotique, contrôle de moteurs, etc
Interfaçage et création de capteurs et modules
Bus I2C, SPI, 1-wire, RS232, RS485, USB, DMX...
Eagle (conception de PCB)
MPLab (programmation Pic)
Oscilloscopes
Analyseur de spectre
Analyseur logique multivoies
Alimentations de laboratoire
Microscope (composants SMT)
Jeu complet de programmateurs
Rédaction d'articles innovants en anglais (25K+ visites/mois)
Courts bulletins technologiques sur Google+ 800 followers et 8 millions de vues
Modérateur du 3D print show au Louvres, Paris, 2015
Fabcon 3D: talk de fermeture du show à Erfurt, 2014
Démonstrations (MEDEF Montpellier...) et formations en entreprise (Medincell...)
Auteur d'un tutoriel recommandé par et pour Openscad
Modélisations populaires (éléments fonctionnels d'imprimante 3D, connecteurs paramétriques...), 1500 téléchargements/mois
3 imprimantes 3D (différentes architectures)
extensions diverses (éléctronique et robotique)
fraiseuse numérique 4 axes (CNC)
10 ans de langue officielle en entreprise, lecteur de presse anglaise
Rédaction d'articles scientifiques et techniques, ou de bulletins de veille
Nombreux séjours en pays anglo-saxons, prestations à l'étranger (ex. 1 mois au Qatar)
Scientifiques (rapports, articles)
Administratives (dossiers JEI, CIR obtenus)
Qualité littéraire
Solaire / Ecologie
Mécatronique (mécanique et électronique)
Acier et bois
BTP et domotique
Réflex et objectifs pro (Canon)
Macro et micro photographie
Traitement et retouche d'images
Panorama sphériques, la plupart séléctionnés pour Google Earth
Randonnées, spéléo amateur
VTT enduro
Moto de piste (Afrique du Nord, Islande...)
Tests de réseaux de neurones multicouches et applications diverses
Petite librairie en C++ adaptable à divers problèmes
Analyse factorielles des correspondances
Analyse des composantes principales
Techniques de coalescence
Data mining sur historique de mesure (350 variables sur 8 années)
Présentation et commentaire des tendances et groupements
Représentation des connaissances culturelles musicales (www.musimap.com)
Enorme travail de recueil d'expertise (la culture humaine n'est pas statistique)
Optimisation de la base de données (350 styles musicaux, 70K albums, 3M de liens culturels)
Recompilation automatique de la forme de la base de donnée d'encodage
Recherche sémantique: contextuelle, multicritère, pondérée et justifiée
Hétérogénéité des données cherchées et des données résultantes
Calculs massifs de similitudes culturelles entre morceaux (métrique subjective)
Modélisation innovante des sols, couplée à un appareil de mesure
Reprise et finalisation d'un projet difficile
Nettoyage en profondeur du code source existant, commentaires
Interfaçage web à destination de laboratoires
Problèmes de couplages de modèles physiques (1 mois de mission au Qatar)
Architecture de la plateforme scientifique pour couplages (technique), en C++
Langages scientifiques: Matlab, Scilab, etc
Projet Smartgrappe sur téléphone mobile Android (smartphone)
Transfert technologique
Centre de recherche publique
Projet en réponse à un appel d'offre publique
Participation à l'invention (brevet)
Contrôle de la caméra embarquée
Segmentation d'image
Recalibration colorimétrique
Couplage Java Android et C++ (JNI)
Pour traitement d'images aérienne en visible et proche infrarouge
A base de Perceptron multicouche (Réseaus de neurones)
Capteur Foveon
Contexte: soufflerie industrielle, pulvérisation, validation d'une simulation numérique
Controle DMX d'un laser pour effectuer une prise de vue de coupe
Orthorectification automatique des images prises de biais (PC linux)
Circuit de moto d'Alès
Constitution automatisée de groupes de niveaux
Puces RFID actives
Traitement de signal (utilisation du ratio signal/bruit)
Placement souple et automatique d'un grand nombre d'éléments géométriques
Attraction individuelle des éléments vers leur emplacement respectif
Répulsion des éléments qui se chevauchent (dissociation visuelle)
Réglage de l'inertie des mouvements individuels
Utilisation de la friction pour stabiliser la propagation des contraintes
Interface de réglage pour mise au point du modèle physique
Répulsion utilisé pour le placement des albums de www.musimap.com
Modèle d'interpolation polynomial bicubique multidimensionnel
Interpole et lisse des séries de cadrages souhaités sur une zone 2D
Prise en compte de la géométrie et du temps (vitesses réglables)
Utilisé pour les changements de vues dans www.musimap.com
Optimisation d'un parcours dans des réseaux de transports selons plusieurs critères
Prototype logiciel validé sur smartphone java mobile
Collaboration à la définition d'un prototype matériel ultraléger (format carte de visite)
Simulation d'un modèle physique sur smartphone Palm et Blackberry
Segments fixes et jonctions pivotantes
Pistons à élongation cyclique et réglable
Friction, propagation de contraintes, réaction, gravité
Permet de construire des modèles de marche, de roulement ou de reptation
Mise au point d'une sécurisation d'un flux de données entre un serveur et ses clients
Cryptographie symétrique sur base de fonction chaotique
Explication des principes et de la mise en oeuvre
Techniques de parade contre le piratage
Amélioration d'un algorithme de compression de type LZ1 (ou LZ77)
Adaptation à une décompression avec très peu de mémoire pour systèmes embarqués (4K ou moins)
Réglages automatiques dynamiques à la compression
Porté en assembleur Motorola, en C et en Java
Ecriture d'API optimisées pour le parcours du descriptif XML, pour un logiciel de simulation hydraulique
Extrêmement rapide (indexation <1s pour un XML de 200Mo)
Faible encombrement (1500 lignes)
Faible consommation de mémoire (réduction des allocations)
Recherche et modifications facilitées (API innovante)
Ecrit en C++, fourniture d'API pour Fortran (en remplacement de Windev)
Interfaçage d'un automate industriel Unitronics PLC / Ladder
Automatisation de la récupération de données distantes
Visual C# sous windows
guide touristique au format "carte de visite" (projet non abouti)
parcours multicritères dans un réseau de transport hétérogène
prototype logiciel validé sur java mobile sur téléphone P900
cahier des charges pour le prototype matériel (choix plateforme, CPU, RAM...)
programmation d'un micro système d'exploitation sur cette plateforme
Terminal de paiement électronique à bas cout (110€TTC à l'unité)
Fonctionalité de type Moneo pour petits commerçants (facilité et vitesse des transaction de petits montants)
Sur Raspberry Pi, douchette scanner USB, double écran, pavé numérique
Etude de la re-végétalisation de sols reconstitués
Fonctionnement continue sur plus de deux ans, reconduite
Raspberry + caméra + micro controlleurs + réseau
Mission pour le CNRS Ecotron de Baillarguet et Valorhiz
Relevé terrain de parcelles pour arrosage agricole
Simplification et gestion graphique des polygones collectés
Transfert vers le canon d'arrosage (Bluetooth)
Prototype complet (dont PCB dédié pour shield Arduino)
Conception d'un "shield" arduino Mega
Controle et diagnostic multiples (niveaux, présence, éclairage ouverture de porte...)
Formation du personnel au monde de l'Arduino
Application au suivi de Rhinocéros en Afrique (WWF)
Module basse consommation
Enregistrement des venues des animaux près des mares
Autre applications clients (marque blanche)
Interfaçage des lecteurs et tags RFID de la marque
Facilité de programmation et de déploiement
Transfert par port série (pas besoin de flasher la carte)
Interpréteur optimisé d'un petit langage dédié
Tag RFID actif en 2.4GHz
Réalisation du firmware
Processeur Pic18F et module RF CC2500
CAO Proteus (électronique)
Régulation "intelligente" d'une ventilation solaire
Chauffe-eau triphasé commandé en Bluetooth depuis un smartphone
Héliostat (chauffage et lumière solaire via un miroir mobile robotisé)
GB / missionné pour concevoir une imprimante 3D "prosumer" innovante (facile d'emploi)
Nombreuses expérimentations et améliorations mécatroniques et articles documentés
Programmation de plugins / post-traitement dans la chaîne de traitement (gradients de température pour impression de bois, cf. wired.com), en python
Contexte de courses de voiliers (Route du Rhum, Jaques Vabre,Vendée Globle, Volvo Ocean Race,etc)
Prédiction des trajectoires les plus intéressantes (plus rapidement que MaxSea)
Cartographie réelle et prévisions météo
Génération d'isolignes et d'isopolygones (algorithme SIG)
Traits continus, et non pas en segments déconnectés comme avec l'état de l'art
Entrée: matrice CSV, l'algorithme supporte les données manquantes
Nombreuses options: interpolation, filtrage, simplification...
Sortie: formats SVG, XML, SWF
Extraction de fonds de cartes en précision variable (outil SIG)
Clipping d'une zone de couverture
Définitions locales de la précision (simplifications localisées)
Entrée: fichiers shapefiles (SHP)
Sortie: sous-zone aux formats SVG, XML, SWF (flash)
"Moving map" GPS sur fond de carte inconnu
Pas besoin de géoréférencement des cartes a priori
Fonctionne avec des cartes non homogènes (photos, dessins...)
Ecoute du GPS au standard NMEA (communication bluetooth et série)
Interface exclusive de type GTK (entièrement sous contrôle, jusqu'à l'alpha-blending)
Portage très facile: ex. développement sous Windows, recompile sur Palm OS
Serveurs météo quelconques (format GRIB/NetCDF)
Données carto vecto GSHHS (résolution 70m)
Interfaces en Java mobile, Flash, Apple iOS, HTML
Bande passante négligeable (~1 octet par valeur et par point)
Alertes météo sur événement géolocalisés quelconques
Calcul de la frontière jour/nuit/pénombre (couche SIG)
Limite géographique en fonction de la date et de l'heure
Sortie XML ou PNG en coordonnées polaires ou longitude/latitude
Trace une mappemonde des accès sur un site internet
Base de donnée IP/Géo opensource
Utilise GD, en C++ avec des structures de données compactes
Grandes liberté d'extension (ex. variations, lissage...)
Navigation 3D dans un graphe tiré d'une base SQL
En java avec le moteur JMonkeyEngine
Déploiement en version JNLP auto-signé (one-click installation)
Directeur R&D externe de PicSide (startup)
Moteur de comparaison à base de descripteurs rapides en cascade
Définition des interfaces et bases de données
MMORPG (casual game) sur téléphone mobile et/ou navigateur web
Simulation de courses de voiliers entre un grand nombre de joueurs
Moteur de jeu en C++ / SQL coté serveur (> 65KLOC)
Client Java mobile (exécutable ~120Ko max)
Exécutable unique (sans J2ME Polish): verrou technologique franchi
Validé par Orange Europe et autres acteurs majeurs
Besoin en bande passante extrèmement réduit par session de jeu
Compatible avec les téléphones J2ME de 2001 (écrans ~128x128 pixels)
Météo GRIB en temps réel (serveurs de la NOAA), interpolée et optimisée
Liberté de navigation sur le monde entier (résolution à 70m)
Respect du comportement physique des voiliers (polaires spécifiques)
Système d'alertes de navigation et d'événements météo par SMS
Jeu de flipper sur smartphone Palm
Jeu primé et plusieurs fois best-seller sur Palm OS, retenu par Sony pour distribution avec leurs PDA
Langage de haut niveau pour le fonctionnement des tables (compilé en Perl ~1500 lignes). Interpréteur en assembleur (motorola) et C++
Modèles physique des rebonds exact en virgule fixe (nombres entiers)
Travail de recherche assez innovant à l'époque (1996)
Textures définies en tout point de l'espace (évite le mapping)
Utilisation d'un bruit fractal (bruit brun, 1/f)
Algorithmes de lancé de rayons, réflexions sur objets simples
Petite grammaire pour la définition de la texture
Automatise et évite le découpage manuel des graphismes d'une application
Entrée: le fichier Photoshop de travail, en couches commentées
Sortie: un fichier des éléments graphiques, très optimisé (format propriétaire)
Pré-analyse géométrique des couches, optimisation des couleurs
Recompression en "sprites", avec leurs propriétés (position, type, relations, transparence)
Algorithmes de rendu associés et optimisés (multilangages et multiplateformes)
Réduction du nombre de couleurs d'une image pour une meilleure compression
Basé sur des réseaux de neurones de Kohonen
Meilleur rendu et contrôle que les algorithmes classiques
Création d'un système de mini base de donnée très souple
Extensible trivialement sans connaissance des modèles de BDD
Ressemblance aux principes de CouchDB, sans serveur associées
Stockage des éléments dans des fichiers et templates hiérarchisés
Parsing et requetes PHP très simplifiées
Idéal pour webdesigner sans expérience de la programmation
Très efficace pour de petits projets, maintenance et administration nulles
Script PHP générateur de code, à partir d'une base de donnée MySQL commentée
Fournit des classes d'interface en PHP, Java et C++
Gère les droits utilisateurs d'accès aux tables (3 niveaux)
Automatise et systématise la validation des type et valeurs des champs et relations
Création de systèmes de fichiers virtuels (FUSE, Linux)
Documents et dossiers en graphe (non nécessairement hiérarchisés)
Manipulations sémantiques faites via le système de fichier virtuel lui-même
Utilisation de "tags" hiérarchiques qui font partie du système
Compatible avec toutes les applications (afficheurs d'image, bureautique, etc)
Contenu et génération
Redesign et contraintes
Algorithmes associés (Android)
Aide-mémoire crypté en ligne, extrêmement léger
Les données sont stockées et transférées cryptées (Blowfish)
Utilisé quotidiennement et professionnellement
Aperçu web dynamique d'un graphe de type mindmap
Interfaçage direct et immédiat avec les fichiers XML de FreeMind (mind mapping Opensource)
Tag cloud de l'arbre
Ouverture et fermeture des branches correspondant à un mot clé saisi (autocompletion dynamique)
PHP et javascript léger (JQuery)
Clés collectées sur des pages et permettant d'accéder à d'autres pages
Gestion des droits elle-même à base de clés
Administration et rédaction très simplifiée
Publication multilangue intégrée, brouillons, publications à date donnée...
A vocation "mobile" principalement
Système de gestion d'envoi de SMS
Sous-compte et API de gestion des comptes et des envois
Compatible Clickatell et Zong
Intérêt: bénéficier d'une compétence senior, généralement réservée aux grandes entreprises ou aux start-ups fortement financées, pour l'industrie ou la recherche.
Exemples: PalmSource, start-ups, recherche publique, triplement contacté par google...
Intérêt: S'adapter à des structures légères: TPME, start-ups... mais aussi pour des projets innovants qui comportent une grande variabilité intrinsèque. Très grande curiosité naturelle.
Exemples: Web service initial, découverte d'un manque en R&D, aide à la R&D, retour et finalisation du web service. Travail dans la course de voilier, les sciences du sol, l'imagerie numérique en viticulture, le jeu massivement multijoueur mobile, la météo, l'électronique...
Intérêt: la réalisation du projet passe d'abord, ainsi que le respect du client, de ses propres imprévus et de ses propres clients.
Exemples: non facturation de prérequis manquants (retard client sur prototype matériel), amélioration et développement d'algorithmes imprévus en imagerie (existant insuffisant), mise en place d'un service d'alertes SMS payant en 2 semaines (charge >100H/semaine).
Intérêt: Un technicien et un dirigeant: je connais aussi les problèmes et spécificités de la gestion des entreprises. Je suis extrèmement curieux, j'aime les sciences cognitives, le recueil d'expertise et apprendre en permanence.
Exemples: Gérant de startup (Ozapp), Technical leader (PalmSource), Directeur Technique et R&D (Ozapp, The World Is A Mix / Musimap). Rédaction de dossiers JEI et CIR. Recueil d'expertise sur des projets culturels complexes (Musimap)
Intérêt: motivé par les défis techniques (algorithmie, indisponibilité de solutions, optimisation de l'existant)
Exemples: calculs d'isovaleurs continues sur des données matricielles incomplètes (SIG), réalisation d'un tableur compatible Excel sur un palm (primé de nombreuses fois), d'un jeu de flipper avec une physique réaliste (et un calcul en vrigule fixe), d'une cartographie mondiale précise sur téléphone mobile java bas de gamme...
Intérêt: anglais fluide, connaissance et respect des cultures et points de vues
Exemples: PalmSource (direction technique d'un projet qui implique des équipes françaises, américaines, canadiennes, indiennes, et coréennes). Missions à l'étranger: un mois au Qatar dans un centre de recherche, 15 nationalités présentes.