This talk was delivered by Tosin Amuda at the Open Source Community Africa 2022 Open Source Festival on Building for Cloud.
The talk introduce cloud native development, its advantages and how to to build a Cloud Native First Application using the 12-Factor Approach.
3. Meet Tosin
🚀 Solutions Engineer with the global IBM Innovation Studio team
💪Tech Generalist Background: Web Development, Cloud
Engineering, Conversational AI & Digital Marketing
🥑 Volunteers as Dev Advocate and guest lecturer on Cloud
Computing @Oxford, Surrey, Sheffield Hallam.
⛱ Spend most time with my wife watching KDrama or anime
Tosin Amuda
IBM
@tosinamuda
4. Open Source
Festival 2022
Goal of this session
The technical and
business benefits of
building apps that can
take advantage of
Cloud.
Why?
Overview of Cloud
Native Development.
Architecture and
technologies
What?
Simple steps to Cloud
Native Development
using the 12-Factor
Approach
How?
5. Photo
comes here
Meet our Persona
● Don’t know how to go about hosting her apps
● Wants to embrace DevOps, Microservice and Cloud
Native Development but not easy to use tools available
● Wants to embedded AI into apps but AI is hard so she is
looking for API or cloud services she can leverage.
● She thinks her productivity can be increase productivity
by leveraging serverless, starter packs, devops etc
Shuri
Junior Fullstack Engineer
Pain Points
6. Open Source
Festival 2022
Shuri is face with the several options to host her
apps
Use a local shared
hosting service
Join the cool kids
to try out public
cloud
Like Ezra, Setup
her own physical
server
8. Photo
comes here
Why Cloud?
After careful evaluation of the Cloud, Shuri quickly
discover the following advantage for a developer in
making use of Cloud.
● Speed and Agility: Developer Can quickly create a
customized virtual server to host any of their
application or use any of the managed service option
● Cost Saving through Pay As You Go Model: Developer
don’t have pay upfront only after usage
● Scalability: Ability to scale at the speed of cloud
● Flexibility: Different hosting services and models for
example option to use a Virutal server, platform as a
service, Container as a service, serverless etc
● Access to Innovative Services like AI and Blockchain
10. Open Source
Festival 2022
Shuri finds out she is need to taking full
advantage of cloud
Tangled Dependencies
& config with code
Need to rewrite app,
maybe there is a
better way to develop
my app
Limited Scalability &
manual deployment
12. Cloud Native Development
A way to build apps faster to take full advantage of scale,
resilience and agility that comes with Cloud.
13. Open Source
Festival 2022
Elements of Cloud Native
● Containers
● Data
● On-demand infra
● APIs
Technologies
● Microservices
● Serverless
What?
● Automated DevOps
Pipeline (CI/CD)
● Small Agile Squads
Practices
14. Open Source
Festival 2022
Shuri next question is where and how can I start?
Containerizing your
apps
Decoupling app into
several services
12-Factor Approach
16. 12-Factor Apps
12 important characteristics of Cloud Native Apps
introduced by early Heroku team on how to build app to
take advantage of the Cloud
17. Open Source
Festival 2022
12 Factors
1. Codebase
2. Dependencies
3. Config
4. Backing Service
5. Build, Release Run
6. Processes
7. Port Binding
8. Concurrency
9. Disposability
10. Dev/Prod Parity
11. Logs
12. Admin Process