SlideShare a Scribd company logo
1 of 33
Download to read offline
Server’s variations BSW2015
lcerveau@nephorider.com lcerveau@mmyneta.com
laurent@zen.ly
• You are more a product/UI/mobile/Frontend guy
• The further server reference you have is the idea
of API
• You have (initially) no desire or time to learn
server stuff
• After all it should just be a commodity…
Common scenario
(personal experience)
• Your servers and infra will also give you
nightmares
• Problem will have an immediate impact
• You will have the feeling to be able to do nothing
• You will not understand any word from your
server guys
• All the hype about Cloud making it easy will look
like a joke.
In real life
Many concepts
API
Storage
Data
Security Cache
Domain Name
Deployment
Push
Analytics
Load
Asynchronous
Organizing all this
• There is always this “top to bottom”, “bottom to
top” idea. Here we are more on a spider web
• Each element has the DNA complexity of the
whole: compute , structured storage, object
storage, network & security, virtualization &
containers, DNS + more elaborated
• Big challenge is “when to decide” that one does
not want to deal with a complexity. Because of a
certain tendency to accept an understood
complexity
Human resource
• Impact is not only on development but also on a
team structure. How many “roles” to hire? At
which cost ?
• I think you can not ignore the world “Fullstack”
or “Devops”. Question is “what does it
encompass” ? What part of trendy wording is
here? But certainly boundaries are less fixed
and jobs are changing (in particular with the
cloud)
• What is good at a point in time may not be good
in another…as usual
Variations
Facebook Parse : the mobile/product/
toptobottom approach
Heroku : the “server is first software”
approach
AWS : the “Be brave and climb the
cloud server mountain” approach
This has no pretention of being exhaustive
I have no intention to
• Debate about the best technology/language
• I repeat again :”In absolute no approach is
better than an other”
• Provide precise sample on how to use those
technology. Just some important points
The product/mobile/toptobottom approach
A little bit of context
• Parse : part of Facebook. Available at
parse.com (April 25, 2013 according to
Wikipedia)
• Progressive pricing . Start Free pay as you grow
(request count, used storage…). Makes you
understand some parameters of cost on the
Cloud
• If one had to find a competitor for me it would be
Apple’s CloudKit (although less developed)
The backend of your mobile app
• Interesting approach as they put Analytics from
the beginning (Core/Push/Analytics on top of the
app bar). Measuring your app customer
performance is _important_
• Deals with an important topic : notifications. This
is something very often underestimated
• Commodities allows you to have a “I learn from
mobile approach” : e.g auto class creation
Full Product approach
Technically
• Offer template/starting point for many platforms :
mobile, web, but also some “alternative SDK”
like Xamarin (Mono C# technology) and Unity
• Backend is very much in the MongoDB/
Javascript tradition but it is not necessary to
know it at first. Webhooks allows to integrate
with your own server/language
• Creation of data comes with “good habits” : in
what should be in a server entity (ACL, creation
date….)
Technically(2)
• Also presents concepts in a way that makes them
“learnable” : data, long time background process….
Miscellaneous
• Likely no worry about “how long will it be there” (hey
this is Facebook!)
• Have “decently big names” on their user home page
• As part of learning curve : couple of hours or days to
get simplest thing, one week already gets you far.
• You can learn from both sides : client and server. That
is if you know only client coding you can at first do all
here
Where/When do I stop?
• The commodity of the beginning can prevents you from
from learning the real problems : e.g auto created
class
• When does it start to take much more time to integrate
your own server part (with webhook)? It is nice
because your own code can focus on your own value,
but at a time it can be a time eater
• IMHO 2 parts are “too hidden” : infrastructure and
deployment issues, Organization of a big size project.
Of course somewhere this is the goal of hiding this
• I never had to “scale” with it. Easy? How much ?
The “server is software” approach
A little bit of context
• One of the older PaaS (platform as a service),
born in 2007 acquired in 2010 by Salesforce
• IMHO went to fame because it was in sync with
its time : Ruby On Rails, SQL (PostgreSQL) and
Git integration
• Somewhere the older version of Parse at a time
where doing web ships in Rails was the trend
• Did evolve with newer technology
Money (That’s what I want)
• IMHO a less friendly cost model both at the start and
as long run. Free seems not possible with production
(Must sleep 6 hours in a 24 hours period)
• Dyno (basic unit) prices range from 25$ a month to
500$. Compare to a small runAWS EC2 instance…so
maybe not for the long term
• Maybe a good way to go towards AWS (in terms of
features and pricing)
Technical approach
• A small step toward more playing with machines :
heroku is a command line tool, platform offers some
options like choice of regions, operational metrics
• Somewhere this is just Amazon hidden: you can use
other components (like a DB on RDS)
• Proposes top class integration for some parts (New
Relics)
Development process
• This part stays like any development : if you do Rails,
you’ll need to learn it, use tool like rake (through heroku
tools).It hides the idea of a web server versus
application server and infra setup
• Makes a good use of common tools (e.g learn Git
through heroku) good habits of using them
• A little bit longer learning curve than with Parse IMHO
Where/When do I stop?
• The cost. You scale, you better go to AWS directly
• The flexibility : at one point you’ll get closer to the core
and want to separate functions through
machines….although more understanding on your
scaling
• The moment you realize only your application server
stays on Heroku
AWS : “Be brave and climb the
server mountain”
AWS?
• Still major player in the cloud today. Certainly the
one with the most experience and the most
services
• But this should not hide the fact that there are
other services : Azure, GCE but also players
with a particular approach : Outscale in France,
Exoscale in Switzerland…
• Something that can be useful : they are very
startup friendly (AWS Activate). Not a “Start free
if you do nothing” but “Start free for a period of
time/amount of money and become real”
First encounter
• Likely you’ll get lost! Many dots to connect. Find
your global overview
• Wizard exists that help you do simple tasks but
in the longer run you may find that they let a lot
of trash behind
• Some wording can be confusing : e.g “Security
Groups are Firewalls”
• In general very good ecosystem that can be
very helpful (AWSome days conferences,
AWSUG…)
Philosophy
• AWS offers you in a “virtual way” everything that
used to be real.
• So it puts you directly into the core of learning
what is infrastructure : sizing, cost, security,
network, a certain level of monitoring
(Cloudwatch), choice of Operating System
• AWS is at first infrastructure (IaaS) : so once you
get your servers/VM over there you have to do
another part : for example set up a web server
with SSL certificate, managing user and groups,
deciding where to install elements, automatic
deployment and versioning. That is the “other
software part”
Learning curve
• If you start from virtually nothing, then you
usually have preconceived ideas about how
things get organized (e.g : hardware connected
view of things)
• Then you realize the complex concepts are
important design elements : case of VPC. Not
only security, but it provides a logical and
functional organization. Stop thinking “like a
software guy”
• You’ll get use to pricing with time: t2.micro is
around 10$ a month
Learning curve (2)
• Still there are some way of thinking to learn : find
RDS Security groups in EC2, is a volume having
an attachment to an instance or an instance a
connected volume, between ACL and Route
table when none is specified for a subnet what
comes as default (if something comes)
• Many technologies are presents, sometimes with
an AWS “naming flavor”, sometimes not. For
example Elasticache is Redis or Memcache,
• Some parts may become mandatory : e.g VPC,
IAM
Get an overview: Nephorider
Dashboard, hardware, network dataviz: www.nephorider.com
Where does it stop
• The boundaries are what AWS proposes.. and
your programming skills (yes you can program
all this)
• I personally do not use all, and you can not
apply one module to all : SES versus a service
like Mailchimp. For me this is not playing in the
same category
• Definitely a learning curve : each new
technology gets easier to get AWS mindset,This
is a long term investment: the price you’ll pay is
the defendant of your learning curve (e.g
autoscaling)
Thank You!

More Related Content

What's hot

Modern web dev_taxonomy
Modern web dev_taxonomyModern web dev_taxonomy
Modern web dev_taxonomykevin_donovan
 
Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Derek Jacoby
 
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JGeorgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JJosh Patterson
 
Deep Learning and Recurrent Neural Networks in the Enterprise
Deep Learning and Recurrent Neural Networks in the EnterpriseDeep Learning and Recurrent Neural Networks in the Enterprise
Deep Learning and Recurrent Neural Networks in the EnterpriseJosh Patterson
 
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015Deep Learning Intro - Georgia Tech - CSE6242 - March 2015
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015Josh Patterson
 
OpenStack: Toward a More Resilient Cloud
OpenStack: Toward a More Resilient CloudOpenStack: Toward a More Resilient Cloud
OpenStack: Toward a More Resilient CloudMark Voelker
 
Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Addy Osmani
 
Cloud Computing with .Net
Cloud Computing with .NetCloud Computing with .Net
Cloud Computing with .NetWesley Faler
 
Unobtrusive JavaScript with jQuery
Unobtrusive JavaScript with jQueryUnobtrusive JavaScript with jQuery
Unobtrusive JavaScript with jQuerySimon Willison
 
DefCore: The Interoperability Standard for OpenStack
DefCore: The Interoperability Standard for OpenStackDefCore: The Interoperability Standard for OpenStack
DefCore: The Interoperability Standard for OpenStackMark Voelker
 
High Availability Perl DBI + MySQL
High Availability Perl DBI + MySQLHigh Availability Perl DBI + MySQL
High Availability Perl DBI + MySQLSteve Purkis
 
Agile experiments in Machine Learning with F#
Agile experiments in Machine Learning with F#Agile experiments in Machine Learning with F#
Agile experiments in Machine Learning with F#J On The Beach
 
Natural Laws of Software Performance
Natural Laws of Software PerformanceNatural Laws of Software Performance
Natural Laws of Software PerformanceGibraltar Software
 
Searching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldSearching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldOpenSource Connections
 
CQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architectureCQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architectureThomas Jaskula
 
Building Asynchronous Applications
Building Asynchronous ApplicationsBuilding Asynchronous Applications
Building Asynchronous ApplicationsJohan Edstrom
 
Decoupling with Domain Events
Decoupling with Domain EventsDecoupling with Domain Events
Decoupling with Domain EventsSteven Smith
 
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)Combining R With Java For Data Analysis (Devoxx UK 2015 Session)
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)Ryan Cuprak
 

What's hot (19)

Modern web dev_taxonomy
Modern web dev_taxonomyModern web dev_taxonomy
Modern web dev_taxonomy
 
Untangling - fall2017 - week 7
Untangling - fall2017 - week 7Untangling - fall2017 - week 7
Untangling - fall2017 - week 7
 
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4JGeorgia Tech cse6242 - Intro to Deep Learning and DL4J
Georgia Tech cse6242 - Intro to Deep Learning and DL4J
 
Deep Learning and Recurrent Neural Networks in the Enterprise
Deep Learning and Recurrent Neural Networks in the EnterpriseDeep Learning and Recurrent Neural Networks in the Enterprise
Deep Learning and Recurrent Neural Networks in the Enterprise
 
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015Deep Learning Intro - Georgia Tech - CSE6242 - March 2015
Deep Learning Intro - Georgia Tech - CSE6242 - March 2015
 
OpenStack: Toward a More Resilient Cloud
OpenStack: Toward a More Resilient CloudOpenStack: Toward a More Resilient Cloud
OpenStack: Toward a More Resilient Cloud
 
Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)Tools For jQuery Application Architecture (Extended Slides)
Tools For jQuery Application Architecture (Extended Slides)
 
Cloud Computing with .Net
Cloud Computing with .NetCloud Computing with .Net
Cloud Computing with .Net
 
Unobtrusive JavaScript with jQuery
Unobtrusive JavaScript with jQueryUnobtrusive JavaScript with jQuery
Unobtrusive JavaScript with jQuery
 
DefCore: The Interoperability Standard for OpenStack
DefCore: The Interoperability Standard for OpenStackDefCore: The Interoperability Standard for OpenStack
DefCore: The Interoperability Standard for OpenStack
 
High Availability Perl DBI + MySQL
High Availability Perl DBI + MySQLHigh Availability Perl DBI + MySQL
High Availability Perl DBI + MySQL
 
Agile experiments in Machine Learning with F#
Agile experiments in Machine Learning with F#Agile experiments in Machine Learning with F#
Agile experiments in Machine Learning with F#
 
Mini-Training: Let's have a rest
Mini-Training: Let's have a restMini-Training: Let's have a rest
Mini-Training: Let's have a rest
 
Natural Laws of Software Performance
Natural Laws of Software PerformanceNatural Laws of Software Performance
Natural Laws of Software Performance
 
Searching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data WorldSearching Chinese Patents Presentation at Enterprise Data World
Searching Chinese Patents Presentation at Enterprise Data World
 
CQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architectureCQRS recipes or how to cook your architecture
CQRS recipes or how to cook your architecture
 
Building Asynchronous Applications
Building Asynchronous ApplicationsBuilding Asynchronous Applications
Building Asynchronous Applications
 
Decoupling with Domain Events
Decoupling with Domain EventsDecoupling with Domain Events
Decoupling with Domain Events
 
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)Combining R With Java For Data Analysis (Devoxx UK 2015 Session)
Combining R With Java For Data Analysis (Devoxx UK 2015 Session)
 

Similar to Server’s variations bsw2015

Serverless Toronto helps Startups
Serverless Toronto helps StartupsServerless Toronto helps Startups
Serverless Toronto helps StartupsDaniel Zivkovic
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudChris Dagdigian
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Julien SIMON
 
OpenStack 101 - All Things Open 2015
OpenStack 101 - All Things Open 2015OpenStack 101 - All Things Open 2015
OpenStack 101 - All Things Open 2015Mark Voelker
 
Scaling a Serverless Developer Platform for Teams
Scaling a Serverless Developer Platform for TeamsScaling a Serverless Developer Platform for Teams
Scaling a Serverless Developer Platform for TeamsMikael Vesavuori
 
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016Managing WorkSpaces at Scale | AWS Public Sector Summit 2016
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016Amazon Web Services
 
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20....Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...Javier García Magna
 
The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)Julien SIMON
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
 
Dapper: the microORM that will change your life
Dapper: the microORM that will change your lifeDapper: the microORM that will change your life
Dapper: the microORM that will change your lifeDavide Mauri
 
Interoperable Clouds and How to Build (or Buy) Them
Interoperable Clouds and How to Build (or Buy) ThemInteroperable Clouds and How to Build (or Buy) Them
Interoperable Clouds and How to Build (or Buy) ThemMark Voelker
 
Using AWS, Terraform, and Ansible to Automate Splunk at Scale
Using AWS, Terraform, and Ansible to Automate Splunk at ScaleUsing AWS, Terraform, and Ansible to Automate Splunk at Scale
Using AWS, Terraform, and Ansible to Automate Splunk at ScaleData Works MD
 
Docker-N-Beyond
Docker-N-BeyondDocker-N-Beyond
Docker-N-Beyondsantosh007
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudMongoDB
 

Similar to Server’s variations bsw2015 (20)

Serverless Toronto helps Startups
Serverless Toronto helps StartupsServerless Toronto helps Startups
Serverless Toronto helps Startups
 
Mapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the CloudMapping Life Science Informatics to the Cloud
Mapping Life Science Informatics to the Cloud
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)
 
OpenStack 101
OpenStack 101OpenStack 101
OpenStack 101
 
OpenStack 101 - All Things Open 2015
OpenStack 101 - All Things Open 2015OpenStack 101 - All Things Open 2015
OpenStack 101 - All Things Open 2015
 
Scaling a Serverless Developer Platform for Teams
Scaling a Serverless Developer Platform for TeamsScaling a Serverless Developer Platform for Teams
Scaling a Serverless Developer Platform for Teams
 
2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni
 
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016Managing WorkSpaces at Scale | AWS Public Sector Summit 2016
Managing WorkSpaces at Scale | AWS Public Sector Summit 2016
 
Stackato v3
Stackato v3Stackato v3
Stackato v3
 
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20....Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...
 
The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)The Lost Tales of Platform Design (February 2017)
The Lost Tales of Platform Design (February 2017)
 
Stackato
StackatoStackato
Stackato
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
 
Dapper: the microORM that will change your life
Dapper: the microORM that will change your lifeDapper: the microORM that will change your life
Dapper: the microORM that will change your life
 
Interoperable Clouds and How to Build (or Buy) Them
Interoperable Clouds and How to Build (or Buy) ThemInteroperable Clouds and How to Build (or Buy) Them
Interoperable Clouds and How to Build (or Buy) Them
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Using AWS, Terraform, and Ansible to Automate Splunk at Scale
Using AWS, Terraform, and Ansible to Automate Splunk at ScaleUsing AWS, Terraform, and Ansible to Automate Splunk at Scale
Using AWS, Terraform, and Ansible to Automate Splunk at Scale
 
Docker-N-Beyond
Docker-N-BeyondDocker-N-Beyond
Docker-N-Beyond
 
Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the Cloud
 
Stackato v6
Stackato v6Stackato v6
Stackato v6
 

More from Laurent Cerveau

Hiring a developer: step by step debugging
Hiring a developer: step by step debuggingHiring a developer: step by step debugging
Hiring a developer: step by step debuggingLaurent Cerveau
 
10 minutes fun with Cloud API comparison
10 minutes fun with Cloud API comparison10 minutes fun with Cloud API comparison
10 minutes fun with Cloud API comparisonLaurent Cerveau
 
Elements for an iOS Backend
Elements for an iOS BackendElements for an iOS Backend
Elements for an iOS BackendLaurent Cerveau
 
Dancing for a product release
Dancing for a product releaseDancing for a product release
Dancing for a product releaseLaurent Cerveau
 
Paris Tech Meetup talk : Troubles start at version 1.0
Paris Tech Meetup talk : Troubles start at version 1.0Paris Tech Meetup talk : Troubles start at version 1.0
Paris Tech Meetup talk : Troubles start at version 1.0Laurent Cerveau
 

More from Laurent Cerveau (6)

Binary crosswords
Binary crosswordsBinary crosswords
Binary crosswords
 
Hiring a developer: step by step debugging
Hiring a developer: step by step debuggingHiring a developer: step by step debugging
Hiring a developer: step by step debugging
 
10 minutes fun with Cloud API comparison
10 minutes fun with Cloud API comparison10 minutes fun with Cloud API comparison
10 minutes fun with Cloud API comparison
 
Elements for an iOS Backend
Elements for an iOS BackendElements for an iOS Backend
Elements for an iOS Backend
 
Dancing for a product release
Dancing for a product releaseDancing for a product release
Dancing for a product release
 
Paris Tech Meetup talk : Troubles start at version 1.0
Paris Tech Meetup talk : Troubles start at version 1.0Paris Tech Meetup talk : Troubles start at version 1.0
Paris Tech Meetup talk : Troubles start at version 1.0
 

Recently uploaded

What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAbhinavSharma374939
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 

Recently uploaded (20)

Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Analog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog ConverterAnalog to Digital and Digital to Analog Converter
Analog to Digital and Digital to Analog Converter
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 

Server’s variations bsw2015

  • 1. Server’s variations BSW2015 lcerveau@nephorider.com lcerveau@mmyneta.com laurent@zen.ly
  • 2. • You are more a product/UI/mobile/Frontend guy • The further server reference you have is the idea of API • You have (initially) no desire or time to learn server stuff • After all it should just be a commodity… Common scenario (personal experience)
  • 3. • Your servers and infra will also give you nightmares • Problem will have an immediate impact • You will have the feeling to be able to do nothing • You will not understand any word from your server guys • All the hype about Cloud making it easy will look like a joke. In real life
  • 4. Many concepts API Storage Data Security Cache Domain Name Deployment Push Analytics Load Asynchronous
  • 5. Organizing all this • There is always this “top to bottom”, “bottom to top” idea. Here we are more on a spider web • Each element has the DNA complexity of the whole: compute , structured storage, object storage, network & security, virtualization & containers, DNS + more elaborated • Big challenge is “when to decide” that one does not want to deal with a complexity. Because of a certain tendency to accept an understood complexity
  • 6. Human resource • Impact is not only on development but also on a team structure. How many “roles” to hire? At which cost ? • I think you can not ignore the world “Fullstack” or “Devops”. Question is “what does it encompass” ? What part of trendy wording is here? But certainly boundaries are less fixed and jobs are changing (in particular with the cloud) • What is good at a point in time may not be good in another…as usual
  • 7. Variations Facebook Parse : the mobile/product/ toptobottom approach Heroku : the “server is first software” approach AWS : the “Be brave and climb the cloud server mountain” approach This has no pretention of being exhaustive
  • 8. I have no intention to • Debate about the best technology/language • I repeat again :”In absolute no approach is better than an other” • Provide precise sample on how to use those technology. Just some important points
  • 10. A little bit of context • Parse : part of Facebook. Available at parse.com (April 25, 2013 according to Wikipedia) • Progressive pricing . Start Free pay as you grow (request count, used storage…). Makes you understand some parameters of cost on the Cloud • If one had to find a competitor for me it would be Apple’s CloudKit (although less developed)
  • 11.
  • 12. The backend of your mobile app • Interesting approach as they put Analytics from the beginning (Core/Push/Analytics on top of the app bar). Measuring your app customer performance is _important_ • Deals with an important topic : notifications. This is something very often underestimated • Commodities allows you to have a “I learn from mobile approach” : e.g auto class creation Full Product approach
  • 13. Technically • Offer template/starting point for many platforms : mobile, web, but also some “alternative SDK” like Xamarin (Mono C# technology) and Unity • Backend is very much in the MongoDB/ Javascript tradition but it is not necessary to know it at first. Webhooks allows to integrate with your own server/language • Creation of data comes with “good habits” : in what should be in a server entity (ACL, creation date….)
  • 14. Technically(2) • Also presents concepts in a way that makes them “learnable” : data, long time background process….
  • 15. Miscellaneous • Likely no worry about “how long will it be there” (hey this is Facebook!) • Have “decently big names” on their user home page • As part of learning curve : couple of hours or days to get simplest thing, one week already gets you far. • You can learn from both sides : client and server. That is if you know only client coding you can at first do all here
  • 16. Where/When do I stop? • The commodity of the beginning can prevents you from from learning the real problems : e.g auto created class • When does it start to take much more time to integrate your own server part (with webhook)? It is nice because your own code can focus on your own value, but at a time it can be a time eater • IMHO 2 parts are “too hidden” : infrastructure and deployment issues, Organization of a big size project. Of course somewhere this is the goal of hiding this • I never had to “scale” with it. Easy? How much ?
  • 17. The “server is software” approach
  • 18. A little bit of context • One of the older PaaS (platform as a service), born in 2007 acquired in 2010 by Salesforce • IMHO went to fame because it was in sync with its time : Ruby On Rails, SQL (PostgreSQL) and Git integration • Somewhere the older version of Parse at a time where doing web ships in Rails was the trend • Did evolve with newer technology
  • 19. Money (That’s what I want) • IMHO a less friendly cost model both at the start and as long run. Free seems not possible with production (Must sleep 6 hours in a 24 hours period) • Dyno (basic unit) prices range from 25$ a month to 500$. Compare to a small runAWS EC2 instance…so maybe not for the long term • Maybe a good way to go towards AWS (in terms of features and pricing)
  • 20.
  • 21. Technical approach • A small step toward more playing with machines : heroku is a command line tool, platform offers some options like choice of regions, operational metrics • Somewhere this is just Amazon hidden: you can use other components (like a DB on RDS) • Proposes top class integration for some parts (New Relics)
  • 22. Development process • This part stays like any development : if you do Rails, you’ll need to learn it, use tool like rake (through heroku tools).It hides the idea of a web server versus application server and infra setup • Makes a good use of common tools (e.g learn Git through heroku) good habits of using them • A little bit longer learning curve than with Parse IMHO
  • 23. Where/When do I stop? • The cost. You scale, you better go to AWS directly • The flexibility : at one point you’ll get closer to the core and want to separate functions through machines….although more understanding on your scaling • The moment you realize only your application server stays on Heroku
  • 24. AWS : “Be brave and climb the server mountain”
  • 25. AWS? • Still major player in the cloud today. Certainly the one with the most experience and the most services • But this should not hide the fact that there are other services : Azure, GCE but also players with a particular approach : Outscale in France, Exoscale in Switzerland… • Something that can be useful : they are very startup friendly (AWS Activate). Not a “Start free if you do nothing” but “Start free for a period of time/amount of money and become real”
  • 26.
  • 27. First encounter • Likely you’ll get lost! Many dots to connect. Find your global overview • Wizard exists that help you do simple tasks but in the longer run you may find that they let a lot of trash behind • Some wording can be confusing : e.g “Security Groups are Firewalls” • In general very good ecosystem that can be very helpful (AWSome days conferences, AWSUG…)
  • 28. Philosophy • AWS offers you in a “virtual way” everything that used to be real. • So it puts you directly into the core of learning what is infrastructure : sizing, cost, security, network, a certain level of monitoring (Cloudwatch), choice of Operating System • AWS is at first infrastructure (IaaS) : so once you get your servers/VM over there you have to do another part : for example set up a web server with SSL certificate, managing user and groups, deciding where to install elements, automatic deployment and versioning. That is the “other software part”
  • 29. Learning curve • If you start from virtually nothing, then you usually have preconceived ideas about how things get organized (e.g : hardware connected view of things) • Then you realize the complex concepts are important design elements : case of VPC. Not only security, but it provides a logical and functional organization. Stop thinking “like a software guy” • You’ll get use to pricing with time: t2.micro is around 10$ a month
  • 30. Learning curve (2) • Still there are some way of thinking to learn : find RDS Security groups in EC2, is a volume having an attachment to an instance or an instance a connected volume, between ACL and Route table when none is specified for a subnet what comes as default (if something comes) • Many technologies are presents, sometimes with an AWS “naming flavor”, sometimes not. For example Elasticache is Redis or Memcache, • Some parts may become mandatory : e.g VPC, IAM
  • 31. Get an overview: Nephorider Dashboard, hardware, network dataviz: www.nephorider.com
  • 32. Where does it stop • The boundaries are what AWS proposes.. and your programming skills (yes you can program all this) • I personally do not use all, and you can not apply one module to all : SES versus a service like Mailchimp. For me this is not playing in the same category • Definitely a learning curve : each new technology gets easier to get AWS mindset,This is a long term investment: the price you’ll pay is the defendant of your learning curve (e.g autoscaling)