Mobile Development: una introduzione per Web Developerssparkfabrik
Dal native coding agli attuali framework per lo sviluppo mobile: Ionic e React Native la fanno da padroni. Quali sono le caratteristiche peculiari e perché utilizzarli?
Il nostro Lead Developer Edoardo Dusi ne parla diffusamente per poi planare in chiusura su una comparativa tra le due soluzioni. Ah, abbiamo dedicato un piccolo spazio anche a Flutter, il framework multipiattaforma di Google (con 110k+ star su Github!) per creare apps e interfacce native composte da widget realizzati ad hoc e renderizzati da un motore interno ad altissime prestazioni.
Molte aziende hanno costruito negli anni sistemi informatici complessi che gestiscono i processi interni e i processi di gestione i clienti/fornitori. Con il cambiamento delle abitudini dei consumatori quello che una volta si faceva intermediato da un agente, commesso o addetto che usava il sistema gestionale per rispondere alla richiesta del cliente ora si fa in modalità self service semplicemente con uno smartphone, il cliente si aspetta di essere autonomo nel rapporto con l’azienda. L’esperienza che ci si aspetta come consumatore è quella che si vive usando piattaforma native digitali come ad esempio Netflix e Spotify. Il problema è che la maggior parte delle aziende non è partita nativamente digitale e non è possibile azzerare tutto e ripartire da capo senza correre rischi di business continuity importanti che vedono milioni di clienti coinvolti e impatti significativi a livello economico in caso di down. Se non è possibile ripartire da zero, quindi come fare? Una risposta è un approccio graduale di evoluzione architetturale e tecnologica dove Kubernetes, e il suo ecosistema, giocano un ruolo chiave. In questa presentazione vedremo i tre principi cardine sulla quale si basa questa strategia: API as a Product; architetture evolutive; fast data con pattern CQRS; che si uniscono per creare una strategia di Modernizzazione delle Applicazioni utilizzando i componenti dell’ecosistema del landscape CNCF (https://landscape.cncf.io). Da qui capiremo quali siano i benefici nel breve, medio e lungo termine e quali passi iniziare a fare per avviare questa strategia.
Parlare di Enterprise DevOps vuol dire operare in ambienti di una certa complessità, con vincoli stringenti e obiettivi audaci.
Se il DevOps risponde ai principi CALMS (Culture, Automation, Lean, Measurement, Sharing), l’Enterprise DevOps può dare risposte concrete alle seguenti sfide:
Complessità di applicazioni e architetture distribuite su larga scala
Cooperazione e coordinamento di molti gruppi di lavoro con competenze distribuite o diverse
Conformità a standard e direttive aziendali e/o governative di sicurezza, qualità e processo
Automazione e orchestrazione di processi massivi e complessi
Alta numerosità di sistemi interdipendenti e team che collaborano su diversi progetti
Processi burocratizzati e articolati
Standard di sicurezza e requisiti normativi stringenti
Flussi di lavoro articolati che necessitano il coinvolgimento di diversi stakeholder
Sistemi monolitici difficili da svecchiare
Gitlab mette tutti d’accordo fornendo una soluzione scalabile e sicura, in grado di gestire tutta la filiera del DevOps in un’unica piattaforma.
Descrizione e confronto tra le architetture di acquisizione e analisi delle metriche realizzate usando Prometheus Grafana InfluxDB e Telegraf con l'architettura della soluzione Azure Matrics per monitorare un'infrastruttura realizzata usando il servizio Azure AKS.
Nat come esporre servizi https senza esporre l'applicazioneGiuliano Latini
Ura rapida introduzione al problema di esporre come esporre un servizio su protocollo HTTP in modo sicuro, ricostruendo tramite i principali tool una timeline che ci porta a Traefik, il tools oggetto della demo.
Mobile Development: una introduzione per Web Developerssparkfabrik
Dal native coding agli attuali framework per lo sviluppo mobile: Ionic e React Native la fanno da padroni. Quali sono le caratteristiche peculiari e perché utilizzarli?
Il nostro Lead Developer Edoardo Dusi ne parla diffusamente per poi planare in chiusura su una comparativa tra le due soluzioni. Ah, abbiamo dedicato un piccolo spazio anche a Flutter, il framework multipiattaforma di Google (con 110k+ star su Github!) per creare apps e interfacce native composte da widget realizzati ad hoc e renderizzati da un motore interno ad altissime prestazioni.
Molte aziende hanno costruito negli anni sistemi informatici complessi che gestiscono i processi interni e i processi di gestione i clienti/fornitori. Con il cambiamento delle abitudini dei consumatori quello che una volta si faceva intermediato da un agente, commesso o addetto che usava il sistema gestionale per rispondere alla richiesta del cliente ora si fa in modalità self service semplicemente con uno smartphone, il cliente si aspetta di essere autonomo nel rapporto con l’azienda. L’esperienza che ci si aspetta come consumatore è quella che si vive usando piattaforma native digitali come ad esempio Netflix e Spotify. Il problema è che la maggior parte delle aziende non è partita nativamente digitale e non è possibile azzerare tutto e ripartire da capo senza correre rischi di business continuity importanti che vedono milioni di clienti coinvolti e impatti significativi a livello economico in caso di down. Se non è possibile ripartire da zero, quindi come fare? Una risposta è un approccio graduale di evoluzione architetturale e tecnologica dove Kubernetes, e il suo ecosistema, giocano un ruolo chiave. In questa presentazione vedremo i tre principi cardine sulla quale si basa questa strategia: API as a Product; architetture evolutive; fast data con pattern CQRS; che si uniscono per creare una strategia di Modernizzazione delle Applicazioni utilizzando i componenti dell’ecosistema del landscape CNCF (https://landscape.cncf.io). Da qui capiremo quali siano i benefici nel breve, medio e lungo termine e quali passi iniziare a fare per avviare questa strategia.
Parlare di Enterprise DevOps vuol dire operare in ambienti di una certa complessità, con vincoli stringenti e obiettivi audaci.
Se il DevOps risponde ai principi CALMS (Culture, Automation, Lean, Measurement, Sharing), l’Enterprise DevOps può dare risposte concrete alle seguenti sfide:
Complessità di applicazioni e architetture distribuite su larga scala
Cooperazione e coordinamento di molti gruppi di lavoro con competenze distribuite o diverse
Conformità a standard e direttive aziendali e/o governative di sicurezza, qualità e processo
Automazione e orchestrazione di processi massivi e complessi
Alta numerosità di sistemi interdipendenti e team che collaborano su diversi progetti
Processi burocratizzati e articolati
Standard di sicurezza e requisiti normativi stringenti
Flussi di lavoro articolati che necessitano il coinvolgimento di diversi stakeholder
Sistemi monolitici difficili da svecchiare
Gitlab mette tutti d’accordo fornendo una soluzione scalabile e sicura, in grado di gestire tutta la filiera del DevOps in un’unica piattaforma.
Descrizione e confronto tra le architetture di acquisizione e analisi delle metriche realizzate usando Prometheus Grafana InfluxDB e Telegraf con l'architettura della soluzione Azure Matrics per monitorare un'infrastruttura realizzata usando il servizio Azure AKS.
Nat come esporre servizi https senza esporre l'applicazioneGiuliano Latini
Ura rapida introduzione al problema di esporre come esporre un servizio su protocollo HTTP in modo sicuro, ricostruendo tramite i principali tool una timeline che ci porta a Traefik, il tools oggetto della demo.
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...Natale Vinto
My Master Degree in Computer Engineering Dissertation about delivering an open source extendible hybrid cloud solution for Platform-as-a-Service with Openshift, integrated in an Infrastructure-as-a-Service deployment with Openstack Grizzly RDO
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
Realizzare un’unica piattaforma che garantisce Omni-channel, Zero-downtime, Functional-decomposition e Auto-scaling è possibile? Vi raccontiamo un caso reale di come, utilizzando Zuul, Eureka, SpringBoot, Docker abbiamo realizzato i desideri del cliente e attuato questa trasformazione.
Nat come esporre servizi https senza esporre l'applicazioneGiuliano Latini
Review degli strumenti a disposizione e loro contestualizzazione per erogare servizi tramite il protocollo HTTP reso sicuro (HTTPS) utilizzando il servizio Internet Let's Encripts e confronto tra gli approcci tecnologici applicabili a Apache, Nginx e Traefik.
Meetup Azure DevOps
Introduzione ad Azure DevOps e panoramica sulle principali funzionalità per il CI ed il CD del proprio software
Speaker: Simone Natalini
Da GitHub a Nuget con la nuova build di Visual Studio OnlineDavide Benvegnù
Visual Studio Online da qualche tempo ha una nuova build modulare in aggiunta al classico motore di build xaml.
I tantissimi moduli già presenti ci forniscono tutti gli strumenti necessari per recuperare il codice sorgente da GitHub, compilarlo, generare un pacchetto NuGet e pubblicarlo.
In questo webcast vedremo, dal vivo e in modo pratico, come fare tutti questi passaggi in modo da poter pubblicare in modo automatico su NuGet il nostro progetto prendendolo da GitHub.
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017Codemotion
DomusDotNet, DotNetCode & dotNET{podcast} Meetup - Serverless Computing
Giorgio Di Nardo, Luca Congiu
Il Serverless Computing è l'ultima frontiera della rivoluzione "cloud" della programmazione ed enfatizza ulteriormente la produttività caratteristica delle offerte PaaS. Azure Functions è la soluzione di Serverless Computing integrata in Azure, con cui poter raggiungere rapidamente l'obiettivo di organizzare la propria applicazione a microservizi, o di integrarsi in maniera flessibile con applicazioni esterne, senza preoccuparsi dell'infrastruttura sottostante. Azure Functions Deep Dive - Giorgio Di Nardo ASP.NET Core with Azure Functions - Luca Congiu
Un'Infrastruttura di Sviluppo Web Enterprise Distribuita Basata su Modelli Pa...Natale Vinto
My Master Degree in Computer Engineering Dissertation about delivering an open source extendible hybrid cloud solution for Platform-as-a-Service with Openshift, integrated in an Infrastructure-as-a-Service deployment with Openstack Grizzly RDO
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
Realizzare un’unica piattaforma che garantisce Omni-channel, Zero-downtime, Functional-decomposition e Auto-scaling è possibile? Vi raccontiamo un caso reale di come, utilizzando Zuul, Eureka, SpringBoot, Docker abbiamo realizzato i desideri del cliente e attuato questa trasformazione.
Nat come esporre servizi https senza esporre l'applicazioneGiuliano Latini
Review degli strumenti a disposizione e loro contestualizzazione per erogare servizi tramite il protocollo HTTP reso sicuro (HTTPS) utilizzando il servizio Internet Let's Encripts e confronto tra gli approcci tecnologici applicabili a Apache, Nginx e Traefik.
Meetup Azure DevOps
Introduzione ad Azure DevOps e panoramica sulle principali funzionalità per il CI ed il CD del proprio software
Speaker: Simone Natalini
Da GitHub a Nuget con la nuova build di Visual Studio OnlineDavide Benvegnù
Visual Studio Online da qualche tempo ha una nuova build modulare in aggiunta al classico motore di build xaml.
I tantissimi moduli già presenti ci forniscono tutti gli strumenti necessari per recuperare il codice sorgente da GitHub, compilarlo, generare un pacchetto NuGet e pubblicarlo.
In questo webcast vedremo, dal vivo e in modo pratico, come fare tutti questi passaggi in modo da poter pubblicare in modo automatico su NuGet il nostro progetto prendendolo da GitHub.
Azure functions deep dive - Giorgio Di Nardo - Codemotion Rome 2017Codemotion
DomusDotNet, DotNetCode & dotNET{podcast} Meetup - Serverless Computing
Giorgio Di Nardo, Luca Congiu
Il Serverless Computing è l'ultima frontiera della rivoluzione "cloud" della programmazione ed enfatizza ulteriormente la produttività caratteristica delle offerte PaaS. Azure Functions è la soluzione di Serverless Computing integrata in Azure, con cui poter raggiungere rapidamente l'obiettivo di organizzare la propria applicazione a microservizi, o di integrarsi in maniera flessibile con applicazioni esterne, senza preoccuparsi dell'infrastruttura sottostante. Azure Functions Deep Dive - Giorgio Di Nardo ASP.NET Core with Azure Functions - Luca Congiu
Come implementare la governance nella vostra piattaforma e lavorare felici se...Giulio Vian
DevOps Conf 2024 - Roma - 10 mag 2024
https://devopsconf.dotnetdev.it
Gli strumenti che usiamo per lo sviluppo e il rilascio sono essenziali per controllare i processi in uso e garantire che soddisfino requisiti aziendali, legali, e regolamentari.
In questa sessione illustrerò come passare da norme (policies) astratte a implementationi su piattaforme come Azure DevOps o GitHub delle stesse così da poter prevenire prima e verificare poi il corretto svolgimento delle operazioni. E diventare amici del direttore Rischi e Audit.
L’approccio IT bimodale, capace di integrare stabilità e sicurezza da un lato e agilità e velocità dall’altro, si configura come soluzione sostenibile per innovare e trasformare il business senza rallentarlo.
Scopri come integrare approccio bimodale e DevOps, per risparmiare tempo, denaro, ridurre i rischi e ottimizzare le risorse.
Segui il webinar on-demand: https://youtu.be/hVJ2Yk6Fd9U
Risparmiare utilizzando il monitoraggio di rete, possibile? Alessio Ligabue
Overview sui reali benefici del monitoraggio di rete (network monitoring) e sulle criticità dei monitoraggi più comuni, in particolare Nagios.
Presentazione di un'alternativa che permette maggiore flessibilità e efficienza, grazie a template, deploy automatico, grafici e notifiche sui dispositivi mobili
Agile requirements - alla ricerca del filo rosso (iad 2013)Fabio Armani
requisiti rappresentano, a mio avviso, il ‘fil rouge’ di tutto lo sviluppo software, sia che si tratti di applicazioni web o mobile, sia che siano coinvolti grandi sistemi Enterprise. Cerchiamo di capire perché.
Possiamo affermare che Lean Agile sta di fatto divenendo uno delle metodologie più adottate (se non il main-stream stesso) in ambito informatico e conseguentemente anche in ambiti connessi con l’informatica.
Nel mio talk (che spero possa trasformarsi in una tavola rotonda sul tema degli agile requirements e di ciò che ruota attorno ad essi) desidero presentare le varie possibilità di gestire i requisiti in modo agile e di seguire ad esempio il percorso delle “user story” (uno dei più efficaci metodi inventati in ambito agile o meglio nella metodologia eXtreme Programming per gestire i requisiti) in tutte le diverse fasi della loro ‘vita’ : a partire da ‘theme’, ‘epic’ e poi ‘story’ realizzata durante una determinata iterazione, fino al loro testing mediante Acceptance Test Driven Development e convalida business sul campo con gli utenti finali e i diversi stakeholder.
Bene… per poter effettuare questo affascinante itinerario cosa e chi viene coinvolto? Scopriremo assieme (ed argomenteremo le diverse soluzioni) che un’intera organizzazione Enterprise si dovrà plasmare per consentire ad una storia di divenire parte di una nuova funzionalità di successo.
Per avere realmente successo dovremmo scomodare molte metodologie tra le quali Lean , Agile, Lean StartUp, Lean UX e questo ci porterà nuovamente al punto di partenza. Perché vogliamo realizzare proprio questa storia? Quale era il requisito da cui siamo partiti. A quale Vision ci siamo ispirati?
Sono certo che il tema è affascinante e sarà interessante affrontarlo collettivamente, specialmente se trattato in ambito di round table.
Mercoledì 25 luglio, abbiamo avuto il piacere di ospitare alcuni speaker delle community Data Science e Python.
PROGRAMMA
Data Science - Michele Vitali
Sentiment Analysis & Machine Learning - Alessandro Cucci
Git for Data Science - Luca Fontanili
Introduction to Data Visualization - Sergey Antopolsky - (in English)
Con Xebialabs affrontiamo il tema della gestione della Toolchain devops e Release/Deploy in modo orchestrato e remotizzato.
XebiaLabs, leader del mercato ARA come riportato da Gartner e
Forrester. Con XebiaLabs gestire i rilasci dal punto di vista di processo e di effettivo deploy delle applicazioni è solo un fatto di configurazione, al resto pensa l’engine di XebiaLabs.
Nell’intervento Stefano Olivotto di Crédit Agricole Italia ha illustrato la sua esperienza nell’adozione di uno strumento di API management e di un processo di gestione delle API, con una particolare focalizzazione su metodologia di adozione, sulle principali sfide indirizzate e un verticale sul livello di automazione raggiunto mediante l’adozione di tecniche di DevOps.
Per maggiori informazioni scrivi a sales@profesia.it
Slide del decimo Meetup di Milano, che si è tenuto il 26 Gennaio dalle ore 10:30 alle ore 12:00 in formato virtuale.
Abbiamo parlato insieme a Davide Bonaciti di come ha realizzato un caso d'uso di automazione e CI/CD. Stefano Bernardini, Serena Galassi e Lorenzo Ornella, invece, ci parleranno di DataGraph e ci mostreranno una demo di implementazione per realizzare un'asta del fantacalcio 2.0.
VMUGIT Meeting - Lecce, 5 Aprile 2018
Enrico Signoretti, Head of Product Strategy at OpenIO, blogger at Juku - IIoT. Il futuro è nell'integrazione Cloud-Edge
Similar to DevOpsConf2021 - GitOps and best practices for cloud native CI/CD (20)
Uno dei principali motivi per adottare un approccio DevOps è di soddisfare le richieste di mercato nel minor tempo possibile: ciò è possibile se un nostro prodotto ha una architettura ben composta e flessibile. In questo contesto, i microservizi sono un'ottima scelta: per la loro natura rappresentano l'approccio architetturale migliore per adottare una cultura DevOps e mantenere la complessità bassa. In questa sessione parleremo sia di aspetti architetturali che pratici relativi alla fusione di questi due mondi.
Uno dei principali motivi per adottare un approccio DevOps è di soddisfare le richieste di mercato nel minor tempo possibile: ciò è possibile se un nostro prodotto ha una architettura ben composta e flessibile. In questo contesto, i microservizi sono un'ottima scelta: per la loro natura rappresentano l'approccio architetturale migliore per adottare una cultura DevOps e mantenere la complessità bassa. In questa sessione parleremo sia di aspetti architetturali che pratici relativi alla fusione di questi due mondi.
In questa sessioni si parla di come utilizzare strumenti di continuous integration, monitoring e crash analytics per le nostre applicazioni mobili. Argomenti trattati: HockeyApp, Xamarin Test Cloud, Visual Studio Mobile Center
In queste slide, Matteo Emili ci parla di SonarQube e del debito tecnico. Queste slide sono state utilizzate per la sessione di Matteo all'evento DotNetCampania "DevOps: dalla teoria alla pratica"
Continuous integration per le tue applicazioni mobileAntonio Liccardi
Lo sviluppo di applicazioni mobile non differisce molto dallo sviluppo di applicazioni web. In questa sessione vedremo come applicare in questo ambito concetti come continuous integration usando Xamarin e Apache Cordova.
Sessione per NetCampus 2015. La diffusione sempre più ampia di applicazioni sviluppate interamente in HTML5 e JS richiede l'adozione di processi di automazione per la fase di build, testing e rilascio. In questa sessione vedremo quali sono i principali strumenti a nostra disposizione per semplificare queste fasi dello sviluppo.
Vs04 - DevOps: Continuous Deployment con Windows AzureAntonio Liccardi
Il termine DevOps è tra quelli più ricorrenti in questi ultimi anni. Con questo termine si identifica una metodologia di sviluppo che si basa sulla stretta collaborazione fra team di sviluppatori e di "IT operations" necessaria al fine di semplificare l'intero processo di realizzazione e messa in produzione di un software. In questa sessione vedremo come automatizzare i processi di deployment usando Visual Studio Online e Windows Azure.
http://www.communitydays.it/events/2015/vs04/
5. Principi di GitOps
1. L’intero sistema viene descritto in maniera dichiarativa
2. Il desired state del sistema è versionato in Git
3. Le modifiche sono soggette ad approvazione vengono
applicate automaticamente al sistema
4. Agenti o servizi garantiscono la corretta applicazione
del desired state e avvisano in caso di divergenza
7. GitOps in dettaglio
1. Tutte le azioni sono guidate dagli eventi in Git, che è
considerato come l’unica fonte di verità dell’intero sistema
2. GitOps si basa fortemente sulle pratiche DevOps
3. Ma se DevOps esiste da anni, perché solo oggi si parla di
GitOps?
1. Fino ad oggi non abbiamo avuto tanti strumenti a favore di una declarative infrastructure
che potesse essere storicizzata in Git
2. Git rappresenta lo strumento migliore per questo scopo grazie a audit, commenti e
history
8. GitOps in dettaglio
• Una volta impostato il flusso di lavoro, l’intero
processo di modifiche viene effettuato usando solo
Git tramite Pull Request
• Sia il codice dell’applicazione, che la dichiarazione
dell’infrastruttura risiedono all’interno del repository.
L’uso di strumenti come kubectl per la configurazione
dell’infrastruttura è vietato
9. GitOps in dettaglio
• L’intero processo deve essere automatizzato
• L’intero sistema è sempre ripristinabile grazie a Git e
IaC
10. Vantaggi di GitOps
Aumento della
produttività
Esperienza di
sviluppo
migliore
Compliance &
Stability
Reliability
Consistency &
Standardization
Maggiore
sicurezza
11. I 3 pilastri di GitOps
Pipelines Observability Control
22. Struttura di un repository GitOps
• 1 repository per applicazione e servizio o repository separati
• Usare branch separati per environment (Kubernetes
namespace o cluster)
• Push delle modifiche sia sul codice che sulla infrastruttura
• Rolling out tramite revert
• Uso dei protected branches per forzare la pull request