SlideShare a Scribd company logo
1 of 47
Download to read offline
MILAN november 28th/29th 2014 
Sviluppare in cloud con 
M.E.A.N.: il caso 
Crowdcore.
MILAN november 28th/29th 2014 
BUSINESS CASE 
Juri di Natale
MILAN november 28th/29th 2014 
THE “PROTAGONISTS” 
LINKME 
à agile development 
ENTER CLOUD SUITE 
à cloud computing 
CROWDCORE 
à crowd economy
MILAN november 28th/29th 2014 
SOME DEFINITIONS, 
BEFORE WE START
MILAN november 28th/29th 2014 
WHAT IS M.E.A.N. 
• MongoDB 
• ExpressJS 
• AngularJS 
• NodeJS
MILAN november 28th/29th 2014 
CROWDFUNDING 
• Reward crowdfunding 
• Equity crowdfunding 
• Donation crowdfunding 
• Pre-order crowdfunding 
• Social lending
MILAN november 28th/29th 2014 
CROWDCORE 
A framework to develop crowd 
economy tools and platforms
MILAN november 28th/29th 2014 
CROWDCORE: example
MILAN november 28th/29th 2014 
CROWDCORE for NTT DATA 
A platform designed to grow, inside 
the enterprise, innovative projects 
based on crowdfunding and 
gamification
MILAN november 28th/29th 2014 
CROWDECONOMY 
Customers are creating new business models
MILAN november 28th/29th 2014 
PLATFORM 
CHARACTERISTICS 
• Multiplatform 
• Multiproject 
• Set of tools specific to different 
types of crowdfunding 
• Custom application
MILAN november 28th/29th 2014 
BUSINESS CASE 
How cloud computing and M.E.A.N. 
supported the development of a 
framework for a crowd economy 
platform
MILAN november 28th/29th 2014 
THE CHALLANGE 
1. Scalability 
2. Agile new feature implementation 
3. Component re-use
MILAN november 28th/29th 2014 
CROWDCORE 
APPLICATION
MILAN november 28th/29th 2014 
BACKEND 
Giovanni Lela
MILAN november 28th/29th 2014 
WHY 
• I/O intensive REST APIs 
• Horizontal scalability 
• Leverage existing javascript know-how 
• Huge community
MILAN november 28th/29th 2014 
WHY 
• (mostly) non relational data 
• Horizontal scalability (again) 
• Mongoose ODM
MILAN november 28th/29th 2014 
WHY 
• Unopinionated 
• VERY modular 
• Mature
MILAN november 28th/29th 2014 
6 MONTHS LATER…
MILAN november 28th/29th 2014 
nodeJS IS OK BUT… 
• You need something to fight the 
callback hell (Bluebird) 
• Needs static typing 
• Too many community packages 
are too many
MILAN november 28th/29th 2014 
mongoDB and mongoose 
ARE OK BUT… 
• Mongoose Schemas are great 
o Valida&on 
o Referencing 
other 
documents 
o Schema 
inheritance 
o Plugins
MILAN november 28th/29th 2014 
EXPRESS IS OK BUT… 
• Easy to extend 
• Maybe too much unopinionated
MILAN november 28th/29th 2014 
WHAT HAPPENS NEXT 
• Typescript 
• ES6 generators - koa
MILAN november 28th/29th 2014 
FRONTEND 
Matteo Scandolo
MILAN november 28th/29th 2014 – Speaker's name 
WHY ANGULAR 
Spread, Dependency Injection and 
Directive
STANDALONE MODULES 
Every components is assembled with a 
Directive and a Service
MILAN november 28th/29th 2014 – Speaker's name 
MODULE CONFIGURATION 
Every Module has some configuration parameters 
and the possiblity to pick up a custom template 
Template 
Directive
GruntJs let us build 
portable environment and 
tailor them to the 
developer needs. 
MILAN november 28th/29th 2014 – Speaker's name 
DEV ENVIRONMENT
MILAN november 28th/29th 2014 – Speaker's name 
VERSION CONTROL 
Every Module has his own repository, 
that is importend in the main project 
as a Git SubTree
MILAN november 28th/29th 2014 
SIX MONTHS LATER…
MILAN november 28th/29th 2014 – Speaker's name 
Modules à Web Components
MILAN november 28th/29th 2014 – Speaker's name 
Grunt à Vagrant
Subtree à Private Bower Registry
MILAN november 28th/29th 2014 
Q&A
MILAN november 28th/29th 2014 
HOW WE DESIGNED 
THE INFRASTRUCTURE 
Giorgio Bonfiglio
MILAN november 28th/29th 2014 
WHAT THE CUSTOMER 
ASKED FOR… 
• Cost effectiveness 
• Ability to scale-up
MILAN november 28th/29th 2014 
…AND WHAT ABOUT 
DEVELOPERS? 
• (Very) short deployment time 
• Standardized processes 
• Ability to clone the infrastructure
MILAN november 28th/29th 2014 
NEW FRAMEWORKS, 
BETTER POSSIBILITIES 
• Designed for the cloud 
• Easier distribution of components
MILAN november 28th/29th 2014 
HERE IT IS
MILAN november 28th/29th 2014 
IT’S ALL ABOUT AGILITY 
“deploy and scale in seconds 
easily manageable 
building blocks”
MILAN november 28th/29th 2014 
DREAMS… AS A SERVICE 
• Easy disaster recovery, replica 
and versioning: NO limits!
MILAN november 28th/29th 2014 
WHAT’S NEXT? 
• Infrastructure awareness for the 
application 
• Platform APIs enable it to control 
the underlying layer
MILAN november 28th/29th 2014 
Q&A
MILAN november 28th/29th 2014 
KEY FINDINGS
MILAN november 28th/29th 2014 
3 LESSONS 
• Technology supports the crowd 
economy 
• MEAN provides high scalability 
and flexibility 
• Cloud native applications do 
“manage” cloud infrastructures
MILAN november 28th/29th 2014 
GOOD NEWS 
A social lending platform is also 
coming!
MILAN november 28th/29th 2014 
WORK WITH US! 
jobs@linkme.it 
COME AND MEET US! 
www.entercloudsuite.com

More Related Content

Similar to Sviluppare in cloud con M.E.A.N.: il caso Crowdcore

Similar to Sviluppare in cloud con M.E.A.N.: il caso Crowdcore (20)

muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"
 
Real time web with SignalR
Real time web with SignalRReal time web with SignalR
Real time web with SignalR
 
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
 
Applying semantic web technologies at NXP Semiconductors
Applying semantic web technologies at NXP SemiconductorsApplying semantic web technologies at NXP Semiconductors
Applying semantic web technologies at NXP Semiconductors
 
Backend as a Service: Parse
Backend as a Service: ParseBackend as a Service: Parse
Backend as a Service: Parse
 
Backend as a Service: Parse - Moriconi
Backend as a Service: Parse - MoriconiBackend as a Service: Parse - Moriconi
Backend as a Service: Parse - Moriconi
 
CloudStack at Schuberg Philis
CloudStack at Schuberg PhilisCloudStack at Schuberg Philis
CloudStack at Schuberg Philis
 
Unlocked Nov 2013: Cloud principles track
Unlocked Nov 2013: Cloud principles trackUnlocked Nov 2013: Cloud principles track
Unlocked Nov 2013: Cloud principles track
 
Presentation meetup ElasticSearch Paris #10
Presentation meetup ElasticSearch Paris #10Presentation meetup ElasticSearch Paris #10
Presentation meetup ElasticSearch Paris #10
 
DevOps is dead
DevOps is deadDevOps is dead
DevOps is dead
 
DEVOPS IS DEAD.
DEVOPS IS DEAD.DEVOPS IS DEAD.
DEVOPS IS DEAD.
 
Webinar: Cloud Computing - Service and Deployment Models
Webinar: Cloud Computing - Service and Deployment Models Webinar: Cloud Computing - Service and Deployment Models
Webinar: Cloud Computing - Service and Deployment Models
 
Logmatic at ElasticSearch November Paris meetup
Logmatic at ElasticSearch November Paris meetupLogmatic at ElasticSearch November Paris meetup
Logmatic at ElasticSearch November Paris meetup
 
OpenNebula - Status and Roadmap
OpenNebula - Status and RoadmapOpenNebula - Status and Roadmap
OpenNebula - Status and Roadmap
 
Microsoft products 2014
Microsoft products 2014Microsoft products 2014
Microsoft products 2014
 
La mia lavatrice collegata a internet? - Valter Minute - Codemotion Milan 2014
La mia lavatrice collegata a internet? - Valter Minute - Codemotion Milan 2014La mia lavatrice collegata a internet? - Valter Minute - Codemotion Milan 2014
La mia lavatrice collegata a internet? - Valter Minute - Codemotion Milan 2014
 
Customer story - Why Containers by Sameer Kumar
Customer story - Why Containers by Sameer KumarCustomer story - Why Containers by Sameer Kumar
Customer story - Why Containers by Sameer Kumar
 
DMPonline roadmap 2015
DMPonline roadmap 2015DMPonline roadmap 2015
DMPonline roadmap 2015
 
ChinaNetCloud - Public Clouds in China Overview
ChinaNetCloud - Public Clouds in China OverviewChinaNetCloud - Public Clouds in China Overview
ChinaNetCloud - Public Clouds in China Overview
 
OpenNebula - The Project
OpenNebula - The ProjectOpenNebula - The Project
OpenNebula - The Project
 

More from Codemotion

More from Codemotion (20)

Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
 
Pompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending storyPompili - From hero to_zero: The FatalNoise neverending story
Pompili - From hero to_zero: The FatalNoise neverending story
 
Pastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storiaPastore - Commodore 65 - La storia
Pastore - Commodore 65 - La storia
 
Pennisi - Essere Richard Altwasser
Pennisi - Essere Richard AltwasserPennisi - Essere Richard Altwasser
Pennisi - Essere Richard Altwasser
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
 
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 - Francesco Baldassarri  - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
 

Recently uploaded

Recently uploaded (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Sviluppare in cloud con M.E.A.N.: il caso Crowdcore