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 Computer architecture

    Computer architecture

    Caxton C. Foster · 1970

    Systems & OS
    Open LibraryAmazon
    Stats for nerds
    5recommend
    7mentions
    7people
    2018–2026years
    71% recommend14% neutral14% critical

    Mentions per year

    201820192020202120222023202420252026

    What Hacker News says

    1. skydhashMar 2026
      I'm not a professional embedded engineer, but I do hack around it. Some books I collected:

      - Applied Embedded Electronics: Design Essentials for Robust Systems by J. Twomey. It goes over the whole process making a device and what knowledge would be required for each. Making Embedded Systems, 2nd Edition by E. White is a nice complement.

      - Embedded System Interfacing by M. Wolf describes the signals and protocols behind everything. It's not necessary as a book, but can help understand the datasheets and standards

      - But you want to start with something like Computer Architecture by C. Fox or Write Great Code - Volume 1 - Understanding the Machine, 2nd Edition by R. Hyde. There are better textbooks out there, but those are nice introductions to the binary world.

      The gist is that you don't have a lot of memory and CPU power (If you do, adapting Linux is a more practical option unless it's not suited for another reason). So all the nice abstractions provided by an OS is a no go, so you need to take care of the hardware and those are really finicky,

      thread
    2. bakuninsbartJun 2022
      For a blow of the past for younger people I can really recommend Tanenbaum's Computer Architecture. Great book for understanding how a computer works, and the practical example he gives really illuminate well how far we've come!
      thread
    3. billfruitMar 2020
      Computer Architecture: Concepts and Evolution by Fred Brooks, Etc is a comprehensive look into the evolution of computer architecture.
      thread
    4. charlyslFeb 2020
      It is a great reference, but, IMHO, there are some alternatives that I prefer:

      Programming: I would instead prefer the combo "How To Program", don't be fooled by the name, this course is the business (which will give you a rock solid foundation in systematic program design, TDD, clean coding and recursion, but most importantly, you will understand exactly why you should design your data abstractions first, because they will structure your functions), followed by "Software Construction in Java", which will give you a rock solid and principled software engineering foundation (writing industrial strength tests, specs, ADTs, mutability, grammars, concurrency, the works). Both are free in edx (also check out the latter's ocw version, 6.005). As a bonus, check out Daniel Jackson's approach to software design in ocw's 6.005 from 2008, and how he explains three approaches to software design (state machines, functional and relational/OO). The best and most systematic explanation that I know of how to properly use the much maligned Design Patterns, and a very useful in practice design technique called JSP (although the course is in Java, all the design techniques are universal, this JSP stands for "Jackson Structured Programming").

      Computer Architecture: the MIT combo "Computation Structures" (on edx) and "Computer System Engineering" (on ocw and youtube) will teach you systems design all the way from atoms to the whole internet. Great instructors.

      Algorithms and Data Structures: again from MIT, on OCW (as 6.006, with videos, recitations and assignments in Python), a good balance between theory and practice. The dark horse here is the TA Victor Costan, who won several European level coding competitions as a kid, and will teach you algorithm design in practice. Eric Demain's lectures on Dynamic Programming should become the reference, his "5 steps" approach is amazing.

      Operating Systems: mit's 6.828, from 2011 (has videos for all lectures). You will have to read and understand all 10.000 lines of code of an old Unix (with support from the lectures), and write a large portion of you own OS.

      Databases: I would have a look at CMU's inspiring Andy Pavlo course (on youtube), just watch his intro lecture from 2018 to get a taste. Also have a look MIT's 6.813 from 2014 (some vids), created by Stonebraker, with substantial assignments based on SimpleDB (in Java, if you prefer it over CMU's C++).

      Distributed Systems: MIT's 2015 6.824, by Morris (of the worm). Great text notes, and many lectures on youtube. Assignments in Go, where you will implement your own Raft and a distributed key-value store.

      Some extras:

      Cryptography: Paar's explanations on youtube are crystal clear.

      Data Science: Berkeley's Data8 (2016, may seem basic, but the instructor is amazing and you will learn how to look at data), followed by Data100 (summer 2019, more technical, with Python tools on Jupyter galore). Will give you good intuition if you don't know much stats, and to really worry about your data samples (bias!) (garbage in, garbage out, not sure if this cliche is ever mentioned in these courses, but you will understand exactly how or why, and how to avoid it, or, at the very least, to tune your BS detector).

      etc

      thread
    5. lvoudourMar 2018
      I read both Computer Architecture and Computer Organization and Design in college and I really enjoyed them.

      I would recommend COaD to any beginner who wants to learn some basic concepts of computer design (and if working with FPGAs why not build one).

      CA deals with more advanced concepts but doesn't overwhelm you with math and circuit theory (as you noted) so it's a natural progression (from COaD). I think something more advanced and "hard science" should be part of a post-graduate curriculum

      thread
    6. cbHXBY1DMar 2018
      I strongly prefer Computer Organization and Design over their Computer Architecture book. I had to read both while at Berkeley. I've considered picking up the new RISC-V edition of the former but I can't justify spending that kind of money when RISC-V is so similar to MIPS. Could be a fun bit of history if RISC-V ever takes over :-)
      thread

    Related

    Cover of Computation structures
    2010–2026

    Computation structures

    Stephen A. Ward
    8 recommend · 15
    Cover of The design and implementation of the 4.4BSD operating system
    2010–2026

    The design and implementation of the 4.4BSD operating system

    Marshall Kirk McKusick
    4 recommend · 10
    Cover of Structured Computer Organization
    2008–2024

    Structured Computer Organization

    Andrew S. Tanenbaum
    21 recommend · 34
    Cover of Computer organization and design
    2008–2026

    Computer organization and design

    David A. Patterson
    50 recommend · 101
    Cover of Computer system architecture
    2013–2023

    Computer system architecture

    M. Morris Mano
    6 recommend · 7
    Cover of Engineering a compiler
    2007–2026

    Engineering a compiler

    Keith D. Cooper
    39 recommend · 91
    Cover of Computer systems
    2009–2026

    Computer systems

    Randal Bryant
    67 recommend · 110
    Cover of The UNIX programming environment
    2007–2026

    The UNIX programming environment

    Brian W. Kernighan
    86 recommend · 215