{"id":213,"date":"2008-02-10T21:41:50","date_gmt":"2008-02-11T03:41:50","guid":{"rendered":"http:\/\/www.ourada.org\/blog\/archives\/213"},"modified":"2008-02-10T21:41:50","modified_gmt":"2008-02-11T03:41:50","slug":"software-growth-by-accretion","status":"publish","type":"post","link":"https:\/\/www.ourada.org\/blog\/archives\/213","title":{"rendered":"Software growth by accretion"},"content":{"rendered":"<p>It&#8217;s somewhat fascinating to look at growth by accretion in software. For one thing, just like geological GBA (yeah, that&#8217;s how hip I am), it can give you a visible record of the history of a particular little piece of the world. For another thing, it can lead to interesting conflicts within and between developers, as something that&#8217;s grown by accretion rarely &#8216;looks right&#8217; from a fresh (ahistorical) point of view.<\/p>\n<p>I ought to look through the computing literature and see what people have done in the vein of automatically analyzing GBA and trying to reverse-engineer the &#8216;meaning&#8217; if it. Thing is, when you look at some GBA and say it doesn&#8217;t look right, then you go and try to &#8216;fix&#8217; it, you can often end up losing important features\/functionality\/quirks\/etc., because you tend to sort of throw away some of the little differences that seem incidental but were actually hard-won little bits of real-world application knowledge. Having a little tool sitting over your shoulder and saying &#8220;look, jerky, you removed this bit of logic, but this here source-control comment says &#8216;I know this looks odd, but it&#8217;s VERY IMPORTANT'&#8221; could save some hassle sometimes.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s somewhat fascinating to look at growth by accretion in software. For one thing, just like geological GBA (yeah, that&#8217;s how hip I am), it can give you a visible record of the history of a particular little piece of the world. For another thing, it can lead to interesting conflicts within and between developers, [&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":[],"class_list":["post-213","post","type-post","status-publish","format-standard","hentry","category-general","author-admin"],"_links":{"self":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/posts\/213","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=213"}],"version-history":[{"count":0,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/posts\/213\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/media?parent=213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/categories?post=213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ourada.org\/blog\/wp-json\/wp\/v2\/tags?post=213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}