Cloud
infrastructure from
Python code
How far could we go?
Asher Sterkin
SVP Engineering, GM
● A 40-year industry veteran specializing in software architecture and technology
● SVP Engineering @ BST LABS, BlackSwan Technologies
● Former VP Technology @ NDS and Distinguished Engineer @ Cisco
● Initiator and chief technology lead of the Cloud AI Operating System project
● Areas of interest:
○ Serverless Cloud Architecture
○ (Strategic) Domain-Driven Design
○ Promise Theory and Semantic SpaceTimes
○ Complex Adaptive Systems
● Contacts:
○ Linkedin: https://www.linkedin.com/in/asher-sterkin-10a1063
○ Twitter: https://www.twitter.com/asterkin
○ Email: asher.sterkin@gmail.com
○ Slideshare: https://www.slideshare.net/AsherSterkin
○ Medium: https://asher-sterkin.medium.com/
○ Mastodon: https://mastodon.social/@asterkin
Who am I?
“Infrastructure from Python Code” Mission
To provide mainstream Python programmers
with seamless development, deployment, and
operation of cost-effective, secure, reliable,
and sustainable cloud software.
“Your Computer is Cloud”
Lift-and-shift won’t do it
Disclaimer
● I’m a General Manager and Head of Technology of one of IfC Products CAIOS
● Best effort to avoid direct marketing of my product against competitors
● It’s my analysis and not official position of my employer BlackSwan
Technologies
● Specific examples use CAIOS for illustration purposes only
● AWS icons usage is for illustration purposes only as well
“Consensus is poisonous for innovation”
Dave Snowden?
Challenge Every Claim and Assumption
What’s the Problem?
IaC
SDK
Engineering Silos
● Low level of abstraction
● Vendor-specific
● Complicated
● Error-, cost-, and security-prone
● Special technical knowledge
● Lot of coordination needed
● Far from core business
What regulatory reporting has
in common with Kubernetes,
CloudFormation and Boto3?
Raise the Level, Bridge the Gap
The Solution
The IfC Solution
IFC
Logic Configuration
Logic” Template
High-level API
API Binding
Here, how could it look like
Warning: vendor-specific example
One Inch Depth Dive into the IfC
Machinery
I
F
C
services vendors APIs location
acquire
configure
consume
operate
4 Pillars of the “Infrastructure From Code”
Logic
Configuration
Package, Upload, Deploy
service.py
service_config.py
Warning: vendor-specific example
module.py
package
module.py
function.py
stack.json
upload <user-storage> deploy
<service-stack>
3 most important
things in
real-estate
business
1. Location
2. Location
3. Location
Deployment Location
Device gateway Edge location
Region
AWS Wavelength AWS Local Zone
AWS Outposts servers
Privacy
Latency
Aggregation
Flexibility
Operation cost
Sustainability!!!
IFC
Code
Computation Location
Endpoint Instance
Lambda function Application
AWS Step
Functions
workflow Service
IFC
Cost
Flexibility
Available RAM
CPU/GPU power
Legacy
Sustainability !!!
Code
Storage Location
Volume Bucket
File system Athena DB OpenSearch
Index
Redshift DB Table Aurora DB DocumentDB Neptune
QLDB
Keyspaces
MemoryDB
Timestream
ElastiCache
IFC
Volume
Durability
Access Time
Cost
Flexibility
Legacy
Sustainability !!! Kafka
Code
Messaging Channel
IFC
Volume
Durability
Latency
Throughput
Cost
Flexibility
Legacy
Sustainability!!!
Kafka
SNS SQS MQ SES Kinesis
Code
Prediction:
It is going progressively harder to
optimize locations manually
Where We Are Today
and Where Could We
Go?
IfC Technology Landscape
nitric
klotho
nitric
klotho
caios
nitric
klotho
vercel
modal
chalice
cloudflare ampt
nitric
klotho
cloudflare
cloudflare wing dark
nitric
klotho
vercel
encore
shuttle
API is the King
Product API Cloud-aware? Decorators? Extensions?
caios Standard or Open Source No Optional Yes
nitric Proprietary Yes Yes No
klotho Open Source No Yes Yes
vercel Standard or Open Source No Depends on framework Yes
modal Proprietary No Yes ML?
chalice Proprietary Yes Yes No
cloudflare Proprietary Yes No No
frontend
core
backend
extensions
The Potential is Much Bigger
Application Logic
Core
Domain
C
l
o
u
d
S
e
r
v
i
c
e
A
d
a
p
t
e
r
s
C
l
o
u
d
S
e
r
v
i
c
e
A
d
a
p
t
e
r
s
I
n
t
e
r
n
e
t
S
e
r
v
i
c
e
A
d
a
p
t
e
r
s
I
n
t
e
r
n
e
t
S
e
r
v
i
c
e
A
d
a
p
t
e
r
s
Supportive
Subdomain
Internet
Services
Cloud Services
Generic
Subdomain
A
P
I
P
o
r
t
s
A
P
I
P
o
r
t
s
A
P
I
P
o
r
t
s
A
P
I
P
o
r
t
s
IFC
IFC
IFC
Focus on Domain
Open-end Architecture
Application Logic
Generic,
Supportive,
Core
Subdomains
Generic,
Supportive,
Core
Subdomains
Out of proc
Sidecar
In-proc
extension
Adapters
As far, as there is a market for this
How Far Could We Go?
Let Python be Python
What is Needed?
Protocols for Standard Library and PEPs
Protocols for Popular Open Source Solutions
Avoid direct file i/o, use importlib and pkgutil instead
conflict with cloud importer
Cloud Version of Python Runtime
What is Needed?
Things to Takeaway …
“Infrastructure from Python Code” Mission
To provide mainstream Python programmers
with seamless development, deployment, and
operation of cost-effective, secure, reliable,
and sustainable cloud software.
“Your Computer is Cloud”
Lift-and-shift won’t do it
IFC
SDK + IaC
IfC Within the Big Picture
CFSpec
codeBot
chatBot NoCode
Knowledge
Worker
LowCode
S. Wardley
“Why the fuss about conversational programming?”
Questions?
Challenges?
“Consensus is poisonous for innovation”

PyConFR-23 Talk.pdf