¿Conoces algún buen libro de programación con el código para muchos programas pequeños como un reproductor de música, navegador web y software de comunicación?

Las cosas que está describiendo no son “pequeños programas”.

No estoy seguro de lo que significa “software de comunicación”, así que lo dejaré.

Un “reproductor de música” presumiblemente tiene la capacidad de decodificar música usando códecs y reproducirla; Esta es un área en la que todavía hay productos comerciales competitivos porque no se ha vuelto tan básico y simple que es algo que es solo parte de su sistema operativo. Incluso si depende exclusivamente de códecs de terceros, todavía está buscando un problema bastante complejo.

La idea de que un navegador web es “pequeño” es extremadamente absurda. Un navegador web hoy en día es más complicado que un sistema operativo completo de hace no muchos años, porque como un sistema operativo es una plataforma de software. Los navegadores web no solo deben manejar la visualización de contenido web estático, sino que también son intérpretes completos y complejos de Javascript, y han pasado años y años desde que ese era solo un pequeño lenguaje de secuencias de comandos simple. Escribir un precompilador / intérprete para un lenguaje de programación por sí solo es una tarea experta de alto nivel que requiere mucha colaboración. Todo lo demás en su navegador web es probablemente más simple en comparación, pero solo en comparación: las expectativas de rendimiento de renderizar HTML / CSS solo son algo que requiere experiencia para abordar.

No hay tantos reproductores de música y navegadores web populares porque son problemas complejos de resolver y el hecho de que parezca que son triviales es una mala señal, porque sugiere que no solo no sabes cómo abordar la solución ellos, pero tampoco puedes evaluar cuán difíciles son, lo que sugiere que estás muy lejos de poder abordarlos racionalmente.