• recursivedoubts 16 hours ago

    One thing that I think a lot of introductions are missing is an extremely simple first model of a Von Neumann style computer. I teach the undergrad computer systems class and two models I have found extremely useful are:

    - But How Do It Know/Scott CPU (https://www.youtube.com/watch?v=HeYAtkbHvuQ&list=PLYE0XunAbw...)

    - The Little Man Computer (https://www.youtube.com/watch?v=9AWN_ntHfPk)

    Especially these days, where the computer is more and more abstract from students experience, i think these tangible, visual tools are important for them to get a feel for what's going on at the lowest level of computation (at least in some sense)

    • manithree 16 hours ago

      I thought CARDIAC (https://en.wikipedia.org/wiki/CARDboard_Illustrative_Aid_to_...) was pretty cool when I was in high school. I still have a couple of them in a box somewhere.

      • grues-dinner 9 hours ago

        > High level languages have never been developed for CARDIAC as they would defeat one of the purposes of the device: to introduce concepts of assembly language programming.

        That might be the first time that's ever stopped people.

        • philomath_mn 14 hours ago

          Is there a commercially available version of this? Or a very simple mechanism / kit with a similar approach?

        • trash_cat 11 hours ago

          - But How Do It Know - Is an excellent book. I came quite far in re-creating the CPU using some logic game simulators. Highly recommend.

          • rramadass 14 hours ago

            You should also checkout Inside the Machine: An Illustrated Introduction to Microprocessors and Computer Architecture by Jon Stokes for a more real world introduction. - https://archive.org/details/inside-the-machine-an-illustrate...

          • samuelbalogh 15 hours ago

            A bit random plug - I made a flashcard site and generated flashcards based on this resource (because I want to learn computer architecture, among other tech topics)

            https://brightmind.space/app/en/topic/677e9b273de1c962084316...

            • nilsherzig 15 hours ago

              Wasn't the first rule of flash cards not to memorize things which you don't already understand? Generated (LLM?) flashcards might result in you missing out on the whole "understanding the text and breaking it down into flashcards" part of the process - which seems rather important.

              • samuelbalogh 15 hours ago

                Yes, it's meaningless if the topic is mostly unknown to the learner. But that's not the goal of flashcards - the goal is to first read the text, and then reinforce what you learned with bite-sized questions/answers.

                Everyone learns differently, I always found flashcards to be incredibly useful and entertaining.

              • bluechair 9 hours ago

                This almost guaranteed to be a waste of time for others, though, because you created them for yourself, perhaps less so for you.

                Learning isolated facts via flashcard give you the illusion of learning something. Most likely, when it comes time to apply it, it will not surface.

                • rramadass 14 hours ago

                  Michael Flynn is a legendary name in Computer Architecture; his taxonomy - https://en.wikipedia.org/wiki/Flynn%27s_taxonomy

                  His computer architecture book (listed here - https://news.ycombinator.com/item?id=42621236) is still one of the best focusing on principles and design and hence timeless. The language is succinct and very focused on explaining things. I have found it much better than many popular textbooks on computer architecture.

                  As an example, the submitted article is just 18 pages (pdf) and yet manages to highlight all the major points; a absolutely beautiful overview.

                • rramadass 2 days ago

                  A nice succinct overview of Computer Architecture. Also checkout Michael Flynn's books;

                  1) Computer Architecture: Pipelined and Parallel Processor Design.

                  2) Computer System Design: System-on-Chip coauthored with Wayne Luk.