À propos de moi

Un portrait de moi-même (Armin Kunkel)

Bonjour, je m’appelle Armin Kunkel. Je développe des produits numériques avec un souci de valeur durable. En tant qu’auteur, j’écris des ouvrages techniques pratiques et je tiens un blog sur des sujets informatiques. Mon expérience va de la recherche universitaire et des projets open-source au développement web appliqué.

Mon parcours a commencé par des études en sécurité informatique, que j’ai ensuite réorientées vers l’informatique.

Au début de mon (alors) cursus de licence à Hochschule Karlsruhe (Université des Sciences Appliquées), j’ai développé un intérêt pour la développement web et commencé à apprendre HTML, CSS, JavaScript & PHP. La réalisation d’un livre d’or m’a permis d’explorer ces technologies en étudiant la documentation (MDN, docs PHP), des tutoriels, des livres et des vidéos.

Sur la voie pour devenir développeur web, j’ai appris les différences entre HTML 4 et HTML 5, l’évolution de CSS 2 à CSS 3, l’architecture client-serveur, ainsi que les différences entre des sites statiques (sans JS) et dynamiques (avec JS). J’ai particulièrement apprécié les avantages des applications monopage (SPA). Après avoir posé les bases, j’ai approfondi mes connaissances en SSR (rendu côté serveur), SSG (génération statique), outils de build (Webpack, Vite), frameworks CSS (W3CSS, Bootstrap), préprocesseurs CSS (SASS, LESS, Stylus, SCSS), approches utility-first (p. ex. TailwindCSS) et l’usage des variables CSS.

J’ai exploré l’histoire et l’évolution de JavaScript — de LiveScript (Netscape Navigator) à la norme ECMAScript. J’ai également acquis de l’expérience avec AJAX pour les requêtes serveur, la validation de formulaires, les API Web et TypeScript. Pendant mon stage, j’ai travaillé avec ExtJS puis avec Angular (v5–v7). Avec Vue.js (v2 et v3), j’ai trouvé un framework puissant pour construire des applications et composants ES/TS. Avec Nuxt.js (v2 et v3), j’ai ajouté une couche d’abstraction supplémentaire pour les applications de production. Des bibliothèques courantes comme jQuery et Lodash ont aussi fait partie du parcours. Je maîtrise également des sujets comme le responsive design, le SEO, l’ergonomie et l’expérience utilisateur.

Pour le stockage et la gestion des données, j’ai travaillé avec des technologies serveur comme PHP, les servlets Java et des serveurs web (par ex. Express dans NodeJS, Apache httpd, Nginx). J’ai appris les WebSockets et SSE (Server-Sent Events) pour la communication bidirectionnelle, GraphQL pour la communication via un point unique, ainsi que la conception d’API REST et HATEOAS (Hypermedia as the Engine of Application State). Avec des moteurs de templates tels que Thymeleaf (Java), JSP (Java) et Pug (NodeJS), j’ai exploré une autre manière de générer des pages HTML dynamiquement côté serveur. Mon focus backend s’est porté sur Spring Boot (Spring MVC, Spring Security, Spring Data JPA, Spring Validation) dans l’écosystème Java. Pendant mon stage, j’ai appris l’architecture en trois couches (contrôleur, service et DAO) avec Spring Boot.

Pour la sérialisation des données dans les requêtes HTTP, j’ai approfondi mes connaissances en XML (DTD, XSD, XSLT) et JSON et me suis familiarisé avec des langages de description tels qu’ASN1 et Protocol Buffers. Grâce à l’OWASP et au BSI, j’ai étudié la sécurité des applications web et l’ai pratiquée concrètement (y compris avec Kali Linux). Pour finir, j’ai appris divers langages de programmation, dont Python, Haskell, Elixir, Assembleur, Kotlin, Go, C & C++, VHDL et même Brainfuck.

Armin Kunkel

Blog technique & boutique

Informaticien

  • Études : sécurité informatique (commencées)
  • Réorientation vers l’informatique
  • Hochschule Karlsruhe (Université des Sciences Appliquées)
  • Stage : ExtJS, Spring Boot (architecture 3 couches)

Développement web

  • Débuts (livre d’or, HTML, CSS, JS, PHP)
  • Sources d’apprentissage : MDN, docs PHP, tutoriels, livres, vidéos
  • HTML & CSS
  • HTML 4 vs HTML 5
  • CSS 2 vs CSS 3
  • Préprocesseurs CSS : SASS, LESS, Stylus, SCSS
  • Frameworks : Bootstrap, W3CSS
  • TailwindCSS (utility-first)
  • Variables CSS
  • JavaScript
  • Histoire : LiveScript → ECMAScript
  • AJAX, validation de formulaires, APIs Web
  • jQuery, Lodash
  • TypeScript
  • SPA vs sites statiques
  • SSR & SSG

Frameworks

  • Angular (v5–v7)
  • Vue (v2, v3)
  • Nuxt (v2, v3)

Outils de build

  • Webpack
  • Vite

Backend

  • Langages : PHP, servlets Java, NodeJS
  • Serveurs web : Apache, Nginx, Express

Communication

  • REST, HATEOAS, GraphQL
  • WebSockets, SSE

Moteurs de templates

  • Thymeleaf, JSP, Pug

Spring Boot

Spring MVC · Spring Security · Spring Data JPA · Spring Validation

Formats de données

  • JSON, XML (DTD, XSD, XSLT)
  • ASN.1, Protocol Buffers

Sécurité

OWASP, BSI · Kali Linux (BackTrack)