# The books r/embedded keeps recommending

I counted the books named in 562 r/embedded threads about reading, from 2011 to October 2026. One title leads by a wide margin, more than half the mentions go to books that are not about embedded, and some of the most recommended resources are not books.

- Author: Michael Mikus (https://mikus.io/about/)
- Published: 2026-10-04
- Category: Engineering
- Web page: https://mikus.io/blog/books-embedded-engineers-recommend/

> The idea: Making Embedded Systems is the closest thing the field has to a shared first book: it comes up in more than one in four threads that recommend any book. Around it, the reading list leans on electronics, C, and books written for one specific chip.

"What book should I read?" is one of the most common questions on [r/embedded](https://www.reddit.com/r/embedded/). It gets asked by students, by software developers moving closer to the hardware, and by electrical engineers who want to write better firmware. The answers are scattered across hundreds of threads, so I collected them and counted.

The short version: one book is named far more often than any other, the rest of the list is surprisingly wide, and the community's taste has been shifting toward hardware.

## How I counted

Reddit's own site refuses automated requests like mine, so I used the [Arctic Shift](https://arctic-shift.photon-reddit.com/) archive of public Reddit posts and comments. From it I took every r/embedded post that mentions books and kept the threads with at least three comments where either the title talks about books or the title asks for learning resources and the post itself mentions books.

That left **562 threads** from August 2011 to 2 October 2026, with **7,502 comments by 3,233 different people**.

I then matched the comments against a list of 92 titles, built from the books people actually link to and name in these threads. For each title I matched the author's name and the distinctive part of the title. Titles that also read as ordinary phrases, like "Clean Code" or "Programming Embedded Systems", only counted when written as a title or in a comment that also says "book". I checked samples of the matches by hand and tightened the patterns where they caught the wrong thing, such as "Effective C" matching "Effective C++", or mentions of an author's podcast or video course instead of their book.

A **mention** below means one person naming a book in one thread. Someone who repeats a title three times in the same thread counts once.

## The ranking

| #   | Book                                                                                                                                                                                    | Author                          | Mentions | Threads |
| --- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | -------- | ------- |
| 1   | [Making Embedded Systems](https://www.oreilly.com/library/view/making-embedded-systems/9781098151539/)                                                                                  | Elecia White                    | 105      | 78      |
| 2   | [The Art of Electronics](https://artofelectronics.net/)                                                                                                                                 | Paul Horowitz, Winfield Hill    | 61       | 32      |
| 3   | [The C Programming Language](https://www.informit.com/store/c-programming-language-9780131103627)                                                                                       | Brian Kernighan, Dennis Ritchie | 55       | 34      |
| 4   | [Mastering STM32](https://leanpub.com/mastering-stm32-2nd)                                                                                                                              | Carmine Noviello                | 46       | 39      |
| 5   | [Test-Driven Development for Embedded C](https://pragprog.com/titles/jgade/test-driven-development-for-embedded-c/)                                                                     | James Grenning                  | 37       | 34      |
| 6   | [Practical Electronics for Inventors](https://www.mheducation.com/highered/mhp/product/practical-electronics-inventors-fourth-edition.html)                                             | Paul Scherz, Simon Monk         | 29       | 18      |
| 7   | [Make: AVR Programming](https://www.makershed.com/products/make-avr-programming)                                                                                                        | Elliot Williams                 | 27       | 21      |
| 8   | [Real-Time C++](https://link.springer.com/book/9783662742990)                                                                                                                           | Christopher Kormanyos           | 22       | 14      |
| 9   | [Mastering Embedded Linux Programming](https://www.packtpub.com/en-us/product/mastering-embedded-linux-development-9781803232591)                                                       | Frank Vasquez, Chris Simmonds   | 21       | 16      |
| 10  | [Linux Device Drivers, 3rd edition](https://lwn.net/Kernel/LDD3/)                                                                                                                       | Corbet, Rubini, Kroah-Hartman   | 20       | 15      |
| 10  | [Clean Code](https://www.informit.com/store/clean-code-a-handbook-of-agile-software-craftsmanship-9780135398579)                                                                        | Robert C. Martin                | 20       | 14      |
| 12  | [Embedded Software Design](https://link.springer.com/book/10.1007/978-1-4842-8279-3), [Reusable Firmware Development](https://link.springer.com/book/10.1007/978-1-4842-3297-2)         | Jacob Beningo                   | 19       | 16      |
| 13  | [The Definitive Guide to ARM Cortex-M3 and Cortex-M4](https://shop.elsevier.com/books/the-definitive-guide-to-arm-cortex-m3-and-cortex-m4-processors/yiu/978-0-12-408082-9), and others | Joseph Yiu                      | 18       | 17      |
| 14  | [MicroC/OS-II](https://www.routledge.com/MicroCOS-II-The-Real-Time-Kernel/Labrosse/p/book/9781578201037) and MicroC/OS-III                                                              | Jean Labrosse                   | 17       | 12      |
| 15  | [Embedded Systems textbooks and free e-book](https://users.ece.utexas.edu/~valvano/)                                                                                                    | Jonathan Valvano                | 15       | 14      |
| 15  | [The Art of Designing Embedded Systems](https://shop.elsevier.com/books/the-art-of-designing-embedded-systems/ganssle/978-0-7506-8644-0), and others                                    | Jack Ganssle                    | 15       | 13      |

Each title links to the publisher's page for the latest edition. Where the authors keep an official site for the book or there is an official free copy, as with _The Art of Electronics_, _Linux Device Drivers_ and Valvano's books, the link goes there instead. The fourth edition of _Mastering Embedded Linux Programming_ was renamed _Mastering Embedded Linux Development_.

Below these, mentions thin out quickly. [Effective C++](https://www.informit.com/store/effective-c-plus-plus-55-specific-ways-to-improve-your-programs-9780321334879), [An Embedded Software Primer](https://www.informit.com/store/embedded-software-primer-9780201615692), [Modern C](https://www.manning.com/books/modern-c-third-edition), [Programming Embedded Systems](https://www.oreilly.com/library/view/programming-embedded-systems/0596009836/) and [Hands-On RTOS with Microcontrollers](https://www.packtpub.com/en-us/product/hands-on-rtos-with-microcontrollers-9781803237725) each have between 11 and 14. Of the 92 titles on my list, 83 were named at least once, and the top ten account for almost half of all mentions.

Only 291 of the 562 threads name a book from the list at all. The others are answered with courses, boards, projects and general advice, or drift to other topics.

## One book stands out

_Making Embedded Systems_ is named in 78 threads, which is more than one in four of the threads that name any book at all. It leads in every period I looked at, with 105 mentions against 61 for second place.

The comments explain why. It is described as a broad, readable introduction that covers the whole spectrum of building an embedded system, rather than one chip or one technique. One commenter called it "the gold standard". The main reservation is the mirror image of the praise: it is a survey, not the most in-depth book on any single topic. The second edition, published by O'Reilly in 2024, added chapters on IoT and networked sensors, debugging, and data handling.

Its author also co-hosts the [Embedded.fm](https://embedded.fm/) podcast, which is itself one of the most recommended resources in these threads (more on that below). Some of the book's reach probably comes from that.

## More than half is not about embedded

If you sort every mention into a category, only 47% go to books about embedded systems. The rest:

| Category                         | Share of mentions |
| -------------------------------- | ----------------- |
| Embedded systems and firmware    | 47%               |
| C and C++                        | 17%               |
| Electronics and hardware         | 14%               |
| Embedded Linux                   | 6%                |
| Computer architecture and theory | 6%                |
| General software craft           | 6%                |
| Real-time operating systems      | 4%                |

Shares are rounded. A handful of mentions of general-interest books, such as _The Soul of a New Machine_, are left out.

The second most named book is _The Art of Electronics_, a dense electronics reference. The third is K&R, a C book whose current edition dates from 1988. _Clean Code_ ties for tenth. Embedded work sits between electrical engineering and software, and the reading list reflects that: it has circuits for people coming from software, and C and software design for people coming from hardware.

The threads are also clear that the two electronics books are not interchangeable. _The Art of Electronics_ is praised as the reference people keep on the desk for years, and a few commenters warn that it is dense and not a beginner's book. _Practical Electronics for Inventors_ is the one recommended as the practical way in.

## The classics are old, and the threads know it

Several of the most named books are well over a decade old. K&R's second edition dates from 1988, _Linux Device Drivers_ from 2005, and _Test-Driven Development for Embedded C_ from 2011. Commenters recommend them for fundamentals that have not changed much, and some are free: _Linux Device Drivers_ is [readable online at LWN](https://lwn.net/Kernel/LDD3/).

Commenters are open about the gaps. Some warn that K&R describes a version of C more than thirty years old, and in about a third of the threads where K&R comes up, someone also suggests a newer C book. [_Effective C_](https://nostarch.com/effective-c-2nd-edition) by Robert Seacord (second edition 2024) and [_Modern C_](https://www.manning.com/books/modern-c-third-edition) by Jens Gustedt (third edition 2025) both cover C23, and the [manuscript of _Modern C_](https://gustedt.gitlabpages.inria.fr/modern-c/) is free to read under a Creative Commons licence for non-commercial use.

## Learn on a real chip

Two of the top seven books are written for one family of microcontrollers. _Mastering STM32_ teaches ST's STM32 parts through the official STM32Cube tools and runs to about 900 pages in its second edition. _Make: AVR Programming_ teaches the 8-bit AVR chips found on many Arduino boards, without the Arduino libraries.

The community clearly likes learning on concrete hardware. But the two books are heading in different directions: _Make: AVR Programming_ appeared in 15% of the threads that named a book before 2020 and in 6% since 2023, while _Mastering STM32_ has held steady between 12% and 15%. That fits the wider move from 8-bit parts to 32-bit Arm Cortex-M. Joseph Yiu's _Definitive Guide_ books on the Cortex-M cores, which explain the processor itself, are gaining a little.

## What is rising and what is fading

I split the threads that name at least one book into three periods and compared how often each book appears in them. The earliest period has only 48 such threads, so treat small differences as noise. A few changes are large enough to mean something:

| Book                                   | 2011 to 2019 | 2020 to 2022 | 2023 to 2026 |
| -------------------------------------- | ------------ | ------------ | ------------ |
| Making Embedded Systems                | 27%          | 36%          | 21%          |
| The Art of Electronics                 | 6%           | 11%          | 13%          |
| Practical Electronics for Inventors    | 2%           | 4%           | 9%           |
| Hands-On RTOS with Microcontrollers    | 0%           | 2%           | 6%           |
| Test-Driven Development for Embedded C | 13%          | 18%          | 8%           |
| Make: AVR Programming                  | 15%          | 6%           | 6%           |
| Effective C++ (Scott Meyers)           | 13%          | 4%           | 1%           |
| Jack Ganssle's books                   | 8%           | 8%           | 1%           |

Three trends stand out. Electronics books are gaining, and so are questions about hardware: threads with electronics or hardware in the title went from 2% of all threads before 2020 to 10% since 2023. Newer books are gaining ground: Brian Amos's _Hands-On RTOS with Microcontrollers_ (2020, and a second edition with two co-authors in 2025) for RTOS work, and Jacob Beningo's books, most recently _Embedded Software Design_ (2022), for architecture, while Jack Ganssle's older books fade. And Scott Meyers's _Effective C++_, once a regular in C++ answers, has almost disappeared.

## Some of the best answers are not books

The same threads point to courses, podcasts and video channels as often as to many of the books on the list. Counted the same way:

| Resource                                                 | Mentions |
| -------------------------------------------------------- | -------- |
| Miro Samek's Modern Embedded Systems Programming (video) | 30       |
| Embedded.fm podcast                                      | 30       |
| FastBit Embedded Brain Academy courses                   | 30       |
| Shape the World course on edX (Valvano, Yerraballi)      | 27       |
| Embedded Artistry blog and reading list                  | 20       |
| Phil's Lab (video)                                       | 16       |
| Ben Eater (video)                                        | 15       |

Any of the top four would rank sixth or seventh among the books. Jonathan Valvano is the clearest example: his free course is mentioned almost twice as often as his textbooks.

## If you only read three

This section is my reading of the threads rather than a count. Taken together, the advice converges on a small set rather than one perfect book:

1. **One book about the whole job.** _Making Embedded Systems_ is the community's default.
2. **One book about the language.** K&R is still the classic. _Effective C_ or _Modern C_ teach the C you will actually write today.
3. **One book about the hardware.** _Practical Electronics for Inventors_ to start, _The Art of Electronics_ as the reference you grow into.

Then add a book written for the chip you are using, like _Mastering STM32_, and a book about the area you work in, such as testing, embedded Linux or an RTOS.

## What this data can't tell you

A mention is not a review. Most of the mentions I read were recommendations, but some are warnings, like the "not for beginners" notes on _The Art of Electronics_. The people asking and answering on Reddit also skew toward students and early-career engineers, which favours introductory books over specialist ones.

The counts depend on my list of titles, so a book nobody names in a recognisable way is missing. The archive also thins out before 2018. And these numbers measure how often a book is recommended, not how good it is. They tell you what this community reaches for first, which is a useful place to start, but no more than that.

## Sources

- [r/embedded](https://www.reddit.com/r/embedded/), posts and comments from August 2011 to 2 October 2026, retrieved through the [Arctic Shift](https://arctic-shift.photon-reddit.com/) archive
- [Making Embedded Systems, second edition](https://www.oreilly.com/library/view/making-embedded-systems/9781098151539/), O'Reilly
- [Linux Device Drivers, third edition](https://lwn.net/Kernel/LDD3/), free online at LWN
- [Modern C, third edition](https://www.manning.com/books/modern-c-third-edition), Manning
- [Effective C, second edition](https://nostarch.com/effective-c-2nd-edition), No Starch Press
- [Mastering STM32, second edition](https://leanpub.com/mastering-stm32-2nd), Leanpub
- [Embedded Systems: Shape the World](https://users.ece.utexas.edu/~valvano/Volume1/E-Book/), Jonathan Valvano and Ramesh Yerraballi
