Building Powerful Bots Rapidly with Platformatic
In questa presentazione, esploreremo la potenza di Platformatic, una piattaforma di sviluppo all'avanguardia per costruire bot intelligenti per Telegram e Discord. Come sviluppatore senior di Node.js, ho affrontato le sfide di costruire chatbot da zero, ma con Platformatic, il processo diventa molto piú semplice, veloce ed efficiente. Con la sua interfaccia intuitiva e le sue funzionalità avanzate, Platformatic consente agli sviluppatori di creare e distribuire facilmente bot sofisticati in poco tempo. Unisciti a me per imparare come sfruttare la potenza di Platformatic per costruire e distribuire rapidamente i tuoi bot, ed esplora alcuni casi che dimostreranno la versatilità e la potenza della piattaforma.
Develop a Second Brain
Do you need to enhance productivity? create flows? Increase your ability to capture, remember and benefit from the unprecedented amount of information all around you?For the first time in history, we have instantaneous access to the world’s knowledge. There has never been a better time to learn, to contribute, and to improve ourselves. Yet, rather than feeling empowered, we are often left feeling overwhelmed by this constant influx of information. The very knowledge that was supposed to set us free has instead led to the paralyzing stress of believing we’ll never know or remember enough.
Let's understand together how you can easily develop your own personal system for knowledge management, otherwise known as a Second Brain. As a trusted and organized digital repository of your most valued ideas, notes, and creative work synced across all your devices and platforms, a Second Brain gives you the confidence to tackle your most important projects and ambitious goals.
Discover the full potential of your ideas and translate what you know into more powerful, more meaningful improvements in your work and life by developing a Second Brain.
Creare e far crescere una community online
Non tutte le community online funzionano. In questa talk ti aiuterò a capire proprio perché alcune colano a picco (e come evitarlo). Alla fine dell'intervento saprai tutto il necessario per potenziare il rendimento del tuo business grazie a una community, sfruttando le tips che darò derivanti da anni di pratica.
Clash of JS: la stessa app realizzata con diversi framework JavaScript
JavaScript è evoluto enormemente negli ultimi anni, e ora abbiamo a disposizione molte scelte di diversi framework per la creazione di applicazioni web. Tuttavia, con così tante opzioni, può essere difficile determinare quale sia il framework più adatto al nostro progetto.
In questa presentazione, esploreremo i pro e i contro dei framework JavaScript più popolari, costruendo la stessa applicazione con diversi framework. Confrontando il codice e la performance di ciascun framework, potremo avere una migliore comprensione di quale framework sia il più adatto per un particolare tipo di applicazione. Inizieremo presentando l'applicazione che costruiremo e successivamente esploreremo il processo di costruzione dell'applicazione con diversi framework, tra cui React, Angular e Vue. Analizzeremo le differenze nella sintassi, nell'architettura e nella complessità del codice, e discuteremo i punti di forza e di debolezza di ciascun framework. Infine, confronteremo la developer experience di ciascun framework.
Che tu sia uno sviluppatore nuovo ai framework JavaScript o uno sviluppatore esperto che vuole confrontare i diversi framework, questa presentazione fornirà preziosi insights sui pro e i contro di ogni framework.
Building a Startup: How Not to Screw It Up from the Start! 😅🚀
Scopri la mia avventura nel mondo delle startup, tra successi, fallimenti e confronti tra Italia e l'estero.
Parlerò dei miei errori e di come creare una startup senza farla saltare in aria! Attraverso le mie esperienze, imparerai a navigare nel mondo delle startup e a evitare gli ostacoli comuni. 😉💡🌍
JavaScript: No ti stai sbagliando, non è un linguaggio single thread!
Troppo spesso ci si riferisce a JavaScript come ad un linguaggio single thread e questo, altrettanto spesso, non è chiaro quanto sia ormai un retaggio del passato! Da fin troppo tempo sono presenti nel linguaggio (e negli environments) tante caratteristiche che consentono di lavorare multi thread, finalmente alleggerendo (e non di poco) il tanto affaticato main thread. Dai Workers agli
Atomics, da alcuni piccoli tricks sino agli SharedArrayBuffers, ci tufferemo in un viaggio che porta JavaScript ad un nuovo livello, così da dire alla prossima occasione: "No ti stai sbagliando, JavaScript non è un linguaggio single thread!"
8values 4 real: un test politico applicato al mondo reale
Avete presente l’8values test, celebre test per l’individuazione dell’orientamento politico? Be’, noi l’abbiamo tradotto, arricchito e applicato ad un contesto politico reale: le elezioni amministrative di un piccolo paese dell’Italia Meridionale. Folklore e sorprese sono dietro l’angolo.
Come sviluppare un videogioco. Dal brainstorming allo sviluppo.
Esplora il mondo dell'industria dei videogiochi attraverso un viaggio coinvolgente e informativo. Nel nostro talk, esploreremo le tappe cruciali del processo di sviluppo di un videogioco, dalla fase iniziale di brainstorming e ideazione fino al lancio e oltre.
Inizieremo con una panoramica dell'industria dei videogiochi, gettando le basi per la comprensione di questo affascinante settore. Esploreremo le fasi di progettazione e documentazione, dove creare una Game Design Document diventa il perno centrale per trasformare le idee in realtà.
Scopriremo i ruoli chiave all'interno di un team di sviluppo e impareremo l'arte di trovare partner collaborativi e costruire una rete di contatti preziosa. Approfondiremo anche gli strumenti e le tecnologie utilizzate nello sviluppo dei videogiochi, con un focus particolare su Unity, la piattaforma di sviluppo versatile e popolare.
Non trascureremo l'importanza dei test di gioco e della raccolta del feedback degli utenti, elementi fondamentali per perfezionare il tuo gioco. Esploreremo le varie opzioni di distribuzione, dalle piattaforme di gioco agli app store e servizi di streaming, e ti guideremo attraverso le strategie di marketing, promozione e supporto post-lancio.
Infine, condivideremo preziosi consigli per gli aspiranti sviluppatori di videogiochi, aiutandoti a intraprendere il tuo percorso in questo entusiasmante mondo. Unisciti a noi per scoprire i segreti dietro la creazione di giochi coinvolgenti e di successo.
Microservizi: Awareness e Discovery Pattern su K8s
Le potenzialità offerte da Kubernetes nell'orchestrare i nostri microservizi ci mettono di fronte a problematiche che, in un contesto monolitico, non incontreremmo. Il singolo microservizio A deve sapere o meno che esistono più repliche di un microservizio B che ha bisogno di interrogare? E in che modo è maggiormente conveniente risolvere questa problematica? Queste ed altre casistiche sono l'argomento che affronteremo, con esempi e casi d'uso reali.
WORKSHOP - Build a complex app with TDD
Test-Driven Development is not an easy-to-master technique. You've to be very determined and self-disciplined to best exploit its advantages. As always, practice plays an important role. During the journey of learning the TDD, everyone has to deal with some failure at a certain time. Usually, this moment is when you're about to write a complex solution that is divided up into multiple layers that talk to each other. This is because most of the blog posts or tutorials out there don't provide and guide us through a more complex application but they rely on very trivial applications that anyone with a little experience can manage.
DETTAGLI WORKSHOP: leggi con attenzione cosa è necessario per poter seguire il workshop
Introduzione allo sviluppo con AL
In questa presentazione esploreremo le caratteristiche del linguaggio AL e del suo utilizzo in una delle maggiori piattaforme all'avanguardia nel mondo degli ERP, Microsoft Dynamics 365 Business Central.
Affronteremo caratteristiche e vantaggi dello sviluppo attraverso il modello delle estensioni in grado di rendere flessibile la gestione dei processi alle mutate tendenze dei mercati.
Illustreremo i diversi componenti che costituiscono un'estensione tipica. Inoltre, forniremo una breve descrizione dell'ambiente di sviluppo e una spiegazione dei vari passaggi necessari per iniziare a usare un'estensione.
My react code is a mess
Ho trascorso 7 anni della mia carriera diventando un cosiddetto "esperto" di sviluppo frontend, ma sapete cosa? L'architettura che producevo era sempre una schifezza!
Non avevo un modo ripetibile di strutturare il mio codice. Non c'era un sistema generale, né un insieme di regole. Lo sapevo perché ogni volta che costruivo un'applicazione, dopo qualche mese il codice era un disastro - DI NUOVO!
L'idea di questo talk nasce con l'idea di non far passare anche a te 7 anni in uno stato di confusione.
Immagina la sensazione di liberazione che proverai quando riuscirai a:
- avere il controllo della gerarchia dei componenti
- Sapere intuitivamente come memorizzare lo stato nella applicazione
- Sapere come disaccoppiare le viste in modo che diventino semplici
- Ottenere un approccio ripetibile per un testing semplice e veloce senza l'overhead del testing end 2 end
- capire come disaccoppiare i concetti astratti della applicazione (come la navigazione e il routing) in modo da poterli controllare correttamente (anche in un test).
- capire come utilizzare le librerie nel progetto, in modo che non siano queste a dettare l'architettura.
Perché le persone non possono semplicemente parlarsi?
Ammettere errori, fare domande, esprimere disaccordi e proporre nuove idee può essere rischioso. Assumersi questo rischio e sentirsi "psicologicamente sicuri" di poterlo fare senza essere messi in imbarazzo o essere redarguiti, incolpati o puniti è fondamentale per il successo di un team.
Ma non è naturale: questa sicurezza deve essere coltivata e incoraggiata attraverso modelli comportamentali positivi. È naturale, invece, che le persone osservino il comportamento di un collega esperto, di un loro responsabile o di un team leader per capire cosa si può fare e cosa no: dimostrando che è sicuro prendersi questi rischi aiuteremo gli altri a capire che possono farlo anche loro.
L’Open Source è davvero gratis?
La realtà Open Source è diventata una forza trainante nell'era digitale, porta con sé la promessa di software gratuito, accessibile e trasparente. Tuttavia dietro questa affascinante idea si nascondono molti aspetti da valutare attentamente.
In questo talk cercheremo di comprendere se il software libero sia effettivamente privo di costi e quali siano i vantaggi e le sfide alla partecipazione della community open. Scopriremo il reale valore dell'Open Source, se le aziende dovrebbero o meno incoraggiare i propri sviluppatori a contribuire, del ruolo cruciale della comunicazione in questo ecosistema e come massimizzare i benefici mentre si gestiscono i suoi costi.
Automatizzare il Software Development LifeCycle
Con l'aiuto di GitLab ed altri strumenti OpenSource vedremo come automatizzare il SDLC e quali sono i principali vantaggi di questo approccio. Utilizzando un progetto demo cercheremo di automatizzarne i controlli di qualità e di sicurezza per poi arrivare alla build ed al deployment del progetto.
Immobiliare.it, 18 anni di data center
L’evoluzione dell'infrastruttura tecnologica di Immobiliare.it è proceduta di pari passo con la crescita dell'azienda e l'affermarsi del brand. Racconteremo la storia dei data center di Immobiliare.it, dai primi server, appoggiati alla meno peggio su di una scrivania di un ufficio di Roma, sino ad arrivare all'ultimo nato in casa Immobiliare Labs, IT3, un moderno data center certificato Tier4.
Write once, test everywhere with Playwright
This doesn’t work in Firefox; this doesn’t work in Safari; this is broken on Chrome, ok the last one is impossible :) But how often has your new feature not worked well in all browsers? Or how many times something produces troubles after a while because the code base has changed?
Fixing all and not having bugs is impossible but mitigating them is part of your job.
In this speech, you'll see how it is easy to create e2e and component testing with Playwright, to prevent mistakes in production. I forgot, a quick look at how to test API is a must.
Measuring the Cost of a GraphQL Query
Developers tend to centralise the fragments definitions and use them in each query where the entity is used, even if just a subset of the attributes is necessary.
Unlike rest, the client needs to be more careful on query optimization because the server must process the client's query and create a tailored response. If the client's query is not optimized, it can lead to the server having to process more data than is necessary, resulting in slower response times.
mercurius-explain is a simple and lightweight Mercurius plugin that records how many times a GraphQL resolver is invoked and how long it took to retrieve the data, which helps to keep track of performance changes during development and to troubleshoot possible bottlenecks.
How Internet Ads Work
Perché vediamo la pubblicità on line? E perché proprio "quella"? Come funziona il processo di selezione della pubblicità, quali sono i players del settore, quanto monetizzano? Il mondo è dominato da poche aziende definite "walled gardens", e da altre aziende che hanno scelto di usare l'open source per offrire un'alternativa trasparente. In questo talk parleremo di Prebid , libreria per mostrare ads, e di tutto quello che c'è dietro.
Do not break GraphQL, extend it!
GraphQL is powerful technology to retrieve and send complex structures from remote locations with a simple and effective syntax. One of its perks is avoid under-fetching and over-fetching as the client specifically requests the fields it’s interested in.
But what happens if we need to enrich or customize the data set and we can’t modify the upstream GraphQL server? Shall we break the spec?
In this talk I will show you how to use the resources the GraphQL specification already gives us to solve this issue without having to break the rules.
Il software funzionante è il principale metro di misura di progresso
Pensa al software di un aereo. Oppure al software di un ecografo. O ancora, al software della tua banca. Ti sentiresti al sicuro sapendo che non sono stati creati dei test per verificarne la qualità?
Sembra assurdo ma ancora oggi siamo lontani dal sentirci a nostro agio quando utilizziamo alcuni software e ancora oggi troppo spesso si sente parlare di software con bug incredibilmente stupidi.
Troppo spesso noi developer pensiamo di fare bene il nostro lavoro ma spesso ciò che realizziamo non genera impatti positivi a nessuno.
In questo talk voglio affrontare il tema dei test dal punto di vista dell’utente e vedremo anche qualche esempio pratico per comprendere appieno l’importanza della qualità del software e dei risultati attesi.
Come usare le VM Spot/Preemptible per risparmiare nella Google Cloud Platform (GCP)
Scopriremo come utilizzare le VM Spot/Preemptible per risparmiare sui costi della Google Cloud Platform (GCP). Mostreremo un esempio pratico di come questa tecnologia può essere utilizzata per ridurre i costi di esecuzione dei tuoi carichi di lavoro, verrà mostrato quali sono i possibili limiti di utilizzo delle VM Spot/Preemptible e come mitigare i rischi associati ad un loro utilizzo.
New Jobs horror stories from developers and recruiters: Nel processo di hiring, developer e recruiter meritano di vivere un'esperienza appagante basata sulla trasparenza, velocità e rispetto reciproco…spesso però accade l’esatto contrario. In questo panel analizzeremo delle testimonianze particolarmente spaventose da entrambe le parti, per fare un passo avanti a beneficio di tutti.
ESP32 App-less OTA announces
Analizzeremo diversi use cases nei quali applicare la tecnica della distribuzione di messaggi a breve raggio tramite il renaming dell'SSID di reti wireless.
Basato su ESP32 e Micropython, replicabile su altri microcontrollori e linguaggi con grande facilità.
Approfondimenti sul tema QUI
From zero to native image in Java
Dopo una breve introduzione alle caratteristiche principali di GraalVM (progetto di Oracle Labs) analizzeremo la possibilità di generare applicazioni native partendo dal codice in Java (fasi e step di quello che avviene dietro le quinte), con un focus particolare sulle performance dell'applicazione ottenuta.
L'algoritmo di consenso Raft
Cosa hanno in comune Kubernetes, MongoDB, Etcd, RabbitMQ e tanti altri software Cloud?
Come riescono a rimanere operativi e con uno stato coerente anche se alcuni dei loro nodi smettono di funzionare?
La risposta a tutte e due le domande è: usando l'algoritmo di consenso Raft.
Il paper che lo descrive è stato pubblicato nel 2013 ed è diventato immediatamente uno standard de-facto per i software Cloud.
In questa presentazione cercheremo di capire cos'è un sistema distribuito, quali sono i principali algoritmi di consenso, come funziona Raft e perché è così speciale rispetto agli altri.