Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOps and Legacy Code

Oliver Hankeln
September 26, 2019

DevOps and Legacy Code

Unfortunately we can’t all work in startup companies. Some of use have to deal with legacy code bases. These are often structured as a monolith and tightly coupled. They typically are hard to build and deploy. You might think all the new DevOps practices and toys are not suitable for your context. You are wrong!

We will discuss strategies to work with legacy code and still use DevOps practices and tools. These include breaking up of monolithic structures, migrating data and monitoring systems that aren’t built to be monitored. We will show real-world examples of successful applications of these strategies.

While dealing with legacy code will still be painful, you will have some applicable ideas to relieve your pain.

Oliver Hankeln

September 26, 2019
Tweet

More Decks by Oliver Hankeln

Other Decks in Technology

Transcript

  1. Tight Coupling Specialists Manual Processes SS4CP* Brittleness Why is it

    so hard? *Simple Solutions for Complex Problems
  2. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ... the degree of interdependence between things* a measure of how closely connected two things* are the strength of the relationships between things* things*: components, infrastructure, modules, code, people...
  3. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ... public class Foo { public void foo() { new Bar().bar(); } } var GLOBAL_SHARED_VALUE = 23 import http.client con = http.client .HTTPSConnection("devops-events.de") con.request("GET", "/") res = connection.getresponse() print("Status: {} and reason: {}" .format(res.status, res.reason)) connection.close() <?xml version="1.0" encoding="UTF-8" standalone="no"?> <wsdl:definitions xmlns:soap=... <!-- ... --> </wsdl>
  4. Baby Steps ▪ Big Bangs don’t work. ▪ There is

    always the next baby step. ▪ Legacy code took time to grow bad. It will take time to fix it.
  5. About Us Peter Götz [email protected] @petersgoetz Save 50% for our

    next DevOps Lab training https://www.devops-events.de/trainings/devops-lab Buy one ticket and bring a friend or colleague for free (coupon code “2-4-1”) Oliver Hankeln [email protected] @mydalon
  6. Credits ▪ @alexagorn (https://unsplash.com/photos/smuS_jUZa9I) ▪ @matthew_t_rader (https://unsplash.com/photos/bZbd02TN9t0) ▪ @jentheodore (https://unsplash.com/photos/qRtLPwRlXxI)

    ▪ @harlsta (https://unsplash.com/photos/ouyjDk-KdfY) ▪ @byrawpixel (https://www.pexels.com/photo/baby-s-standing-on-gray-floor-rug-1776136/)