26 February 2014

Kent Beck about steering code via tests

I was about to send this to my team, but then I realized this is a blog post.

Here is Kent's article:

And here is a related tweet from him on that topic:

    "selecting the next test is an act of design"

I've always thought about "design" as choosing which classes exist and how they relate to each other, and what methods look like, etc.  Or at a system level, deciding which services exist and what their core of responsibility should be.

However, I never thought about gaming my own mind (like applying genetic algorithms to my own thoughts), and choosing to introduce tests in different orders -- in order to produce a different neurophysical response from myself.

Perhaps "design" is not just about a static system and what to include.  Perhaps "design" is about acknowledging the dynamism of the human/computer programming environment, and leveraging that dynamic nature in order to get a more optimum response.

1 comment:

  1. I re-skimmed this article in the context of this post:

    - http://worrydream.com/LearnableProgramming/

    It's longish *and* worth it to read. And I realized that the choices the author is making when structuring a programming environment are fully cognizant of this idea of sequencing at a human/computer level to optimize for learning programming.

    The goal in this case being to "install" the "language" of programming into the user's head.