Si quieres un tipo de ejercicio de lápiz y papel, te recomendaría más diseño que codificación.
Codificando en realidad en papel apesta y te permite aprender casi nada.El entorno de trabajo sí importa escribir en una computadora, compilar, ver qué errores has cometido, usar refactor aquí y allá, simplemente no se puede comparar con lo que puedes hacer en un papel y, por lo tanto, qué puedes hacer en un Una hoja de papel, aunque es un ejercicio mental interesante, no es práctico, no mejorará tanto sus habilidades de codificación.
Por otro lado, puede diseñar la arquitectura de una aplicación mediana o incluso compleja a mano en un papel. De hecho, suelo hacerlo. Las herramientas de ingeniería (como Enterprise Architect) no son lo suficientemente buenas como para reemplazar los buenos diagramas all-hand-hand.
Los buenos proyectos podrían ser, ¿cómo diseñarías un motor de juego? Clases, Hilos, Almacenamiento, Física, las estructuras de datos que contendrán todo, y así sucesivamente. ¿Cómo comenzarías un motor de búsqueda? ¿Cómo diseñarías un sistema de reconocimiento de patrones?
Este tipo de problemas me resultan mucho más gratificantes que cualquier codificación en papel que pueda hacer.