You can find many frameworks with an example todo list for demonstrating a small but full application in the framework. You don’t have to consider large problems like scaling or caching, but you still exercise most of the fundamentals of that framework in a todo list.
Is there an analogous application for systems-level programming?
1
Not a single one, but different areas of computing have traditions. For writing network services, the canonical functional-though-useless example is to write an echo server (it listens on a port and parrots back everything it hears). The simplest command-line utility imaginable is one that simply returns a specific exit code (Here is an astounding example of just how simple it can be made to be) – it does virtually nothing, but can still be helpful to introduce someone to the code-compile-link-execute cycle. If you count programming languages and libraries, of course there’s always “Hello, world!”, and almost every language has its perceived weaknesses that everyone tries to fix. For C++, it’s writing a better string
type; of Perl, it is jokingly said, that every serious user has tried their hand at a better option-parsing library.
1