SOA has been around for a while, now microservices is the new black, that’s cool, but lets look at what we learnt when we failed and succeeded implementing SOA.
Elixir and Lambda talk with a Telegram bot - Paolo Montrasio - Codemotion Mil...Codemotion
The talk demonstrates a working system made of an Elixir program running on a Raspberry Pi that scans the Wi-Fi spectrum and collects presence data; an AWS Lambda JavaScript function that receives those data and stores them into a DynamoDB instance; a Telegram bot, also running on Lambda, which sends alerts based on the number of presences. The focus will be on the overall architecture and the most important parts of the code. We'll show some Lambda automation tools and how to test the components locally. All the source code will be on GitHub. Ideal talk to get started with those technologies.
DevOps in Cloud, dai Container all'approccio Codeless - Gabriele Provinciali,...Codemotion
Un approccio moderno allo sviluppo software dovrebbe sfruttare linguaggi ed ambienti appartenenti a diverse tipologie di innovazione: DevOps per automatizzare continuous integration e continuous delivery, il Cloud per gestire il ciclo di vita del software in qualsiasi momento, i Software Containers per raggiungere livelli di scalabilità adeguati alle dimensioni dell’audience e un approccio Codeless per confezionare applicazioni e cruscotti ad uso dell’utenza business. Il talk sarà articolato intorno a queste quattro aree mostrando principalmente esempi pratici.
Distributed System explained (with NodeJS) - Bruno Bossola - Codemotion Milan...Codemotion
Since I've been working on distributed systems I always wanted to back in time and teach myself what I know now, in order to avoid the silly mistakes I did! Things like vector clocks, the CAP theorem, how replication really works (and why it's needed), what BASE means and in general all about how this stuff really works! This is the speech I'd needed wheI wrote my first DT, and it's something you need to know if you fancy working in this area. And we will also be coding some very simple examples in NodeJS, as I am not a big believer of diagrams... show me code!
Bud Spencer & Terence Hill - Slaps And Beans - Trinity Team - Codemotion Mila...Codemotion
Storia del progetto Slaps and Beans (Schiaffi&Fagioli), dalla Spaghetti Western Jam di Indievault, passando per la ricerca dell'ufficialità fino alla campagna Kickstarter. Struttura del gioco, Game design e futura organizzazione del team di sviluppo.
Situational Awareness, Botnet and Malware Detection in the Modern Era - Davi...Codemotion
Looking at the modern threat landscape, it is clear that a comprehensive security infrastructure cannot rely only on traditional automatic systems such as intrusion detection, or anti-virus appliances. Considering also that more than 400K new malware are discovered every day, the need for advanced techniques to isolate and identify malware is even more evident. This talk will show an overview of modern techniques developed by security researchers and practitioners, the different perspectives and approaches they take and how they evolved to take into account malware evolution.
Elixir and Lambda talk with a Telegram bot - Paolo Montrasio - Codemotion Mil...Codemotion
The talk demonstrates a working system made of an Elixir program running on a Raspberry Pi that scans the Wi-Fi spectrum and collects presence data; an AWS Lambda JavaScript function that receives those data and stores them into a DynamoDB instance; a Telegram bot, also running on Lambda, which sends alerts based on the number of presences. The focus will be on the overall architecture and the most important parts of the code. We'll show some Lambda automation tools and how to test the components locally. All the source code will be on GitHub. Ideal talk to get started with those technologies.
DevOps in Cloud, dai Container all'approccio Codeless - Gabriele Provinciali,...Codemotion
Un approccio moderno allo sviluppo software dovrebbe sfruttare linguaggi ed ambienti appartenenti a diverse tipologie di innovazione: DevOps per automatizzare continuous integration e continuous delivery, il Cloud per gestire il ciclo di vita del software in qualsiasi momento, i Software Containers per raggiungere livelli di scalabilità adeguati alle dimensioni dell’audience e un approccio Codeless per confezionare applicazioni e cruscotti ad uso dell’utenza business. Il talk sarà articolato intorno a queste quattro aree mostrando principalmente esempi pratici.
Distributed System explained (with NodeJS) - Bruno Bossola - Codemotion Milan...Codemotion
Since I've been working on distributed systems I always wanted to back in time and teach myself what I know now, in order to avoid the silly mistakes I did! Things like vector clocks, the CAP theorem, how replication really works (and why it's needed), what BASE means and in general all about how this stuff really works! This is the speech I'd needed wheI wrote my first DT, and it's something you need to know if you fancy working in this area. And we will also be coding some very simple examples in NodeJS, as I am not a big believer of diagrams... show me code!
Bud Spencer & Terence Hill - Slaps And Beans - Trinity Team - Codemotion Mila...Codemotion
Storia del progetto Slaps and Beans (Schiaffi&Fagioli), dalla Spaghetti Western Jam di Indievault, passando per la ricerca dell'ufficialità fino alla campagna Kickstarter. Struttura del gioco, Game design e futura organizzazione del team di sviluppo.
Situational Awareness, Botnet and Malware Detection in the Modern Era - Davi...Codemotion
Looking at the modern threat landscape, it is clear that a comprehensive security infrastructure cannot rely only on traditional automatic systems such as intrusion detection, or anti-virus appliances. Considering also that more than 400K new malware are discovered every day, the need for advanced techniques to isolate and identify malware is even more evident. This talk will show an overview of modern techniques developed by security researchers and practitioners, the different perspectives and approaches they take and how they evolved to take into account malware evolution.
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...Codemotion
Since the Kickstarter campaign in August 2012, Oculus Rift targeted games for Virtual Reality. "If a game works, then everything will work". Even though VR has been used a lot for business and industrial purposes, the community of VR and game developers pushed forward the platform and the limits of this new medium. In this talk I will analyze the process of design and development of Yon Paradox, sharing our results on what went good and what didn't work.
Put yourself in the appsec pipe - Paolo Perego - Codemotion Milan 2016Codemotion
Create secure software is more than run a penetration test or a code review, just before the deploy and having some automatism can help you in have a low error rate process. In this talk we will go through the pipeline building process, explaining how to automate some boring tasks dedicating ourself to having fun, playing tricks like pros. At the end of our journey both tech people than security managers, will have the feeling that using the pipeline approach, they can lower vulnerabilities, with an affordable time to market so to make the bosses happy.
Pronti per la legge sulla data protection GDPR? No Panic! - Stefano Sali, Dom...Codemotion
L’Application Economy obbliga l’IT a correre alla stessa velocità del business. Nel contempo l’entrata in vigore di nuove stringenti normative in ambito sicurezza impone l’adeguamento del Software Delivery LifeCycle affinché queste possano essere implementate e testate già dalle fasi iniziale dello sviluppo, ottimizzando i tempi di delivery e minimizzando il time to market.
Keynote: The Most Important Thing - Mike Lee - Codemotion Milan 2016Codemotion
Steve Jobs used to always talk about the "most important thing," what he sometimes called the "high-order bit," the thing we should be working on, and thinking about, to the exclusion of others. What does it mean? How do we recognize it? Why is it important? What is our "most important thing," and what is the most important "most important thing"? This might sound trivial, but it’s not. This talk will be inspiring, but it will also be upsetting. Often the most important thing is not what we wish it was, and finding it can be like Armageddon, as your entire future is destroyed.
The game design behind Redout - Giuseppe Enrico Franchi - Codemotion Milan 2016Codemotion
The development of our AG racing game Redout has been quite a ride. Started in 2014, when 34BigThings was still a bunch of friends working in a living room, it has gone through many epiphanies and revolutions before taking its final shape. In this talk I will go through the development stages of the Redout game product: I'll talk about track design and game flow, interface design, vehicle handling, community management, talking to publishers and the press, attending events, observing players play, and how all this influenced the overall design of the game and my own knowledge of game design.
The Fine Art of Time Travelling: implementing Event Sourcing - Andrea Saltare...Codemotion
If there is a common practice in architecting software systems, it is to have them store the last known state of business entities in a relational database: this practice trades the easiness of implementation with the cost of losing the history of such entities. Event Sourcing provides a pivotal solution to this problem, giving systems the capability of restoring the state they had at any given point in time. Furthermore, injecting mock-up events and having them replayed by the business logic allows for an easy implementation of simulations and “what if” scenarios.
Games of Simplicity - Pozzi; Molinari - Codemotion Milan 2016Codemotion
10 years after the publication of "The Laws of Simplicity", what can we still learn as game designers from John Maeda's seminal work? By drawing on our current experience with our first non-narrative project (local multiplayer "SIHEYU4N") and on examples of independent games that best embody Maeda's rules, we'll be looking into the relationship between simplicity and complexity and how video games can creatively tackle such a fascinating issue.
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...Codemotion
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming true! In this talk I am going to discuss about Universal (a.k.a. Isomorphic) JS and present some practical example regarding the major patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
Public speaking 4 geeks - Lorenzo Barbieri - Codemotion Milan 2016Codemotion
Speaking in public is not easy, especially for geeks, that tend to be too technical, or too shy, or too something... In this session we'll start with some basic tips and we'll see how to dramatically improve our results using well defined techniques. We'll also see (with practical examples) how to deal with problems during speeches, elevator pitches, product presentations, interviews, and so on. Public speaking skills are not useful to conference speakers only, everybody needs to improve them, especially geeks!
Big Data, Small Dashboard - Andrea Maietta - Codemotion Milan 2016Codemotion
Big data is the new black. We have more data than we could use, but what we really need is information. The typical dashboard is completely crammed with colourful 3D pies, uncountable lines and tons of extra-thick tables. And nobody understands anything. Knowledge is power. But to be able to know you first have to understand. In this talk we shall see how to transform a terribile mess into a clean and informative dashboard, moving step by step and explaining the reasonings between each passage. At my signal... unleash knowledge!
Come rendere il proprio prodotto una bomba creandogli una intera community in...Codemotion
Creare una community di sviluppatori ed utilizzatori intorno al proprio progetto è diventato ormai fondamentale. Persone appassionate che utilizzano il tuo prodotto, forniscono feedback, documentazione e casi d'uso, trovano bug, suggeriscono feature e contribuiscono allo sviluppo: tutto questo crea innovazione, attira contributors ed allarga la base di utenti a dismisura. In questo talk spiegherò cosa ho imparato nel creare una community online da zero a 1000 membri: come gestire discussioni aperte, come fare le scelte migliori. Consigli pronti per l'uso, cosa funziona e cosa no.
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016Codemotion
Angular 2 is a complete rewrite of the AngularJS framework, which introduces new approaches and leverages the latest technologies. Simplifying and generalizing core concepts, the performance is improved and the range of capabilities is broadened. In this session Shmuela will help you understand the core concepts of Angular 2 apps: the component-based architecture, dependency injection, change detection, and more.
SASI, Cassandra on the full text search ride - DuyHai Doan - Codemotion Milan...Codemotion
Apache Cassandra is a scalable database with high availability features. But they come with severe limitations in term of querying capabilities. Since the introduction of SASI in Cassandra 3.4, the limitations belong to the pass. Now you can create performant indices on your columns as well as benefit from full text search capabilities with the introduction of the new LIKE %term% syntax. To illustrate how SASI works, we'll use a database of 100 000 albums and artists.
Sviluppare applicazioni cross-platform con Xamarin Forms e il framework Prism...Codemotion
Xamarin Forms consente di sviluppare applicazioni cross-platform utilizzando C# e di condividere non solo la business logic (come consente già di fare l’approccio tradizionale), ma anche l’interfaccia utente, grazie ad un linguaggio basato sullo XAML, i cui elementi vengono poi convertiti in tempo reale in controlli nativi, garantendo perciò una user experience coerente con quella attesa dall’utente su Android, iOS e Windows. Nel corso di questa sessione vedremo come strutturare al meglio un progetto Xamarin Forms, grazie al pattern MVVM e al framework open source Prism.
Sviluppare applicazioni nell'era dei "Big Data" con Scala e Spark - Mario Car...Codemotion
Scala è un linguaggio di programmazione general purpose multi-paradigma pensato per realizzare applicazioni ad alte prestazioni che girano all'interno della Java Virtual Machine. Spark è il framework "Big Data", basato su Scala, più flessibile e performante disponibile oggi sul mercato. Durante il talk verrà introdotto il linguaggio Scala e verranno mostrate le potenzialità legate al suo utilizzo nell'ambito dello sviluppo di applicazioni web di ultima generazione compresa la possibilità di processamento parallelo di grandi quantità di dati attraverso l'utilizzo del framework Spark.
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016Codemotion
For developers used to working with frameworks like Spring, and Rails, Go's lack of advice on how to structure your application can be bewildering. Many new developers, reach for their favourite Spring, or Rails equivalent, and rely on its structure, but that is a mistake! Go gives us wonderful tools to put Domain-driven design into practice, and create beautiful applications.
Time to market: when a worse game is better - Mattia Traverso - Codemotion Mi...Codemotion
The experimental Kinect game FRU was released on July 13 on the Xbox One Store. The Verge called it a "killer app". Engadget an "incredible game", whereas Destructoid gave it a 9.5/10. It's the highest rated camera-based game ever and yet, it sold less than ten thousand copies. At first glance, the issue might seem obvious: "It's a Kinect game". However, the Kinect 2 peripheral has a respectable install base between 3 and 4 million units, so only the 0,0025 % of the potential target bought the game. What we can learn from this experience?
Human vs Bot: Giocare a Sasso-Carta-Forbici - Matteo Valoriani, Antimo Musone...Codemotion
In questa sessione vedremo come realizzare un algoritmo intelligente per giocare a morra cinese (e sue varianti) usando Azure Machine Learning e interagire usando un Bot. In particolare vedremo diverse modalità per predire le mosse dell’avversario rilevando e analizzando pattern da una serie storica e utilizzeremo il nuovo Microsoft Bot Framework e i Cognitive Services per creare un Bot per interagire con l’algoritmo di gioco.
No more Three Tier - A path to a better code for Cloud and AzureMarco Parenzan
Three Tier is no more a model for Cloud and in general Scalable Web Applications. Scaffolding from SQL Database is, sure, the worst way to do. A road to do this is changing modeling activity, from scaffolded DB model to Command/DTO model, through ViewModel pattern. Command and DTOs are pillars of CQRS model.
Virtual Reality gaming: analysis of Yon Paradox development - Fabio Mosca - C...Codemotion
Since the Kickstarter campaign in August 2012, Oculus Rift targeted games for Virtual Reality. "If a game works, then everything will work". Even though VR has been used a lot for business and industrial purposes, the community of VR and game developers pushed forward the platform and the limits of this new medium. In this talk I will analyze the process of design and development of Yon Paradox, sharing our results on what went good and what didn't work.
Put yourself in the appsec pipe - Paolo Perego - Codemotion Milan 2016Codemotion
Create secure software is more than run a penetration test or a code review, just before the deploy and having some automatism can help you in have a low error rate process. In this talk we will go through the pipeline building process, explaining how to automate some boring tasks dedicating ourself to having fun, playing tricks like pros. At the end of our journey both tech people than security managers, will have the feeling that using the pipeline approach, they can lower vulnerabilities, with an affordable time to market so to make the bosses happy.
Pronti per la legge sulla data protection GDPR? No Panic! - Stefano Sali, Dom...Codemotion
L’Application Economy obbliga l’IT a correre alla stessa velocità del business. Nel contempo l’entrata in vigore di nuove stringenti normative in ambito sicurezza impone l’adeguamento del Software Delivery LifeCycle affinché queste possano essere implementate e testate già dalle fasi iniziale dello sviluppo, ottimizzando i tempi di delivery e minimizzando il time to market.
Keynote: The Most Important Thing - Mike Lee - Codemotion Milan 2016Codemotion
Steve Jobs used to always talk about the "most important thing," what he sometimes called the "high-order bit," the thing we should be working on, and thinking about, to the exclusion of others. What does it mean? How do we recognize it? Why is it important? What is our "most important thing," and what is the most important "most important thing"? This might sound trivial, but it’s not. This talk will be inspiring, but it will also be upsetting. Often the most important thing is not what we wish it was, and finding it can be like Armageddon, as your entire future is destroyed.
The game design behind Redout - Giuseppe Enrico Franchi - Codemotion Milan 2016Codemotion
The development of our AG racing game Redout has been quite a ride. Started in 2014, when 34BigThings was still a bunch of friends working in a living room, it has gone through many epiphanies and revolutions before taking its final shape. In this talk I will go through the development stages of the Redout game product: I'll talk about track design and game flow, interface design, vehicle handling, community management, talking to publishers and the press, attending events, observing players play, and how all this influenced the overall design of the game and my own knowledge of game design.
The Fine Art of Time Travelling: implementing Event Sourcing - Andrea Saltare...Codemotion
If there is a common practice in architecting software systems, it is to have them store the last known state of business entities in a relational database: this practice trades the easiness of implementation with the cost of losing the history of such entities. Event Sourcing provides a pivotal solution to this problem, giving systems the capability of restoring the state they had at any given point in time. Furthermore, injecting mock-up events and having them replayed by the business logic allows for an easy implementation of simulations and “what if” scenarios.
Games of Simplicity - Pozzi; Molinari - Codemotion Milan 2016Codemotion
10 years after the publication of "The Laws of Simplicity", what can we still learn as game designers from John Maeda's seminal work? By drawing on our current experience with our first non-narrative project (local multiplayer "SIHEYU4N") and on examples of independent games that best embody Maeda's rules, we'll be looking into the relationship between simplicity and complexity and how video games can creatively tackle such a fascinating issue.
Universal JavaScript Web Applications with React - Luciano Mammino - Codemoti...Codemotion
Since we started to see JS on the server side, the dream of developers has been to reduce the gap and the cost of switch between frontend/backend. Today with Node.js, React and a whole ecosystem of tools, this dream is becoming true! In this talk I am going to discuss about Universal (a.k.a. Isomorphic) JS and present some practical example regarding the major patterns related to routing, data retrieval and rendering. I will use Node, React, Webpack, Babel and React Router and give you a series of example to get you started easily with this new technology trend.
Public speaking 4 geeks - Lorenzo Barbieri - Codemotion Milan 2016Codemotion
Speaking in public is not easy, especially for geeks, that tend to be too technical, or too shy, or too something... In this session we'll start with some basic tips and we'll see how to dramatically improve our results using well defined techniques. We'll also see (with practical examples) how to deal with problems during speeches, elevator pitches, product presentations, interviews, and so on. Public speaking skills are not useful to conference speakers only, everybody needs to improve them, especially geeks!
Big Data, Small Dashboard - Andrea Maietta - Codemotion Milan 2016Codemotion
Big data is the new black. We have more data than we could use, but what we really need is information. The typical dashboard is completely crammed with colourful 3D pies, uncountable lines and tons of extra-thick tables. And nobody understands anything. Knowledge is power. But to be able to know you first have to understand. In this talk we shall see how to transform a terribile mess into a clean and informative dashboard, moving step by step and explaining the reasonings between each passage. At my signal... unleash knowledge!
Come rendere il proprio prodotto una bomba creandogli una intera community in...Codemotion
Creare una community di sviluppatori ed utilizzatori intorno al proprio progetto è diventato ormai fondamentale. Persone appassionate che utilizzano il tuo prodotto, forniscono feedback, documentazione e casi d'uso, trovano bug, suggeriscono feature e contribuiscono allo sviluppo: tutto questo crea innovazione, attira contributors ed allarga la base di utenti a dismisura. In questo talk spiegherò cosa ho imparato nel creare una community online da zero a 1000 membri: come gestire discussioni aperte, come fare le scelte migliori. Consigli pronti per l'uso, cosa funziona e cosa no.
Understanding Angular 2 - Shmuela Jacobs - Codemotion Milan 2016Codemotion
Angular 2 is a complete rewrite of the AngularJS framework, which introduces new approaches and leverages the latest technologies. Simplifying and generalizing core concepts, the performance is improved and the range of capabilities is broadened. In this session Shmuela will help you understand the core concepts of Angular 2 apps: the component-based architecture, dependency injection, change detection, and more.
SASI, Cassandra on the full text search ride - DuyHai Doan - Codemotion Milan...Codemotion
Apache Cassandra is a scalable database with high availability features. But they come with severe limitations in term of querying capabilities. Since the introduction of SASI in Cassandra 3.4, the limitations belong to the pass. Now you can create performant indices on your columns as well as benefit from full text search capabilities with the introduction of the new LIKE %term% syntax. To illustrate how SASI works, we'll use a database of 100 000 albums and artists.
Sviluppare applicazioni cross-platform con Xamarin Forms e il framework Prism...Codemotion
Xamarin Forms consente di sviluppare applicazioni cross-platform utilizzando C# e di condividere non solo la business logic (come consente già di fare l’approccio tradizionale), ma anche l’interfaccia utente, grazie ad un linguaggio basato sullo XAML, i cui elementi vengono poi convertiti in tempo reale in controlli nativi, garantendo perciò una user experience coerente con quella attesa dall’utente su Android, iOS e Windows. Nel corso di questa sessione vedremo come strutturare al meglio un progetto Xamarin Forms, grazie al pattern MVVM e al framework open source Prism.
Sviluppare applicazioni nell'era dei "Big Data" con Scala e Spark - Mario Car...Codemotion
Scala è un linguaggio di programmazione general purpose multi-paradigma pensato per realizzare applicazioni ad alte prestazioni che girano all'interno della Java Virtual Machine. Spark è il framework "Big Data", basato su Scala, più flessibile e performante disponibile oggi sul mercato. Durante il talk verrà introdotto il linguaggio Scala e verranno mostrate le potenzialità legate al suo utilizzo nell'ambito dello sviluppo di applicazioni web di ultima generazione compresa la possibilità di processamento parallelo di grandi quantità di dati attraverso l'utilizzo del framework Spark.
How To Structure Go Applications - Paul Bellamy - Codemotion Milan 2016Codemotion
For developers used to working with frameworks like Spring, and Rails, Go's lack of advice on how to structure your application can be bewildering. Many new developers, reach for their favourite Spring, or Rails equivalent, and rely on its structure, but that is a mistake! Go gives us wonderful tools to put Domain-driven design into practice, and create beautiful applications.
Time to market: when a worse game is better - Mattia Traverso - Codemotion Mi...Codemotion
The experimental Kinect game FRU was released on July 13 on the Xbox One Store. The Verge called it a "killer app". Engadget an "incredible game", whereas Destructoid gave it a 9.5/10. It's the highest rated camera-based game ever and yet, it sold less than ten thousand copies. At first glance, the issue might seem obvious: "It's a Kinect game". However, the Kinect 2 peripheral has a respectable install base between 3 and 4 million units, so only the 0,0025 % of the potential target bought the game. What we can learn from this experience?
Human vs Bot: Giocare a Sasso-Carta-Forbici - Matteo Valoriani, Antimo Musone...Codemotion
In questa sessione vedremo come realizzare un algoritmo intelligente per giocare a morra cinese (e sue varianti) usando Azure Machine Learning e interagire usando un Bot. In particolare vedremo diverse modalità per predire le mosse dell’avversario rilevando e analizzando pattern da una serie storica e utilizzeremo il nuovo Microsoft Bot Framework e i Cognitive Services per creare un Bot per interagire con l’algoritmo di gioco.
No more Three Tier - A path to a better code for Cloud and AzureMarco Parenzan
Three Tier is no more a model for Cloud and in general Scalable Web Applications. Scaffolding from SQL Database is, sure, the worst way to do. A road to do this is changing modeling activity, from scaffolded DB model to Command/DTO model, through ViewModel pattern. Command and DTOs are pillars of CQRS model.
Anyone who has worked with spatial databases has had the need for spatial joins. It’s a GIS operation that allows you to combine information from different tables using their relative spatial locations.
Sounds complex, but in FME it’s as easy as selecting a transformer for the job. In this webinar, learn the basics of merging and joining spatial data, including:
- Understanding what transformer is useful in different scenarios
- Incorporating GIS capabilities within your workflows
- Automating your workflows
By using FME for spatial joins, you’ll be able to apply spatial joins to data independent of format, and get it done as fast as possible.
It's easy to say... Microservices! Reality is we need to learn and apply concepts coming from many disciplines like SOA, EDA and DDD just to name a few! Mix them with some ALM and technical processes around Packaging and Deploying... and maybe then you get a true Microservices solution.
Cartographer, or Building A Next Generation Management Frameworkansmtug
Dr. Bobby Krupczak's slides about the Cartographer management agent and the underlying XMP management framework. Presented at the February 10, 2009 meeting of the Atlanta Network and Systems Management Technical User Group (ANSMTUG).
A Deep Dive in the World of IT Networking (Part 2)Tuan Yang
For a successful career in Information Technology, a strong foundation of basic networking concepts is a must. Networking technology allows for the exchange of data between large and small information systems used primarily by various businesses.
Learn more about:
» OSI Model
» Networking Protocol
» TCP Model
» Networking and data security
Availability in a cloud native world v1.6 (Feb 2019)Haytham Elkhoja
Guidelines for mere mortals. These are a collection of guidelines picked up in the field... hopefully they would help developers and SREs building or modernizing apps ensuring the highest level of availability to their applications.
Application Architecture Patterns talk tailored for PHP / Symfony developers. (2016). We describe the traditional layers, a Domain Model, Hexagonal architecture and how the pieces fit together.
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Codemotion
Increased complexity makes it very hard and time-consuming to keep your software bug-free and secure. We introduce fuzz-testing as a method for automatically and continuously discovering vulnerabilities hidden in your code. The talk will explain how fuzzing works and how to integrate fuzz-testing into your Software Development Life Cycle to increase your code’s security.
Pompili - From hero to_zero: The FatalNoise neverending storyCodemotion
It was 1993 when we decided to venture in a beat'em up game for Amiga. The Catalypse's success story pushed me and my comrade to create something astonishing for this incredible game machine... but things went harder, assumptions were slightly different, and italian competitors appeared out of nowhere... the project died in 1996. Story ended? Probably not...
Il Commodore 65 è un prototipo di personal computer che Commodore avrebbe dovuto mettere in commercio quale successore del Commodore 64. Purtroppo la sua realizzazione si fermò appunto allo stadio prototipale. Racconterò l'affascinante storia del suo sviluppo ed il perchè della soppressione del progetto ormai ad un passo dalla immissione in commercio.
Rivivere l'ebbrezza di progettare un vecchio computer o una consolle da bar è oggi possibile sfruttando le FPGA, ovvero logiche programmabili che consentono a chiunque di progettare il proprio hardware o di ricrearne uno del passato. In questa sessione si racconta come dal reverse engineering dell'hardware di vecchie glorie come il Commodore 64 e lo ZX Spectrum sia stato possibile farle rivivere attraverso tecnologie oggi alla portata di tutti.
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Codemotion
There's a lot of talk about blockchain, but how does the technology behind it actually work? For developers, getting some hands-on experience is the fastest way to get familiair with new technologies. So let's build a blockchain, then! In this session, we're going to build one in plain old Java, and have it working in 40 minutes. We'll cover key concepts of a blockchain: transactions, blocks, mining, proof-of-work, and reaching consensus in the blockchain network. After this session, you'll have a better understanding of core aspects of blockchain technology.
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019Codemotion
When was the last time you were truly lost? Thanks to the maps and location technology in our phones, a whole generation has now grown up in a world where getting lost is truly a thing of the past. Location technology goes far beyond maps in the palm of our hand, however. In this talk, we will explore how a ridesharing app works. How do we discover our destination?How do we find the closest driver? How do we display this information on a map? How do we find the best route?To answer these questions,we will be learning about a variety of location APIs, including Maps, Positioning, Geocoding etc.
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Codemotion
Eward Driehuis, SecureLink's research chief, will guide you through the bumpy ride we call the cyber threat landscape. As the industry has over a decade of experience of dealing with increasingly sophisticated attacks, you might be surprised to hear more attacks slip through the cracks than ever. From analyzing 20.000 of them in 2018, backed by a quarter of a million security events and over ten trillion data points, Eward will outline why this happens, how attacks are changing, and why it doesn't matter how neatly or securely you code.
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 - Codemotion
IoT revolution is ended. Thanks to hardware improvement, building an intelligent ecosystem is easier than never before for both startups and large-scale enterprises. The real challenge is now to connect, process, store and analyze data: in the cloud, but also, at the edge. We’ll give a quick look on frameworks that aggregate dispersed devices data into a single global optimized system allowing to improve operational efficiency, to predict maintenance, to track asset in real-time, to secure cloud-connected devices and much more.
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Codemotion
What if Virtual Reality glasses could transform your environment into a three-dimensional work of art in realtime in the style of a painting from Van Gogh? One of the many interesting developments in the field of Deep Learning is the so called "Style Transfer". It describes a possibility to create a patchwork (or pastiche) from two images. While one of these images defines the the artistic style of the result picture, the other one is used for extracting the image content. A team from TNG Technology Consulting managed to build an AI showcase using OpenCV and Tensorflow to realize such goggles.
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Codemotion
Blockchain (and Cryptocurrency) is an evolution of 20-year old research from scientists like Chaum, Lamport, and Castro & Liskov. Due to the current hype, it's hard to distinguish beneficial aspects of the technology from a desire for a "silver bullet" for device security, verifiable logistics, or "saving democracy". The problem: blockchain introduces new security challenges - and blind adoption without understanding reduces overall security. In this talk, Melanie Rieback and Klaus Kursawe explain the pitfalls and limits of blockchain, so you can avoid making your applications LESS secure.
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Codemotion
Networking is a core part of computing in the digital world we inhabit. But, how well do you know how it works? Do you understand all the moving parts of the OSI stack inside your computer, and how the network is actually put together? How can this ever work? This guided safari of layers, standards, protocols, and happenstance will bring us close to the copper wire, and up through the layers of CDMA/CD, ARP, routing and HTTP. We will make a few excursions through patchworks that still work forty years later, and cleverly designed mechanisms that show that simplicity is the only way to last.
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Codemotion
Performance tests are not only an important instrument for understanding a system and its runtime environment. It is also essential in order to check stability and scalability – non-functional requirements that might be decisive for success. But won't my cloud hosting service scale for me as long as I can afford it? Yes, but… It only operates and scales resources. It won't automatically make your system fast, stable and scalable. This talk shows how such and comparable questions can be clarified with performance tests and how DevOps teams benefit from regular test practise.
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Codemotion
Sascha will demonstrate the opportunities and challenges of Conversational AI learned from the practice. Both Technology and User Experience will be covered introducing a process finding micro-moments, writing happy paths, gathering intents, designing the conversational flow, and finally publishing on almost all channels including Voice Services and Chatbots. Valuable for enterprises, developers, and designers. All live on stage in just minutes and with almost no code.
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Codemotion
A key challenge we face at Pacmed is quickly calibrating and deploying our tools for clinical decision support in different hospitals, where data formats may vary greatly. Using Intensive Care Units as a case study, I’ll delve into our scalable Python pipeline, which leverages Pandas’ split-apply-combine approach to perform complex feature engineering and automatic quality checks on large time-varying data, e.g. vital signs. I’ll show how we use the resulting flexible and interpretable dataframes to quickly (re)train our models to predict mortality, discharge, and medical complications.
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Codemotion
Coolblue is a proud Dutch company, with a large internal development department; one that truly takes CI/CD to heart. Empowerment through automation is at the heart of these development teams, and with more than 1000 deployments a day, we think it's working out quite well. In this session, Pat Hermens (a Development Managers) will step you through what enables us to move so quickly, which tools we use, and most importantly, the mindset that is required to enable development teams to deliver at such a rapid pace.
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...Codemotion
Quantum computers can use all of the possible pathways generated by quantum decisions to solve problems that will forever remain intractable to classical compute power. As the mega players vie for quantum supremacy and Rigetti announces its $1M "quantum advantage" prize, we live in exciting times. IBM-Q and Microsoft Q# are two ways you can learn to program quantum computers so that you're ready when the quantum revolution comes. I'll demonstrate some quantum solutions to problems that will forever be out of reach of classical, including organic chemistry and large number factorisation.
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Codemotion
Chinese food exploded across America in the early 20th century, rapidly adapting to local tastes while also spreading like wildfire. How was it able to spread so fast? The GY6 is a family of scooter engines that has achieved near total ubiquity in Europe. It is reliable and cheap to manufacture, and it's made in factories across China. How are these factories able to remain afloat? Chinese-American food and the GY6 are both riveting studies in product-market fit, and both are the product of a distributed open source-like development model. What lessons can we learn for open source software?
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Codemotion
The design space has exploded in size within the last few years and Sketch is one of the most important milestones to represent the phenomenon. But behind the scenes of this growing reality there is a remote team that revolutionizes the design space all without leaving the home office. This talk will present how Sketch has grown to become a modern, product designer's tool.
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Codemotion
Would you fly in a plane designed by a craftsman or would you prefer your aircraft to be designed by engineers? We are learning that science and empiricism works in software development, maybe now is the time to redefine what “Software Engineering” really means. Software isn't bridge-building, it is not car or aircraft development either, but then neither is Chemical Engineering. Engineering is different in different disciplines. Maybe it is time for us to begin thinking about retrieving the term "Software Engineering" maybe it is time to define what our "Engineering" discipline should be.
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Codemotion
What is the job of a CTO and how does it change as a startup grows in size and scale? As a CTO, where should you spend your focus? As an engineer aspiring to be a CTO, what skills should you pursue? In this inspiring and personal talk, I describe my journey from early Red Hat engineer to CTO at Bloomon. I will share my view on what it means to be a CTO, and ultimately answer the question: Should the CTO be coding?
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
9. Fallacies of
Distributed Computing
1. The network is reliable. (Bill Joy and Tom Lyon)
2. Latency is zero. (Bill Joy and Tom Lyon)
3. Bandwidth is infinite. (Bill Joy and Tom Lyon)
4. The network is secure. (Bill Joy and Tom Lyon)
5. Topology doesn’t change. (Peter Deutsch)
6. There is one administrator. (Peter Deutsch)
7. Transport cost is zero. (Peter Deutsch)
8. The network is homogeneous. (James Gosling)
10. The Fallacies EBook
• Go to: http://go.particular.net/codem16
• Ted Neward’s blog:
http://blogs.tedneward.com/post/enterpri
se-computing-fallacies/
17. Lessons learnt
It’s hard (er)
Messaging:
Asynchronous fire and forget, Pub/Sub
CQ(R)S: Separating data writes and data
reads
Use messaging only if it suites
18. Lessons learnt(cont.)
Decomposing your business domain is
hard, no framework/tools will magically fix
that
Data (write) ownership
Referential integrity and GUIDS
Data reads and eventual consistency
19. Lessons learnt(cont.)
Monitoring - Lights on
Testing is HARD
Deployment - Automate everything
Organization and people, trust
Be pragmatic but keep the paradigm
20. Summary
• Avoid all dimensions of coupling
• Avoid synchronous communication between
components/microservices,
• Don't share data, use view/read models to share read only
data
• Decomposing your business domain and entities
• You can do it on .Net platform using NServiceBus
• Blog post: http://particular.net/blog/goodbye-
microservices-hello-right-sized-services
• Fallacies EBook: http://go.particular.net/codem16
2
My name is Sean Farmar and I’ve been hacking code for a living in the last 20 years in the last 8 years I've been doing SOA using NServiceBus.
I work at Particular Software (the creators of NServiceBus) as a Solution Architect supporting customers for the last 3 years.
Disclaimer
I like the idea behind the microservices movement and it sounds like SOA 2.0, however, we are seeing, what is very common in our industry, we don’t really like to learn form the past…
Microservices is the new black, the buzzword everyone wants to join in, jump on the band wegon.
I hope I can share with you the lessons we learnt when doing SOA so your journey will be a good one.
6
In 2007 (November) I started a new project I was looking for a way to do software better and made a move to Service Oriented Architecture using NServiceBus,
it was a paradigm shift that changed the way I do software forever.
Let me tell you my story
We all probably been there
Start with a green field, small monolith, clean design
Then the business succeeds, we add features and our clean code gets littered with more code to cater for more features
We soon find ourselves dreading change anything…
7
YODA! What am I doing wrong?
I’m doing everything by the book,
n-tier, layers and tiers.
I even tried web services…
Nothing seams to work!
7
7.5
You will always have some amount of coupling…
12
High level
14
The fallacies of distributed computing describe common assumptions that are made by developers and architects building distributed systems.
16
The fallacies of distributed computing describe common assumptions that are made by developers and architects building distributed systems.
In 1994 Peter Deutsch wrote down seven fallacies.
In 1997 James Gosling added another fallacy.
These fallacies are known as “The eight fallacies of distributed computing”.
In the year 2006 Ted Neward added three more fallacies, which are not so widely known.
The system is atomic/monolithic. (Ted Neward)
The system is finished. (Ted Neward)
Business logic can and should be centralized. (Ted Neward)
17
18
20
25
Achieving encapsulation means getting a high coupling in a bounded context
But we gain autonomy when we look at the system level
1: Boundaries are explicit
2: Services are autonomous
3: Services share schema & contract, not class
4: Service compatibility is based upon policy
26
27
Monolith and layers
We will end up with very high coupling between the layers