Germs Everywhere

Ein Vortrag über persönliche Hygiene, das Leben, das Universum und den Ganzen Rest

Jens Schauder

Java Entwickler

Clean Code Fanatic

JUG Organizer

Vater, Spieler, Läufer, Boulderer

+

Eine kleine Reise ins Mittelalter

Alle aufstehen bitte!

Alter teilbar durch 2?

Bitte setzen.

Schaut euch um.

Alle die jetzt sitzen wären tot!

Hygiene im Mittelalter

die Operationsschürzen der Chirurgen [wurden] praktisch nie gewaschen

— https://de.wikipedia.org/wiki/Hygiene

11% der Geburten verliefen tötlich für die Mütter …​ weil die Ärzte nach eine Leichensektion eine Geburt betreuten, ohne sich die Hände zu waschen

— https://de.wikipedia.org/wiki/Hygiene

Wunden von verschiedenen Patienten [wurden] nacheinander mit demselben Schwamm gereinigt

— https://de.wikipedia.org/wiki/Hygiene

Fäkalien wurden auf die Straße gekippt

Wir leben im IT Mittelalter

Code sieht oft aus als wäre er aus einem Nachttopf auf die Straße gekippt worden.

getNowDate().getTime()

public static Date getNowDate() {
    final Calendar cal =
        new GregorianCalendar();
    cal.setTime(new Date());
    return cal.getTime();
}

Dies tut das Gleiche

    System.currentTimeMillis()

Manager definieren Metriken

    Person p = new Person();
    p.setFirstName(rs.getString(1));
    p.setLastName(rs.getString(2));

But Wait! There is More!

    p.setStreat(rs.getString(2 + 1));
    p.setCity(rs.getString(2 + 2));
    p.setZip(rs.getString(2 + 2 + 1));

Projekte sterben an den Folgen

Und nicht nur Projekte

Therac-25

Gerät zur Strahlenbehandlung → wenigstens 3 Tote

Warum tun Leute so etwas?

Mangel an Verantwortung

    private static final int four = 5;

Unwissenheit

List<A> as = getAs();
if (as != null && !as.isEmpty(){
  for(A a in as){
  ...
  }
}
List<A> getAs(){
  ...
  if (as.size() > 0)
      return as;
  else
      return null;
}

Du kommst hier net rein!

Angst!

Ich hatte Angst!

— Anonymer Entwickler auf die Frage, warum er eine Methode nicht refactored hat, bevor er noch ein Feature eingebaut hat

Tests to the Rescue!

Aufgabe für Morgen

Schreibt einen Test!

Das ist untestbarer Dreck!

— Der Speaker beim versuch 3rd Party Code zu testen

Jedes Mal wenn ich den Code ändere, muss ich meine Tests anfassen!

— Kommentar zu den ersten Tests des Speakers

Gute Tests zu schreiben ist schwer

Ist Clean Code in der Praxis überhaupt möglich?

— Frage, die dem Speaker im Interview gestellt wurde

Der Fisch stinkt vom Kopf aus

Es bleibt eure Aufgabe!

Hebt eure rechte Hand so hoch ihr könnt!

Noch ein bischen höher!

Es geht immer noch mehr!

Be the change that you wish to see in the world.

— Mahatma Gandhi

Quellenangaben