{"id":428,"date":"2003-06-16T22:05:38","date_gmt":"2003-06-17T02:05:38","guid":{"rendered":"http:\/\/wordpress.cephas.net\/?p=428"},"modified":"2003-06-16T22:05:38","modified_gmt":"2003-06-17T02:05:38","slug":"the-poetry-of-programming","status":"publish","type":"post","link":"https:\/\/cephas.net\/blog\/2003\/06\/16\/the-poetry-of-programming\/","title":{"rendered":"The Poetry of Programming"},"content":{"rendered":"<p>This <a href=\"http:\/\/java.sun.com\/features\/2002\/11\/gabriel_qa.html\">article<\/a> popped up in the JavaOne Today newspaper so ubiquitous at the conference. It&#8217;s a fascinating interview with Richard Gabriel, an engineer at Sun, who thinks that software engineering is less about engineering in the sense of building a bridge and well&#8230; <\/p>\n<p>&#8220;<i>Writing software should be treated as a creative activity. Just think about it &#8212; the software that&#8217;s interesting to make is software that hasn&#8217;t been made before. Most other engineering disciplines are about building things that have been built before. People say, &#8220;Well, how come we can&#8217;t build software the way we build bridges?&#8221; The answer is that we&#8217;ve been building bridges for thousands of years, and while we can make incremental improvements to bridges, the fact is that every bridge is like some other bridge that&#8217;s been built. Someone says, &#8220;Oh, let&#8217;s build a bridge across this river. The river is this wide, it&#8217;s this deep, it&#8217;s got to carry this load. It&#8217;s for cars, pedestrians, or trains, so it will be kind of like this one or that one.&#8221; They can know the category of bridge they&#8217;re building, so they can zero in on the design pretty quickly. They don&#8217;t have to reinvent the wheel.<\/i>&#8221;  <\/p>\n<p>Another tidbit from the article was the mention of <a href=\"http:\/\/plato.stanford.edu\/entries\/feyerabend\/\">Paul Feyerabend<\/a>, &#8220;&#8230; who argued that for knowledge to progress, people must violate some of their methodological principles.&#8221; What methodological principles have you violated today?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article popped up in the JavaOne Today newspaper so ubiquitous at the conference. It&#8217;s a fascinating interview with Richard Gabriel, an engineer at Sun, who thinks that software engineering is less about engineering in the sense of building a bridge and well&#8230; &#8220;Writing software should be treated as a creative activity. Just think about &hellip; <a href=\"https:\/\/cephas.net\/blog\/2003\/06\/16\/the-poetry-of-programming\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">The Poetry of Programming<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/posts\/428"}],"collection":[{"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/comments?post=428"}],"version-history":[{"count":0,"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/posts\/428\/revisions"}],"wp:attachment":[{"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/media?parent=428"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/categories?post=428"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cephas.net\/blog\/wp-json\/wp\/v2\/tags?post=428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}