The Nature of Code (2012)
natureofcode.com
natureofcode.com
1. VECTORS
2. FORCES
3. OSCILLATION
4. PARTICLE SYSTEMS
5. PHYSICS LIBRARIES
6. AUTONOMOUS AGENTS
7. CELLULAR AUTOMATA
8. FRACTALS
9. THE EVOLUTION OF CODE
10. NEURAL NETWORKS
a title "The Code of Nature" would also seem appropriate...https://news.ycombinator.com/from?site=natureofcode.com
Discussions with more than one comment:
- Release announcement: https://news.ycombinator.com/item?id=4709551
- https://news.ycombinator.com/item?id=6300510
- https://news.ycombinator.com/item?id=8060179
The Nature of Code - https://news.ycombinator.com/item?id=23157721 - May 2020 (1 comment)
The Nature of Code – evolutionary and emergent properties of nature in code - https://news.ycombinator.com/item?id=19632361 - April 2019 (8 comments)
Generative Coding – “The Nature of Code” Ported to Three.js - https://news.ycombinator.com/item?id=18122940 - Oct 2018 (12 comments)
The Nature of Code (2012) - https://news.ycombinator.com/item?id=14410201 - May 2017 (16 comments)
The Nature of Code: Simulating Natural Systems with Processing [video] - https://news.ycombinator.com/item?id=13295139 - Jan 2017 (1 comment)
The Nature of Code - https://news.ycombinator.com/item?id=8060179 - July 2014 (15 comments)
Basics of Neural Networks with example codes and illustrations - https://news.ycombinator.com/item?id=6300510 - Aug 2013 (29 comments)
* The Nature of Code free online book with live examples* - https://news.ycombinator.com/item?id=5153895 - Feb 2013 (2 comments)
Daniel Shiffman launches "The Nature of Code" online for free - https://news.ycombinator.com/item?id=4709551 - Oct 2012 (11 comments)
(map link-expander list-of-links)
I wonder what it looks like in Arc. Does HN keep any of its codebase public?FWIW, here's the Arc code I wrote to generate a string of the form "Italicized Title - https://news.ycombinator.com/item?id=$ID - Month Year (n comments)". The variable i stands for item, which is HN's term for a post (story, comment, or poll):
(def biblioref (i)
(let mon (monthdate (date i!time) 'short)
(tostring
(if (astorypoll i)
(do (pr "*" (subst i!title "*" "\\*") "* - " (fullurl:item-url i!id)
" - " mon" (" (plural i!klive "comment") ")"))
(do (pr (fullurl:item-url i!id))
(unless (is mon (monthdate (date) 'short))
(pr " (" mon ")")))))))
Not that elegant but maybe not too bad.Here's one I use to decide from a list of free-form submissions whether to generate a link or a Google search:
(fn [pair-of]
(let [text (get pair-of 1)]
(cond
(clojure.string/starts-with? text "http")
(list [:a {:href text} (truncate text 60)] [:br])
:else (list [:a {:href (str "https://google.com/search?q=" text)} text] [:br]))))
Doesn't always work but works often enough! ;)I implemented all of the book almost 10 years ago in Python and pygame. I was starting to code professionally back then and it is responsible for much of the confidence I needed. It definitely is more about nature and math than code. If you're the kind of hands on learner like I am, then I'd recommend using this as a resource to learn to code first before learning about theorectical data structures. Thanks to the author, I am now in a position to buy it :)
Teaching this way will actually motivate students to understand Science since they can program the evidence and convince themselves of the "Scientific Truth" of what they have studied.
When I first started programing, I was convinced that text applications weren't real programs, and the visual aspect of the book pulled me in to be a life-time programmer :)