Legacy
Why Keep Legacy Notes
CP4CPP is built from older failed, stalled, and unfinished projects. Those failures are design evidence.
Legacy notes should not become the public structure, but they should explain why the current structure exists.
Old Ideas
CPH - Competitive Programming Handbook
Project ESAC was a wiki with interactive elements hosted on es.ac.vn.
Failures:
- It needed many problems and many solutions.
- Too much time was spent choosing code style for solutions.
CPT - Competitive Programming Taxonomy
Project Tyrpese tried to organize topic families into three layers where each layer was not too generic and not too niche.
Related projects:
- OAI: analyze problem types through implementation, knowledge, and observation.
- Tyrpese: analyze related problem types through containment-style topic layers.
Test Generator
This direction was similar to Polygon, but simpler and faster for generating tests.
Related projects:
- SPYLIB: a minimal library for generating tests.
- Craftbed: readable validator, generator, and checker tooling.
Student Progress Dashboard
This direction analyzed student progress and practice history.
Related projects:
- Sigma: force-directed graph visualization.
- Starrank: Codeforces API table analysis.
Current Lesson
The old attempts failed mostly when scope became larger than the maintenance system. CP4CPP should preserve the useful ideas, but route every idea into a navigation with a clear job.