Slide 1

Slide 1 text

Complex is better than complicated

Slide 2

Slide 2 text

We build complex software

Slide 3

Slide 3 text

We don’t want complicated code

Slide 4

Slide 4 text

Cyclomatic complexity • M = E − N + 2P • E = the number of edges of the graph. • N = the number of nodes of the graph. • P = the number of connected components. • https://en.wikipedia.org/wiki/Cyclomatic_complexity

Slide 5

Slide 5 text

Limiting complicated code • National Institute of Standards and Technology - 10 • Either • Under the limit • Provide a written explanation of why it become so complicated

Slide 6

Slide 6 text

Software • C/C++/Objective C - https://github.com/terryyin/ lizard • golang - https://github.com/fzipp/gocyclo • Python - https://github.com/rubik/radon • Javascript - https://github.com/es-analysis/plato

Slide 7

Slide 7 text

It can’t help • Stupid architect design • Human readability • Software Quality