diff --git a/README.md b/README.md index 550dafc..927d773 100644 --- a/README.md +++ b/README.md @@ -94,6 +94,25 @@ The *tag* field indicates the type of deadline entry you are adding. Users can f - **Venue type:** The type of venues the deadline indicates. For example, is it a conference (`CO`), a workshop (`WO`), or a special edition of a journal (`JO`). - **Tracks:** Software engineering conferences generally have multiple tracks with different goals, scopes, requirements, and deadlines. For example, ICSE 2025 has a [Research][5] and a [New Ideas and Emerging Results][6] tracks. The former is a research paper track (`RPT`), while the latter is a new idea and emerging results track (`NIER`). We are currently testing our tag groups for tracks and welcome any suggestions! :) The current tag set is defined in [`types.yml`][4]. +- **CORE Ranking:** Only a conference's *main research track* carries a `CORE-ASTAR`/`CORE-A`/`CORE-B`/`CORE-C`/`CORE-UNCLASSIFIED` tag (sub-tracks like industry, NIER, or doctoral symposium aren't separately ranked by CORE, so they carry no rank tag). The rank for each conference, where it came from, and which ones CORE simply doesn't list are recorded in [`_data/core_rankings.yml`](_data/core_rankings.yml), verified against the [CORE Conference Portal](https://portal.core.edu.au/conf-ranks/). + +### Conference acceptance statistics + +You can add conference statistics in [`_data/conference_statistics.yml`](_data/conference_statistics.yml). +The key is the conference `name`, and each value is a list of yearly records: + +```yaml +ICSE: + - year: 2025 + submissions: 123 + accepted: 30 + acceptance_rate: "24.4%" + source: https://example.com/source +``` + +An expandable "Show acceptance statistics" section on the home page charts these year-by-year for ICSE, FSE, ASE and ISSTA, as a stacked accepted/rejected bar chart plus an acceptance-rate line per venue. + +Historical multi-year data for ICSE, FSE, ASE and ISSTA was seeded from [emeryberger/csconferences](https://github.com/emeryberger/csconferences). ## Run locally diff --git a/_data/conference_statistics.yml b/_data/conference_statistics.yml new file mode 100644 index 0000000..3b374a9 --- /dev/null +++ b/_data/conference_statistics.yml @@ -0,0 +1,506 @@ +ICSE: + - year: 1995 + submissions: 155 + accepted: 28 + acceptance_rate: "18.1%" + source: https://github.com/emeryberger/csconferences + - year: 1996 + submissions: 213 + accepted: 52 + acceptance_rate: "24.4%" + source: https://github.com/emeryberger/csconferences + - year: 1997 + submissions: 219 + accepted: 50 + acceptance_rate: "22.8%" + source: https://github.com/emeryberger/csconferences + - year: 1998 + submissions: 209 + accepted: 41 + acceptance_rate: "19.6%" + source: https://github.com/emeryberger/csconferences + - year: 1999 + submissions: 269 + accepted: 50 + acceptance_rate: "18.6%" + source: https://github.com/emeryberger/csconferences + - year: 2000 + submissions: 335 + accepted: 49 + acceptance_rate: "14.6%" + source: https://github.com/emeryberger/csconferences + - year: 2001 + submissions: 268 + accepted: 47 + acceptance_rate: "17.5%" + source: https://github.com/emeryberger/csconferences + - year: 2002 + submissions: 303 + accepted: 48 + acceptance_rate: "15.8%" + source: https://github.com/emeryberger/csconferences + - year: 2003 + submissions: 324 + accepted: 42 + acceptance_rate: "13.0%" + source: https://github.com/emeryberger/csconferences + - year: 2004 + submissions: 436 + accepted: 58 + acceptance_rate: "13.3%" + source: https://github.com/emeryberger/csconferences + - year: 2005 + submissions: 313 + accepted: 44 + acceptance_rate: "14.1%" + source: https://github.com/emeryberger/csconferences + - year: 2006 + submissions: 395 + accepted: 36 + acceptance_rate: "9.1%" + source: https://github.com/emeryberger/csconferences + - year: 2007 + submissions: 334 + accepted: 49 + acceptance_rate: "14.7%" + source: https://github.com/emeryberger/csconferences + - year: 2008 + submissions: 371 + accepted: 56 + acceptance_rate: "15.1%" + source: https://github.com/emeryberger/csconferences + - year: 2009 + submissions: 405 + accepted: 50 + acceptance_rate: "12.3%" + source: https://github.com/emeryberger/csconferences + - year: 2010 + submissions: 380 + accepted: 52 + acceptance_rate: "13.7%" + source: https://github.com/emeryberger/csconferences + - year: 2011 + submissions: 441 + accepted: 62 + acceptance_rate: "14.1%" + source: https://github.com/emeryberger/csconferences + - year: 2012 + submissions: 408 + accepted: 87 + acceptance_rate: "21.3%" + source: https://dl.acm.org/action/showFmPdf?doi=10.5555%2F2337223 + note: "technical track only" + - year: 2013 + submissions: 461 + accepted: 85 + acceptance_rate: "18.4%" + source: https://github.com/emeryberger/csconferences + - year: 2014 + submissions: 496 + accepted: 99 + acceptance_rate: "20.0%" + source: https://github.com/emeryberger/csconferences + - year: 2015 + submissions: 452 + accepted: 84 + acceptance_rate: "18.6%" + source: https://github.com/emeryberger/csconferences + - year: 2016 + submissions: 530 + accepted: 101 + acceptance_rate: "19.1%" + source: https://github.com/emeryberger/csconferences + - year: 2017 + submissions: 415 + accepted: 68 + acceptance_rate: "16.4%" + source: https://github.com/emeryberger/csconferences + - year: 2018 + submissions: 502 + accepted: 105 + acceptance_rate: "20.9%" + source: https://github.com/emeryberger/csconferences + - year: 2019 + submissions: 529 + accepted: 109 + acceptance_rate: "20.6%" + source: https://github.com/emeryberger/csconferences + - year: 2020 + submissions: 617 + accepted: 129 + acceptance_rate: "20.9%" + source: https://github.com/emeryberger/csconferences + - year: 2021 + submissions: 615 + accepted: 138 + acceptance_rate: "22.4%" + source: https://github.com/emeryberger/csconferences + - year: 2022 + submissions: 691 + accepted: 197 + acceptance_rate: "28.5%" + source: https://github.com/emeryberger/csconferences + - year: 2023 + submissions: 780 + accepted: 207 + acceptance_rate: "26.5%" + source: https://github.com/emeryberger/csconferences + - year: 2024 + submissions: 1049 + accepted: 234 + acceptance_rate: "22.3%" + source: https://github.com/emeryberger/csconferences + - year: 2025 + submissions: 1150 + accepted: 245 + acceptance_rate: "21.3%" + source: https://conf.researchr.org/home/icse-2025 + note: "front matter: 508 cycle 1 + 642 cycle 2" + - year: 2026 + submissions: 1469 + accepted: 321 + acceptance_rate: "21.9%" + source: https://conf.researchr.org/home/icse-2026 + note: "321 of 1469 (two cycles combined)" + +FSE: + - year: 2011 + submissions: 203 + accepted: 34 + acceptance_rate: "16.7%" + source: https://github.com/emeryberger/csconferences + - year: 2012 + submissions: 201 + accepted: 35 + acceptance_rate: "17.4%" + source: https://github.com/emeryberger/csconferences + - year: 2013 + submissions: 251 + accepted: 51 + acceptance_rate: "20.3%" + source: https://github.com/emeryberger/csconferences + - year: 2014 + submissions: 273 + accepted: 61 + acceptance_rate: "22.3%" + source: https://github.com/emeryberger/csconferences + - year: 2015 + submissions: 291 + accepted: 74 + acceptance_rate: "25.4%" + source: https://github.com/emeryberger/csconferences + - year: 2016 + submissions: 266 + accepted: 74 + acceptance_rate: "27.8%" + source: https://github.com/emeryberger/csconferences + - year: 2017 + submissions: 295 + accepted: 72 + acceptance_rate: "24.4%" + source: https://github.com/emeryberger/csconferences + - year: 2018 + submissions: 295 + accepted: 61 + acceptance_rate: "20.7%" + source: https://github.com/emeryberger/csconferences + - year: 2019 + submissions: 303 + accepted: 74 + acceptance_rate: "24.4%" + source: https://github.com/emeryberger/csconferences + - year: 2020 + submissions: 360 + accepted: 101 + acceptance_rate: "28.1%" + source: https://github.com/emeryberger/csconferences + - year: 2021 + submissions: 407 + accepted: 97 + acceptance_rate: "23.8%" + source: https://github.com/emeryberger/csconferences + - year: 2022 + submissions: 449 + accepted: 99 + acceptance_rate: "22.0%" + source: https://github.com/emeryberger/csconferences + - year: 2023 + submissions: 465 + accepted: 127 + acceptance_rate: "27.3%" + source: https://github.com/emeryberger/csconferences + - year: 2024 + submissions: 474 + accepted: 121 + acceptance_rate: "25.5%" + source: https://github.com/emeryberger/csconferences + - year: 2025 + submissions: 515 + accepted: 135 + acceptance_rate: "26.2%" + source: https://github.com/emeryberger/csconferences + +ASE: + - year: 1997 + submissions: 108 + accepted: 32 + acceptance_rate: "29.6%" + source: https://github.com/emeryberger/csconferences + - year: 1998 + submissions: 150 + accepted: 24 + acceptance_rate: "16.0%" + source: https://github.com/emeryberger/csconferences + - year: 1999 + submissions: 123 + accepted: 25 + acceptance_rate: "20.3%" + source: https://github.com/emeryberger/csconferences + - year: 2000 + submissions: 100 + accepted: 23 + acceptance_rate: "23.0%" + source: https://github.com/emeryberger/csconferences + - year: 2001 + submissions: 164 + accepted: 32 + acceptance_rate: "19.5%" + source: https://github.com/emeryberger/csconferences + - year: 2002 + submissions: 94 + accepted: 19 + acceptance_rate: "20.2%" + source: https://github.com/emeryberger/csconferences + - year: 2004 + submissions: 183 + accepted: 25 + acceptance_rate: "13.7%" + source: https://github.com/emeryberger/csconferences + - year: 2005 + submissions: 291 + accepted: 28 + acceptance_rate: "9.6%" + source: https://github.com/emeryberger/csconferences + - year: 2006 + submissions: 121 + accepted: 22 + acceptance_rate: "18.2%" + source: https://github.com/emeryberger/csconferences + - year: 2007 + submissions: 312 + accepted: 37 + acceptance_rate: "11.9%" + source: https://github.com/emeryberger/csconferences + - year: 2008 + submissions: 280 + accepted: 34 + acceptance_rate: "12.1%" + source: https://github.com/emeryberger/csconferences + - year: 2009 + submissions: 220 + accepted: 38 + acceptance_rate: "17.3%" + source: https://github.com/emeryberger/csconferences + - year: 2010 + submissions: 190 + accepted: 33 + acceptance_rate: "17.4%" + source: https://github.com/emeryberger/csconferences + - year: 2011 + submissions: 252 + accepted: 37 + acceptance_rate: "14.7%" + source: https://github.com/emeryberger/csconferences + - year: 2012 + submissions: 138 + accepted: 21 + acceptance_rate: "15.2%" + source: https://github.com/emeryberger/csconferences + - year: 2013 + submissions: 254 + accepted: 43 + acceptance_rate: "16.9%" + source: https://github.com/emeryberger/csconferences + - year: 2014 + submissions: 276 + accepted: 50 + acceptance_rate: "18.1%" + source: https://github.com/emeryberger/csconferences + - year: 2015 + submissions: 289 + accepted: 55 + acceptance_rate: "19.0%" + source: https://github.com/emeryberger/csconferences + - year: 2016 + submissions: 284 + accepted: 53 + acceptance_rate: "18.7%" + source: https://github.com/emeryberger/csconferences + - year: 2017 + submissions: 367 + accepted: 88 + acceptance_rate: "24.0%" + source: https://github.com/emeryberger/csconferences + - year: 2018 + submissions: 386 + accepted: 64 + acceptance_rate: "16.6%" + source: https://github.com/emeryberger/csconferences + - year: 2019 + submissions: 448 + accepted: 91 + acceptance_rate: "20.3%" + source: https://github.com/emeryberger/csconferences + - year: 2020 + submissions: 395 + accepted: 88 + acceptance_rate: "22.3%" + source: https://github.com/emeryberger/csconferences + - year: 2021 + submissions: 440 + accepted: 120 + acceptance_rate: "27.3%" + source: personal communication with Lingming Zhang + - year: 2022 + submissions: 531 + accepted: 116 + acceptance_rate: "21.8%" + source: https://github.com/emeryberger/csconferences + - year: 2023 + submissions: 633 + accepted: 134 + acceptance_rate: "21.2%" + source: https://github.com/emeryberger/csconferences + - year: 2024 + submissions: 587 + accepted: 155 + acceptance_rate: "26.4%" + source: https://github.com/emeryberger/csconferences + - year: 2025 + submissions: 1181 + accepted: 246 + acceptance_rate: "20.8%" + source: personal communication with Lingming Zhang + +ISSTA: + - year: 1994 + submissions: 69 + accepted: 16 + acceptance_rate: "23.2%" + source: https://github.com/emeryberger/csconferences + - year: 1998 + submissions: 47 + accepted: 16 + acceptance_rate: "34.0%" + source: https://github.com/emeryberger/csconferences + - year: 2002 + submissions: 97 + accepted: 26 + acceptance_rate: "26.8%" + source: https://github.com/emeryberger/csconferences + - year: 2004 + submissions: 93 + accepted: 26 + acceptance_rate: "28.0%" + source: https://github.com/emeryberger/csconferences + - year: 2006 + submissions: 84 + accepted: 22 + acceptance_rate: "26.2%" + source: https://github.com/emeryberger/csconferences + - year: 2007 + submissions: 101 + accepted: 22 + acceptance_rate: "21.8%" + source: https://github.com/emeryberger/csconferences + - year: 2008 + submissions: 101 + accepted: 26 + acceptance_rate: "25.7%" + source: https://github.com/emeryberger/csconferences + - year: 2009 + submissions: 93 + accepted: 25 + acceptance_rate: "26.9%" + source: https://github.com/emeryberger/csconferences + - year: 2010 + submissions: 100 + accepted: 23 + acceptance_rate: "23.0%" + source: https://github.com/emeryberger/csconferences + - year: 2011 + submissions: 121 + accepted: 35 + acceptance_rate: "28.9%" + source: https://github.com/emeryberger/csconferences + - year: 2012 + submissions: 108 + accepted: 31 + acceptance_rate: "28.7%" + source: https://github.com/emeryberger/csconferences + - year: 2013 + submissions: 124 + accepted: 32 + acceptance_rate: "25.8%" + source: https://github.com/emeryberger/csconferences + - year: 2014 + submissions: 128 + accepted: 36 + acceptance_rate: "28.1%" + source: https://github.com/emeryberger/csconferences + - year: 2015 + submissions: 119 + accepted: 33 + acceptance_rate: "27.7%" + source: https://github.com/emeryberger/csconferences + - year: 2016 + submissions: 147 + accepted: 37 + acceptance_rate: "25.2%" + source: https://github.com/emeryberger/csconferences + - year: 2017 + submissions: 118 + accepted: 31 + acceptance_rate: "26.3%" + source: https://github.com/emeryberger/csconferences + - year: 2018 + submissions: 132 + accepted: 31 + acceptance_rate: "23.5%" + source: https://github.com/emeryberger/csconferences + - year: 2019 + submissions: 142 + accepted: 32 + acceptance_rate: "22.5%" + source: https://github.com/emeryberger/csconferences + - year: 2020 + submissions: 162 + accepted: 43 + acceptance_rate: "26.5%" + source: https://github.com/emeryberger/csconferences + - year: 2021 + submissions: 233 + accepted: 51 + acceptance_rate: "21.9%" + source: https://github.com/emeryberger/csconferences + - year: 2022 + submissions: 250 + accepted: 61 + acceptance_rate: "24.4%" + source: https://github.com/emeryberger/csconferences + - year: 2023 + submissions: 406 + accepted: 117 + acceptance_rate: "28.8%" + source: https://github.com/emeryberger/csconferences + - year: 2024 + submissions: 694 + accepted: 143 + acceptance_rate: "20.6%" + source: https://github.com/emeryberger/csconferences + - year: 2025 + submissions: 550 + accepted: 107 + acceptance_rate: "19.5%" + source: https://conf.researchr.org/home/issta-2025 + note: "107 of 550; single research track" diff --git a/_data/conferences.yml b/_data/conferences.yml index 4b61f16..9a864ea 100644 --- a/_data/conferences.yml +++ b/_data/conferences.yml @@ -8,7 +8,7 @@ date: April 25 - May 1, 2027 place: Dublin, Ireland note: Mandatory abstract deadline on June 23 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-ASTAR] - name: ICSE-SEIP description: International Conference on Software Engineering - Software Engineering in Practice @@ -569,7 +569,7 @@ - "2026-10-02 23:59" date: July 12 - 16, 2027 place: Shenzhen, China - tags: [CO,RPT] + tags: [CO, RPT, CORE-ASTAR] - name: FSE-IP description: International Conference on the Foundations of Software Engineering - Industry Papers @@ -579,7 +579,7 @@ - "2027-01-23 23:59" date: July 12 - 16, 2027 place: Shenzhen, China - tags: [CO,IPT] + tags: [CO, IPT] - name: FSE-IVR description: International Conference on the Foundations of Software Engineering - Ideas, Visions and Reflections Track @@ -812,7 +812,7 @@ date: TBD, co-hosted with FSE 2026 place: Montreal, Canada note: Abstract deadline on Jan 9, 2026. - tags: [CO, RPT, IPT, NIER, JFT] + tags: [CO, RPT, IPT, NIER, JFT, CORE-UNCLASSIFIED] #AIware - name: AIware @@ -823,7 +823,7 @@ - "2026-02-12 23:59" date: July 6-7, co-hosted with FSE 2026 place: Montreal, Canada - tags: [CO, RPT] + tags: [CO, RPT, CORE-UNCLASSIFIED] - name: AIware-AXVT @@ -858,7 +858,7 @@ date: October 4 - October 9, 2026 place: München, Germany note: Mandatory abstract deadline on May 11, 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: ESEM-ERVR description: International Symposium on Empirical Software Engineering and Measurement - Emerging Results, Vision and Reflection Papers @@ -923,7 +923,7 @@ date: July 20-22, 2026 place: Florence, Italy note: Mandatory abstract deadline on February 2026. - tags: [CO, EDT] + tags: [CO, EDT, CORE-C] #SCORED - name: SCORED @@ -934,7 +934,7 @@ - "2026-07-19 23:59" date: October 6, 2026 with OpenSSF Community Day 2026 place: Prague, Czechia - tags: [CO, RPT, IPT] + tags: [CO, RPT, IPT, CORE-UNCLASSIFIED] # ICSMEs - name: ICSME @@ -946,7 +946,7 @@ date: September 14 - September 18, 2026 place: Benevento, Italy note: Abstract deadline on February 27, 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: ICSME-NIER description: International Conference on Software Maintenance and Evolution - New Ideas and Emerging Results @@ -1032,8 +1032,8 @@ - "2027-01-11 23:59" date: September 7-10, 2027 place: Singapore - Note: Mandatory abstract deadline on January 8, 2027. - tags: [CO, RPT] + note: Mandatory abstract deadline on January 8, 2027. + tags: [CO, RPT, CORE-A] - name: FTA description: International Workshop on Firmware Testing and Analysis @@ -1053,7 +1053,7 @@ - "2026-01-29 23:59" date: TBD, co-hosted with FSE 2026 place: Montreal, Canada - tags: [CO, RPT, SPT, TTBT, EXPT] + tags: [CO, RPT, SPT, TTBT, EXPT, CORE-UNCLASSIFIED] # ISSRE - name: ISSRE @@ -1065,7 +1065,7 @@ date: October 20 - 23, 2026 place: Limassol, Cyprus note: Mandatory abstract deadline on April 10 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: ISSRE-IT description: International Symposium on Software Reliability Engineering - Industry Track @@ -1118,7 +1118,7 @@ date: March 9 - 12, 2027 place: Richmond, Virginia note: Mandatory abstract deadline on September 21 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: SANER-IT description: International Conference on Software Analysis, Evolution and Reengineering - Industrial Track @@ -1208,7 +1208,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: 'Theme: Testing in the Age of AI: Governance, Compliance, and Oversight.' - tags: [CO, RPT, SPT, IPT] + tags: [CO, RPT, SPT, IPT, CORE-C] #CHASEs @@ -1221,7 +1221,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: Abstract deadline on October 16, 2026. - tags: [CO, RPT, SPT] + tags: [CO, RPT, SPT, CORE-B] - name: CHASE-DS description: International Conference on Cooperative and Human Aspects of Software Engineering - Doctoral Symposium @@ -1244,7 +1244,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: Abstract deadline on October 23, 2026. - tags: [CO, RPT, NIER] + tags: [CO, RPT, NIER, CORE-UNCLASSIFIED] - name: FORGE-DB description: International conference on AI Foundation Models and Software Engineering - Data and Benchmarking Track @@ -1265,7 +1265,7 @@ - "2026-10-21 23:59" date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland - tags: [CO, RPT, SPT, IPT] + tags: [CO, RPT, SPT, IPT, CORE-A] - name: SEAMS-AT @@ -1299,7 +1299,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: Mandatory abstract deadline 20 October 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: MSR-TT description: Mining Software Repositories - Tutorial Track @@ -1365,7 +1365,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: Mandatory abstract deadline 29 October, 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: ICPC-ERA description: International Conference on Program Comprehension - Early Research Achievements Track @@ -1409,7 +1409,7 @@ - "2026-10-30 23:59" date: April 25-26, 2027 with ICSE 2027 place: Dublin, Ireland - tags: [CO, RPT] + tags: [CO, RPT, CORE-B] - name: CAIN-IT description: International Conference on AI Engineering - Software Engineering for AI - Industry Track @@ -1432,7 +1432,7 @@ date: April 25-26, 2027 with ICSE 2027 place: Dublin, Ireland note: Mandatory abstract deadline on October 19 2026. - tags: [CO, RPT, SPT, EXPT] + tags: [CO, RPT, SPT, EXPT, CORE-B] - name: TechDebt-JF description: International Conference on Technical Debt - Journal First Track @@ -1463,7 +1463,7 @@ date: April 26-27, 2027 with ICSE 2027 place: Dublin, Ireland note: Mandatory abstract deadline on October 30, 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-UNCLASSIFIED] #REs - name: RE-RP @@ -1475,7 +1475,7 @@ date: August 17 - August 21, 2026 place: Montreal, Canada note: Abstract deadline February 16, 2026. - tags: [CO,RPT] + tags: [CO, RPT, CORE-A] - name: RE-ART description: Requirements Engineering - Artifacts @@ -1485,7 +1485,7 @@ - "2026-06-01 23:59" date: August 17 - August 21, 2026 place: Montreal, Canada - tags: [CO,ART] + tags: [CO, ART] - name: RE-DS description: Requirements Engineering - Doctoral Symposium @@ -1506,7 +1506,7 @@ date: August 17 - August 21, 2026 place: Montreal, Canada note: Abstract deadline March 6, 2026. - tags: [CO,IPT] + tags: [CO, IPT] - name: RE-JF description: Requirements Engineering - Journal-First @@ -1526,7 +1526,7 @@ - "2026-05-28 23:59" date: August 17 - August 21, 2026 place: Montreal, Canada - tags: [CO,POS] + tags: [CO, POS] - name: RE-ODI description: Requirements Engineering - RE Open Data Initiative @@ -1536,7 +1536,7 @@ - "2025-12-18 23:59" date: August 17 - August 21, 2026 place: Montreal, Canada - tags: [CO,DB] + tags: [CO, DB] - name: RE@Next! description: Requirements Engineering - Next! @@ -1547,7 +1547,7 @@ date: August 17 - August 21, 2026 place: Montreal, Canada note: Abstract deadline March 6, 2026. - tags: [CO,NIER] + tags: [CO, NIER] - name: RE-TUT description: Requirements Engineering - Tutorials @@ -1557,7 +1557,7 @@ - "2026-04-13 23:59" date: August 17 - August 21, 2026 place: Montreal, Canada - tags: [CO,TTBT] + tags: [CO, TTBT] #REFSQ @@ -1570,7 +1570,7 @@ date: August 17 - August 21, 2026 place: Basel, Switzerland note: Optional abstract deadline on November 5th. - tags: [CO, RPT] + tags: [CO, RPT, CORE-B] #XPs @@ -1582,7 +1582,7 @@ - "2025-11-28 23:59" date: April 8 - April 11, 2026 place: São Paulo, Brazil - tags: [CO, RPT] + tags: [CO, RPT, CORE-B] - name: XP-IP description: International Conference on Agile Software Development - Industry & Practice @@ -1603,7 +1603,7 @@ - "2026-04-15 23:59" date: September 2 - September 5, 2026 place: Krakow, Poland - tags: [CO, RPT] + tags: [CO, RPT, CORE-B] - name: DSD-RPT description: Euromicro Conference Series on Digital System Design (DSD) - Research Paper Track @@ -1613,7 +1613,7 @@ - "2026-04-15 23:59" date: September 2 - September 5, 2026 place: Krakow, Poland - tags: [CO, RPT] + tags: [CO, RPT, CORE-C] # ASE 2025 - name: ASE @@ -1624,7 +1624,7 @@ - "2026-03-26 23:59" date: October 12 - October 16, 2026 place: Munich, Germany - tags: [CO, RPT] + tags: [CO, RPT, CORE-ASTAR] - name: ASE-IS description: International Conference on Automated Software Engineering (ASE) - Industry Showcase @@ -1721,7 +1721,7 @@ - "2026-07-24 23:59" date: October 12 - October 16, 2026 place: Munich, Germany - tags: [WO] + tags: [WO] #SSBSE - name: SSBSE @@ -1732,7 +1732,7 @@ - "2026-02-20 23:59" date: July 5 - July 6, co-hosted with FSE 2026 place: Montreal, Canada - tags: [CO, RPT] + tags: [CO, RPT, CORE-B] #EASE - name: EASE-RP @@ -1744,7 +1744,7 @@ date: June 15 - June 18, 2027 place: Hanoi, Vietnam note: Abstract deadline on January 15, 2027 - tags: [CO, RPT] + tags: [CO, RPT, CORE-A] - name: EASE-SPER description: The International Conference on Evaluation and Assessment in Software Engineering (EASE) - Short Papers and Emerging Results @@ -1941,5 +1941,5 @@ date: December 7-10, 2026 place: Bali, Indonesia note: Abstract deadline on July 6, 2026. - tags: [CO, RPT] + tags: [CO, RPT, CORE-C] diff --git a/_data/core_rankings.yml b/_data/core_rankings.yml new file mode 100644 index 0000000..a3743c5 --- /dev/null +++ b/_data/core_rankings.yml @@ -0,0 +1,82 @@ +# CORE rankings backing the "CORE Ranking" filter tags (CORE-ASTAR, CORE-A, +# CORE-B, CORE-C, CORE-UNCLASSIFIED) in conferences.yml. +# +# Verified directly against https://portal.core.edu.au/conf-ranks/ (source +# year ICORE2026) on 2026-09-19, by searching each conference's full official +# name/acronym and reading the rank off its result. `core_id` is the numeric +# id in that page's URL, e.g. https://portal.core.edu.au/conf-ranks/1209/ for +# ICSE, so a listing can be re-checked later. +# +# Only a conference's main research track carries the CORE-* tag in +# conferences.yml; industry/NIER/doctoral-symposium/etc. sub-tracks are not +# separately ranked by CORE, so they carry no rank tag at all. + +A*: + - name: ICSE + core_id: 1209 + - name: FSE + core_id: 52 + - name: ASE + core_id: 279 + +A: + - name: ISSTA + core_id: 1412 + - name: ICSME + core_id: 676 + - name: MSR + core_id: 711 + - name: RE + core_id: 690 + - name: ESEM + core_id: 1376 + - name: ICPC + core_id: 1181 + - name: SANER + core_id: 2280 + - name: EASE + core_id: 1022 + - name: ISSRE + core_id: 1411 + - name: SEAMS + core_id: 2281 + +B: + - name: REFSQ + core_id: 1521 + - name: CAIN + core_id: 2337 + - name: CHASE + core_id: 2348 + - name: TechDebt + core_id: 2288 + - name: XP + core_id: 355 + - name: SEAA + core_id: 464 + - name: SSBSE + core_id: 2283 + +C: + - name: APSEC + core_id: 186 + - name: CSEE&T + core_id: 380 + - name: AST + core_id: 281 + - name: DSD + core_id: 2334 + +Unclassified: + - name: PROMISE + note: Not found in the CORE database. + - name: AIware + note: Not found in the CORE database. + - name: SCORED + note: Not found in the CORE database. + - name: SecDev + note: Not found in the CORE database. + - name: FormaliSE + note: Not found in the CORE database. + - name: FORGE + note: Not found in the CORE database. diff --git a/_data/types.yml b/_data/types.yml index c906ec0..ec08528 100644 --- a/_data/types.yml +++ b/_data/types.yml @@ -79,4 +79,21 @@ type: others - name: Posters track tag: POS - type: others \ No newline at end of file + type: others + +# CORE Ranking +- name: A* + tag: CORE-ASTAR + type: rank +- name: A + tag: CORE-A + type: rank +- name: B + tag: CORE-B + type: rank +- name: C + tag: CORE-C + type: rank +- name: Unclassified + tag: CORE-UNCLASSIFIED + type: rank diff --git a/index.html b/index.html index fbf7c2c..679db23 100644 --- a/index.html +++ b/index.html @@ -12,6 +12,7 @@ +
@@ -30,30 +31,59 @@

Last update: {{ site.time | date: "%-d %B %Y" }}

- Deadlines as iCal: - all; + Deadlines as iCal: + all;

+
+
+
+ Show acceptance statistics (ICSE, FSE, ASE, ISSTA) +
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+

- Select one or more tags to filter (otherwise all deadlines are displayed): + Select one or more tags to filter (otherwise all deadlines are displayed):
{% assign grouped_types = site.data.types | group_by: 'type' %} {% for group in grouped_types %}
-

{{ group.name | capitalize }}

+ + {% case group.name %} + {% when 'venue' %}📄 Publication Type + {% when 'rank' %}⭐ CORE Ranking + {% when 'track' %}🏷️ Track + {% else %}{{ group.name | capitalize }} + {% endcase %} + {% for type in group.items %}
{% endfor %}
+
{% endfor %}
@@ -111,8 +141,141 @@

{{conf.name}} {{conf.year}}

- + {% if site.ga_id %} {% include analytics.html %} {% endif %} diff --git a/static/css/deadlines.css b/static/css/deadlines.css index d23f903..09fcf74 100644 --- a/static/css/deadlines.css +++ b/static/css/deadlines.css @@ -88,6 +88,43 @@ a:hover, a:focus { margin-right: 1em; } +.tagtitle { + display: block; + margin-bottom: 0.5em; +} + +.mytitle { + display: inline-block; + min-width: 9em; + margin-right: 0.5em; +} + footer { margin-bottom: 2em; } + +#acceptance-stats-details { + margin-bottom: 1em; +} + +.acceptance-stats-toggle { + cursor: pointer; + list-style: none; + font-weight: bold; +} + +.acceptance-stats-toggle::-webkit-details-marker { + display: none; +} + +.acceptance-stats-toggle::marker { + content: ""; +} + +.acceptance-stats-charts { + margin-top: 1em; +} + +.acceptance-stats-charts canvas { + margin-bottom: 2em; +} diff --git a/static/js/main.js b/static/js/main.js index de0ea72..ac2f706 100644 --- a/static/js/main.js +++ b/static/js/main.js @@ -102,64 +102,162 @@ $(function() { }); $('.conf-container').append(confs); - // Set checkboxes + // Build filter groups (venue type, track, others, CORE rank, ...) from types.yml, + // keyed by their `type` field, each holding the {name, tag} pairs in that group. var conf_type_data = {{ site.data.types | jsonify }}; - var all_tags = []; - var toggle_status = {}; - for (var i = 0; i < conf_type_data.length; i++) { - all_tags[i] = conf_type_data[i]['tag']; - toggle_status[all_tags[i]] = false; + var filterGroups = {}; + conf_type_data.forEach(function(item) { + if (!filterGroups[item.type]) { + filterGroups[item.type] = []; + } + filterGroups[item.type].push({ name: item.name, tag: item.tag }); + }); + + var all_tags = Object.keys(filterGroups) + .reduce(function(acc, key) { return acc.concat(filterGroups[key]); }, []) + .map(function(item) { return item.tag; }); + + var nameToTag = {}; + var tagToName = {}; + Object.keys(filterGroups).forEach(function(group) { + filterGroups[group].forEach(function(item) { + nameToTag[item.name] = item.tag; + tagToName[item.tag] = item.name; + }); + }); + + function addUnique(array, value) { + if (array.indexOf(value) === -1) array.push(value); } - var tags = store.get('{{ site.domain }}'); - if (tags === undefined) { - tags = all_tags; + + function getQueryParamParts(name) { + function decodeQueryComponent(value) { + value = value.replace(/\+/g, ' '); + try { return decodeURIComponent(value); } + catch (e) { return value; } + } + + var pairs = window.location.search.slice(1).split('&'); + + for (var i = 0; i < pairs.length; i++) { + var pair = pairs[i].split('='); + var key = pair.shift(); + + if (decodeQueryComponent(key) === name) { + return pair.join('=').split(',').map(decodeQueryComponent); + } + } + + return null; + } + + function readSelectionFromUrl() { + var found = false; + var selected = {}; + Object.keys(filterGroups).forEach(function(group) { + selected[group] = []; + var names = getQueryParamParts(group); + if (names === null) return; + + found = true; + + names.forEach(function(name) { + var tag = nameToTag[name]; + if (tag) addUnique(selected[group], tag); + }); + }); + return found ? selected : null; + } + + // Only the URL's query params preselect filters; with none, every checkbox + // starts unchecked (selecting nothing shows every entry). + var initialSelection = readSelectionFromUrl(); + var initialTags = []; + if (initialSelection) { + Object.keys(initialSelection).forEach(function(group) { + initialSelection[group].forEach(function(tag) { + initialTags.push(tag); + }); + }); + } + + for (var i = 0; i < all_tags.length; i++) { + var tag = all_tags[i]; + $('#' + tag + '-checkbox').prop('checked', initialTags.indexOf(tag) !== -1); + } + + function getSelectedFiltersFromDOM() { + var selected = {}; + Object.keys(filterGroups).forEach(function(group) { selected[group] = []; }); + + $('.filter-checkbox:checked').each(function() { + var tag = $(this).attr('id').replace('-checkbox', ''); + var filterGroup = $(this).data('filter-group'); + + if (filterGroup && selected[filterGroup]) { + addUnique(selected[filterGroup], tag); + } + }); + + return selected; } - for (var i = 0; i < tags.length; i++) { - $('#' + tags[i] + '-checkbox').prop('checked', false); - toggle_status[tags[i]] = false; + + function updateUrlFromSelection() { + var selected = getSelectedFiltersFromDOM(); + var queryParts = []; + + Object.keys(filterGroups).forEach(function(group) { + var encodedNames = []; + + selected[group].forEach(function(tag) { + var name = tagToName[tag]; + if (name) encodedNames.push(encodeURIComponent(name)); + }); + + if (encodedNames.length > 0) { + queryParts.push(encodeURIComponent(group) + '=' + encodedNames.join(',')); + } + }); + + var query = queryParts.join('&'); + var newUrl = window.location.pathname + (query ? '?' + query : '') + window.location.hash; + + if (window.history && window.history.replaceState) { + window.history.replaceState(null, '', newUrl); + } } - store.set('{{ site.domain }}', tags); function update_conf_list() { + var selectedFilters = getSelectedFiltersFromDOM(); + confs.each(function(i, conf) { var conf = $(conf); - var show = false; - var set_tags = []; - for (var i = 0; i < all_tags.length; i++) { - // if tag has been selected by user, check if the conference has it - if(toggle_status[all_tags[i]]) { - set_tags.push(conf.hasClass(all_tags[i])); - } - } - let empty_or_all_true = arr => arr.every(Boolean); - // show a conference if it has all user-selected tags - // if no tag is set (= array is empty), show all entries - show = empty_or_all_true(set_tags); - if (show) { - conf.show(); - } else { - conf.hide() - } + var show = true; + + Object.keys(selectedFilters).forEach(function(group) { + if (!show) return; + if (selectedFilters[group].length === 0) return; + + var hasTag = false; + selectedFilters[group].forEach(function(tag) { + if (conf.hasClass(tag)) hasTag = true; + }); + + // Require at least one selected tag per group (OR within a group), + // but every group with a selection must be satisfied (AND across groups). + if (!hasTag) show = false; + }); + + conf.toggle(show); }); } - update_conf_list(); // Event handler on checkbox change - $('form :checkbox').change(function(e) { - var checked = $(this).is(':checked'); - var tag = $(this).prop('id').slice(0, -9); - toggle_status[tag] = checked; - - if (checked == true) { - if (tags.indexOf(tag) < 0) - tags.push(tag); - } - else { - var idx = tags.indexOf(tag); - if (idx >= 0) - tags.splice(idx, 1); - } - store.set('{{ site.domain }}', tags); + $('.filter-checkbox').on('change', function() { update_conf_list(); + updateUrlFromSelection(); }); + + update_conf_list(); + updateUrlFromSelection(); });