{"id":4522,"date":"2015-07-14T10:38:24","date_gmt":"2015-07-14T09:38:24","guid":{"rendered":"http:\/\/www.celesteh.com\/blog\/?p=4522"},"modified":"2015-07-14T10:38:25","modified_gmt":"2015-07-14T09:38:25","slug":"live-code-keynote","status":"publish","type":"post","link":"https:\/\/www.celesteh.com\/blog\/2015\/07\/14\/live-code-keynote\/","title":{"rendered":"Live code keynote"},"content":{"rendered":"<p>Steven Tanimoto<\/p>\n<p>Why can&#8217;t computing be more like playing an instrument?<\/p>\n<p>Liveness in electrical circuits. How to replace a light switch: safely or write it hot! In computing, you can make the same kind of choices without risk of death.<\/p>\n<p>Live programming: modify a running protean without doing execution.<\/p>\n<p>Fortran was proposed on 1953. Programming was a long task. Make a flowchart, hand write out code, full out a form. Punch cards. Etc etc etc<\/p>\n<p>In 1963 Ivan Sutherland came up with an interactive graphical interface. Visual languages make use of graphics.<\/p>\n<p>Visual languages are discoverable via interactions.<\/p>\n<p>This seeks a closer interaction between program and programmer. Increase visibility. Reduce latency.<\/p>\n<p>Early graphics were non interactive. By the 70&#8217;s, diagrams were executable. In the 80\u2019s, the were responsive.<\/p>\n<p>Liveness hierarchy:<\/p>\n<p>1. Informative. Flowchart as description<br \/>\n2. Informative and significant. Executable flowchart<br \/>\n3. Responsive<br \/>\n4. Live<\/p>\n<p>The Data Factory<br \/>\nHis live language. All data e elements have a place. Data flows between them.<\/p>\n<p>Is a bit pd-like&#8230;<\/p>\n<p>Proposed extension to liveness hierarchy&#8230; When does execution respond to programming changes?<\/p>\n<p>Level 1: never<br \/>\nLevel 2: when commanded<br \/>\nLevel 3; upon any edit<br \/>\nLevel 4: immediately and continuously<\/p>\n<p>Level 5: predictive. The computer crashed alternative branches and the use selected the one they want.<br \/>\nLevel 6: the computer tries to guess entire program parts<\/p>\n<p>Gestural input for character input is level 5. And also how I am entering this post&#8230;<\/p>\n<p>Level 6. Strategically predictive liveness.<\/p>\n<p>Liveness is only useful if the program is executed straight away. Solutions: check syntax&nbsp; immediately. Secondary executions like just to headphones before out to main speakers.<\/p>\n<p>Q: should truly live programmes learn from and incorporate errors?<br \/>\nA: software engineering is about creating an artefact. Live coding is a performance.<\/p>\n<p>Q: could unit testing be used for predictive aliveness?<br \/>\nA: sound like a good PhD.<\/p>\n<p>Q: music is stateful and development is on some sense stateless.<br \/>\nA: programmers do not think of themselves in terms of performance, but programming involves cognitive states.<\/p>\n<p>Q: doors livened mean the same thing to us as it does to computer science? Or live coding is not live by some definitions.<br \/>\nA: mixing singing and coding does reduce distance between thought and output.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Steven Tanimoto Why can&#8217;t computing be more like playing an instrument? Liveness in electrical circuits. How to replace a light switch: safely or write it hot! In computing, you can make the same kind of choices without risk of death. Live programming: modify a running protean without doing execution. Fortran was proposed on 1953. Programming &hellip; <a href=\"https:\/\/www.celesteh.com\/blog\/2015\/07\/14\/live-code-keynote\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Live code keynote<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[1],"tags":[54,59],"class_list":["post-4522","post","type-post","status-publish","format-standard","hentry","category-uncategorised","tag-live-blog","tag-live-code"],"_links":{"self":[{"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/posts\/4522","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/comments?post=4522"}],"version-history":[{"count":1,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/posts\/4522\/revisions"}],"predecessor-version":[{"id":4523,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/posts\/4522\/revisions\/4523"}],"wp:attachment":[{"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/media?parent=4522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/categories?post=4522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.celesteh.com\/blog\/wp-json\/wp\/v2\/tags?post=4522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}