aalok thakkar: introduction to computer science

spring 2025: cs-1102-1

Source: XKCD. As you learn concepts in this course, you can
technically claim that you trained a neural network to do ICS for you.

Resources and Reading Materials:


Pre-course Reading:
  1. Raymond Smullyan. What is the Name of this Book? Prentice Hall, 1978.
  2. V. Krishnamurthy, C. R. Pranesachar, K. N. Ranganathan, and B. J. Venkatachala. Challenge and Thrill of Pre-College Mathematics. New Age International, 2020.
  3. Aditya Y. Bhargava. Grokking Algorithms. Manning Publications, 2016.
Tools, Software, and Languages:
  1. Install OCaml.
  2. OCaml Language Reference.
  3. mypy 1.13.0 documentation.
  4. Set up Visual Studio Code.
Text-books:
  1. Yaron Minsky, and Anil Madhavapeddy. Real World OCaml. Cambridge University Press, 2022.
  2. Michael R. Clarkson. OCaml Programming: Correct + Efficient + Beautiful, 2021.
Other Media:
  1. Radiolab on Linguistic Relativity: Why Isn't the Sky Blue?
  2. John Backus. Can programming be liberated from the von Neumann style?, 1978.
  3. Jane Street. Types, and Why You Should Care. 2018.
  4. Michael R. Clarkson. OCaml Programming: Correct + Efficient + Beautiful (YouTube Playlist), 2020.