SlideShare uma empresa Scribd logo
1 de 176
AGILITY
requires
SAFETY
Every startup has the
same story:
“We don’t have time for
best practices.”
You can’t go faster by being
reckless
Think of cars on a highway
What happens if everyone jams
down on the gas?
To go fast, a car needs not only a
powerful engine…
But also powerful brakes.
As well as seat belts, airbags,
bumpers, and auto-pilot
For cars and for software, speed
is limited by safety
What are the seat belts, brakes, &
self-driving cars of software?
This talk is about
safety mechanisms
That make it possible to
build software quickly
I’m
Yevgeniy
Brikman
ybrikman.com
Founder
of
Atomic
Squirrel
atomic-squirrel.net
PAST LIVES
Author of
Hello,
Startup
hello-startup.net
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Good brakes stop your car before
you run into something
Continuous integration stops buggy
code before it goes into production
Imagine your goal is to build the
International Space Station
Each team designs and builds
their component in isolation
You launch everything into space
and hope it all comes together
I thought the Russians were going
to build the bathrooms?
Weren’t the French supposed to
do the wiring?
Everyone is using the metric
system, right?
Teams working for a long time
with incorrect assumptions
Finding this out when you’re in
outer space is too late
This is the result of
“late integration”
Lots of teams working in isolation
on separate branches
Before attempting a massive
merge at the very end
MERGE
CONFLICT
The alternative is
“continuous integration”
Where everyone regularly merges
their work
The most common approach is
trunk-based development
Everyone works on a
single branch (trunk)
That can’t possibly scale to a lot
of developers, can it?
Uses trunk-based development for
1,000+ developers
Uses trunk-based development for
4,000+ developers
Uses trunk-based development for
20,000+ developers
Wouldn’t you have merge conflicts
all the time?
If you merge (commit) regularly,
conflicts are rare.
And those that happen are from a
day of work—not months.
Commit early and often.
Small commits are easier to
merge, test, revert, review
Wouldn’t there constantly be
broken code in trunk?
Build Build Build Build
Not if you run a self-testing build
after every commit
Build Build Build Build Build Build Build
Build Build Build Build
It should compile your code and
run your automated tests
Build Build Build Build Build Build Build
Build Build Build Build
If a build fails, a developer must
fix it ASAP or revert the commit
Build Build Build Build Build Build Build
Of course, this depends on
having good automated tests
Tests give you the confidence to
make changes quickly
JUnit version 4.11
...
Time: 6.063
OK (259 tests)
How long would it take you to do
259 tests manually?
What should you test?
Everything!
Everything!
It’s a trade-off between:
1. Likelihood of bugs
2. Cost of bugs
3. Cost of testing
Likelihood of bugs is higher for
complex code and large teams
Cost of bugs is higher for some
systems (payments, security)
Cost of tests is higher for
integration and UI tests
“Without continuous
integration, your software is
broken until somebody
proves it works, usually
during a testing or
integration stage.
With continuous integration,
your software is proven to
work (assuming a sufficiently
comprehensive set of
automated tests) with every
new change—and you know
the moment it breaks and can
fix it immediately.”
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Ships have bulkheads to try to
contain flooding to one area.
You can split up a codebase to
contain problems to one area.
Code is the enemy: the more you
have, the slower you go
Project Size
Lines of code
Bug Density
Bugs per thousand lines
of code
< 2K 0 – 25
2K – 6K 0 – 40
16K – 64K 0.5 – 50
64K – 512K 2 – 70
> 512K 4 – 100
As the code grows, the number of
bugs grows even faster
“Software
development doesn't
happen in a chart, an
IDE, or a design tool;
it happens in your
head.”
The mind can only handle so
much complexity at once
One solution is to break the code
into multiple codebases
Instead of depending on the
source of another module
/moduleA
/moduleB /moduleC /moduleD
/moduleE
You depend on a versioned
artifact from that module
moduleA-0.3.1.jar
moduleB-3.1.0.jar moduleC-9.8.0.jar moduleD-1.4.3.jar
moduleE-0.5.6.jar
This provides isolation from
changes in other modules
moduleA-0.3.1.jar
moduleB-3.1.0.jar moduleC-9.8.0.jar moduleD-1.4.3.jar
moduleE-0.5.6.jar
You already do this: guava-
18.0.jar
jquery-2.2.0.js
Advantages of artifacts:
1. Isolation
2. Decoupling
3. Faster builds
Disadvantages of artifacts:
1. Dependency hell
2. No continuous integration
3. Hard to make global changes
Another option is to break the
codebase into services
In a monolith, you use function
calls within one process
A.a()
B.b() C.c() D.d()
E.e()
With services, you pass messages
between processes
http://A/a
http://B/b
http://C/c
http://D/d
http://E/e
Advantages of services:
1. Technology agnostic
2. Scalability
3. Isolation
Disadvantages of services:
1. Operational overhead
2. Performance overhead
3. I/O, error handling
4. Backwards compatibility
5. Hard to make global changes
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Autopilot prevents accidents
caused by human error
Automated deployments prevent
accidents caused by human error
Deploying code can be painful
“If it hurts, do it
more often.”
– Martin Fowler
The deployment process should
be:
That means you should never
deploy or configure manually
> ssh ec2-user@12.34.56.78
__| __| __|
_| ( __  Amazon ECS-Optimized Amazon Linux AMI 2015.09.d
____|___|____/
[ec2-user ~]$ sudo apt-get install ruby
Don’t do this
Or this
Instead, automate everything
The gold standard is the
blue-green deployment
Let’s say you have version 0.0.1 of
your app deployed
First, deploy version 0.0.2 on a
duplicate set of servers
If everything looks good, switch
the load balancer over to 0.0.2
Four main categories of
deployment automation tools:
1. Configuration management:
Chef, Puppet, Ansible, Salt
- name: Install httpd and php
yum: name={{ item }} state=present
with_items:
- httpd
- php
- name: start httpd
service: name=httpd state=started enabled=yes
- name: Copy the code from repository
git: repo={{ repository }} dest=/var/www/html/
Imperative scripts to configure
servers and deploy code
2. Provisioning tools: Terraform,
CloudFormation, Heat
resource "aws_instance" "example" {
ami = "ami-b960b1d"
instance_type = ["t2.micro"]
}
resource "aws_eip" "ip“ {
instance = "${aws_instance.example.id}"
depends_on = ["aws_instance.example"]
}
Declarative templates that define
your infrastructure
3. Virtual machines: VMWare,
VirtualBox, Packer, Vagrant
{
"builders": [{
"type": "amazon-ebs",
"source_ami": "ami-de0d9eb7",
"instance_type": "m1.medium",
"ami_name": "example-packer-ami-{{timestamp}}"
}],
"provisioners": [{
"type": "shell",
"inline": [
"sudo apt-get -y update",
"sudo apt-get -y install httpd php”
]
}]
}
Images of configured servers
4. Containers: Docker, rkt, LXD
FROM ubuntu:12.04
RUN apt-get update && apt-get install -y apache2 php
ENV APACHE_RUN_USER www-data
ENV APACHE_LOG_DIR /var/log/apache2
EXPOSE 80
CMD ["/usr/sbin/apache2", "-D", "FOREGROUND"]
Lightweight images of configured
servers
These tools allow you to define
your infrastructure as code
That way, you can version it,
review it, test it, and reuse it.
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Elisha Otis
demoing
elevator
free-fall
safety in 1854
The safety
elevator
patent
The safety
catches are
locked by
default
Only an
intact cable
can unlock
the
latches
This
elevator
provides
safety by
default
Feature
toggles
provide
safety by
default
New
feature,
part 1
New
feature,
part 2
New
feature,
part 3
If a large new feature takes many
commits, wouldn’t a user see it in
an unfinished state?
<section id="new-section">
<!-- Code for new section-->
</div>
<section id="original-section">
<!-- Code for original section-->
</section>
Let’s say you were adding a new
section to your website.
<% if toggles.enabled("new-section") %>
<section id="new-section">
<!-- Code for new section-->
</div>
<% end %>
<section id="original-section">
<!-- Code for original section-->
</section>
Wrap new code in a conditional
that looks up a feature toggle
<% if toggles.enabled("new-section") %>
<section id="new-section">
<!-- Code for new section-->
</div>
<% end %>
<section id="original-section">
<!-- Code for original section-->
</section>
Toggles are off by default, so
users won’t see unfinished work
development:
feature_toggles:
new-section: true
production:
feature_toggles:
new-section: false
You can enable feature toggles in
a config file.
> curl http://feature.toggles/
{
"development": { "new-section": true },
"production": { "new-section": false }
}
Or you could create a web service
for feature toggles.
> curl http://feature.toggles/?user=123
{
"development": { "new-section": "A" },
"production": { "new-section": "B" }
}
It could return different, complex
values for each user.
And provide a web UI for
configuring toggles.
This allows you to quickly turn
features on or off.
<% if toggles.get("new-section") == "A" %>
<section id="new-section-bucket-a">
<!-- Code for new section, version A -->
</div>
<% elsif toggles.get("new-section") == "B" %>
<section id="new-section-bucket-b">
<!-- Code for new section, version B -->
</div>
<% end %>
This allows A/B testing
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
A speedometer tells you how fast
you’re driving
Monitoring tells you how your
product is performing
“If you can’t
measure it, you
can’t fix it.”
– David Henke
There are many types of
monitoring
Availability metrics: is my product
up or down?
Useful tools: Keynote, Pingdom,
Uptime Robot, Route53
Business metrics: what are my
users doing in the product?
Useful tools: Google Analytics,
KISSMetrics, Mixpanel
Application metrics: how is my
application performing?
Useful tools: New Relic,
CloudWatch, Datadog
127.0.0.1 - - [10/Oct/2000:13:55:36] "GET /apache_pb.gif HTTP/1.0" 200 2326
64.242.88.10 - - [07/Mar/2004:16:05:49] "GET /twiki/bin/ HTTP/1.1" 401 12846
127.0.0.1 - - [28/Jul/2006:10:22:04] "GET / HTTP/1.0" 200 2216
64.242.88.10 - - [07/Mar/2004:16:06:51] "GET /twiki/bin/Twiki/" 200 4523
64.242.88.10 - - [07/Mar/2004:16:10:02] "GET /mailman HTTP/1.1" 200 6291
127.0.0.1 - - [28/Jul/2006:10:27:32] "GET /hidden/ HTTP/1.0" 404 7218
192.168.2.20 - - [28/Jul/2006:10:27:10] "GET /cgi-bin/try HTTP/1.0" 200 3395
64.242.88.10 - - [07/Mar/2004:16:11:58] "GET /twiki/bin/view/" 200 7352
64.242.88.10 - - [07/Mar/2004:16:20:55] "GET /twiki HTTP/1.1" 200 5253
Log files are also a form of
application-level monitoring
127.0.0.1 - - [10/Oct/2000:13:55:36] "GET /apache_pb.gif HTTP/1.0" 200 2326
64.242.88.10 - - [07/Mar/2004:16:05:49] "GET /twiki/bin/ HTTP/1.1" 401 12846
127.0.0.1 - - [28/Jul/2006:10:22:04] "GET / HTTP/1.0" 200 2216
64.242.88.10 - - [07/Mar/2004:16:06:51] "GET /twiki/bin/Twiki/" 200 4523
64.242.88.10 - - [07/Mar/2004:16:10:02] "GET /mailman HTTP/1.1" 200 6291
127.0.0.1 - - [28/Jul/2006:10:27:32] "GET /hidden/ HTTP/1.0" 404 7218
192.168.2.20 - - [28/Jul/2006:10:27:10] "GET /cgi-bin/try HTTP/1.0" 200 3395
64.242.88.10 - - [07/Mar/2004:16:11:58] "GET /twiki/bin/view/" 200 7352
64.242.88.10 - - [07/Mar/2004:16:20:55] "GET /twiki HTTP/1.1" 200 5253
Useful tools: loggly, logstash,
Papertrail, Sumo Logic
Server metrics: how is my server
performing?
Useful tools: Nagios, Icinga,
Munin, collectd, CloudWatch
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Warning lights notify you if
something is wrong
Alerting systems notify you if
something is wrong
You can’t look at metrics 24/7.
Alerting systems can.
Useful tools: PagerDuty,
VictorOps
For a full list of monitoring and
alerting tools, see:
hello-startup.net/resources
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Seat belts help you survive
crashes
High availability helps you survive
crashes
Stateless servers: multiple
instances, multiple zones
Load balancer routes around
server or zone outages
Auto-recovery mechanism brings
server back after outage
Stateful servers: multiple
instances, multiple zones
Replication to one or more
standby servers
Load balancer switches to
standby server in case of outage
Auto-recovery mechanism brings
server back after outage
Test your recovery process
regularly.
1. Brakes
2. Bulkheads
3. Autopilot
4. Safety catch
5. Speedometer
6. Warning lights
7. Seat belt
Outline
Speed is limited by safety
Two cars can drive at 80mph in
opposite directions safely…
Because of two yellow lines
It’s worth the time to put these
safety mechanisms in place
For more
info, see
Hello,
Startup
hello-startup.net
Questions?
F1 racecar: Takayuki Suzuki
Highway traffic: Oran Viriyincy
Car accident: ER24 EMS (Pty) Ltd.
Road: Nicolas Raymond
BWM: Andy Durst
Self-driving car: Steve Jurvetson
Bus: Roland Tanglao
Tail lights: Tony Webster
USS South Dakota: Wikimedia
Crash test dummy: Wikimedia
Elisha Otis: Wikimedia
Otis Elevator: Wikimedia
Speedometer: Dawn Hopkins
Dashboard lights: Jim Larrison
Seat belt: Wikimedia
Google repo stats: Rachel Potvin
ISS: Wikimedia
Fire: Pete
Martin Fowler: Wikimedia
Image credits

Mais conteúdo relacionado

Mais procurados

API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice ArchitectureMatt McLarty
 
MySQL Shell for Database Engineers
MySQL Shell for Database EngineersMySQL Shell for Database Engineers
MySQL Shell for Database EngineersMydbops
 
Continuous delivery and deployment on AWS
Continuous delivery and deployment on AWSContinuous delivery and deployment on AWS
Continuous delivery and deployment on AWSShiva Narayanaswamy
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetesDongwon Kim
 
What is tackled in the Java EE Security API (Java EE 8)
What is tackled in the Java EE Security API (Java EE 8)What is tackled in the Java EE Security API (Java EE 8)
What is tackled in the Java EE Security API (Java EE 8)Rudy De Busscher
 
The Beginner’s Guide To Spring Cloud
The Beginner’s Guide To Spring CloudThe Beginner’s Guide To Spring Cloud
The Beginner’s Guide To Spring CloudVMware Tanzu
 
Type script - advanced usage and practices
Type script  - advanced usage and practicesType script  - advanced usage and practices
Type script - advanced usage and practicesIwan van der Kleijn
 
DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?Carlos Felippe Cardoso
 
Testes Automatizados em Ruby on Rails
Testes Automatizados em Ruby on RailsTestes Automatizados em Ruby on Rails
Testes Automatizados em Ruby on RailsThiago Cifani
 
Node.js, Uma breve introdução
Node.js, Uma breve introduçãoNode.js, Uma breve introdução
Node.js, Uma breve introduçãoPablo Feijó
 

Mais procurados (20)

API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice Architecture
 
MySQL Shell for Database Engineers
MySQL Shell for Database EngineersMySQL Shell for Database Engineers
MySQL Shell for Database Engineers
 
PostgreSQL
PostgreSQLPostgreSQL
PostgreSQL
 
GraalVm and Quarkus
GraalVm and QuarkusGraalVm and Quarkus
GraalVm and Quarkus
 
Node js Introduction
Node js IntroductionNode js Introduction
Node js Introduction
 
Continuous delivery and deployment on AWS
Continuous delivery and deployment on AWSContinuous delivery and deployment on AWS
Continuous delivery and deployment on AWS
 
Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJS
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
 
What is tackled in the Java EE Security API (Java EE 8)
What is tackled in the Java EE Security API (Java EE 8)What is tackled in the Java EE Security API (Java EE 8)
What is tackled in the Java EE Security API (Java EE 8)
 
NodeJS for Beginner
NodeJS for BeginnerNodeJS for Beginner
NodeJS for Beginner
 
The Beginner’s Guide To Spring Cloud
The Beginner’s Guide To Spring CloudThe Beginner’s Guide To Spring Cloud
The Beginner’s Guide To Spring Cloud
 
Node js introduction
Node js introductionNode js introduction
Node js introduction
 
Type script - advanced usage and practices
Type script  - advanced usage and practicesType script  - advanced usage and practices
Type script - advanced usage and practices
 
DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?DevOps é cultura, processo ou cargo ?
DevOps é cultura, processo ou cargo ?
 
Las cronicas de redis
Las cronicas de redisLas cronicas de redis
Las cronicas de redis
 
Arquitetura Node com NestJS
Arquitetura Node com NestJSArquitetura Node com NestJS
Arquitetura Node com NestJS
 
Testes Automatizados em Ruby on Rails
Testes Automatizados em Ruby on RailsTestes Automatizados em Ruby on Rails
Testes Automatizados em Ruby on Rails
 
Node.js, Uma breve introdução
Node.js, Uma breve introduçãoNode.js, Uma breve introdução
Node.js, Uma breve introdução
 
Nodejs vatsal shah
Nodejs vatsal shahNodejs vatsal shah
Nodejs vatsal shah
 

Destaque

How effective is social media marketing for small business
How effective is social media marketing for small businessHow effective is social media marketing for small business
How effective is social media marketing for small businessApex Virtual Solutions
 
Marketing Masterclass for Accountants - Event Launch
Marketing Masterclass for Accountants - Event LaunchMarketing Masterclass for Accountants - Event Launch
Marketing Masterclass for Accountants - Event LaunchPractice Paradox
 
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013Vasily Ryzhonkov
 
Softlanding for global startups nsob taiwan 19 juni 2014
Softlanding for global startups   nsob taiwan 19 juni 2014Softlanding for global startups   nsob taiwan 19 juni 2014
Softlanding for global startups nsob taiwan 19 juni 2014Pim de Bokx
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive SummaryYevgeniy Brikman
 
Practice Paradox Clientshare Academy Launch - Including Foundation Member O...
Practice Paradox   Clientshare Academy Launch - Including Foundation Member O...Practice Paradox   Clientshare Academy Launch - Including Foundation Member O...
Practice Paradox Clientshare Academy Launch - Including Foundation Member O...Practice Paradox
 
The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...Yevgeniy Brikman
 
Software Development: Session 1
Software Development: Session 1Software Development: Session 1
Software Development: Session 1Alex Cowan
 
Development of business incubation in The Netherlands Pim de Bokx - Tunis 1...
Development of business incubation in The Netherlands   Pim de Bokx - Tunis 1...Development of business incubation in The Netherlands   Pim de Bokx - Tunis 1...
Development of business incubation in The Netherlands Pim de Bokx - Tunis 1...Pim de Bokx
 
Innovative Talks: Life Connected
Innovative Talks: Life ConnectedInnovative Talks: Life Connected
Innovative Talks: Life Connectedanahitinitiative
 
Business Model Innovation Book (prototype book structure)
Business Model Innovation Book (prototype book structure)Business Model Innovation Book (prototype book structure)
Business Model Innovation Book (prototype book structure)Alexander Osterwalder
 
Business development for startups 2013
Business development for startups 2013Business development for startups 2013
Business development for startups 2013Matteo Fabiano
 
Software Design: Intro Session
Software Design: Intro SessionSoftware Design: Intro Session
Software Design: Intro SessionAlex Cowan
 
Business Model Innovation by Business Models Inc. Training Summary
Business Model Innovation by Business Models Inc. Training SummaryBusiness Model Innovation by Business Models Inc. Training Summary
Business Model Innovation by Business Models Inc. Training SummaryBusiness Models Inc.
 
Small Business Start Up Success Kit Preview
Small Business Start Up Success Kit PreviewSmall Business Start Up Success Kit Preview
Small Business Start Up Success Kit PreviewDon Osborne
 
Business Model Knowledge Fair, Amsterdam
Business Model Knowledge Fair, AmsterdamBusiness Model Knowledge Fair, Amsterdam
Business Model Knowledge Fair, AmsterdamAlexander Osterwalder
 
Blueprint for Startup Success
Blueprint for Startup SuccessBlueprint for Startup Success
Blueprint for Startup SuccessMarc Nathan
 
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist Eestis
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist EestisTargast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist Eestis
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist EestisAllan Martinson
 

Destaque (20)

How effective is social media marketing for small business
How effective is social media marketing for small businessHow effective is social media marketing for small business
How effective is social media marketing for small business
 
Marketing Masterclass for Accountants - Event Launch
Marketing Masterclass for Accountants - Event LaunchMarketing Masterclass for Accountants - Event Launch
Marketing Masterclass for Accountants - Event Launch
 
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013
Virtual Business Incubator Framework for Enriching Innovation Ecosystem 2013
 
Softlanding for global startups nsob taiwan 19 juni 2014
Softlanding for global startups   nsob taiwan 19 juni 2014Softlanding for global startups   nsob taiwan 19 juni 2014
Softlanding for global startups nsob taiwan 19 juni 2014
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive Summary
 
Practice Paradox Clientshare Academy Launch - Including Foundation Member O...
Practice Paradox   Clientshare Academy Launch - Including Foundation Member O...Practice Paradox   Clientshare Academy Launch - Including Foundation Member O...
Practice Paradox Clientshare Academy Launch - Including Foundation Member O...
 
Lean101
Lean101Lean101
Lean101
 
The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...The Truth About Startups: What I wish someone had told me about entrepreneurs...
The Truth About Startups: What I wish someone had told me about entrepreneurs...
 
Software Development: Session 1
Software Development: Session 1Software Development: Session 1
Software Development: Session 1
 
Development of business incubation in The Netherlands Pim de Bokx - Tunis 1...
Development of business incubation in The Netherlands   Pim de Bokx - Tunis 1...Development of business incubation in The Netherlands   Pim de Bokx - Tunis 1...
Development of business incubation in The Netherlands Pim de Bokx - Tunis 1...
 
Innovative Talks: Life Connected
Innovative Talks: Life ConnectedInnovative Talks: Life Connected
Innovative Talks: Life Connected
 
Business Model Innovation Book (prototype book structure)
Business Model Innovation Book (prototype book structure)Business Model Innovation Book (prototype book structure)
Business Model Innovation Book (prototype book structure)
 
Business development for startups 2013
Business development for startups 2013Business development for startups 2013
Business development for startups 2013
 
Software Design: Intro Session
Software Design: Intro SessionSoftware Design: Intro Session
Software Design: Intro Session
 
Business Model Innovation by Business Models Inc. Training Summary
Business Model Innovation by Business Models Inc. Training SummaryBusiness Model Innovation by Business Models Inc. Training Summary
Business Model Innovation by Business Models Inc. Training Summary
 
Great Value Proposition Design
Great Value Proposition DesignGreat Value Proposition Design
Great Value Proposition Design
 
Small Business Start Up Success Kit Preview
Small Business Start Up Success Kit PreviewSmall Business Start Up Success Kit Preview
Small Business Start Up Success Kit Preview
 
Business Model Knowledge Fair, Amsterdam
Business Model Knowledge Fair, AmsterdamBusiness Model Knowledge Fair, Amsterdam
Business Model Knowledge Fair, Amsterdam
 
Blueprint for Startup Success
Blueprint for Startup SuccessBlueprint for Startup Success
Blueprint for Startup Success
 
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist Eestis
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist EestisTargast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist Eestis
Targast töövõtjast targaks tööandjaks - teadmispõhisest kapitalismist Eestis
 

Semelhante a Agility Requires Safety

Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaAmazon Web Services
 
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsCloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsYevgeniy Brikman
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsDana Luther
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using DockerMichael Irwin
 
Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Amazon Web Services
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Controlelliando dias
 
Security Automation Simplified - BSides Austin 2019
Security Automation Simplified - BSides Austin 2019Security Automation Simplified - BSides Austin 2019
Security Automation Simplified - BSides Austin 2019Moses Schwartz
 
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...Ondřej Machulda
 
(Agile) engineering best practices - What every project manager should know
(Agile) engineering best practices - What every project manager should know(Agile) engineering best practices - What every project manager should know
(Agile) engineering best practices - What every project manager should knowRichard Cheng
 
100% Code Coverage in Symfony applications
100% Code Coverage in Symfony applications100% Code Coverage in Symfony applications
100% Code Coverage in Symfony applicationsAndreas Czakaj
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Stephen Ritchie
 
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017AgileNZ Conference
 
Pragmatic Pipeline Security
Pragmatic Pipeline SecurityPragmatic Pipeline Security
Pragmatic Pipeline SecurityJames Wickett
 
DevOpsDays Singapore - Continuous Auditing with Compliance as Code
DevOpsDays Singapore - Continuous Auditing with Compliance as CodeDevOpsDays Singapore - Continuous Auditing with Compliance as Code
DevOpsDays Singapore - Continuous Auditing with Compliance as CodeMatt Ray
 
Agile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengAgile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengExcella
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopMichael Palotas
 
Automated Scaling of Microservice Stacks for JavaEE Applications
Automated Scaling of Microservice Stacks for JavaEE ApplicationsAutomated Scaling of Microservice Stacks for JavaEE Applications
Automated Scaling of Microservice Stacks for JavaEE ApplicationsJelastic Multi-Cloud PaaS
 

Semelhante a Agility Requires Safety (20)

Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
 
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutionsCloud adoption fails - 5 ways deployments go wrong and 5 solutions
Cloud adoption fails - 5 ways deployments go wrong and 5 solutions
 
Code Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application MigrationsCode Coverage for Total Security in Application Migrations
Code Coverage for Total Security in Application Migrations
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using Docker
 
Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Control
 
Security Automation Simplified - BSides Austin 2019
Security Automation Simplified - BSides Austin 2019Security Automation Simplified - BSides Austin 2019
Security Automation Simplified - BSides Austin 2019
 
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...
Workshop: Functional testing made easy with PHPUnit & Selenium (phpCE Poland,...
 
(Agile) engineering best practices - What every project manager should know
(Agile) engineering best practices - What every project manager should know(Agile) engineering best practices - What every project manager should know
(Agile) engineering best practices - What every project manager should know
 
Why test with flex unit
Why test with flex unitWhy test with flex unit
Why test with flex unit
 
100% Code Coverage in Symfony applications
100% Code Coverage in Symfony applications100% Code Coverage in Symfony applications
100% Code Coverage in Symfony applications
 
Azure from scratch part 4
Azure from scratch part 4Azure from scratch part 4
Azure from scratch part 4
 
Bug first Zero Defect
Bug first   Zero DefectBug first   Zero Defect
Bug first Zero Defect
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
 
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017
DevSec Delight with Compliance as Code - Matt Ray - AgileNZ 2017
 
Pragmatic Pipeline Security
Pragmatic Pipeline SecurityPragmatic Pipeline Security
Pragmatic Pipeline Security
 
DevOpsDays Singapore - Continuous Auditing with Compliance as Code
DevOpsDays Singapore - Continuous Auditing with Compliance as CodeDevOpsDays Singapore - Continuous Auditing with Compliance as Code
DevOpsDays Singapore - Continuous Auditing with Compliance as Code
 
Agile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengAgile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard Cheng
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery Workshop
 
Automated Scaling of Microservice Stacks for JavaEE Applications
Automated Scaling of Microservice Stacks for JavaEE ApplicationsAutomated Scaling of Microservice Stacks for JavaEE Applications
Automated Scaling of Microservice Stacks for JavaEE Applications
 

Mais de Yevgeniy Brikman

How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...Yevgeniy Brikman
 
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeLessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeYevgeniy Brikman
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesYevgeniy Brikman
 
An intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSAn intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSYevgeniy Brikman
 
Comprehensive Terraform Training
Comprehensive Terraform TrainingComprehensive Terraform Training
Comprehensive Terraform TrainingYevgeniy Brikman
 
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Yevgeniy Brikman
 
Startup Ideas and Validation
Startup Ideas and ValidationStartup Ideas and Validation
Startup Ideas and ValidationYevgeniy Brikman
 
A Guide to Hiring for your Startup
A Guide to Hiring for your StartupA Guide to Hiring for your Startup
A Guide to Hiring for your StartupYevgeniy Brikman
 
Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Yevgeniy Brikman
 
Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play appsYevgeniy Brikman
 
Play Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaPlay Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaYevgeniy Brikman
 
The Play Framework at LinkedIn
The Play Framework at LinkedInThe Play Framework at LinkedIn
The Play Framework at LinkedInYevgeniy Brikman
 
Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Yevgeniy Brikman
 

Mais de Yevgeniy Brikman (20)

How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...How to test infrastructure code: automated testing for Terraform, Kubernetes,...
How to test infrastructure code: automated testing for Terraform, Kubernetes,...
 
Lessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure codeLessons learned from writing over 300,000 lines of infrastructure code
Lessons learned from writing over 300,000 lines of infrastructure code
 
Reusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modulesReusable, composable, battle-tested Terraform modules
Reusable, composable, battle-tested Terraform modules
 
An intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECSAn intro to Docker, Terraform, and Amazon ECS
An intro to Docker, Terraform, and Amazon ECS
 
Comprehensive Terraform Training
Comprehensive Terraform TrainingComprehensive Terraform Training
Comprehensive Terraform Training
 
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...Infrastructure as code: running microservices on AWS using Docker, Terraform,...
Infrastructure as code: running microservices on AWS using Docker, Terraform,...
 
Startup Ideas and Validation
Startup Ideas and ValidationStartup Ideas and Validation
Startup Ideas and Validation
 
A Guide to Hiring for your Startup
A Guide to Hiring for your StartupA Guide to Hiring for your Startup
A Guide to Hiring for your Startup
 
Startup DNA: Speed Wins
Startup DNA: Speed WinsStartup DNA: Speed Wins
Startup DNA: Speed Wins
 
Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)Node.js vs Play Framework (with Japanese subtitles)
Node.js vs Play Framework (with Japanese subtitles)
 
Node.js vs Play Framework
Node.js vs Play FrameworkNode.js vs Play Framework
Node.js vs Play Framework
 
Rapid prototyping
Rapid prototypingRapid prototyping
Rapid prototyping
 
Composable and streamable Play apps
Composable and streamable Play appsComposable and streamable Play apps
Composable and streamable Play apps
 
Play Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and ScalaPlay Framework: async I/O with Java and Scala
Play Framework: async I/O with Java and Scala
 
The Play Framework at LinkedIn
The Play Framework at LinkedInThe Play Framework at LinkedIn
The Play Framework at LinkedIn
 
Kings of Code Hack Battle
Kings of Code Hack BattleKings of Code Hack Battle
Kings of Code Hack Battle
 
Hackdays and [in]cubator
Hackdays and [in]cubatorHackdays and [in]cubator
Hackdays and [in]cubator
 
Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...Startup DNA: the formula behind successful startups in Silicon Valley (update...
Startup DNA: the formula behind successful startups in Silicon Valley (update...
 
Dust.js
Dust.jsDust.js
Dust.js
 
LinkedIn Overview
LinkedIn OverviewLinkedIn Overview
LinkedIn Overview
 

Último

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 

Último (20)

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 

Agility Requires Safety