The first thing that's worth mentioning is that Emacs isn't simply in "maintenance" mode. There is a nice steady flow of new features, significant features too such as Elisp native compilation and Wayland support.
It's also important to keep in mind the sheer scale of Emacs. Vanilla Emacs ships over 1 million lines of Elisp (I'm getting 1.3m according to a small shell script). Considering just how massive of a scale this is, 3000 bugs is really not so bad.
github.com/apple/swift has ~4000 open issues labeled as "bug" and has existed since 8 years ago. That makes about ~500 "bugs" per year while emacs by the same measure then have about ~75 bugs per year.
Tell me again how awful that metric is compared to others?
---
FTFY: most commercial software projects get 3,000 bugs in 3-5 years (if they're successful and grow), and you quickly need a serious database (e.g. jira) to curate them. It's not a morale issue because there's product manager(s) who manage this herd, not eng, and there's no expectation of zero defects because the goal is to win marketshare, which is far removed from any individual bug.
should we be amazed over its resilience or in awe that it actually works?
I can't decide.
also, every time I think about the amount of CPU cycles that has to be executed just for the first pixel to appear on the screen, just, wow. what a time to be alive!
'Eight Megabytes (of RAM) And Constantly Swapping', back when 8 MiB was big.
https://github.com/microsoft/vscode/issues?q=is%3Aopen+is%3A...
but we all know number of bugs reported is not a very useful metric (dups, weird non reproducible configurations, not confirmed bugs, etc...)
besides: VS Code team is very good, we should hope that every software project was developed the same way.