The UVic Competitive Programming Club is a group of students who enjoy solving programming problems. We compete annually in the International Collegiate Programming Contest (ICPC), and meet weekly to practice and discuss algorithms.
If you would like to compete in programming contests or just want to improve your programming skills, join us! Anyone with basic programming ability is welcome.
The homepage archive reads its featured resource metadata from
_data/resources.yml. Existing Jekyll posts are also included automatically
as session-note cards.
Run the helper command from the repository root:
bin/add-resource \
"Dijkstra's algorithm" \
2026-10-06 \
"Shortest paths and priority queues." \
graphs,practice \
/assets/resources/2026/dijkstra/slides.html \
"https://www.youtube.com/watch?v=VIDEO_ID" \
/dijkstraArguments are positional and appear in this order:
title— the meetup or session title.date— useYYYY-MM-DD.description— short text shown on the resource card.tags— comma-separated tags, such asgraphs,practice.slides— local asset path or external URL.video— YouTube or Vimeo recording URL.post— optional URL for an existing session-note page.
Use - for an optional value. For example, this adds slides and a recording
without a session-note page:
bin/add-resource "Dijkstra's algorithm" 2026-10-06 "Shortest paths." graphs,practice /assets/resources/2026/dijkstra/slides.html "https://www.youtube.com/watch?v=VIDEO_ID" -Put HTML slides inside assets/resources/. Keeping each meetup in its own
folder lets the HTML file reference local CSS, JavaScript, and images:
assets/resources/2026/dijkstra/
├── slides.html
├── styles.css
└── images/
└── graph.png
Use the site-relative path in the command:
/assets/resources/2026/dijkstra/slides.html
Markdown slide sources work too. Pass the source path ending in .md, such
as assets/resources/2026/dijkstra/slides.md; the helper checks that the file
exists and stores the generated .html URL because Jekyll renders Markdown
files as HTML pages. Make sure the filename matches exactly.
The command updates _data/resources.yml. After adding a resource, preview
the site locally with:
bundle exec jekyll serveThen open http://localhost:4000 and search for the new session in the
resource archive.
Based on Jekyll contrast theme