---
title: CP4CPP applies for the HackMD educational non-profit sponsorship
brief: CP4CPP - Competitive Programming for C++
owner: Võ Hoàng Anh - SPyofgame
link: https://hackmd.io/@cp4cpp/sponsorship
tags:
- cp4cpp
- sponsorship
- hackmd
- educational-project
- community-project
- competitive-programming
- cplusplus
- cpp
language: en
contacts: cpforcpp@gmail.com
last_updated: 2026-04-21
---
# <center> CP4CPP applies for the HackMD educational non-profit sponsorship </center>
:::success
```cpp
////////////////////////////////////////////////////////////////////////////////////
// // ..|'''.| '||''|. ..|'''.| '||''|. '||''|. // //
// // .|' ' || || .|' ' || || || || // //
// // || ||...|' . . || ||...|' ||...|' // //
// // '|. . || // // '|. . || || // //
// // ''|....' .||. "==// ''|....' .||. .||. // //
// // // // //
////////////////////////////////////////////////////////////////////////////////////
```
:::
[TOC]
## I. Introduction to CP4CPP
> **https://hackmd.io/@cp4cpp/sponsorship**
> [color=green]
The long-term goal of CP4CPP is to collect useful edu content and keep that knowledge readable, reusable, and easier to improve over time. We will reduce the friction that learners face when knowledge is scattered across editorials, chats, isolated notes, screenshots, and temporary posts. We also want to make it convenient for mentors, contributors, and maintainers to collaborate on good materials without losing structure, context, or trust.
CP4CPP is meant to connect several educational needs into one coherent system. It is not only about technical notes, and it is not only about problem solving. It also includes revision, taxonomy, explanation, organization, simulation, visualization and personal analytics. The project grew from several earlier efforts that each explored one part of the same mission.
The project is especially focused on learners who need more than short answers or isolated accepted solutions. We want to support people who need to revisit hard topics, understand why an idea works, compare related concepts, and study through materials that are organized with learning in mind. In that sense, CP4CPP is designed not just as a content collection, but as an infrastructure for competitive programming in C++.
- **TL;DR**:
+ **Name:** CP4CPP - Competitive Programming for C++
+ **Type:** Educational Project, Community Project
+ **Brief:** An educational project that aims to make CP more accessible
+ **Focus:** Competitive programming, C++ learning resources
```markmap
# CP4CPP Lineage
## Docs
### ACES
#### Handbook style docs
#### Interactive editorials
## Simulation
### SIGMA
#### Graph visualization
#### Algorithm simulation
## Tooling
### SPYLIB
#### Test generators
#### Validation tools
## Taxonomy
### TYRPESE
#### Topic hierarchy
#### Tag classification
## Workflow
### YPS
#### Visual note system
#### Personal study process
```
## II. Community value and public-interest
> **We believe this project aligns with HackMD’s edu and public-interest goals**
> [color=green]
- CP4CPP is designed as a public-interest educational project
+ from community, for community and by community (mentioned in CP4CPP README)
+ make older educational material easier to recover, revise, and study again
+ help students revisit difficult topics in a more structured way
+ help teachers and contributors build on shared material instead of isolated drafts
+ reduce duplication of effort across notes, editorials, and discussions
- We believe shared technical knowledge is worth preserving even when it costs money
+ that why we called this as negative-profit project by design, because it is
+ it has no commercial business model and against conventional user-leaching
+ it has no hidden monetization plan and without promise of financial return
- We maintain it for continuity, clarity, integrity, and community usefulness
+ support would help us focus more on edu quality and less on workflow limitations
+ support lets us spend more time on edu quality and less time on operational burden
+ our public outputs are teaching notes, explanations, references, and materials
+ the goal is for these notes to remain useful to learners after publication
+ we want the work to outlast the immediate team that happens to be editing it now
+ the project helps contributors turn isolated explanations into reusable edu notes
- We already have:
+ practical competitive knowledge informed by participation in national-level contests
+ continued teaching and mentoring experience with students and fellow CP-ers
+ prior educational work across many projects and subprojects in the past 5 years
+ writers and contributers with verified good background in competitive programming
## III. Prior projects and proof of work
> **Those subprojects and projects shared the same mission from different aspects**
> [color=green]
- One of those projects was **es.ac.vn** (now as **old.cp4cpp.com**)
+ It means (`All-encompassing Competitive Editorial Slayer`)
+ It is an interactive competitive-programming handbook and wiki
+ In that project, we worked on turning scattered editorials, tricks, and notes
+ We experimented with combining code, diagrams, annotations, and visual blocks
+ We have handbook-style documents so learners could study and review algorithms
- Another major project was **Project Sigma**
+ It means (`Systems of Interactive Geometry, Maths, and Algorithms`)
+ We built C++ based edu visualization tools with a strong focus on graph theory
+ The goal there was to help learners understand algos through visual feedback
- Those projects also focused on teaching flow, taxonomy, and personal study systems:
+ **C2G2**, **KDT**, **MLSR**, **A347221**, and **VAICPRTSPA** were smaller edu subprojects
+ **TYRPESE**, **OAI**, and **Starrank** explored topic hierarchy, pattern classification
+ **YPS** (`Your Personal System`) and its experiments such as **BlackBox64** and **DEFAT**
+ They are published across places like **HackMD**, **Codeforces**, **OEIS** and **Facebook**
+ We made use of **Discord**, **Python**, **ImGUI** and **HackMD** for those subprojects
- CP4CPP now brings these strands together:
+ documentation from ACES
+ simulation from SIGMA
+ tooling from SPYLIB
+ taxonomy from TYRPESE
+ personal learning workflow ideas from YPS
## IV. Practical value and educational history
> **What we need now is not a new direction, but a more sustainable way to grow & scale**
> [color=green]
- I have been using HackMD in teaching and note-writing workflow for several years
+ I have been using HackMD actively since 2021, and the first time long before that
+ I taught at least 20 students a year for 4 years, and guide them with HackMD
+ I helped at least 52% of the class to reach HSGS last year (11/21 to be specific)
+ I taught students how to use hackmd https://hackmd.io/@spyofgame/2025
+ I did analytics for student performance https://hackmd.io/@spyofgame/2025r
- HackMD would be supporting a workflow we are already using in practice
+ CP4CPP already grows from years of teaching, public notes, editorials
+ CP4CPP learns from mistakes of other earlier educational projects and subprojects
+ we used markdown-based workflow seriously for noting, drafting, and teaching
- We also promoted and recommended HackMD to several well-known OJ communities
+ oj.vnoi.info/, example: https://hackmd.io/LBkGBkE8SdaqgTpbj-c0RA
+ lqdoj.edu.vn/, example: https://hackmd.io/ISUL-EwXSpmoSnuPYWO7Tw
+ sqrtoj.edu.vn/, example: hackmd.io/@NguyenHuuNhatQuang/ryGeUP0obe
+ hnoj.edu.vn/, example: https://hackmd.io/@ducanhle/rJ85kjEWex
+ codeforces.com/, example: https://codeforces.com/blog/entry/110050
- I have seen HackMD used in public educational and editorial writing, not only in private
+ the examples above show HackMD being used for problem-writing and editorials
+ this gave me practical experience with how HackMD fits CP note workflows
+ it also showed that HackMD can work well beyond one personal or private project
:::info
In fact, in some communities, I also had admin or editorial involvement, which let me recommend HackMD more directly to writers and editorialists. I also shared and recommended HackMD in several major Vietnamese competitive-programming communities where I was already involved in writing (as an editorialist) or administration
:::
:::spoiler Mermaid

:::
:::spoiler Annotation

:::
:::spoiler Code

:::
:::spoiler Highlighter

:::
:::spoiler Diagram

:::
:::spoiler Editorials

:::
:::spoiler Solutions

:::
:::spoiler Notes

:::
:::spoiler On line #21, 11/21 = 52%


:::
## V. HackMD is our ideal choice
> **HackMD helps us keep colab in one place before it becomes durable public material**
> [color=green]
- HackMD fits our workflow and collaboration
+ Fast collaborative writing and review (with github versioning features)
+ Publication of Markdown-based knowledge notes (sometimes as pdf exports)
+ Structured note-taking (and using its visual features like markmap)
- We plan to use HackMD for:
+ drafting and reviewing educational notes before publishing
+ collaborative editing between maintainers and contributors
+ collecting and refining public explanations for algorithm topics
+ sharing public-facing knowledge notes for learners and audiences
+ coordinating internal planning notes for the educational roadmap
- We expect to use HackMD for obvious public knowledge work
+ publish educational notes that introduce important algorithm topics
+ share curated notes for learners and contributors
+ maintain public-facing knowledge pages that demonstrate the project’s edu value
- There are also practical reasons for private-team collaboration in our workflow
+ coordinate contributor workflow
+ draft note structure before public release
+ review educational content internally
+ manage writing plans, revision lists, and teaching outlines
- our workflow depends on drafting, revising, and reviewing notes with other contributors
+ we need one shared place to draft, review, refine, discuss, and preserve knowledge
+ without that kind of shared workspace, educational material becomes fragmented
+ good notes saved across chats and temporary posts will be forgotten overtime
## VI. Quality control and mutual trust
> **We care strongly about content quality, review discipline and ensure correctness**
> [color=green]
- Our standards include:
+ strictly against and avoid low-quality AI-generated educational content
+ prefer durable explanations, even heavy details over fast but shallow output
+ review older projects, subprojects and notes before reusing them
+ check original time, source, and project context when possible
+ keep knowledge tied to clear roles, examples, and real use cases
- We also care strongly about editorial quality and trust
+ we do not want a large pile of fast but shallow content or with impractical ideas
+ we want collaborative notes that are still curated, inspectable, and worth revisiting
+ we want our public notes to be collaborative, but still trustworthy and curated
+ we want contributors to feel that their improvements are preserved and reviewable
- We want quality control to be visible, not only claimed
+ draft notes, reviewed notes, and reusable public notes should be clearly separated
+ readers can easily know if a note is experimental, being refined, or already stable
+ this helps reduce confusion and improves trust in the material
+ collaborative notes should preserve who changed what, when, and why
- We care about source honesty and attribution
+ when we reuse ideas, notes, or structures from older work
+ we want to preserve their context rather than copy them blindly
+ we want explanations to keep links to source, origin, or related references
+ this helps maintain trust between maintainers, contributors, and readers
## VII. Sponsorship need and positive impact
> **This would directly improve our ability to produce and maintain learning resources**
> [color=green]
- A sponsorship would help us:
+ support more contributors in a shared workspace
+ keep educational collaboration centralized instead of fragmented across tools
+ improve the quality and consistency of public learning materials
+ spend more effort on content and teaching value rather than tool limitations
+ CP4CPP can be more maintainable, more focused, and more useful to learners
- This support would help us improve outputs and the process that produces them
+ one reviewed note can help many learners, not just one class or one semester
+ one improved explanation can be reused in docs, lessons, references, and teaching
+ one shared workspace can reduce duplicated effort across contributors
+ one team space would make future revisions and collaboration easier
- Sponsorship would help a workflow we are already using become easier to manage
+ it would give us a cleaner way to review, revise, and maintain educational notes
+ it would reduce tool friction
+ it would improve the quality and consistency of our public learning materials
+ it would help us organize public resource for learners, mentors, and contributors
- In the next stage, we want to use HackMD to support:
+ public algorithm notes
+ shared contributor drafts
+ internal review checklists
+ migration of older material into clearer structure
+ reusable topic breakdowns for learners and mentors
+ better traceability for note changes, review history, and contributor edits
## VIII. Public outputs and project product
> **Our goals of making future educational writing easier to review, revise, and reuse**
> [color=green]
- Examples of the public-facing outputs we are already preparing or maintaining include:
+ topic maps for algorithms and competitive programming concepts
+ structured DSA notes about dynamic programming, graph theory, and related topics
+ beginner explanations for topics that are often introduced only in advanced forms
+ educational reference materials for C++ based competitive programming
+ reusable notes, editorials, and study materials that can be revisited by learners
- Over time, we want CP4CPP to grow into a more complete and reusable edu system
+ reusable algo handbook pages that remain useful beyond one contest or one lesson
+ guided topic paths that help learners study in a clearer order
+ visual simulations for harder concepts that benefit from direct inspection
+ topic maps and taxonomy pages that help learners understand how ideas connect
+ testcase tooling references for authors, reviewers, and advanced learners
+ personal-study workflows based on analytics that help learners build better habits
- We do not want this project to become only a collection of pages
+ we want the contents to stay connected, reviewable, and worth improving over time
+ we want notes to be reusable across classes, contributors, and future revisions
+ we want edu materials that can support both first-time learners and later review
+ we want public notes that people can read, understand, review, and improve later
- Sponsorship would help us move from scattered effort to a more durable public system
+ it would reduce tool friction in the writing and review process
+ it would help us turn isolated notes into clearer long-term resources
+ it would make it easier to maintain quality while growing collaboration
+ it would help us spend more effort on educational value instead of fighting tools
## IX. Mutual benefit and support materials
> **We would be grateful for the opportunity to continue to scale and grow our project**
> [color=green]
- For clarity and easier review, we are happy to:
+ provide supporting documents about the project or organization
+ share public reference links for the project
+ explain our intended HackMD workflow in more detail
+ publish public notes that demonstrate our educational mission
+ clarify how we separate drafts, reviewed notes, and reusable public materials
+ show examples of prior teaching notes, editorials, and collaborative edu writing
+ provide more context about earlier projects and subprojects that led to CP4CPP
+ clarify how the team workspace would be used in daily edu writing and review
- If needed, we are willing to provide:
+ public examples of editorials, and study materials written over the past few years
+ examples of how HackMD has already been used in our teaching and note-taking
+ materials that show how CP4CPP is used by learners, mentors, and contributors
+ more detail about how we turn older scattered material into clearer public resources
+ follow any reasonable sponsorship review process or onboarding instructions
+ provide additional context if any part of the project needs clarification
+ adapt our note organization and collaboration workflow to fit HackMD more cleanly
+ extra educational contents to introduce project’s domain knowledge to the public
- If supported, we will try to use the sponsored space responsibly:
+ for collaborative drafting and revision of educational notes
+ for preserving reusable public knowledge instead of temporary scattered writing
+ for improving note structure, review flow, and contributor coordination
+ for long-term educational value rather than short-term experimental attempt
## X. Urgency of team needs and practical constraints
> **Why this request matters now, not only later**
> [color=green]
- Our current bottleneck is team coordination at review stage
+ the harder part is keeping multiple revisions, comments and corrections
+ we want to have contributor inputs organized in one place
+ this becomes more important as the amount of educational material grows
- The free private-team limit is restrictive for the kind of workflow we are building
+ we need room for maintainers, reviewers, contributors, and trusted collaborators
+ the value of the workspace increases when more review process happens
- Public publishing alone does not cover the full educational workflow
+ notes that are well verified should be public as soon as possible
+ notes need internal revision before they are ready to represent the project publicly
+ important for technical materials where correctness, examples, and wording matter
- The urgency is practical because our content is becoming more interconnected
+ it would help us keep drafts, revisions, and publication flow more coherent
+ this matters more now since CP4CPP has connected contents from isolated notes
+ it prevents an active edu workflow from becoming harder to maintain as it grows
+ support now would help us scale with more structure instead of more fragmentation
- The cost pressure is small compared with the coordination pressure, but both are real
+ CP4CPP is a non-commercial educational project (if not negative-profit)
+ recurring collaboration costs are harder to justify when the project is maintained
+ sponsorship would help us avoid the common commercial directions
- The immediate value of support would be concrete
+ more contributors could participate without scattering the work further
+ more notes could be reviewed faster and easier before publication
+ more materials could be maintained with clearer ownership and revision history
## XI. Checklist
> This checklist helps verify HackMD’s published sponsorship required materials
> [color=green]
- [X] Use a clear sponsorship-facing title
+ see the document title and header above section **I**
- [X] Provide a brief introduction to the applicant organization or project
+ see sections **I** and **II**
- [X] Explain the mission and tasks of the project
+ see sections **I** and **II**
- [X] Explain how HackMD will be integrated into the workflow
+ see sections **V**, **VII**, and **IX**
- [X] Include recent projects, programs, or public work that can help reviewers understand
+ see sections **III**, **IV**, and **VIII**
- [X] Include public references that help reviewers get familiar with the project
+ see sections **IV**, **IX**, and **XII**
- [X] Explain urgency of need and why sponsorship matters now
+ see section **X**
- [X] Explain why a public team alone may not fully solve the workflow needs
+ see sections **V** and **X**
- [X] Publish a 2nd public note that introduces the project’s domain knowledge to the public
+ https://hackmd.io/@cp4cpp/sieve
## XII. Valid contacts
> **You may contact to the founder *`Võ Hoàng Anh`*, aka *`SPyofgame`* (for publication)**
> [color=green]
- Via personal contacts:
+ spyofgame200@gmail.com
+ facebook.com/spyofgame/
+ github.com/SPyofgame200
- Via our website:
+ cpforcpp@gmail.com
+ cp4cpp.com
+ old.cp4cpp.com (legacy)
- Communication:
+ available in Vietnamese and English
+ happy to answer questions about project scope, workflow, and educational use
+ happy to provide additional references or follow-up materials if needed
+ willing to share practical feedback from long-term educational use of HackMD
```md=
@misc{cp4cpp,
author = {Vo Hoang Anh},
since = {2026},
title = {CP4CPP: Competitive Programming for C++},
quote = {From community, for community, by community},
brief = {An educational project that aims to make CP more accessible},
email = {spyofgame200@gmail.com},
}
```
:::success
```cpp
////////////////////////////////////////////////////////////////////////////////////
// // ..|'''.| '||''|. ..|'''.| '||''|. '||''|. // //
// // .|' ' || || .|' ' || || || || // //
// // || ||...|' . . || ||...|' ||...|' // //
// // '|. . || // // '|. . || || // //
// // ''|....' .||. "==// ''|....' .||. .||. // //
// // // // //
////////////////////////////////////////////////////////////////////////////////////
```
:::