Video: Software that Fits in Your Head - Dan North


OO = "little computers passing messages" Alan K
replaceable component architecture


Video: Software that Fits in Your Head - Dan North

Software that Fits in Your Head - Dan North













software is not the point


productive != effective



to getting the business impact





understanding code
code I know (new
code no-one knows (middle)
code everyone knows
cared for





entropy







Short software Half-Life
half-life (physics) know precisely half will decay in certain time, dunno which


How long would you need to go away, before half of the code has been completely rewritten?
typically years
~6weeks
fearlessly rewrite code
I know more now


design considerations



well written code shows
what it does
NOT purpose
NOT what is not there (decisions)
purpose: why it's there
responsibility: what it owns (and what not)


lifecycle

documentation = why something is there


write component test and docs
TDD != tests
Article: Mike Nigard, architecture decision records
decision we made
people who made it
things we considered
things we discarded
so this we ended
extra credit:
this is the problem it solves
these risks are introduced
-> stays in version control


static != stable





complexity metric:
"bigger than my head"
if have to page up and down, it's too much


coping mechanisms
analysis
actively ignoring
mocking and stubbing
painkillers for complexity


what fits in my head?
language
clojure
1 way to do something
scala
least opinionated
multiple dialects in 1 code base
framework



what would James do?
shared values











microservices?



hard shell
pass messages


"little computers passing messages"
-- Alan K
-> inventor of OO
object != entity
object does things with entities


think about component by looking at the messages



microservices!





closing message









Video: Software that Fits in Your Head - Dan North



GOTO 2016 • Software that Fits in Your Head • Dan North
17,242 views views
Published on Sep 27, 2016







Description


This presentation was recorded at GOTO Amsterdam 2016 http://gotoamst.nl Dan North - Agile Troublemaker, Developer, Originator of BDD ABSTRACT Software gets complicated fast. Most of good architecture and design practise is about trying to slow the rate at which software gets complicated. You can't stop it, it's a form of entropy. You can only slow it down and do your level best to stay on top [...] Download slides and read the full abstract here: https://gotocon.com/amsterdam-2016/pr...https://twitter.com/gotoamsthttps://www.facebook.com/GOTOConferencehttp://gotocon.com




comments powered by Disqus