Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Think Python

    Think Python

    Allen B. Downey, Allen Downey · 2009

    If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language one step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. Through exercises in each chapter, you’ll try out programming concepts as you learn them. Think Python is ideal for students at the high school or college level, as well as self-learners, home-schooled students, and professionals who need to learn programming basics.

    ProgrammingComputer Science
    Open LibraryAmazon
    Stats for nerds
    15recommend
    29mentions
    22people
    2008–2025years
    72% recommend24% neutral3% critical

    Mentions per year

    2008201020122014201620182020202220242025

    What Hacker News says

    1. jonjackyNov 2022
      Seconding Alan Downey's Think Python. The current online version is here:

      https://greenteapress.com/wp/think-python-2e/

      For code examples, I like Peter Norvig's pytudes:

      https://github.com/norvig/pytudes

      thread
    2. itsoktocrySep 2022
      Some of Allen Downey's books are free.

      Here's Think Python (How to Think Like a Computer Scientist):

      https://www.greenteapress.com/thinkpython/thinkpython.pdf

      thread
    3. randcrawDec 2021
      "Foundations of Computer Science" by Aho and Ullman might fit your bill. Its focus is more on the concepts and principles of computing rather than math-centric CS theory. http://infolab.stanford.edu/~ullman/focs.html

      Another nontraditional intro to computing worth mentioning is "Structure and Interpretation of Computer Programs" by Abelson and Sussman(s). It teaches programming concepts using the Lisp/Scheme language (seldom used any more), but does so brilliantly.

      "Think Python: How to Think Like a Computer Scientist" by Downey might provide the right mix of computing concepts and programming practice.

      If you do want a traditional intro to CS theory, two books that cover that topic well are: "Introduction to the Theory of Computation" by Sipser, and "Introduction to Automata Theory, Languages, and Computation" by Hopcroft, Motwani, and Ullman.

      Three very good books that introduce algorithms are: "Introduction to Algorithms: A Creative Approach" by Manber, "The Algorithm Design Manual" by Skiena, and "Algorithms" by Sedgewick and Wayne.

      Remember that CS theory doesn't age, so buying a used early edition of a textbook should serve your needs just as well as an new up-to-date edition.

      thread
    4. jonjackyDec 2021
      Algorithmics by David Harel is not much mentioned anymore, but it's really good if you can find it. An easy and inviting read, it was written as a popular book not a textbook but nevertheless covers many topics with very thorough and clear explanations, and also touches on history and culture. I recall there were several versions with different titles - Algorithmics: The Soul of Computing was, I think, a cut-down version.

      Seconding Petzold's Code for hardware and low-level programming. Also seconding Downey's Think Python (which has appeared in several versions with different titles). It is an easy read but is a bit deeper than many introduction to Python books.

      Also seconding Wirth's Algorithms + Data Structures = Programs but it requires a lot more concentration and study than the previous suggestions. It is also old-fashioned, from the late 1970s I think, uses Pascal as its programming language. It teaches and celebrates a rigorous, economical programming method and coding style which is not much in vogue any more.

      thread
    5. K0SM0SApr 2020
      It's used in the book Think Python by Allen Downey.

      https://greenteapress.com/wp/think-python-2e/

      (Case Study: interface design http://greenteapress.com/thinkpython2/html/thinkpython2005.h...)

      The book is very good for first-time learners IMHO.

      thread
    6. jmmcdOct 2019
      Think Python, Think Complexity, and Think Statistics are all really excellent. Downey is an artist of CS pedagogy.
      thread

    Related

    Cover of Think Complexity
    2012–2026

    Think Complexity

    Allen B. Downey
    11 recommend · 19
    Cover of How to think like a computer scientist
    2008–2026

    How to think like a computer scientist

    Allen B. Downey
    16 recommend · 23
    Think DSPAllen B. Downey
    2018–2026

    Think DSP

    Allen B. Downey
    5 recommend · 9
    Cover of Think Stats
    2011–2026

    Think Stats

    Allen B. Downey
    27 recommend · 49
    Cover of Computer
    2012–2022

    Computer

    Martin Campbell-Kelly
    3 recommend · 4
    Cover of Think Bayes
    2012–2026

    Think Bayes

    Allen B. Downey
    37 recommend · 50
    Cover of Learn Python the Hard Way
    2010–2026

    Learn Python the Hard Way

    Zed Shaw
    246 recommend · 489
    Cover of Effective Python
    2012–2026

    Effective Python

    Brett Slatkin
    22 recommend · 45