{"id":631,"date":"2012-03-31T18:42:59","date_gmt":"2012-03-31T17:42:59","guid":{"rendered":"http:\/\/blogs.kent.ac.uk\/mik\/?p=631"},"modified":"2020-05-15T15:46:55","modified_gmt":"2020-05-15T15:46:55","slug":"joc-25","status":"publish","type":"post","link":"https:\/\/blogs.kcl.ac.uk\/proged\/2012\/03\/31\/joc-25\/","title":{"rendered":"JoC #25: Dealing with errors"},"content":{"rendered":"<p><em>\u00a0 \u00a0 \u00a0 We learn wisdom from failure much more than from success. We often discover <\/em><br \/>\n<em>\u00a0 \u00a0 \u00a0 what will do, by finding out what will not do; and probably he who never made a <\/em><br \/>\n<em>\u00a0 \u00a0 \u00a0 mistake never made a discovery.<\/em><br \/>\n<em>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u2014 Samuel Smiles<\/em><\/p>\n<p>We&#8217;re talking about errors today. I&#8217;m sure you all have \u2013 like me \u2013 got your fair share of errors when you were programming. I&#8217;ll talk a bit about how to go about investigating what went wrong when you get an error.<\/p>\n<p>In doing this, we&#8217;re discussing the important distinction of synax errors and semantic errors, and we&#8217;re learning to deal with both. This includes reading stack traces.<\/p>\n<p><iframe loading=\"lazy\" title=\"The Joy of Code #25: Dealing with errors\" width=\"584\" height=\"329\" src=\"https:\/\/www.youtube.com\/embed\/3T00huOsD6w?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p style=\"text-align: right\"><a href=\"http:\/\/www.greenfoot.org\/static\/joc\/mov\/JOC-25.mov\">Download video<\/a><\/p>\n<p><strong>Concepts discussed<\/strong>: <em>syntax errors, runtime errors, stack trace, exception<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0 \u00a0 \u00a0 We learn wisdom from failure much more than from success. We often discover \u00a0 \u00a0 \u00a0 what will do, by finding out what will not do; and probably he who never made a \u00a0 \u00a0 \u00a0 mistake &hellip; <a href=\"https:\/\/blogs.kcl.ac.uk\/proged\/2012\/03\/31\/joc-25\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":179,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,6],"tags":[46],"class_list":["post-631","post","type-post","status-publish","format-standard","hentry","category-greenfoot-software-tools","category-joy-of-code","tag-error"],"_links":{"self":[{"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/posts\/631","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/users\/179"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/comments?post=631"}],"version-history":[{"count":1,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/posts\/631\/revisions"}],"predecessor-version":[{"id":1087,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/posts\/631\/revisions\/1087"}],"wp:attachment":[{"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/media?parent=631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/categories?post=631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.kcl.ac.uk\/proged\/wp-json\/wp\/v2\/tags?post=631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}