Hi r/scheme, my little brother (11) is interested in programming. Since he doesn’t know what he wants to make yet, I feel like scheme could be a good first language to learn the basics, paired with “The Little Schemer”, a book I worked through when I was younger that I feel like he’d like and would teach him some solid CS foundations. Any input on this?

    • afmoreno@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 months ago

      There is Smalltalk (Pharo), Erlang/Elixir, Haskell, and Forth. Each uses very interesting and distinct ideas that are a joy.

      My heart is with Lisp but looking with other languages is fun every once in a while.

      • mifa201@alien.topB
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        Scheme was my first general programming language and was a pleasure to learn CS concepts with, admittedly I was much older though.

        Don’t want to hijack the thread, being a Scheme fan myself. But I second Smalltalk (Pharo or Squeak) as an alternative to consider in case Scheme is discarded for some reason. It shares many characteristics with Scheme/Racket, like a minimal, elegant syntax, user-friendly IDE and was also created for educational purposes.

        Advantage of Scheme is that you usually get exposed to different programming paradigms, whereas Smalltalk is OOP. But basic functional concepts like lambda (blocks in Smalltalk parlance), map (collect:), filter (select:), fold (reduce:) etc. also play an important role in the language. In Scheme you apply functions to arguments, in Smalltalk you send messages to objects. Two beautiful, powerful approaches easy to learn.

        One thing to consider is appropriate literature. For Racket there is also “Realm of Racket”, never read it, but could be worth a look, specially due to its focus on games. I started with SICP, best CS book I’ve ever read, but definitely not for that age. Regarding Smalltalk, no idea, I learned it by doing (daily job) and reading the docs, but for sure there are good books available, giving its age and early focus on education.