Wllr:Tech, Rob Waller Website and Blog

Prove Your Code Works: How to Communicate Quality

Home > Talks > Prove Your Code Works: How to Communicate Quality By: Rob Waller #tech #software #professionalism #observability #tests #documentation #analysis View the Slides

Talk Abstract

Professionalism has two core features, expertise and guarantees. This talk delves into the topic of observability and how professional software developers can guarantee their software works and communicate this to others. It covers the checks to make, the metrics to collect and the documentation to write so developers can prove code works.

Talk Description

This talk looks at the professional guarantees a software developer can provide users, customers and managers to assure them the software they use or purchase works to a reasonable standard.

The talk’s focus is the concept of observability, and how to prove software works without the need to look at the code. It will cover three main areas, the checks to make, the metrics to collect and the documentation to write which all provide software with observability.

Checks: There are two core checks developers should run against code. The most obvious is tests, which includes simple unit tests and more advanced concepts like mutation tests and fault injection. The second group of checks include the various forms of static analysis which can be run against code. This includes linting, mess detection and to code validity checks.

Metrics: The various code checks a developer can run against code will generate a vast array of information which includes metrics which highlight the quality of code. For instance, Complexity Scores show how testable and maintable code is, and Mutation Scores will highlight how well tested code is.

Documentation: To truly provide observability and communicate quality good documentation is required. This includes Semantic Versioning and Release Notes which are a great way to communicate change. Code Comments which guide developers through a codebase and surface information hidden within code. And finally READMEs and Badges which provide a great means to highlight code qaulity metrics, but also provide a place to communicate installation, setup and usage information.

Notes

Professionalism is a topic I care about deeply and I have spent the past few years discussing and writing about issues around this topic.

Presented At

  • PHP Hants
  • PHP Sussex

Slides

Prove Your Code Works: How to Communicate Quality

Professionalism has two core features, expertise and guarantees. This talk delves into the topic of observability and how professional software developers can guarantee their software works and communicate this to others. It covers the checks to make, the metrics to collect and the documentation to write so developers can prove code works.

Videos

TBC