{"id":31433,"date":"2019-01-26T09:42:29","date_gmt":"2019-01-26T15:42:29","guid":{"rendered":"https:\/\/gregladen.com\/blog\/?p=31433"},"modified":"2019-02-14T19:23:50","modified_gmt":"2019-02-15T01:23:50","slug":"impractical-python-programming-for-fun","status":"publish","type":"post","link":"https:\/\/gregladen.com\/blog\/2019\/01\/26\/impractical-python-programming-for-fun\/","title":{"rendered":"Impractical Python Programming For Fun"},"content":{"rendered":"<p>Project oriented programming books, books that help you develop actual working programs while you learn to program, are the thing, and the new <a target=\"_blank\" href=\"https:\/\/www.amazon.com\/gp\/product\/159327890X\/ref=as_li_tl?ie=UTF8&#038;camp=1789&#038;creative=9325&#038;creativeASIN=159327890X&#038;linkCode=as2&#038;tag=grlasbl0a-20&#038;linkId=64e199cc242018594d7987b51467187d\">Impractical Python Projects: Playful Programming Activities to Make You Smarter<\/a><img loading=\"lazy\" decoding=\"async\" src=\"\/\/ir-na.amazon-adsystem.com\/e\/ir?t=grlasbl0a-20&#038;l=am2&#038;o=1&#038;a=159327890X\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\" \/> is an excellent example.<!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"31435\" data-permalink=\"https:\/\/gregladen.com\/blog\/2019\/01\/26\/impractical-python-programming-for-fun\/51bbamvwj6l-_sx375_bo1204203200_\/\" data-orig-file=\"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?fit=377%2C499&amp;ssl=1\" data-orig-size=\"377,499\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"51bbaMvwj6L._SX375_BO1,204,203,200_\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?fit=227%2C300&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?fit=377%2C499&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?resize=377%2C499\" alt=\"\" width=\"377\" height=\"499\" class=\"alignright size-full wp-image-31435\" srcset=\"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?w=377&amp;ssl=1 377w, https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/51bbaMvwj6L._SX375_BO1204203200_.jpg?resize=227%2C300&amp;ssl=1 227w\" sizes=\"(max-width: 377px) 100vw, 377px\" data-recalc-dims=\"1\" \/>Knowing how the elements of a program work is fine and dandy, but applying programming concepts to the real world is where the rubber of code meets the reality of &#8230; running code, I guess.  <a target=\"_blank\" href=\"https:\/\/www.amazon.com\/gp\/product\/159327890X\/ref=as_li_tl?ie=UTF8&#038;camp=1789&#038;creative=9325&#038;creativeASIN=159327890X&#038;linkCode=as2&#038;tag=grlasbl0a-20&#038;linkId=64e199cc242018594d7987b51467187d\">Impractical Python Projects: Playful Programming Activities to Make You Smarter<\/a><img loading=\"lazy\" decoding=\"async\" src=\"\/\/ir-na.amazon-adsystem.com\/e\/ir?t=grlasbl0a-20&#038;l=am2&#038;o=1&#038;a=159327890X\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\" \/> is full of code examples, and they are said to be impractical, but really, that depends on why you even use computers. For example, one might want to breed rodents of unusual size, or come up with an anagram suitable for a Dark Wizard.  Even more useful is calculating the odds of detecting alien civilizations (I for one welcome our hypothetical overlords from elsewhere in the universe). Make a python programmed volcano for your next science project. Seriously, that&#8217;s not a bad idea for the kiddo&#8230;<\/p>\n<p>To give you an idea, here are the chapters:<\/p>\n<p>Chapter 1: Silly Name Generator<br \/>\nChapter 2: Finding Palingram Spells<br \/>\nChapter 3: Solving Anagrams<br \/>\nChapter 4: Decoding American Civil War Ciphers<br \/>\nChapter 5: Encoding English Civil War Ciphers<br \/>\nChapter 6: Writing in Invisible Ink<br \/>\nChapter 7: Breeding Giant Rats with Genetic Algorithms<br \/>\nChapter 8: Counting Syllables for Haiku Poetry<br \/>\nChapter 9: Writing Haiku with Markov Chain Analysis<br \/>\nChapter 10: Are We Alone? Exploring the Fermi Paradox<br \/>\nChapter 11: The Monty Hall Problem<br \/>\nChapter 12: Securing your Nest Egg<br \/>\nChapter 13: Simulating an Alien Volcano<br \/>\nChapter 14: Mapping Mars with the Mars Orbiter<br \/>\nChapter 15: Improving Your Astrophotography with Planet Stacking<br \/>\nChapter 16: Finding Frauds with Benford&#8217;s Law<\/p>\n<p>This book does something else, that not too many coding instruction books do. The author, Lee Vaughan, builds small projects that work, then applies python based methods to analyze the code, showing how the original project had problems of one kind or another, then builds them again. The results are surprising, even spectacular, and very instructive.<\/p>\n<p>The book does assume a basic knowledge of how python works, but that is not hard to get from any of <a href=\"https:\/\/gregladen.com\/blog\/?s=python\">several other books<\/a>, or on line. Rather than being an introductory text, Vaughan&#8217;s project pushes you in interesting directions for solving a diverse set of problems.  Most of these &#8220;impractical&#8221; projects, while themselves being not so useless after all (there are those of us that need to produce or evaluate anagrams now and then, for example) will have parallels to real life projects.  For example, the exploration of the Fermi Paradox and Drake Equation can serve as a template for a wide range of simulations, and the section on Benford&#8217;s law can, well, help you cheat better on your taxes!<\/p>\n<p>This is just plain a fun book, and it is useful, not impractical.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Project oriented programming books, books that help you develop actual working programs while you learn to program, are the thing, and the new Impractical Python Projects: Playful Programming Activities to Make You Smarter is an excellent example.<\/p>\n","protected":false},"author":1,"featured_media":31434,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5028],"tags":[975,974,976,57],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/gregladen.com\/blog\/wp-content\/uploads\/2019\/01\/ImpracticalPythonProjectgs.png?fit=536%2C337&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p5fhV1-8aZ","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/posts\/31433"}],"collection":[{"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/comments?post=31433"}],"version-history":[{"count":3,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/posts\/31433\/revisions"}],"predecessor-version":[{"id":31586,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/posts\/31433\/revisions\/31586"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/media\/31434"}],"wp:attachment":[{"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/media?parent=31433"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/categories?post=31433"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gregladen.com\/blog\/wp-json\/wp\/v2\/tags?post=31433"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}