Simon Dobson discusses his realization that his understanding of the 'setf' macro in Lisp was incorrect. He details how 'setf' accesses the structure of its arguments at compile time, not the values, which led to his mistaken belief that 'setf' worked on a location when in fact it expands into a method call. He explores the implications for Lisp's flexibility through examples and points out the capabilities of macros and generic functions in the language.