3 ms·
* How to Code: Simple Data and How to Code: Complex Data on edX. Taught by Gregor Kiczales, of Common Lisp and CLOS fame. Uses Racket and graphical programs to
by bmitc 5y ago
* How to Code: Simple Data and How to Code: Complex Data on edX. Taught by Gregor Kiczales, of Common Lisp and CLOS fame. Uses Racket and graphical programs to teach.
https://www.edx.org/course/how-to-code-simple-data https://www.edx.org/course/how-to-code-simple-data
https://www.edx.org/course/how-to-code-complex-data https://www.edx.org/course/how-to-code-complex-data
* The From Nand to Teris project, The Elements of Computing Systems: Building a Modern Computer from First Principles book, and/or Coursera course. Builds a hardware stack for a CPU and then a software stack (assembler, VM, high-level language).
https://www.nand2tetris.org/ https://www.nand2tetris.org/
https://www.coursera.org/learn/build-a-computer https://www.coursera.org/learn/build-a-computer
https://www.coursera.org/learn/nand2tetris2 https://www.coursera.org/learn/nand2tetris2
https://www.amazon.com/Elements-Computing-Systems-second-Principles-dp-0262539802/dp/0262539802/ https://www.amazon.com/Elements-Computing-Systems-second-Pri...
* The How to Design Programs book. What the edX course above is based upon.
https://htdp.org/ https://htdp.org/
https://www.amazon.com/How-Design-Programs-Introduction-Programming/dp/0262062186 https://www.amazon.com/How-Design-Programs-Introduction-Prog...
* Structure and Interpretation of Computer Programs (SICP). Uses Scheme. One can use Racket with the `#lang sicp` language.
https://mitpress.mit.edu/sites/default/files/sicp/index.html https://mitpress.mit.edu/sites/default/files/sicp/index.html
https://www.amazon.com/Structure-Interpretation-Computer-Programs-Engineering/dp/0262510871/ https://www.amazon.com/Structure-Interpretation-Computer-Pro...
YouTube playlist of the course by the authors: https://youtube.com/playlist?list=PLE18841CABEA24090 https://youtube.com/playlist?list=PLE18841CABEA24090
* Thinking as Computation: A First Course. Uses Prolog to solve problems of thinking.
https://www.amazon.com/Thinking-Computation-First-Course-Press/dp/0262534746/ https://www.amazon.com/Thinking-Computation-First-Course-Pre...
https://www.cs.toronto.edu/~hector/PublicTCSlides.pdf https://www.cs.toronto.edu/~hector/PublicTCSlides.pdf
* Turtle Geometry: The Computer as a Medium for Exploring Mathematics (shares an author with SICP). Uses Logo to explore turtle geometry/graphics. Can use any modern Logo implementation.
https://www.amazon.com/Turtle-Geometry-Mathematics-Artificial-Intelligence/dp/0262510375/ https://www.amazon.com/Turtle-Geometry-Mathematics-Artificia...
https://direct.mit.edu/books/book/4663/Turtle-GeometryThe-Computer-as-a-Medium-for https://direct.mit.edu/books/book/4663/Turtle-GeometryThe-Co...
* Starting Forth. Uses Forth.
https://www.forth.com/starting-forth/ https://www.forth.com/starting-forth/
https://www.amazon.com/Starting-Forth-Leo-Brodie-ebook/dp/B01MS7YDKD/ https://www.amazon.com/Starting-Forth-Leo-Brodie-ebook/dp/B0...
* Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction and also The Nature of Code: Simulating Natural Systems with Processing. Uses Processing and p5.js (the JavaScript version of Processing).
http://learningprocessing.com/ http://learningprocessing.com/
https://natureofcode.com/ https://natureofcode.com/
https://www.amazon.com/Learning-Processing-Beginners-Programming-Interaction/dp/0123944430/ https://www.amazon.com/Learning-Processing-Beginners-Program...
https://www.amazon.com/Nature-Code-Simulating-Natural-Processing/dp/0985930802/ https://www.amazon.com/Nature-Code-Simulating-Natural-Proces...
The author's YouTube channel: https://youtube.com/c/TheCodingTrain https://youtube.com/c/TheCodingTrain
https://processing.org/ https://processing.org/