{"id":141,"date":"2006-05-23T22:09:02","date_gmt":"2006-05-24T04:09:02","guid":{"rendered":"http:\/\/www.ourada.org\/blog\/archives\/141"},"modified":"2006-05-23T22:09:02","modified_gmt":"2006-05-24T04:09:02","slug":"flow-and-refactoring","status":"publish","type":"post","link":"https:\/\/www.ourada.org\/blog\/archives\/141","title":{"rendered":"Flow and Refactoring"},"content":{"rendered":"<p>Those being the names of two books I&#8217;m reading now. I like it when two things I&#8217;m reading, from different fields and for different purposes, turn out to have a nice connection.<\/p>\n<p>It sorta struck me when Fowler mentioned &#8220;not once did I have to open the debugger, so the process actually flowed quite quickly&#8221;, that, yeah, there does seem to be a connection between flow and refactoring in a general sense.<\/p>\n<p>With any complex project, there are multiple competing concerns. For example, in writing software, I want the functionality, but I also want a clean architecture, good performance, multi-platform capability, etc. With a document, I want clarity, completeness, cleverness, alliteration, etc. But due to limitations of brain-context-capacity, varying interest levels, and compounded complexity, it&#8217;s rarely possible to keep all these concerns going simultaneously. And swapping between them all the time can wreaks havoc with the potential for flow.<\/p>\n<p>Given that, one can look at refactoring as a way to profitably resequence work. If I can&#8217;t fulfill all the concerns at the same time, I&#8217;ll just focus on slapping down something that works, forgetting for the moment all the other stuff. Then, one by one or two by two, I can go back and refactor in the other concerns, as time and interests permit. Beyond simply enabling me to get past the block of &#8220;I can&#8217;t do it all, so I shouldn&#8217;t start at all&#8221;, I can also match my work to my capacity and have some chance of getting a flow state going.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Those being the names of two books I&#8217;m reading now. I like it when two things I&#8217;m reading, from different fields and for different purposes, turn out to have a nice connection. It sorta struck me when Fowler mentioned &#8220;not once did I have to open the debugger, so the process actually flowed quite quickly&#8221;, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[10,39,51],"class_list":["post-141","post","type-post","status-publish","format-standard","hentry","category-general","tag-books","tag-ponderings","tag-software","author-admin"],"_links":{"self":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/posts\/141","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/comments?post=141"}],"version-history":[{"count":0,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/posts\/141\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/media?parent=141"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/categories?post=141"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/tags?post=141"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}