Seguici su:
Programmazione Web Italia

Più di recente, su PWI...

Un esempio di Curriculum Vitae efficace per trovare lavoro come developer

Un esempio di Curriculum Vitae efficace per trovare lavoro come developer

In pochi paragrafi un Curriculum Vitae deve essere in grado di descriverci a persone che di noi nulla sanno... Anni di studio e lavoro condensati in una o due facciate, massimo. Un foglio (o file PDF) messo in competizione con tanti altri, generalmente tutti uguali. Come far emergere le nostre peculiarità e le nostre competenze?
Qui di seguito una serie di suggerimenti ed una proposta di template. Ma la prima regola rimane... NO file Word!

Introduzione

Lo scopo di questo articolo è quello di aiutare a redigere un Curriculum Vitae sintetico, facile da consultare ed efficace nel comunicare, a chi lo legge, le nostre competenze e la nostra personalità. Il Curriculum che andremo a redigere è focalizzato sulla descrizione delle competenze di uno sviluppatore software, ma può essere facilmente adattato ad ogni altra figura professionale interessata ad applicare questi suggerimenti.

Sarà un CV molto focalizzato sulle caratteristiche personali di chi lo redige: ad una classica sezione "Su di me" affiancheremo delle frasi d'effetto (considerazioni o citazioni) e una sezione basata sui progetti personali del candidato. In questo modo potranno emergere la personalità e la peculiare visione che il candidato ha circa la propria attività, non limitando il testo ad una sterile elencazione di competenze tecniche.

La sezioni, i titoli e i paragrafi, gli elenchi sono fatti in modo tale da essere il più possibile chiari anche ai software di analisi automatica, caratteristica che si traduce in maggiore efficenza e tempo risparmiato al candidato.

Il CV sarà il più possibile sintetico (massimo 2 facciate) ma esaustivo, riportando solo i dettagli più salienti e lasciando spazio ad eventuali approfondimenti da discutere in sede di colloquio. Continua...

Pubblicato il

Tabella dinamica in HTML, Javascript e CSS - parte 2:
popolare una tabella HTML con dati ottenuti da sorgenti remote

Tabella dinamica in HTML, Javascript e CSS - parte 2: popolare una tabella HTML con dati ottenuti da sorgenti remote

Nella parte precedente...

... Abbiamo ricreato una semplice e funzionale tabella che mostra i dati di tre ipotetici utenti; una ottima soluzione in caso di tabelle molto brevi e dati statici, ma cosa succederebbe se i dati fossero nell'ordine delle decine o centinaia? E cosa succederebbe se questi dati fossero serviti tramite JSON da servizi esterni? In questi casi è necessario sviluppare una soluzione dinamica che si occupi di eseguire il fetch (reperimento) dei dati ed il conseguente popolamento dinamico della tabella.
Lo vediamo in questo capitolo.

Popolare una tabella HTML con dati ottenuti da sorgenti remote

L'obiettivo è quello di popolare la tabella in maniera dinamica attraverso dati provenienti da una sorgente remota, per fare questo sarà necessario aggiungere un file JavaScript in cui gestiremo la chiamata remota e creazione delle righe della tabella. La sorgente esterna sarà fornita dalla url: https://jsonplaceholder.typicode.com/users, un servizio a scopo didattico che fornisce una lista di utenti in formato JSON.

La situazione iniziale prevede un file HTML simile al precedente, ma in questo caso non ci sarà alcun contenuto all'interno del tag <tbody>: questo sarà aggiunto dinamicamente. Ecco il contenuto. Continua...

Pubblicato il

I framework Web più utilizzati dagli sviluppatori

La classifica dei framework Web più utilizzati a livello globale nel 2023.
Guarda il grafico...

I framework Web più utilizzati dagli sviluppatori
Pubblicato il

I tre paradigmi di programmazione: strutturata, ad oggetti e funzionale

I tre paradigmi di programmazione: strutturata, ad oggetti e funzionale

I principali paradigmi di programmazione si riducono a tre: programmazione strutturata, programmazione ad oggetti e programmazione funzionale. Lo scopo di questo articolo è quello di evidenziarne i caratteri salienti e i vantaggi che derivano dalla loro applicazione.

Programmazione strutturata

Lo scopo della programmazione strutturata è la decomposizione di una applicazione software in moduli, ogni modulo può, a sua volta, essere suddiviso ricorsivamente in componenti più piccole, fino ad arrivare alla singola funzione atomica. Questo paradigma permette di affrontare un problema complesso (la nostra applicazione) attraverso un approccio divide-et-impera separando le sue funzionalità in unità più piccole e gestendole in maniera indipendente: è un approcciò più strategico nella gestione della complessità.

Ogni funzione può essere descritta tramite l'utilizzo delle tre strutture di controllo: sequenza, selezione e iterazione, ne deriva che tutti i programmi, a prescindere dalla loro complessità, possono essere descritti utilizzando solamente questi tre principi di base.

Un altro concetto importante circa il paradigma della programmazione strutturata e il suo approccio modulare riguarda il fatto che le funzioni atomiche risultanti dalla decomposizione sono soggette a test formali volti a verificare la presenza eventuale di bug: il successo del test ci dimostra che un tale bug è presente nel sistema che stiamo progettando; al contrario il fallimento del test ci può dare una ragionevole sicurezza che certuni bug non siano presenti, nonostante non sia formalmente possibile dimostrarne Continua...

Pubblicato il

I linguaggi di programmazione più utilizzati dagli sviluppatori nel mondo

La classifica dei 10 "linguaggi di programmazione" più utilizzati dagli sviluppatori nel mondo.
Guarda il grafico...

I linguaggi di programmazione più utilizzati dagli sviluppatori nel mondo
Pubblicato il

Tabella dinamica in HTML, Javascript e CSS - Parte 1:
una tabella statica

Tabella dinamica in HTML, Javascript e CSS - Parte 1: una tabella statica

Funzionalità come il sorting e la paginazione permettono di interagire con una tabella in maniera più veloce ed efficente, spesso ci si affida a soluzioni di terzi, ma in questa guida vorrei farvi provare a sviluppare una tabella dinamica partendo da zero e utilizzando solo le versioni vanilla di HTML, JavaScript e CSS. Spero di esservi utile!

Introduzione

La nostra tabella dinamica si svilupperà in maniera progressiva partendo da una semplice soluzione statica con i dati tabellari scritti a mano dallo sviluppatore, procedendo con l'inserimento di dati ottenuti attraverso una chiamata HTTP e aggiungendo, infine, funzionalità più avanzate come la paginazione, il sorting e il filtering. Le varie sezioni saranno elaborate in momenti differenti e potrebbero non essere ancora disponibili: incoraggiate il mio lavoro condividendo questa pagina o mettendo un like!

Una semplice tabella statica HTML

Per iniziare e per ripassare un poco l'argomento, sviluppiamo una semplice tabella HTML utilizzando i tag previsti nelle specifiche HTML5. Qui di seguito scrivo il codice che definisce una tabella per un insieme di ipotetici utenti. Continua...

Pubblicato il

Il selettore :has() in CSS - descrizione ed esempi pratici

Il selettore :has() in CSS - descrizione ed esempi pratici

Il selettore :has(), proposto nelle specifiche CSS level 4, fin dalla fine del 2023 è adottato dalla maggior parte dei browser: è giunto il momento di capire come utilizzare questa nuova opportunità.

Il selettore :has() in CSS4

Il selettore :has() consente agli sviluppatori di selezionare elementi del DOM che contengono al loro interno elementi che rispondono al selettore passato come parametro nella funzione: :has(). E' essenzialmente un selettore che permentte di ottenere il "parent" degli elementi definiti attraverso il parametro.

Provo a fare un semplice esempio chiarificatore Continua...

Pubblicato il

Setup di un progetto Node / Express

Setup di un progetto Node / Express

Esistono tante guide per fare il setup di un progetto Node / Express, in questa vorrei però aggiungere la descrizione di qualche strumento e metodologia applicati in ambito professionale. Spero che questo contribuisca alla condivisione dell'articolo..

Cosa faremo

Procederemo al setup di un piccolo progetto Web, alla fine dell'articolo avremo un server in ascolto su una specifica rotta e un semplice messaggio testuale come risposta. La funzionalità è decisamente minima, ma sufficiente per illustrare alcuni degli strumenti e mettere in pratica certe metodologie di sviluppo che spesso troviamo applicate in ambienti di lavoro professionali. Come anticipato, non ci focalizzeremo sulla sola implementazione tecnica, ma agiremo a più ampio spetto introducento concetti e pratiche provenienti dall'ambito professionale. Continua...

Pubblicato il

Architettura del Software: definizione e obiettivi

Architettura del Software: definizione e obiettivi

Tutti abbiamo almeno una idea vaga di cosa si intende per "Architettura del Software", ma penso che solo alcuni abbiano in mente concetti, pratiche e vantaggi precisi che ne derivano.

Architettura del Software: una definizione

Con Architettura del Software ci riferiamo alla struttura di un sistema software e alla progettazione delle interfacce dei suoi componenti; comprende le decisioni di progettazione che determinano quali parti compongono l'applicazione e come queste interagiscono e lavorano assieme per raggiungere gli obiettivi richiesti. Queste decisioni includono la struttura del filesystem (i file e le cartelle), la scelta dei framework da adottare, la definizione delle interfacce tra le diverse componenti che costituiscono l'applicazione, la gestione dei dati, la distribuzione delle responsabilità tra i moduli e altro ancora.
Un'architettura ben progettata facilita la manutenzione, l'aggiornamento e l'aggiunta di funzionalità del software nel tempo ponendo la giusta attenzione ad aspetti quali: la scalabilità, la sicurezza, la manutenibilità e la flessibilità per garantire che il software possa crescere Continua...

Pubblicato il

L'attributo 'ping' del tag <a> in HTML5

L'attributo 'ping' del tag <a> in HTML5

Fin dalla sua pubblicazione HTML5 ha introdotto alcuni attributi che, seppur interessanti, non sono mai stati usati o compresi fino in fondo, l'attributo 'ping' è secondo me uno di questi.

Cos'è l'attributo "ping"?

L'attributo "ping", introdotto in HTML5, è un attributo poco utilizzato del tag <a>. Molto semplicemente, serve a specificare una serie di URL che verranno richiamati automaticamente quando un link viene seguito dall'utente (al "click", per intenderci). Questo attributo può essere utile in diverse situazioni, in particolare per scopi di monitoraggio e analisi.

Utilizzo: come utilizzare l'attributo "ping"

Spesso è utile sapere se un utente ha cliccato un dato link (tipicamente un link che punta ad una risorsa esterna al nostro sito, sulla quale non abbiamo controllo). In questi casi, il comportamento Continua...

Pubblicato il

Le Closure in JavaScript

Le Closure in JavaScript

Tutte le volte che ho dovuto affrontare il discorso CLOSURE in JS finivo per avere una impressione riassumibile nella frase: "Tutto molto bello, ma... QUINDI?"

Cosa sono le closure in JavaScript?

Una closure è la capacità di una funzione, definita all'interno di un'altra funzione contenitrice, di accedere allo scope della funzione esterna, anche dopo che questa ha cessato la sua esecuzione. Attraverso le closure (ed ad un apposito handler), insomma, posso accedere allo scope (metodi e attributi) di una funzione (quella contenitrice) da un qualsiasi ambito esterno.

Ecco un esempio di closure. Continua...

Pubblicato il
Vedi tutti i Post