SlideShare a Scribd company logo
1 of 34
Download to read offline
НЕПРЕРЫВНАЯ
ИНТЕГРАЦИЯ, ВЫПУСК,
И РАЗВЁТЫВАНЕ П.О.:
МЕСТЬ МАШИН!
ТЫ КТО ТАКОЙ?
linkd.in/jbaruch
stackoverflow.com/users/402053/jbaruch
СИНГУЛЯРНОСТЬ БЛИЗКА!
А КАК С П.О.?
III ЗАКОНА РОБОТОТЕХНИКИ
КОГДА ДЕРЕВЬЯ БЫЛИ БОЛЬШИМИ
КУЛЬТУРА ПОТРЕБЛЕНИЯ
ЦЕЛЬ: ОТ РАЗРАБОТЧИКА НА
РАБОЧИЙ СЕРВЕР НЕ ТРОГАЯ
ГРЯЗНЫМИ РУКАМИ
ЭТО ПОТОМУ ЧТО ТЫ СЛАБ,
ЧЕЛОВЕК.
НАЧНЕМ С VERSION CONTROL
МАШИНЫ ГЛУПЫ, НО НАСТОЙЧИВЫ
СЕРВЕРА СБОРКИ РУЛЯТ МАТРИЦОЙ
ЖЕЛЕЗО МЕНЯТЬ СЛОЖНО
Если оно не мягкое
HARDWARE AS A SOFTWARE
О, ТЕПЕРЬ МОЖНО ЛОМАТЬ
ЖЕЛЕЗО!
ИНОГДА РОБОТЫ НЕ МОГУТ
(ПРАВДА, ВСЁ РЕЖЕ)
РОБОТЫ ДЛЯ QA
ДАВАЙТЕ ЛОМАТЬ!
ТЕСТЫ UI
ТЕСТЫ КАК НАДО ЭТО К ЖЕЛЕЗУ
БЫСТРЫЕ ЦИКЛЫ ПОЗВОЛЯЮТ
СХОДИТЬ С УМА
БУДУЩЕЕ: ЕЩЕ БОЛЬШЕ
РОБОТОВ!
А ВСЁ ИЗ ЗА ОБЛАКА!
задача робот
задача робот
Любое количество сред Chef/Puppet
задача робот
Любое количество сред Chef/Puppet
Любое количество
разновидностей
Docker/Vagrant
задача робот
Любое количество сред Chef/Puppet
Любое количество
разновидностей
Docker/Vagrant
Тестирование на любом
уровне
Unit, ui, functional, stress, chaos, mutational
задача робот
Любое количество сред Chef/Puppet
Любое количество
разновидностей
Docker/Vagrant
Тестирование на любом
уровне
Unit, ui, functional, stress, chaos, mutational
Непрерывное
тестирование
Ci server
задача робот
Любое количество сред Chef/Puppet
Любое количество
разновидностей
Docker/Vagrant
Тестирование на любом
уровне
Unit, ui, functional, stress, chaos, mutational
Непрерывное
тестирование
Ci server
Смотримчтопошло,остальноенафик
И Я, СО СВОЕЙ СТОРОНЫ,
ПРИВЕТСТВУЮ НАШИХ НОВЫХ
ПОВЕЛИТЕЛЕЙ РОБОТОВ

More Related Content

More from JavaDayUA

Unlocking the Magic of Monads with Java 8
Unlocking the Magic of Monads with Java 8Unlocking the Magic of Monads with Java 8
Unlocking the Magic of Monads with Java 8JavaDayUA
 
Virtual Private Cloud with container technologies for DevOps
Virtual Private Cloud with container technologies for DevOpsVirtual Private Cloud with container technologies for DevOps
Virtual Private Cloud with container technologies for DevOpsJavaDayUA
 
JShell: An Interactive Shell for the Java Platform
JShell: An Interactive Shell for the Java PlatformJShell: An Interactive Shell for the Java Platform
JShell: An Interactive Shell for the Java PlatformJavaDayUA
 
Interactive Java Support to your tool -- The JShell API and Architecture
Interactive Java Support to your tool -- The JShell API and ArchitectureInteractive Java Support to your tool -- The JShell API and Architecture
Interactive Java Support to your tool -- The JShell API and ArchitectureJavaDayUA
 
MapDB - taking Java collections to the next level
MapDB - taking Java collections to the next levelMapDB - taking Java collections to the next level
MapDB - taking Java collections to the next levelJavaDayUA
 
Save Java memory
Save Java memorySave Java memory
Save Java memoryJavaDayUA
 
Design rationales in the JRockit JVM
Design rationales in the JRockit JVMDesign rationales in the JRockit JVM
Design rationales in the JRockit JVMJavaDayUA
 
Next-gen DevOps engineering with Docker and Kubernetes by Antons Kranga
Next-gen DevOps engineering with Docker and Kubernetes by Antons KrangaNext-gen DevOps engineering with Docker and Kubernetes by Antons Kranga
Next-gen DevOps engineering with Docker and Kubernetes by Antons KrangaJavaDayUA
 
Apache Cassandra. Inception - all you need to know by Mikhail Dubkov
Apache Cassandra. Inception - all you need to know by Mikhail DubkovApache Cassandra. Inception - all you need to know by Mikhail Dubkov
Apache Cassandra. Inception - all you need to know by Mikhail DubkovJavaDayUA
 
Solution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovSolution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovJavaDayUA
 
Testing in Legacy: from Rags to Riches by Taras Slipets
Testing in Legacy: from Rags to Riches by Taras SlipetsTesting in Legacy: from Rags to Riches by Taras Slipets
Testing in Legacy: from Rags to Riches by Taras SlipetsJavaDayUA
 
Reactive programming and Hystrix fault tolerance by Max Myslyvtsev
Reactive programming and Hystrix fault tolerance by Max MyslyvtsevReactive programming and Hystrix fault tolerance by Max Myslyvtsev
Reactive programming and Hystrix fault tolerance by Max MyslyvtsevJavaDayUA
 
Spark-driven audience counting by Boris Trofimov
Spark-driven audience counting by Boris TrofimovSpark-driven audience counting by Boris Trofimov
Spark-driven audience counting by Boris TrofimovJavaDayUA
 
API first with Swagger and Scala by Slava Schmidt
API first with Swagger and Scala by  Slava SchmidtAPI first with Swagger and Scala by  Slava Schmidt
API first with Swagger and Scala by Slava SchmidtJavaDayUA
 
JavaFX 8 everywhere; write once run anywhere by Mohamed Taman
JavaFX 8 everywhere; write once run anywhere by Mohamed TamanJavaFX 8 everywhere; write once run anywhere by Mohamed Taman
JavaFX 8 everywhere; write once run anywhere by Mohamed TamanJavaDayUA
 
Web-application I have always dreamt of by Victor Polischuk
Web-application I have always dreamt of by Victor PolischukWeb-application I have always dreamt of by Victor Polischuk
Web-application I have always dreamt of by Victor PolischukJavaDayUA
 
Monitoring of developers. The necessity or self-indulgence by Oleksiy Dyomin
Monitoring of developers. The necessity or self-indulgence by Oleksiy DyominMonitoring of developers. The necessity or self-indulgence by Oleksiy Dyomin
Monitoring of developers. The necessity or self-indulgence by Oleksiy DyominJavaDayUA
 
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...JavaDayUA
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovJavaDayUA
 
Spring Puzzlers by Evgeny Borisov, Baruch Sadogursky
Spring Puzzlers by Evgeny Borisov, Baruch SadogurskySpring Puzzlers by Evgeny Borisov, Baruch Sadogursky
Spring Puzzlers by Evgeny Borisov, Baruch SadogurskyJavaDayUA
 

More from JavaDayUA (20)

Unlocking the Magic of Monads with Java 8
Unlocking the Magic of Monads with Java 8Unlocking the Magic of Monads with Java 8
Unlocking the Magic of Monads with Java 8
 
Virtual Private Cloud with container technologies for DevOps
Virtual Private Cloud with container technologies for DevOpsVirtual Private Cloud with container technologies for DevOps
Virtual Private Cloud with container technologies for DevOps
 
JShell: An Interactive Shell for the Java Platform
JShell: An Interactive Shell for the Java PlatformJShell: An Interactive Shell for the Java Platform
JShell: An Interactive Shell for the Java Platform
 
Interactive Java Support to your tool -- The JShell API and Architecture
Interactive Java Support to your tool -- The JShell API and ArchitectureInteractive Java Support to your tool -- The JShell API and Architecture
Interactive Java Support to your tool -- The JShell API and Architecture
 
MapDB - taking Java collections to the next level
MapDB - taking Java collections to the next levelMapDB - taking Java collections to the next level
MapDB - taking Java collections to the next level
 
Save Java memory
Save Java memorySave Java memory
Save Java memory
 
Design rationales in the JRockit JVM
Design rationales in the JRockit JVMDesign rationales in the JRockit JVM
Design rationales in the JRockit JVM
 
Next-gen DevOps engineering with Docker and Kubernetes by Antons Kranga
Next-gen DevOps engineering with Docker and Kubernetes by Antons KrangaNext-gen DevOps engineering with Docker and Kubernetes by Antons Kranga
Next-gen DevOps engineering with Docker and Kubernetes by Antons Kranga
 
Apache Cassandra. Inception - all you need to know by Mikhail Dubkov
Apache Cassandra. Inception - all you need to know by Mikhail DubkovApache Cassandra. Inception - all you need to know by Mikhail Dubkov
Apache Cassandra. Inception - all you need to know by Mikhail Dubkov
 
Solution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman ShramkovSolution Architecture tips & tricks by Roman Shramkov
Solution Architecture tips & tricks by Roman Shramkov
 
Testing in Legacy: from Rags to Riches by Taras Slipets
Testing in Legacy: from Rags to Riches by Taras SlipetsTesting in Legacy: from Rags to Riches by Taras Slipets
Testing in Legacy: from Rags to Riches by Taras Slipets
 
Reactive programming and Hystrix fault tolerance by Max Myslyvtsev
Reactive programming and Hystrix fault tolerance by Max MyslyvtsevReactive programming and Hystrix fault tolerance by Max Myslyvtsev
Reactive programming and Hystrix fault tolerance by Max Myslyvtsev
 
Spark-driven audience counting by Boris Trofimov
Spark-driven audience counting by Boris TrofimovSpark-driven audience counting by Boris Trofimov
Spark-driven audience counting by Boris Trofimov
 
API first with Swagger and Scala by Slava Schmidt
API first with Swagger and Scala by  Slava SchmidtAPI first with Swagger and Scala by  Slava Schmidt
API first with Swagger and Scala by Slava Schmidt
 
JavaFX 8 everywhere; write once run anywhere by Mohamed Taman
JavaFX 8 everywhere; write once run anywhere by Mohamed TamanJavaFX 8 everywhere; write once run anywhere by Mohamed Taman
JavaFX 8 everywhere; write once run anywhere by Mohamed Taman
 
Web-application I have always dreamt of by Victor Polischuk
Web-application I have always dreamt of by Victor PolischukWeb-application I have always dreamt of by Victor Polischuk
Web-application I have always dreamt of by Victor Polischuk
 
Monitoring of developers. The necessity or self-indulgence by Oleksiy Dyomin
Monitoring of developers. The necessity or self-indulgence by Oleksiy DyominMonitoring of developers. The necessity or self-indulgence by Oleksiy Dyomin
Monitoring of developers. The necessity or self-indulgence by Oleksiy Dyomin
 
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...
Stream-style messaging development with Rabbit, Active, ZeroMQ & Apache Kafka...
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny Borisov
 
Spring Puzzlers by Evgeny Borisov, Baruch Sadogursky
Spring Puzzlers by Evgeny Borisov, Baruch SadogurskySpring Puzzlers by Evgeny Borisov, Baruch Sadogursky
Spring Puzzlers by Evgeny Borisov, Baruch Sadogursky
 

Continuously building, releasing and deploying software: The Revenge of the Machines!