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 Exercises for Programmers

    Exercises for Programmers

    Brian P. Hogan · 2015

    One of the best ways to learn a programming language is to use it to solve problems. That's what this book is all about. Instead of questions rooted in theory, this book presents problems you'll encounter in everyday software development. Get sharp and stay sharp with more than fifty practice exercises rooted in real-world scenarios.

    Programming
    Open LibraryAmazon
    Stats for nerds
    6recommend
    14mentions
    10people
    2016–2025years
    64% recommend36% neutral

    Mentions per year

    2016201720182019202020212022202320242025

    What Hacker News says

    1. KerrickMar 2025
      Read books. Like, a lot of them.

      Start with Make It Stick (Brown et al.). Apply what this book teaches you to every one afterwards.

      Next, read and work through Exercises for Programmers (Hogan) and A Common Sense Guide to Data Structures and Algorithms (Wengrow).

      After you finish those two, read The Missing README (Riccomini et al.) and Extreme Programming Explained (Beck et al.). These two books provide very different viewpoints into the stuff that isn’t coding in a programming job.

      Assuming you’re using an OO language, follow that up with Object-Oriented Analysis and Design with Applications (Booch et al.) and Object Thinking. They contrast each other quite a bit; having both perspectives is handy.

      Once you’re through all those, I recommend Tidy First (Beck), Implementation Patterns (Beck), and Test-Driven Development By Example (Beck). These three books of his provide an incredibly accessible view into better ways to code.

      If you’re anything like me you get bored reading one book for too long. I’ve found that having a second book going that I can switch to is great for that. A parallel track with The Pattern On the Stone (Hillis), The Pragmatic Programmer (Thomas & Hunt), The Mythical Man-Month (Brooks), and How Computers Really Work (Justice) provides a reprieve and some technical and cultural context.

      thread
    2. cennyJan 2023
      The best way to learn a new stack for me is to go through the book Exercises for Programmers (https://www.programmingbooks.dev/#exercises-for-programmers).
      thread
    3. cennyAug 2022
      I found the book Exercises for Programmers (https://www.programmingbooks.dev/#exercises-for-programmers) to be invaluable to help learn new languages and frameworks. Beginners seem to appreciate it as well.

      It’s just an ordered collection of exercises that starts easy and builds up to more challenging ones. I can’t overstate the power of this simple book.

      thread
    4. cennyApr 2022
      `Explain the Cloud Like I’m 10` and `Exercises for Programmers` are two great books for beginners. I talk more about this exact subject here: https://www.programmingbooks.dev/articles/beginner
      thread
    5. cennyApr 2022
      Great resource!

      I agree TDD is a good way to learn a new language.

      One of my favorite books Exercises for Programmers (https://www.programmingbooks.dev/extra/#exercises-for-progra...) promotes this approach as well.

      thread
    6. modernerdNov 2019
      Read a lot of code. Pick one of the most popular libraries in a language you like and commit to reading it, understanding how it was architected, and tweaking it.

      Talk to other people who build “big systems”, whatever you decide that definition means. Ask them lots of questions. (Not the “Emacs or Vim?” kind. Instead: “When you wrote x, where did you start? How did you arrive at the solution you found? What would you change if you started again today?”)

      Build systems, big and small, on your own and with others.

      If you're not sure what to build, I like “Exercises for Programmers” by Brian Hogan:

      https://pragprog.com/book/bhwb/exercises-for-programmers

      The problems are still pretty trivial but a little larger in scope than most from https://exercism.io.

      Beyond that, I try to find videos or tutorials of people solving real-world problems. For example:

      Go: https://gophercises.com/, https://gowebexamples.com/, https://www.usegolang.com/, https://lets-go.alexedwards.net/, https://testwithgo.com/

      C/C++: https://handmadehero.org/

      Haskell: https://typeclasses.com/

      Mixed: https://howistart.org/

      Pair programming and live coding videos on YouTube can be worthwhile too.

      “Hacking with Andrew and Brad” is an example for Go: https://www.youtube.com/watch?v=yG-UaBJXZ80

      “Pair Programming with Jon Skeet” is another example: https://www.youtube.com/watch?v=zvz2omT9fzk

      You get to hear people talking through their thought process and learn how other people solve problems and structure solutions.

      The Twitch Science and Technology section is another place to find similar stuff:

      https://www.twitch.tv/directory/game/Programming

      I like Tsoding for functional programming:

      https://www.twitch.tv/tsoding

      And SerpentAI for Python/AI:

      https://www.twitch.tv/serpent_ai

      Watching people code can be dull or exciting depending on your mindset. I try to dip into these channels occasionally and soak up ideas from them, then go away and make things. I don't generally learn much without writing code too, and look for technical books and courses with exercises and problems.

      We need more of this, though. I wish there was a programming puzzle site full of problem statements of the type, “build an application that does x”, where solutions are ranked by the community and sorted by language. It would be such a helpful resource.

      thread

    Related

    Cover of The Practice of Programming
    2007–2026

    The Practice of Programming

    Brian W. Kernighan
    90 recommend · 184
    Cover of Code Complete
    2007–2026

    Code Complete

    Steve McConnell
    393 recommend · 894
    Cover of Learn to Program
    2007–2023

    Learn to Program

    Chris Pine
    33 recommend · 51
    Cover of The Pragmatic Programmer
    2007–2026

    The Pragmatic Programmer

    Andy Hunt
    353 recommend · 700
    Cover of How to Design Programs
    2007–2026

    How to Design Programs

    Matthias Felleisen
    277 recommend · 776
    Cover of The art of computer programming
    2007–2026

    The art of computer programming

    Donald Knuth
    336 recommend · 1,799
    Cover of The C Programming Language
    2007–2026

    The C Programming Language

    Brian W. Kernighan
    recommend · 604
    246
    Cover of Code
    2008–2026

    Code

    Charles Petzold
    243 recommend · 385