←back to thread

165 points chbkall | 2 comments | | HN request time: 0.461s | source
Show context
WillAdams ◴[] No.44472014[source]
I've been re-learning CS (programmed as a kid, then missed getting a minor in CS in college after the service by one 300-level course which wasn't being re-offered when I needed it) and then just did (La)TeX and AppleScript for my day job, but am now trying to create a tool for CNC which is quite different from those which have existed previously, and one thing which has helped a lot is MIT OCW:

- the Python courses got me up-to-speed on the basics of that language: https://ocw.mit.edu/courses/6-0001-introduction-to-computer-... and https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-pr...

- Structure and Interpretation of Computer Programs served as a disciplined review of a book which I wasn't patient enough to do the exercises of when I first read it: https://ocw.mit.edu/courses/6-001-structure-and-interpretati...

- Mathematics for Computer Science helped make up for my spotty math: https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-...

I've also found the recent book:

https://www.goodreads.com/book/show/39996759-a-philosophy-of...

very helpful (first reading I did one chapter at a time, re-writing my current project applying the principles of that chapter) --- interesting video overview at:

https://www.youtube.com/watch?v=bmSAYlu0NcY

If one is fortunate, there are videos on specific subjects/algorithms which one needs, e.g.,

https://www.youtube.com/watch?v=jvPPXbo87ds

replies(1): >>44472197 #
chbkall ◴[] No.44472197[source]
Thank you for sharing these valuable resources. I am already on to the OCW Python course and SICP textbook.

How did you start on these resources? Did you start reading them because you needed them in your current project Or did you read them because you thought they will be useful for your project?

replies(2): >>44472504 #>>44474171 #
1. anthk ◴[] No.44474171[source]
Also, install chicken as the scheme interpreter, but do the classical SICP.

After you got it installed, run:

    chicken-install srfi-203
    chicken-install srfi-216

then, edit a text file called ~/.csirc with the contents:

(import scheme) (import (srfi 203)) (import (srfi 216))

replies(1): >>44474484 #
2. e12e ◴[] No.44474484[source]
I thought racket had a #lang for sicp?

https://docs.racket-lang.org/sicp-manual/SICP_Language.html