loading...

Accidental Complexity - Video Notes and Review

functional_js profile image Functional Javascript ・1 min read

The video:


7 minutes, 26 seconds, and the Fundamental Theorem of Agile Software Development
by Joe Rainsberger, from the Agile Lightning Talks (2013-11-07)

Tags:

accidental complexity
complect
technical debt
spaghetti code
ravioli code
big soupy codebase
plasma ball effect
software rot
BBoM (Big Ball of Mud)
antipatterns
bloatware
slowware
brittleware
overarchitecture

The Notes (with my own added):

essential complication
accidental complication
total complication
TC = EC + AC

AC:
Accidental Complication, or
Accidental Complexity

causes...
cut corners
feel pressure
have to get it out the door

solutions...
reduce AC
squeeze out AC

TDD

  • think
  • write a test
  • ask, how much does this test suck?

write just enough code to make it pass

clean the kitchen

  • refactor a bit now
  • because if we don't clean the kitchen, then we have to clean the garage

refactoring

  • is how you reduce AC

To estimate, you have to refactor.
SCRUM cannot work without XP.

My personal review:

vague, no specifics, no examples
mostly platitudes and generalizations
no formulas, no metrics, no measurement strategies
selling his TDD course indirectly
aimed at the beginner to intermediate programmer

Summary and Takeaways:

ABR (Always Be Refactoring) and testing your code

P.S. - Best advice ever for Software Arcitecture :)

Stop building car boats.

Posted on by:

functional_js profile

Functional Javascript

@functional_js

Full Stack System Designer and Software Engineer

Discussion

pic
Editor guide