Questo è un elenco dei vari linguaggi e framework che sono in grado di usare. Comunque, potete anche andare a vedere una lista dei miei progetti in questa pagina. Oltre a quelli, principalmente ho lavorato a web app per uso interno all’azienda nella quale lavoravo, che ho deciso di non inserire nell’elenco (la maggior parte delle mie abilità le ho apprese con quei progetti interni).
Javascript è il linguaggio che utilizzo di più. Mi piace molto perché è una specie di “lingua franca”, dato che si può usare per qualsiasi tipo di progetto, che sia un applicazione desktop, mobile, sito, script o altro. Con javascript ho avuto occasione di costruire siti (come quello che state visitando!), applicazioni web, una PWA, un’estensione e almeno uno script node. Inoltre, nella sezione “Progetti” del sito, potrete trovare anche una libreria che ho creato per facilitare la comunicazione fra gli script delle estensioni di Google Chrome. Potrete trovare altre informazioni su quello che so fare con javascript leggendo il mio blog.
Le applicazioni web e i siti hanno bisogno anche della grafica oltre alla logica! Per questo motivo uso di frequente l’HTML e i CSS. In genere non ho grossi problemi a tradurre il design che ho preparato in codice, anche se i CSS sono famosi per non essere sempre intuitivi o semplici.
Il preprocessore SASS è davvero una tecnologia interessante! Conosco i vantaggi che derivano dal suo utilizzo e l’ho utilizzata in vari progetti nel corso del tempo. Trovo molto comodi i mixin e la possibilità di utilizzare variabili di vari tipi nel codice, perché sento che danno molta più libertà e rendono il codice più modulare.
Ho lavorato per diverso tempo con PHP. Tutt’ora è il linguaggio che principalmente utilizzo quando devo scrivere del codice per il backend, perché la maggior parte dei server è in grado di eseguirlo senza particolari configurazioni. Mi è capitato di utilizzare un paio di framework e di avere a che fare con il codice di Wordpress. Comunque, quando ci si addentra in questi ambiti, trovo sempre molto utili le documentazioni!
Python mi piace davvero molto! E’ in gara per essere il mio linguaggio preferito, anche se non ho modo di utilizzarlo troppo spesso. Finora ho programmato unicamente script. Con questi progetti ho imparato a fare scraping, ad aprire e maneggiare database SQLite e a consumare API. Mi piace approfondire la conoscenza che ho anche delle sintassi più avanzate di questo linguaggio, come i decoratori, i context manager e le comprehensions.
Quando ho iniziato a studiare programmazione a scuola, avevo imparato a programmare in C. Quando poi ho imparato Javascript, Typescript e Python, mi sono reso conto di quanto i linguaggi di basso livello siano importanti, per via delle loro performance e per come possono essere pubblicati. Per questo motivo sono stato attirato dalle tante interessanti funzionalità fornite da Rust. Trovo che Rust sia un ottimo linguaggio e direi anche uno dei miei preferiti. Le librerie sono ben pensate e sviluppate, e l’idea di poter gestire la memoria senza usare un Garbage Collector è senz’altro molto allettante.
Trovo che React sia un’ottimo framework per il frontend di un’applicazione. Mi sono convertito a React da almeno un anno, dopo aver usato per diverso tempo AngularJS. Inizialmente ho avuto un po’ di difficoltà a comprendere il suo funzionamento, ma ora sento di averci preso la mano. Dato che mi piace molto, ho deciso di utilizzare questo framework per sviluppare il mio sito.
Recentemente ho deciso di approfondire Astro, scoprendo poi che era esattamente ciò che ho sempre voluto per il mio sito: un vero e proprio generatore di siti statici che non include alcun codice javascript di default! Ho deciso quindi di riscrivere interamente il mio sito per utilizzare questo nuovo framework. Questo lavoro è ora terminato, ed è stato molto più semplice e piacevole di com’è stato originariamente lavorare con Gatsby.
Ho utilizzato Lumen come backend PHP per una web app. Ho quindi imparato come implementare varie route, come interfacciarmi con un database mysql e come implementare autenticazioni e permessi. Trovo che sia uno splendido framework, leggero e veloce da impostare, per creare un semplice backend di tipo REST. Purtroppo, al momento è un progetto che è stato deprecato, ma il suo spirito rimane vivo nella nuova struttura modulare di Laravel.
Git è uno strumento magnifico. L’ho imparato appena uscito da scuola, e ammetto che mi ha causato dei grossi mal di testa! Ora però sono in grado di utilizzarlo per il mio lavoro di tutti i giorni, anche se, lavorando da solo, ho poche occasioni di provarlo nell’ambito di un team. Mi ha colpito molto come alcuni strumenti lo utilizzino per pubblicare in modo estremamente rapido il proprio codice su un web server o un’altra piattaforma, in genere con un semplice “git push”.
Utilizzo github da un po’ di tempo ormai, e in particolare da quando hanno consentito di caricare repository privati. Penso sia il miglior posto dove condividere il proprio lavoro e sviluppare progetti open-source. Potete visualizzare il mio account github a questo link.
Visual Studio Code mi ha servito bene per diversi anni. Tutt’ora trovo che sia uno strumento efficace, pratico e molto utile. La grafica è leggera ed è possibile personalizzarlo a piacere. Trovo molto comodo anche avere il terminale integrato e varie funzioni che permettono di risalire alla dichiarazione (o ai riferimenti) di una variabile.
Dopo VSCode, la leggerezza ed estrema possibilità di personalizzazione mi ha portato a utilizzare Neovim come IDE a tempo pieno. Lo utilizzo per scrivere codice, per prendere note e per scrivere il contenuto di questo sito. Anche se richiede parecchio tempo per riuscire a renderlo proprio, ne vale decisamente la pena.
Node.js è uno strumento che trovo molto interessante. L’ho utilizzato per il progetto che ho portato alla mia tesi di maturità, dove l’ho sfruttato per il backend di un gioco RPG multiplayer (implementando praticamente tutto da zero). Poter utilizzare javascript nei server apre molte porte agli sviluppatori frontend come me!
Ho comprato la suite d’affinity verso metà 2020, e devo dire che penso sia fantastica! Uso Affinity Designer per creare dei prototipi di layout per siti o applicazioni che devo sviluppare, oltre che per piccoli lavori di design, quando necessario. Ho avuto modo di usare anche Affinity Publisher in un’azienda per la quale ho lavorato. Affinity Photo è il programma in cui ho meno esperienza, dato che sono abituato ad usare GIMP per fare modifiche veloci alle immagini, ma ho comunque avuto modo di usarlo e mi trovo abbastanza bene.
Se vuoi contattarmi per un lavoro, puoi inviare un’email a info@andreadev.it