48
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore. MILAN november 28 th /29 th 2014

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

Embed Size (px)

Citation preview

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

Sviluppare in cloud con

M.E.A.N.: il caso

Crowdcore.

MILAN november 28th/29th 2014

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

MILAN november 28th/29th 2014

BUSINESS CASE

Juri di Natale

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

LINKME

agile development

ENTER CLOUD SUITE

cloud computing

CROWDCORE (powered by FOLKFUNDING)

crowd economy

MILAN november 28th/29th 2014

THE “PROTAGONISTS”

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

MILAN november 28th/29th 2014

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

MILAN november 28th/29th 2014

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

MILAN november 28th/29th 2014

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

MILAN november 28th/29th 2014

SOME DEFINITIONS,

BEFORE WE START

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

-reward crowdfunding

-equity crowdfunding

-donation crowdfunding

-pre-order crowdfunding

-social lending

MILAN november 28th/29th 2014

CROWDFUNDING

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

Internet based

Access inside the enterprise

User Experience

MILAN november 28th/29th 2014

INTRANET

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

A framework to develop crowd

economy tools and platforms

MILAN november 28th/29th 2014

CROWDCORE =INTRANET CROWDFUNDING

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

MILAN november 28th/29th 2014

CROWCORE: example

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

A platform to grow, inside the

enterprise, innovative projects based

on crowdfunding and gamification

MILAN november 28th/29th 2014

CROWDCORE for NTT DATA

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

MILAN november 28th/29th 2014

CROWDECONOMY

Customers are creating new business models

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

MILAN november 28th/29th 2014

PLATFORM

CHARACTERISTICSMultiplatform

Multiproject

Set of tools specific to different types of

crowdfunding

Custom application

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

How cloud computing and M.E.A.N.

supported the development of a

framework for a crowd economy

platform

MILAN november 28th/29th 2014

BUSINESS CASE

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

1. Scalability

2. Agile new feature implementation

3. Component re-use

MILAN november 28th/29th 2014

THE CHALLANGE

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

MILAN november 28th/29th 2014

CROWDCORE

APPLICATION

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

MILAN november 28th/29th 2014

BACK END

Giovanni Lela

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

• I/O intensive REST APIs

• horizontal scalability

• leverage existing javascript know-

how

• huge community

MILAN november 28th/29th 2014

WHY

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

• (mostly) non relational data

• horizontal scalability (again)

• mongoose ODM

MILAN november 28th/29th 2014

WHY

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

• Unopinionated

• VERY modular

• Mature

MILAN november 28th/29th 2014

WHY

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

MILAN november 28th/29th 2014

6 MONTHS LATER…

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

• You need something to fight the

callback hell (Bluebird)

• Needs static typing

• Too many community packages

are too many

MILAN november 28th/29th 2014

nodeJS IS OK BUT…

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

• Mongoose Schemas are great

o Validation

o Referencing other documents

o Schema inheritance

o Plugins

MILAN november 28th/29th 2014

Mongo DB and mongoose

ARE OK BUT…

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

• Easy to extend

• Maybe too much unopinionated

MILAN november 28th/29th 2014

EXPRESS IS OK BUT…

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

• Typescript

• ES6 generators - koa

MILAN november 28th/29th 2014

WHAT HAPPENS NEXT

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

MILAN november 28th/29th 2014

FRONT END

Matteo Scandolo

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

MILAN november 28th/29th 2014 – Speaker's name

Spread, Dependency Injection and

Directive

WHY ANGULAR

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

Every components is assembled with a

Directive and a Service

STANDALONE MODULES

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

MILAN november 28th/29th 2014 – Speaker's name

Every Module has some configuration parameters

and the possiblity to pick up a custom template

Directive

Template

MODULE CONFIGURATION

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

GruntJs let us build

portable environment and

to tailor them to the

developer needings.

MILAN november 28th/29th 2014 – Speaker's name

DEV ENVIRONMENT

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

Every Module has his own repository,

that is importend in the main project

as a Git SubTree

MILAN november 28th/29th 2014 – Speaker's name

VERSION CONTROL

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

MILAN november 28th/29th 2014

6 MONTHS LATER…

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

MILAN november 28th/29th 2014 – Speaker's name

Modules Web Components

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

MILAN november 28th/29th 2014 – Speaker's name

Grunt Vagrant

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

Subtree Private Bower Registry

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

MILAN november 28th/29th 2014

HOW WE DESIGNED

THE INFRASTRUCTURE

Giorgio Bonfiglio

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

• Cost effectiveness

• Ability to scale-up

MILAN november 28th/29th 2014

WHAT THE CUSTOMER

ASKED FOR…

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

• (Very) short deployment time

• Standardized processes

• Ability to clone the infrastructure

MILAN november 28th/29th 2014

…AND WHAT ABOUT

DEVELOPERS?

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

• Designed for the cloud

• Easier distribution of components

MILAN november 28th/29th 2014

NEW FRAMEWORKS,

BETTER POSSIBILITIES

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

MILAN november 28th/29th 2014

HERE IT IS

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

“deploy and scale in seconds

easily manageable

building blocks”

MILAN november 28th/29th 2014

IT’S ALL ABOUT AGILITY

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

• Easy disaster recovery, replica

and versioning: NO limits!

MILAN november 28th/29th 2014

DREAMS… AS A SERVICE

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

• Infrastructure awareness for the

application

• Platform APIs enable it to control

the underlying layer

MILAN november 28th/29th 2014

WHAT’S NEXT?

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

MILAN november 28th/29th 2014

KEY FINDINGS

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

• Technology supports the crowd

economy

• MEAN provide high scalability and

flexibility

• Cloud native applications do

“manage” cloud infrastructures

(deployment, autoscaling, …)

MILAN november 28th/29th 2014

3 LESSONS

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

A social lending platform is also

coming!

MILAN november 28th/29th 2014

GOOD NEWS

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

MILAN november 28th/29th 2014

WORK WITH US!

[email protected]

REQUEST A DEMO!

[email protected]