Chi sono

Ciao, mi chiamo Armin Kunkel. Sviluppo prodotti digitali con un’attenzione al valore sostenibile. In qualità di autore, scrivo libri tecnici pratici e gestisco un blog su temi IT. La mia esperienza spazia dalla ricerca accademica e progetti open-source allo sviluppo web applicato.
All’inizio del mio (allora) corso di laurea presso Hochschule Karlsruhe (Università di Scienze Applicate), ho sviluppato interesse per il sviluppo web e ho iniziato a imparare HTML, CSS, JavaScript & PHP. Realizzare un guestbook mi ha permesso di esplorare queste tecnologie studiando documentazione (MDN, documentazione PHP), tutorial, libri e video.
Sul percorso per diventare sviluppatore web, ho imparato le differenze tra HTML 4 e HTML 5, l’evoluzione da CSS 2 a CSS 3, l’architettura client-server e le differenze tra siti statici (senza JS) e dinamici (con JS). Ho apprezzato in particolare i vantaggi delle Single-Page Applications (SPA). Dopo aver posto le basi, ho ampliato le mie conoscenze a SSR (server-side rendering), SSG (static-site generation), tool di build come Webpack e Vite, framework CSS (W3CSS, Bootstrap), preprocessori CSS (SASS, LESS, Stylus, SCSS), approcci utility-first (ad es. TailwindCSS) e uso delle variabili CSS.
Ho esplorato la storia e lo sviluppo di JavaScript – da LiveScript (Netscape Navigator) allo standard ECMAScript. Ho acquisito esperienza con AJAX per richieste al server, validazione dei form, Web API e TypeScript. Durante il tirocinio ho lavorato con ExtJS e successivamente con Angular (v5–v7). Con Vue.js (v2 e v3) ho trovato un framework potente per creare applicazioni e componenti basati su ES/TS. Con Nuxt.js (v2 e v3) ho aggiunto un ulteriore livello di astrazione per app di produzione. Librerie diffuse come jQuery e Lodash hanno fatto parte del percorso. Mi sono inoltre occupato di responsive design, SEO, usabilità ed esperienza utente.
Per l’archiviazione e gestione dei dati ho lavorato con tecnologie server come PHP, Java Servlets e server web (ad es. Express in NodeJS, Apache httpd, Nginx). Ho studiato WebSocket e SSE (Server-Sent Events) per la comunicazione bidirezionale, GraphQL per la comunicazione a endpoint unico, e come progettare API REST e HATEOAS (Hypermedia as the Engine of Application State). Con motori di template come Thymeleaf (Java), JSP (Java) e Pug (NodeJS) ho esplorato un altro modo per generare pagine HTML dinamicamente sul server. Il mio focus backend è stato il framework Spring Boot (Spring MVC, Spring Security, Spring Data JPA, Spring Validation) nell’ecosistema Java. Durante il tirocinio ho appreso l’architettura a 3 livelli (controller, service, DAO) con Spring Boot.
Per la serializzazione dei dati nelle richieste HTTP ho approfondito XML (DTD, XSD, XSLT) e JSON e mi sono familiarizzato con linguaggi di descrizione come ASN1 e Protocol Buffers. Attraverso OWASP e il BSI ho studiato la sicurezza delle applicazioni web e l’ho praticata sul campo (anche con Kali Linux). Infine, ho imparato vari linguaggi di programmazione tra cui Python, Haskell, Elixir, Assembly, Kotlin, Go, C e C++, VHDL e persino Brainfuck.
Armin Kunkel
Blog tecnico e negozio
Ingegnere informatico
- Studi: sicurezza IT (iniziati)
- Passaggio a informatica
- Hochschule Karlsruhe (Università di Scienze Applicate)
- Tirocinio: ExtJS, Spring Boot (architettura a 3 livelli)
Sviluppo web
- Inizio (guestbook, HTML, CSS, JS, PHP)
- Fonti di apprendimento: MDN, documentazione PHP, tutorial, libri, video
- HTML e CSS
- HTML 4 vs HTML 5
- CSS 2 vs CSS 3
- Preprocessori CSS: SASS, LESS, Stylus, SCSS
- Framework: Bootstrap, W3CSS
- TailwindCSS (utility-first)
- Variabili CSS
- JavaScript
- Storia: LiveScript → ECMAScript
- AJAX, validazione form, Web API
- jQuery, Lodash
- TypeScript
- SPA vs siti statici
- SSR e SSG
Framework
- Angular (v5–v7)
- Vue (v2, v3)
- Nuxt (v2, v3)
Strumenti di build
- Webpack
- Vite
Backend
- Linguaggi: PHP, Java Servlets, NodeJS
- Server web: Apache, Nginx, Express
Comunicazione
- REST, HATEOAS, GraphQL
- WebSocket, SSE
Motori di template
- Thymeleaf, JSP, Pug
Spring Boot
Spring MVC · Spring Security · Spring Data JPA · Spring Validation
Formati dei dati
- JSON, XML (DTD, XSD, XSLT)
- ASN.1, Protocol Buffers
Sicurezza
OWASP, BSI · Kali Linux (BackTrack)
