top | item 47079558

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

1 points| jamesgill | 10 days ago

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.

4 comments

order

reliefcrew|10 days ago

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

She can play along on the computer by installing mit-scheme (http://www.gnu.org/software/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)))))))

gus_massa|9 days ago

Not a book, but she can try the free cuses in https://www.datacamp.com/ I recommend to start with Python and later switch to Scheme when she get enlightened.

Which programming languages are you using? Sometimes it's better to if someone at home can help with the setup and early debugging.

agentcoder|10 days ago

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

jamesgill|10 days ago

Ah, The Computer Always Wins looks great. She loves puzzles, etc.