Conference statistics maintenance

Conference statistics maintenance

This file is the handoff point for continuing the conference collection and statistics work from a new computer or a fresh Codex chat. The repository—not a previous conversation—is the source of truth.

What is preserved

  • Conference paper pages: _pages/siggraph*-technical-papers.html
  • Conference index and plot order: _pages/conferences.html
  • Structured SGP data: _data/sgp-*-technical-papers.json
  • Affiliation caches and manual corrections: _data/crossref-affiliation-cache.json, _data/ror-country-cache.json, and _data/conference-award-affiliation-overrides.json
  • Generated statistics: _data/conference-*.json
  • Analysis programs: scripts/analyze_*.mjs
  • Compact editable plot fragments: plot-sources/*.html
  • Website-ready standalone plots: assets/plots/*.html
  • Conference-building workflow: .agents/skills/build-conference-collection/

assets/plots/ contains generated standalone iframe documents. Edit the much smaller matching file in plot-sources/ first, then regenerate or replace the standalone version. Do not treat the Codex directory under ~/.codex/visualizations/ as authoritative.

Statistical definitions currently used

  • SIGGRAPH and SIGGRAPH Asia paper membership comes from the conference pages in _pages/.
  • Awarded papers combine Best Papers and Honorable Mentions unless a chart explicitly states otherwise.
  • Award statistics cover SIGGRAPH 2022–2026 and SIGGRAPH Asia 2022–2025, the years represented by the supplied award sources.
  • Author counts come from the author strings on the conference pages.
  • Affiliation analysis uses publisher metadata cached from Crossref and institution countries cached from ROR, with manual corrections in conference-award-affiliation-overrides.json.
  • A paper’s home region or country uses the first- and last-author affiliations available in the cached metadata. Corresponding authors are included only when publisher metadata identifies them reliably.
  • Papers associated with multiple qualifying regions or countries are split fractionally where the chart describes fractional attribution.
  • China combines mainland China, Hong Kong, and Macau internally, but charts display the label China.
  • Country-level author-team statistics currently include China, Japan, Korea, Singapore, Israel, Saudi Arabia, United States, United Kingdom, Canada, Austria, Italy, France, Germany, and Switzerland; other countries are ignored for that heatmap.
  • Conference listings are reverse chronological. Within the same year, SIGGRAPH Asia precedes SIGGRAPH because it occurs later.

Always verify chart notes against the calculation code before publishing. If a methodology changes, update the script, generated JSON, plot note, and this document together.

Refreshing affiliation-derived data

Run commands from the repository root with a current Node.js runtime:

node scripts/analyze_regional_affiliations.mjs
node scripts/analyze_awards_by_country.mjs

The regional script updates:

  • _data/conference-regional-affiliation-stats.json
  • _data/conference-asia-regional-affiliation-stats.json
  • _data/conference-region-author-averages.json
  • _data/conference-country-author-averages.json
  • the Crossref and ROR caches when uncached records are encountered

The awards script updates _data/conference-award-country-counts.json.

These scripts can contact Crossref and ROR for missing records. Review every unresolved DOI or affiliation before interpreting coverage as complete. Prefer an exact ACM DOI page supplied by the conference or user; never fabricate a DOI. Add a narrowly scoped manual override only after verifying the publisher record.

scripts/analyze_chinese_affiliations.mjs is retained for the older China-specific analysis. The active regional chart uses the broader regional script.

Updating plots

The plot fragments are plain HTML, CSS, SVG, and JavaScript. Their filenames match the generated files in assets/plots/.

  1. Recompute the relevant _data/conference-*.json file.
  2. Check totals, coverage, denominators, fractional weights, and year ranges.
  3. Update the corresponding plot-sources/<name>.html values and explanatory note.
  4. Generate a standalone HTML visualization from that fragment and save it as assets/plots/<name>.html. A fresh Codex task can use its visualization capability; ensure the output remains self-contained and does not load remote runtime dependencies.
  5. Open _pages/conferences.html locally and visually inspect the plot at desktop and narrow widths. Confirm that there is no inner scrollbar, labels are not clipped, and every plot has an explanatory note.

Current plot order is defined solely by the iframe order in _pages/conferences.html.

Validation

Before committing:

git diff --check
bundle exec jekyll build

Also confirm:

  • every conference paper has a title, author list, and publisher/DOI link or a clearly disclosed search fallback;
  • highlighted awards match an official announcement;
  • conference and plot year ranges are accurate;
  • generated JSON coverage agrees with the notes shown under the plots;
  • the Git working tree contains the intended source fragments as well as generated website files.

If the local Ruby installation is incompatible, use the repository’s GitHub Pages workflow or a compatible Ruby/Bundler environment; do not replace the locked dependencies merely to silence a local build error.

Recovery on another computer

git clone git@github.com:jiongchen/jiongchen.github.io.git
cd jiongchen.github.io

Open the cloned folder in Codex. Repository-local instructions and the conference skill travel with the clone. A useful first prompt is:

Read AGENTS.md, STATISTICS_MAINTENANCE.md, and the repository-local conference skill. Inspect the current data before updating the requested conference and regenerating affected statistics plots.

For example, when SIGGRAPH Asia 2026 information is available, start a new Codex task in this repository and use a prompt like this:

Use the repository-local $build-conference-collection skill to add SIGGRAPH Asia 2026. The official Technical Papers program is at [PROGRAM URL], and the official Best Paper and Honorable Mention announcement is at [AWARDS URL]. Preserve the official session organization; collect every paper title and author list; use verified ACM Digital Library or DOI links; and mark the verified awards. Add the conference to _pages/conferences.html in reverse chronological order, before SIGGRAPH 2026. Then read STATISTICS_MAINTENANCE.md, update the affiliation caches and overrides as necessary, recompute every statistic affected by the new conference, and update both plot-sources/ and the matching standalone files in assets/plots/. Extend chart year ranges to 2026 where appropriate, update all notes and coverage statements, check totals and unresolved records, run the documented validation, and report any remaining search fallbacks or missing affiliation metadata. Commit and push the verified changes to origin/master.

Replace [PROGRAM URL] and [AWARDS URL] with official pages. If the awards announcement is not available yet, remove that clause and explicitly ask Codex not to infer awards; the award plots can be updated later when an official source exists.

Commit and push after each verified update. GitHub then contains the website, the repeatable workflow, the editable chart sources, and the handoff documentation needed to resume without the original computer or chat.