{"id":48117,"date":"2012-02-26T20:25:00","date_gmt":"2012-02-26T18:25:00","guid":{"rendered":"http:\/\/www.martin-koser.de\/BMID\/2012\/02\/pinboard-bookmarks-for-february-26th\/"},"modified":"2012-02-26T20:25:00","modified_gmt":"2012-02-26T18:25:00","slug":"pinboard-bookmarks-for-february-26th","status":"publish","type":"post","link":"http:\/\/www.martin-koser.de\/BMID\/2012\/02\/pinboard-bookmarks-for-february-26th\/","title":{"rendered":"Pinboard bookmarks for February 26th"},"content":{"rendered":"<p>Pinboard links for February 26th, syndicated automagically:<\/p>\n<ul>\n<li><a href=\"http:\/\/people.csail.mit.edu\/pgbovine\/python\/tutor.html#mode=edit\">Online Python Tutor<\/a> &#8211; This application supports the core Python 2.5 language, with no module imports or file I\/O. It&#039;s meant to be used as a platform for creating programming tutorials, not for running or debugging production code.<\/li>\n<li><a href=\"http:\/\/software-carpentry.org\/4_0\/oop\/\">Software Carpentry &raquo; Classes and Objects<\/a> &#8211; Classes and Objects<br \/>\nObject-oriented programming in Python.<br \/>\nRequires:&nbsp;Python<br \/>\nIntroduces:&nbsp;Python objects and classes<\/p>\n<p>Motivating questions:<\/p>\n<p>I have a complex program which has lots of duplicated code, is there any way to simplify it?<br \/>\nHow do I change the behavior of one part of my program without affecting the rest of it?<\/li>\n<li><a href=\"http:\/\/code.google.com\/intl\/de-DE\/edu\/languages\/google-python-class\/exercises\/basic.html\">Basic Python Exercises &#8211; Google&#8217;s Python Class &#8211; Google Code<\/a> &#8211; There are 3 exercises that go with the first sections of Google&#039;s Python class. They are located in the &quot;basic&quot; directory within the google-python-exercises directory. Download the google-python-exercises.zip if you have not already (see the Set-Up page for details).<br \/>\nstring1.py &#8212; complete the string functions in string1.py, based on the material in the Python Strings section (additional exercises available in string2.py)<br \/>\nlist1.py &#8212; complete the list functions in list1.py, based on the material in the Python Lists and Python Sorting sections (additional exercises available in list2.py)<br \/>\nwordcount.py &#8212; this larger, summary exercise in wordcount.py combines all the basic Python material in the above sections plus Python Dicts and Files (a second exercise is available in mimic.py)<br \/>\nWith all the exercises, you can take a look at our solution code inside the solution subdirectory.<\/li>\n<li><a href=\"http:\/\/code.google.com\/intl\/de-DE\/edu\/languages\/google-python-class\/introduction.html\">Python Introduction &#8211; Google&#8217;s Python Class &#8211; Google Code<\/a> &#8211; Python is a dynamic, interpreted language. Source code does not declare the types of variables or parameters or methods. This makes the code short and flexible, and you lose the compile-time type checking in the source code. Python tracks the types of all values at runtime and flags code that does not make sense as it runs. (todo: link here to the companion video segment for this section)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Pinboard links for February 26th, syndicated automagically: Online Python Tutor &#8211; This application supports the core Python 2.5 language, with no module imports or file I\/O. It&#039;s meant to be used as a platform for creating programming tutorials, not for running or debugging production code. Software Carpentry &raquo; Classes and Objects &#8211; Classes and Objects [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[456,165,755,901,663,745,742,475,485],"_links":{"self":[{"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/posts\/48117"}],"collection":[{"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/comments?post=48117"}],"version-history":[{"count":0,"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/posts\/48117\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/media?parent=48117"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/categories?post=48117"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.martin-koser.de\/BMID\/wp-json\/wp\/v2\/tags?post=48117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}