Ecco le mie slide su NodeJS al Napoli DevDay . Vedrete praticamente, con l'ausilio di snippet di codice, alcuni dei punti chiave di questo linguaggio.
Per vedere le slide con le gif funzionanti:
https://docs.google.com/presentation/d/1EDsvR99WUDx3IBhygYt51YKM1sA5UA_PJmaRFh9HTa4/edit?usp=sharing
A questo repository troverete gli esempi fatti durante il talk:
https://github.com/musikele/nodeJsExamples
Per testare le API rest io uso Advanced Rest Client, estensione di Chrome. Ricordatevi di settare l'encoding a application/json .
A talk overviewing Groovy related technologies and tools which introduction has been favorited by the dynamic nature of the language.
Milan Java User Group, November 2013
Ecco le mie slide su NodeJS al Napoli DevDay . Vedrete praticamente, con l'ausilio di snippet di codice, alcuni dei punti chiave di questo linguaggio.
Per vedere le slide con le gif funzionanti:
https://docs.google.com/presentation/d/1EDsvR99WUDx3IBhygYt51YKM1sA5UA_PJmaRFh9HTa4/edit?usp=sharing
A questo repository troverete gli esempi fatti durante il talk:
https://github.com/musikele/nodeJsExamples
Per testare le API rest io uso Advanced Rest Client, estensione di Chrome. Ricordatevi di settare l'encoding a application/json .
A talk overviewing Groovy related technologies and tools which introduction has been favorited by the dynamic nature of the language.
Milan Java User Group, November 2013
Back to Basics 4: Introduzione al partizionamento orizzontale (sharding)MongoDB
Come incrementare le prestazioni di scrittura e il volume di dati in MongoDB
Come costruire un semplice cluster partizionato
Come scegliere una chiave della partizione
Back to Basics, webinar 6: Messa in esercizioMongoDB
Questo è l'ultimo webinar della serie Back to Basics
che ti offrirà un'introduzione al database MongoDB. Questo webinar ti guiderà attraverso tutti i passaggi per l'implementazione della produzione.
Node js: che cos'è e a che cosa serve?
oppure
Node.js
Dimmi con quale contorno ti posso mangiare?
All'interno di queste slide, 25 di numero e per essere esatti, cerco di rispondere ad alcune domande che ho ricevuto e riguardavano NodeJS. Mi auguro che siano di vostro gradimento e spero che vi siano utili.
Aspetto i vostri commenti qui sotto, in più potete trovare anche altre informazioni all'interno delle pagine di InsiDevCode (http://www.insidevcode.eu/)
Talk di Luca Lusso | Drupal Day Roma 2011
Snellire il carico del server per generare e restituire un json da usare per un autocompletamento. Notificare che un nodo è stato appena creato a tutti gli utenti che stanno visitando il sito in questo momento. Oppure ancora mettere a disposizione degli utenti una chat in tempo reale. Tutto questo (e molto altro) si può delegare ad un processo esterno a Drupal per aumentare velocità di interazione e diminuire il carico del server.
Durante il talk si vedrà come installare e usare node.js e come integrarlo con Drupal. Verrà mostrato il modulo nodejs presente nel repository di drupal.org
WordPress lento? Guida per un sito web veloce e performante. Autore Emilio Pe...Petrozzi Emilio
Tutorial che descrive come rendere più veloce e performante un sito web che gira su piattaforma WordPress. Descrizione degli errori più comuni e soluzioni che renderanno molto più veloce il caricamento delle pagine web.
Build a SQL Server machine - the right way (Italian)Danilo Dominici
L'installazione di SQL Server consente di preparare rapidamente un server, ma la configurazione di default non è ottimale. In questa sessione vediamo come preparare una macchina per SQL Server nel migliore dei modi, con un occhio alle performance e alla scalabilità.
CSS variables (custom properties) allow defining values that can be used throughout CSS code. This avoids duplicating values and makes themes easier to implement. Variables can be set globally or within specific scopes, and their values can cascade like regular properties. They also enable new techniques like responsive breakpoints based on variable values rather than fixed numbers. CSS variables are a W3C candidate recommendation supported in modern browsers via a double declaration approach for progressive enhancement.
Diciamoci la verità, il CSS è facile e alla portata di tutti. Ma nonostante questo molti sviluppatori vedono CSS come un male necessario. Tra chi lo odia e lo evita come la peste, chi cerca di fixarlo e lo inserisce in Javascript, chi aspetta e brama qualche tool di disegno che esporti CSS utilizzabile. Ma c'è tra di noi chi il CSS lo ama, ma se ne vergogna amaramente. Usciamo fuori dall'ombra e facciamo vedere davvero cosa vuol dire scrivere CSS nel mondo del lavoro moderno. Perché alla fine che mondo sarebbe senza colori?
Diventato ormai uno standard nello sviluppo web, tanto di essere adottato anche nelle specifiche della pubblica amministrazione, Bootstrap è lo strumento più importante da conoscere per uno sviluppatore web. In questa sessione vedremo, con un approccio molto pratico, le novità della versione 4, entrando nel dettaglio della personalizzazione avanza del codice sorgente con SASS e analizzando la nuova gestione del grid system basato su Flexbox.
Back to Basics 4: Introduzione al partizionamento orizzontale (sharding)MongoDB
Come incrementare le prestazioni di scrittura e il volume di dati in MongoDB
Come costruire un semplice cluster partizionato
Come scegliere una chiave della partizione
Back to Basics, webinar 6: Messa in esercizioMongoDB
Questo è l'ultimo webinar della serie Back to Basics
che ti offrirà un'introduzione al database MongoDB. Questo webinar ti guiderà attraverso tutti i passaggi per l'implementazione della produzione.
Node js: che cos'è e a che cosa serve?
oppure
Node.js
Dimmi con quale contorno ti posso mangiare?
All'interno di queste slide, 25 di numero e per essere esatti, cerco di rispondere ad alcune domande che ho ricevuto e riguardavano NodeJS. Mi auguro che siano di vostro gradimento e spero che vi siano utili.
Aspetto i vostri commenti qui sotto, in più potete trovare anche altre informazioni all'interno delle pagine di InsiDevCode (http://www.insidevcode.eu/)
Talk di Luca Lusso | Drupal Day Roma 2011
Snellire il carico del server per generare e restituire un json da usare per un autocompletamento. Notificare che un nodo è stato appena creato a tutti gli utenti che stanno visitando il sito in questo momento. Oppure ancora mettere a disposizione degli utenti una chat in tempo reale. Tutto questo (e molto altro) si può delegare ad un processo esterno a Drupal per aumentare velocità di interazione e diminuire il carico del server.
Durante il talk si vedrà come installare e usare node.js e come integrarlo con Drupal. Verrà mostrato il modulo nodejs presente nel repository di drupal.org
WordPress lento? Guida per un sito web veloce e performante. Autore Emilio Pe...Petrozzi Emilio
Tutorial che descrive come rendere più veloce e performante un sito web che gira su piattaforma WordPress. Descrizione degli errori più comuni e soluzioni che renderanno molto più veloce il caricamento delle pagine web.
Build a SQL Server machine - the right way (Italian)Danilo Dominici
L'installazione di SQL Server consente di preparare rapidamente un server, ma la configurazione di default non è ottimale. In questa sessione vediamo come preparare una macchina per SQL Server nel migliore dei modi, con un occhio alle performance e alla scalabilità.
CSS variables (custom properties) allow defining values that can be used throughout CSS code. This avoids duplicating values and makes themes easier to implement. Variables can be set globally or within specific scopes, and their values can cascade like regular properties. They also enable new techniques like responsive breakpoints based on variable values rather than fixed numbers. CSS variables are a W3C candidate recommendation supported in modern browsers via a double declaration approach for progressive enhancement.
Diciamoci la verità, il CSS è facile e alla portata di tutti. Ma nonostante questo molti sviluppatori vedono CSS come un male necessario. Tra chi lo odia e lo evita come la peste, chi cerca di fixarlo e lo inserisce in Javascript, chi aspetta e brama qualche tool di disegno che esporti CSS utilizzabile. Ma c'è tra di noi chi il CSS lo ama, ma se ne vergogna amaramente. Usciamo fuori dall'ombra e facciamo vedere davvero cosa vuol dire scrivere CSS nel mondo del lavoro moderno. Perché alla fine che mondo sarebbe senza colori?
Diventato ormai uno standard nello sviluppo web, tanto di essere adottato anche nelle specifiche della pubblica amministrazione, Bootstrap è lo strumento più importante da conoscere per uno sviluppatore web. In questa sessione vedremo, con un approccio molto pratico, le novità della versione 4, entrando nel dettaglio della personalizzazione avanza del codice sorgente con SASS e analizzando la nuova gestione del grid system basato su Flexbox.
"Alla ricerca della formula magica". Presentazione usata per il ciclo di webinar su traduzione e adattamento di siti web per AITI Emilia Romagna, novembre-dicembre 2016.
Polyglot Persistance con PostgreSQL, CouchDB, MongoDB, Redis e OrientDBSteve Maraspin
Pirma parte del seminario su NoSQL al DiTeDi di Udine del 15/12/2012. Affrontato il caso di studio di un'architettura enterprise, basata su datastore relazionali (PostgreSQL) e non (CouchDB, MongoDB, Redis e OrientDB).
WordPress, migrazioni e re-branding: don't try this at home. #wmf15Andrea Cardinali
Talk tenuto al Web Marketing Festival 2015 a Rimini (#wmf15) nel quale ho presentato un case study sull'unione di 4 portali turistici realizzati con WordPress e 4 lingue su un un unico dominio e un'unica installazione di WordPress Multi Utente (Wordpress MU) Nello speech verranno mostrate le soluzioni tecniche e le best practices SEO utilizzate per portare a termine correttamente le migrazioni senza perdere traffico.
Back to the Future: Migrare da WebForm ad ASP.NET Core gradualmente Andrea Dottor
Molte applicazione sono (ancora) sviluppate in WebForm e non possono essere convertite automaticamente ad ASP.NET Core. Una riscrittura completa in molti casi è impossibile o impensabile da attuare. In questa sessione vedremo come migrare in modo graduale queste tipologie di applicazioni verso ASP.NET Core, andando in dettaglio nelle varie problematiche che solitamente si possono presentare. La sessione deriva da un'esperienza reale, che ha permesso di conoscere (nel bene o nel male) le difficoltà che si nascondo in queste migrazioni.
Evento: https://www.xedotnet.org/eventi/one-day-enterprise-application/
The HTTP protocol was created in 1990 and led to the establishment of the World Wide Web by English physicist Tim Berners-Lee. It led to what is now the world's most used language, HTML (Hyper Text Markup Language). HTML5 is being developed as the next major revision of HTML: what is it about? What will it change?
Working between the clouds (versione completa)Davide Cerbo
Da un po' di tempo a questa parte quando uno sviluppatore software sente la parola "Clouds" non pensa più alle nuovole, ma a...? Durante l'intervento risponderò a questa domanda e mostrerò come una applicazione web sviluppata con Spring Framework, Apache Maven e JPA può essere installata facilmente e (quasi) gratuitamente sulla piattaforma per il cloud computing messa a disposizione da Google. Vedremo poi come applicare i principali pattern relativi alla scalabilità utilizzando gli strumenti messi a disposizione dalla piattaforma di Google.
3. A long time ago in an Internet far,
far away....
3
4. … il web era per i documenti
HTTP per comunicare
http://info.cern.ch/hypertext/WWW/TheProject.html
e HTML per descrivere i contenuti
<HEADER>
<TITLE>Sei tu un Dio?</TITLE>
<NEXTID N="55">
</HEADER>
4
6. E creare interazione
var msg = "Shall we play a game?";
function scrollMsg() {
window.status = msg;
msg = msg.substring(1,msg.length) + msg.substring(0,1);
setTimeout("scrollMsg()",150);
}
6
8. Abbiamo provato a rimediare
Web: Troppe richieste HTTP!
Devs: Il ricorso alla violenza anche non necessaria per ridurre i file è ammesso e
approvato.
● Concatenazione di js e css
● Creazione sprite di immagini
Conseguenza: introduzione di tool di build
8
9. Abbiamo provato a rimediare
Web: I file sono troppo pesanti!
Devs: Potrebbe esser peggio. Potrebbe piovere!
● Gzip
● PNG e WebP, immagini responsive
● Minifier
Conseguenza: introduzione di altri tool di build e aumento del carico sul processore
9
10. Abbiamo provato a rimediare
Web: Troppe connessioni TCP! Te ne concedo solo [X] simultanee per dominio. Inoltre per
ogni asset sul tuo dominio devo inviare [N]Kb di cookie inutili.
Devs: Sai, questo... questo è un caso molto, molto complicato. Un sacco di input e di
output.
● Domain sharding su CDN cookieless
Prezzo da pagare: cambiamento nelle strategie di deploy
10
11. Abbiamo provato a rimediare
Web: Per ogni dominio che usi devo risolvere i DNS...
Devs: Questo è solo un altro dei tuoi tracobbetti.
● DNS prefetching
Prezzo da pagare: aggiustamenti nel markup
11
12. Abbiamo provato a rimediare
Web: I tuoi asset bloccano il rendering dei browser.
Devs: Un JS non è mai in ritardo. Né in anticipo. Arriva precisamente quando intende
farlo.
● AJAX
● Inlining di CSS e JS
Prezzo da pagare: nuove logiche applicative da sviluppare
12
14. Where we're going, we don't need roads…
● Single Connection
● Multiplexing
● Server Push
● Prioritization
● Binary
● Header Compression
14
15. Supporto
● Chrome (solo se il server supporta ALPN)
● Firefox
● Edge
● Opera
● Safari
● IE 11 +
E in caso HTTP2 non sia supportato in automatico il sito verrà servito in HTTP1.
Devs: Toga! Toga!
Tutti i browser supportano HTTP2 solo con TLS (HTTPS) http://caniuse.com/#feat=http2
15
16. Come avere HTTP2
● H2O
● Caddy
● NGINX 1.9.5 (tranne server push)
● Apache con mod_http2 (sperimentale)
● E molti altri https://github.com/http2/http2-spec/wiki/Implementations
Dovete scegliere tra questi... Ma scegliete con prudenza: poiché se il giusto Server vi donerà
la vita, quello sbagliato ve la strapperà via.
16
18. ● https://http1.giko.it
● https://http2.giko.it
● https://http2push.giko.it:8080
https://www.webpagetest.org/video/compare.php?tests=161013_9Y_P54,161013_T4_P55,161013_81_P56
● https://http1.giko.it/slow.html
● https://http2.giko.it/slow.html
● https://http2push.giko.it:8080/slow.html
https://www.webpagetest.org/video/compare.php?tests=161014_J3_CBK,161014_Z9_CBM,161014_Q0_CEH
I detective non hanno il permesso di credere alle coincidenze
18