The Nature of Code (2nd Edition)
natureofcode.com
natureofcode.com
The youtube videos are amazing and also love the book and its presentation! Thank you for putting out such genuinely feel good and positive content.
Fantastic work and way of teaching.
I hope this version goes as well as the first edition! You deserve that.
I teach creative coding to kids at a local library, and when the parents ask me what else their kids can do to learn to code, I always tell them to check out your videos on YouTube.
You’re also a celebrity in my household as I have your videos running on the TV in the background while I prepare the kids’ breakfasts on Sunday morning.
I’ve pre-ordered the new book on Amazon!
[0]: https://twitter.com/shiffman/status/1781689870466916655
[1]: https://github.com/nature-of-code/noc-book-2
[2]: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
I built a similar alife simulation but as a Quake 2 mod using the monsters as the agents and plants and stuff with neural nets and genetic algorithms. My piece was titled "Ecosystem: Constructing a simple self-perpetuating society of adaptable agents" [1].
This was 2003, not for school but for fun. I submitted it for an ai writing comp on ai-depot.com but the comp failed for lack of entries. I have some pics on a repo backup of the project [2].
Agreed, "nature of code" looks like fun!
[1]: https://web.archive.org/web/20080624004102/http://www.ict.sw...
[2]: https://github.com/Jason2Brownlee/HumanDebrisArchive?tab=rea...
Very excited to own a physical copy of this new edition to always warmly look back on! :)
I love watching and working through The Coding Train videos! One reason why I haven't gone deep into creative coding is I don't know where I'll use it.
Creative coding is everywhere these days. From the parametric architecture of Zaha Hadid and MAD architects to procedurally generated furniture designs and jewelry. https://n-e-r-v-o-u-s.com/projects/
Between semesters I watched some of his search algorithm videos, including his two part A* videos, and recreated it. When semester started I took a classical AI course and the first assignment was search algorithms. And my goodness was it helpful.
Although OOP is going out of style, I think learning it is super important to understand how you can use layers of abstraction to build increasingly complex programs.
This guy is funny, knowledgeable and not full of himself (unlike others in our industry)
Learned a ton from Daniel when I was starting out
As a philosopher with only a bit of programming background (and previously no javascript), this was very helpful for getting some simulations online in a format easy for my students and others to play around with:
https://mikedeigan.com/the-cursor/posts/2022/skyrmsian-signa...
Even if you are an advanced programmer, there's something magical about Dan's style and his ability to explain concepts in a simple way. Also perfect to get kids started in programming.
The book is available for free online, but if you can afford, it's a great addition to your (physical) bookshelf.
[1] https://www.kickstarter.com/projects/shiffman/the-nature-of-...
Wikipedia : https://en.wikipedia.org/wiki/Braitenberg_vehicle
Some Videos:
I may be nitpicking, but any teaching material with JavaScript poor coding practices can hurt both humans and LLMs.
1. When you don't reassign a variable it's a `const`
2. for (let i = 0; i < total; i++) { randomCounts[i] = 0; } is `new Array(total).fill(0)`
etc.
I don’t understand why people need const to be something it’s not. The fact that you can still mutate objects is because in js, an object assigned to a variable is best thought of as a pointer to a value in the heap. const means the variable won’t reassign the reference, Object.freeze means the referenced data can’t change. Both useful, both different use cases; needn’t be conflated.
Programming languages are formal. Otherwise you're talking about programming prompts for a LLM. And the resulting program may vary.
The book website shows a beautiful hardback copy of the book, is this real? Are there plans to do a printrun? (I can't find anything on the website mentioning it aside from the picture)