SlideShare a Scribd company logo
1 of 208
Download to read offline
Cloudy with a Chance of Meatballs
Holly Cummins
WW Development Lead
IBM Cloud Garage
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
This was a story …
@holly_cummins
This was a story …
…of a hero who wanted to make the world better…
@holly_cummins
This was a story …
…of a hero who wanted to make the world better…
… who had some challenges along the way.
@holly_cummins
We all know these stories.
@holly_cummins
Joseph
Campbell
@holly_cummins
@holly_cummins
monomyth
@holly_cummins
Prometheus
Laconic Kylix with Prometheus and Atlas
~550 BC
@holly_cummins
Osiris
Tomb of Sennedjem
@holly_cummins
@holly_cummins
Howard Pyle
King Arthur and the Holy Grail
@holly_cummins
@holly_cummins
There is only one story:
@holly_cummins
There is only one story:
the quest
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cumminsImage from the Nationaal Archief, the Dutch National Archives, and Spaarnestad Photo.
@holly_cummins
Luke Skywalker
@holly_cummins
We are all the hero
of our own story.
@holly_cummins
What’s our quest?
@holly_cummins
Fast hardware.
@holly_cummins
Lots of fast hardware.
@holly_cummins
No repetitive tasks.
@holly_cummins
We are all the hero
of our own story.
@holly_cummins
Bring value to our employer
@holly_cummins
Have an audience for our
awesome code
@holly_cummins
Make the world better.
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
install software.
patch.
repeat.
@holly_cummins
deploy times
@holly_cummins
It takes us 3
months to get a VM
provisioned…
…to run a shell script
with a cron job.
These jokes make no sense.
cf push my-cool-startup
export image=registry.bluemix.net/coolness/cool:v1
kubectl run coolstartup —image=${image} --port=8080
kubectl expose deployment coolstartup --type="LoadBalancer"
Also running on cloud,
but you don’t care that
it’s cloud
Yup, still on cloud
Also running on cloud,
but you don’t care that
it’s cloud
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
Call to Action
Obstacles
RewardFast hardware
No pointless tasks
Users love the hero
@holly_cummins
Call to Action
Obstacles
RewardFast hardware
No pointless tasks
Users love the hero
@holly_cummins
Call to Action
Obstacles
RewardFast hardware
No pointless tasks
Users love the hero
@holly_cummins
@holly_cummins
Problem solved.
@holly_cummins
Problem solved.
Quest over.
@holly_cummins
Problem solved.
Quest over.
Und wenn sie nicht gestorben
sind, so leben sie noch heute.
@holly_cummins
Er, sort of.
Wait, we’re not all
using containers?
@holly_cummins
Call to Action
Obstacles
Reward
You have to make
everything better by going the
the cloud!
… but there is a
certain amount of risk.
Sorry, can’t be a
hero. I need to stay
where I am.
20172016
75%
100%
50%
25%
Container Adoption Survey of 504 users by Cloud Native
Computing Foundation
20172016
75%
100%
50%
25%
Container Adoption Survey of 504 users by Cloud Native
Computing Foundation
Sorry, can’t do it. I
need to stay where I
am.
@holly_cummins
Security.
@holly_cummins
Safe
inside
Scary
outside
Firewall
@holly_cummins
Me
Clients from a
large bank
Watson
Discovery
Firewall
Data
@holly_cummins
Annual Review RoomHey boss, I put all our
sensitive data on the cloud.
Unencrypted.
@holly_cummins
Annual Review.
@holly_cummins
Annual Review.
Theodoor Rombouts 1597 - 1637.
@holly_cummins
@holly_cummins
actually …
@holly_cummins
actually …
encryption fixes most things
@holly_cummins
Built artefact
boundary
hardware
app
middleware
OS
virtualisation
@holly_cummins
Built artefact
boundary
hardware
app
hardware
app
middleware
OS
virtualisation
middleware
OS
virtualisation
@holly_cummins
Built artefact
boundary
hardware
app
hardware
app
middleware
OS
virtualisation
middleware
OS
virtualisation
@holly_cummins
Developers are
responsible for
security in the cloud.
actually …
@holly_cummins
@holly_cummins
Cloud can be
more secure.
IBM Vice-President Client CIO
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
Good plan. You should
consider the IBM Cloud. :)
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
Good plan. You should
consider the IBM Cloud. :)
How long have
you been working on
this?
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
Good plan. You should
consider the IBM Cloud. :)
2 years.
How long have
you been working on
this?
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
Good plan. You should
consider the IBM Cloud. :)
2 years.
How long have
you been working on
this?
How many have
you done?
I’ve been putting my apps
onto the cloud.
IBM Vice-President Client CIO
Good plan. You should
consider the IBM Cloud. :)
2 years.
2%
How long have
you been working on
this?
How many have
you done?
@holly_cummins
Call to Action
Obstacles
Reward
@holly_cummins
Call to Action
Obstacles
Reward
Cloud Native-ness
@holly_cummins
IBM Cloud Garage Interview RoomTell me your
definition of cloud
native.
@holly_cummins
IBM Cloud Garage Interview RoomTell me your
definition of cloud
native.
Cloud native is
just hype. It’s a new
name for an old
concept.
Shared centralised
computing is not new.
@holly_cummins
Es gibt nichts Neues
unter der Sonne
@holly_cummins
the first
internet
Marcin Wichary
There are 5
computers.
In the whole world.
There are 5
computers.
In the whole world.
Timeshare
There are 5
computers.
In the whole world.
Timeshare
Microcomputer
There are 5
computers.
In the whole world.
Client-serverTimeshare
Microcomputer
There are 5
computers.
In the whole world.
Client-serverTimeshare
Microcomputer Personal
computer
There are 5
computers.
In the whole world.
GridClient-serverTimeshare
Microcomputer Personal
computer
Laptops
There are 5
computers.
In the whole world.
GridClient-serverTimeshare
Microcomputer Personal
computer
Laptops
There are 5
computers.
In the whole world.
GridClient-server CloudTimeshare
Microcomputer Personal
computer
Laptops
There are 5
computers.
In the whole world.
GridClient-server Cloud
Edge
computing
Timeshare
Microcomputer Personal
computer
@holly_cummins
If it’s not new,
why is it so hard?
@holly_cummins
cloud native is hard
• Containerized
• Containerized
• Dynamically orchestrated
• Containerized
• Dynamically orchestrated
• Microservices oriented
• Containerized
• Dynamically orchestrated
• Microservices oriented
• Agile
• Containerized
• Dynamically orchestrated
• Microservices oriented
• Agile
• Devops
• Containerized
• Dynamically orchestrated
• Microservices oriented
• Agile
• Devops
• Elastic
• Containerized
• Dynamically orchestrated
• Microservices oriented
• Agile
• Devops
• Elastic
• Stateless
Our server may go
away at any time.
@holly_cummins
@holly_cummins
Our old JVMs don’t work
so well in the cloud.
@holly_cummins
Physical
machine
Virtual
machine
Docker container
Physical
machine
Virtual
machine
Docker container
Physical
machine
Virtual
machine
Docker container
Physical
machine
Virtual
machine
Docker container
How much
memory Docker
thinks JVM has
Physical
machine
Virtual
machine
Docker container
How much
memory the JVM
thinks the JVM
has
How much
memory Docker
thinks JVM has
Physical
machine
Virtual
machine
Docker container
How much
memory the JVM
thinks the JVM
has
How much
memory Docker
thinks JVM has
Physical
machine
Virtual
machine
Docker container
The KILL ZONE
The JVM dies.
The JVM dies.
We bring it back to life.
The JVM dies.
We bring it back to life.
But it’s still annoying.
Our old way of doing
ops doesn’t work.
@holly_cummins
Happy Server
Application monitoring in the old days
@holly_cummins
Happy Server Unhappy Server
Application monitoring in the old days
@holly_cummins
Happy Server Unhappy Server
Application monitoring in the old days
@holly_cummins
transparency
@holly_cummins
@holly_cummins
@holly_cummins
@holly_cummins
Microservices
are hard.
@holly_cummins
“A typical microservices deployment.”
@holly_cummins
“A bad microservices deployment.”
@holly_cummins
Just because you can distribute your application
across 600 servers, doesn’t mean you should.
@holly_cummins
The cloud makes it so easy to
provision hardware.
@holly_cummins
That doesn’t mean the
hardware is free.
@holly_cummins
Or useful.
@holly_cummins
Hey boss, I created a
Kubernetes cluster.
@holly_cummins
Hey boss, I created a
Kubernetes cluster.
I forgot it for 2 months.
@holly_cummins
Hey boss, I created a
Kubernetes cluster.
I forgot it for 2 months.
… and it’s €1000 a month.
@holly_cummins
There is surely nothing
quite so useless as
doing with great
efficiency what should
not be done at all.
— Peter Drucker
@holly_cummins
@holly_cummins
cloud providers to manage
your cloud providers
We need a cloud to
manage our cloud.
@holly_cummins
Call to Action
Obstacles
Reward
IaaS
PaaS
SaaS
Value
IaaS
PaaS
SaaS
Value
IaaS
PaaS
SaaS
Value
Lower costs
IaaS
PaaS
SaaS
Value
Lower costs
Innovation
IaaS
PaaS
SaaS
Value
Lower costs
Innovation
End-user value
IaaS
PaaS
SaaS
Value
FaaS
Lower costs
Innovation
End-user value
Lower costs
IaaS
PaaS
SaaS
Value
FaaS
Lower costs
Innovation
End-user value
Lower costs
IaaS
PaaS
SaaS
Value
FaaS
Lower costs
Innovation
End-user value
Internet of things
Lower costs
IaaS
PaaS
SaaS
Value
FaaS
Lower costs
Innovation
End-user value
Blockchain
Internet of things
Lower costs
IaaS
PaaS
SaaS
Value
FaaS
Lower costs
Innovation
End-user value
Artificial Intelligence
Blockchain
Internet of things
Lower costs
@holly_cummins
Serverless is just
someone else’s server.
@holly_cummins
Call to Action
Obstacles
Reward
Data
scientist
@holly_cummins
What’s the biggest problem
data scientists report?
@holly_cummins
Access to data.
@holly_cummins
What makes everything easier?
@holly_cummins
What makes everything easier?
The Cloud is for data,
not just applications
IaaS
PaaS
Value
DaaS
SaaS
@holly_cummins
Boring IaaS
The cloud is just someone else’s computer.
@holly_cummins
The cloud is just
someone else’s
super-special
GPU-loaded computer.
@holly_cummins
“I can do what?” IaaS
IBM’s 50-qubit
quantum computer
@holly_cummins
The cloud is just someone
else’s quantum computer.
@holly_cummins
IaaS
PaaS
@holly_cummins
IaaS
PaaS
QaaS
Users are getting
more demanding.
@holly_cummins
@holly_cummins
millisecond
response times
@holly_cummins
100%
uptime.
@holly_cummins
immediate fixes
@holly_cummins
constant innovation
@holly_cummins
Call to Action
Obstacles
RewardAwesome
compute power
@holly_cummins
@holly_cummins
“When I was last in
Germany, cloud was a thing
in the sky that made rain.”
@holly_cummins
cloud native
thinking
@holly_cummins
digital native
@holly_cummins
the hero of 2018 is the
cloud native native
@holly_cummins
Thank you.
@holly_cummins
IBM Cloud Garage

More Related Content

Similar to Cloudy with a Chance of Meatballs: Cloud Surprises for the Java Developer

Decker by Colin Humphreys of CloudCredo
Decker by Colin Humphreys of CloudCredoDecker by Colin Humphreys of CloudCredo
Decker by Colin Humphreys of CloudCredo
Docker, Inc.
 

Similar to Cloudy with a Chance of Meatballs: Cloud Surprises for the Java Developer (15)

Boyd Hemphill (Tsunami) Geekfest
Boyd Hemphill (Tsunami) GeekfestBoyd Hemphill (Tsunami) Geekfest
Boyd Hemphill (Tsunami) Geekfest
 
How to Love K8s and Not Wreck The Planet
How to Love K8s and Not Wreck The PlanetHow to Love K8s and Not Wreck The Planet
How to Love K8s and Not Wreck The Planet
 
Confessions of an Automation Addict
Confessions of an Automation AddictConfessions of an Automation Addict
Confessions of an Automation Addict
 
Microservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly CumminsMicroservices from dream to reality in an hour - Dr. Holly Cummins
Microservices from dream to reality in an hour - Dr. Holly Cummins
 
MongoDB, Cloudformation and Chef
MongoDB, Cloudformation and ChefMongoDB, Cloudformation and Chef
MongoDB, Cloudformation and Chef
 
The Razors Edge - Cutting your TLS Baggage
The Razors Edge - Cutting your TLS BaggageThe Razors Edge - Cutting your TLS Baggage
The Razors Edge - Cutting your TLS Baggage
 
Confessions of an Automation Addict
Confessions of an Automation AddictConfessions of an Automation Addict
Confessions of an Automation Addict
 
10 Common Cloud Computing Myths
10 Common Cloud Computing Myths10 Common Cloud Computing Myths
10 Common Cloud Computing Myths
 
Clobbering the Cloud
Clobbering the CloudClobbering the Cloud
Clobbering the Cloud
 
Jeff Bezos
Jeff BezosJeff Bezos
Jeff Bezos
 
Jeff Bezos Final Version
Jeff Bezos Final VersionJeff Bezos Final Version
Jeff Bezos Final Version
 
Decker by Colin Humphreys of CloudCredo
Decker by Colin Humphreys of CloudCredoDecker by Colin Humphreys of CloudCredo
Decker by Colin Humphreys of CloudCredo
 
Project Decker: Cloud Foundry with Docker (Cloud Foundry Summit 2014)
Project Decker: Cloud Foundry with Docker (Cloud Foundry Summit 2014)Project Decker: Cloud Foundry with Docker (Cloud Foundry Summit 2014)
Project Decker: Cloud Foundry with Docker (Cloud Foundry Summit 2014)
 
What is cloud native and why should I care?
What is cloud native and why should I care?What is cloud native and why should I care?
What is cloud native and why should I care?
 
Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...
 

More from Holly Cummins

Six Myths and Paradoxes of Garbage Collection
Six Myths and Paradoxes of Garbage Collection Six Myths and Paradoxes of Garbage Collection
Six Myths and Paradoxes of Garbage Collection
Holly Cummins
 

More from Holly Cummins (12)

The Importance of Fun in the Workplace (late 2019)
The Importance of Fun in the Workplace (late 2019)The Importance of Fun in the Workplace (late 2019)
The Importance of Fun in the Workplace (late 2019)
 
Java Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM GarageJava Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM Garage
 
Tales from the devops transformation trenches
Tales from the devops transformation trenchesTales from the devops transformation trenches
Tales from the devops transformation trenches
 
The Importance of Fun in the Workplace (2019)
The Importance of Fun in the Workplace (2019)The Importance of Fun in the Workplace (2019)
The Importance of Fun in the Workplace (2019)
 
Six Myths and Paradoxes of Garbage Collection
Six Myths and Paradoxes of Garbage Collection Six Myths and Paradoxes of Garbage Collection
Six Myths and Paradoxes of Garbage Collection
 
So You Say You Want a Chatbot Revolution
So You Say You Want a Chatbot RevolutionSo You Say You Want a Chatbot Revolution
So You Say You Want a Chatbot Revolution
 
Java performance - not so scary after all
Java performance - not so scary after allJava performance - not so scary after all
Java performance - not so scary after all
 
OSGi and the Enterprise - A match made in a ... box?
OSGi and the Enterprise - A match made in a ... box?OSGi and the Enterprise - A match made in a ... box?
OSGi and the Enterprise - A match made in a ... box?
 
Innovation Stories from the Bluemix Garage
Innovation Stories from the Bluemix GarageInnovation Stories from the Bluemix Garage
Innovation Stories from the Bluemix Garage
 
Software Developers Guide to Fun in the Workplace: Euphoria Despite the Despair
Software Developers Guide to Fun in the Workplace: Euphoria Despite the DespairSoftware Developers Guide to Fun in the Workplace: Euphoria Despite the Despair
Software Developers Guide to Fun in the Workplace: Euphoria Despite the Despair
 
An Arduino, an application, server, and me
An Arduino, an application, server, and meAn Arduino, an application, server, and me
An Arduino, an application, server, and me
 
Microservices: from dream to reality in an hour
Microservices: from dream to reality in an hourMicroservices: from dream to reality in an hour
Microservices: from dream to reality in an hour
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Recently uploaded (20)

%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 

Cloudy with a Chance of Meatballs: Cloud Surprises for the Java Developer