HACKER Q&A
📣 jamesgill

An approachable book on programming concepts/computer basics for a teen?


My teenage daughter is taking an 'intro to programming' class in high school, and the class is starting with Scratch/App Inventor to introduce concepts (algorithms, etc.).

To inspire her a bit, I'd like to supplement this with an easy, approachable print book (even a graphic novel-type) that would introduce her to fundamental concepts like algorithms and even basics of 'how computers work'. Caveat: she's not tech-averse, but has had very limited tech exposure (yes, really). Grateful for any suggestions.


  👤 agentcoder Accepted Answer ✓
Girls who code would be my top suggestion for her, otherwise The computer always wins - Elliot Lichtman, how computers really work - Matthew Justice.

👤 reliefcrew
https://mitpress.mit.edu/9780262560993/the-little-schemer/

She can play along on the computer by installing mit-scheme and placing the snippet below into ~/.scheme.init

   (define atom?
     (lambda (x)
       (and (not (pair? x)) (not (null? x)))))

   (define lat?
     (lambda (l)
       (cond
        ((null? l) #t)
        ((atom? (car l)) (lat? (cdr l)))
        (else #f))))

   (define member?
     (lambda (x l)
       (cond
        ((null? l) #f)
        ((eq? (car l) x) #t)
        (else (member? x (cdr l))))))

   (define mber?
     (lambda (a lat)
       (cond
        ((null? lat) #f)
        (else (or (eq? (car lat) a)
                  (mber? a (cdr lat)))))))