Skip to content

Commit e442830

Browse files
jeremymanningclaude
andcommitted
fix alumni ordering: use CV order within same start year
- Changed secondary sort from alphabetical to stable (preserves spreadsheet order) - Reordered spreadsheet to match CV order (by CV entry number descending) - 2025 starters now correctly ordered: Jackson, Luca, Annabelle, Owen, Rodrigo 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 04e19ed commit e442830

3 files changed

Lines changed: 70 additions & 69 deletions

File tree

data/people.xlsx

8 Bytes
Binary file not shown.

people.html

Lines changed: 67 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -252,119 +252,119 @@ <h3>Lab Managers</h3>
252252
<div>
253253
<h3>Undergraduate Researchers</h3>
254254
<p class="alumni-list">
255-
Annabelle Morrow (2025-2026)<br>
256255
Jackson C. Sandrich (2025-2026)<br>
257256
Luca Gandrud (2025-2026)<br>
257+
Annabelle Morrow (2025-2026)<br>
258258
Owen Phillips (2025-2026)<br>
259259
Rodrigo Vega Ayllon (2025)<br>
260-
Abigayle McCusker (2024)<br>
261-
Andrew Cao (2024)<br>
262-
Ansh Motiani (2024)<br>
263-
Can Kam (2024)<br>
264260
Chelsea Joe (2024-2026)<br>
265-
Chloe Terestchenko (2024)<br>
266-
Everett Tai (2024)<br>
267261
Harrison Stropkay (2024-2025)<br>
268-
Kaitlyn Peng (2024)<br>
269-
Manraaj Singh (2024)<br>
270262
Miel Wewerka (2024)<br>
263+
Manraaj Singh (2024)<br>
264+
Can Kam (2024)<br>
271265
Rohan Goyal (2024)<br>
266+
Abigayle McCusker (2024)<br>
272267
Torsha Chakraverty (2024)<br>
273-
Aaryan Agarwal (2023-2024)<br>
274-
Ameer Talha Yasser (2023)<br>
275-
Andrew Shi (2023)<br>
276-
Ash Chinta (2023)<br>
277-
Charles Baker (2023)<br>
278-
DJ Matusz (2023-2024)<br>
279-
Elias Emery (2023)<br>
280-
Emma Reeder (2023-2024)<br>
281-
Francisca Fadairo (2023)<br>
282-
Grace Wang (2023)<br>
283-
Grady Redding (2023-2024)<br>
268+
Chloe Terestchenko (2024)<br>
269+
Ansh Motiani (2024)<br>
270+
Kaitlyn Peng (2024)<br>
271+
Everett Tai (2024)<br>
272+
Andrew Cao (2024)<br>
284273
Jake McDermid (2023-2025)<br>
274+
Michael Chen (2023-2024)<br>
275+
Grady Redding (2023-2024)<br>
276+
DJ Matusz (2023-2024)<br>
277+
Aaryan Agarwal (2023-2024)<br>
285278
Maura Hough (2023-2024)<br>
279+
Emma Reeder (2023-2024)<br>
286280
Megan Liu (2023-2024)<br>
287-
Michael Chen (2023-2024)<br>
288281
Mira Chiruvolu (2023-2024)<br>
289-
Natalie Schreder (2023)<br>
290-
Raselas Dessalegn (2023)<br>
291282
Safwan Rashid (2023)<br>
292-
Sergio Campos Legonia (2023)<br>
293-
William McCall (2023)<br>
294-
Xueyao Zheng (2023)<br>
283+
Francisca Fadairo (2023)<br>
284+
Ameer Talha Yasser (2023)<br>
295285
Yue Zhuo (2023)<br>
286+
Charles Baker (2023)<br>
287+
Andrew Shi (2023)<br>
288+
Ash Chinta (2023)<br>
289+
Xueyao Zheng (2023)<br>
290+
Sergio Campos Legonia (2023)<br>
291+
Elias Emery (2023)<br>
296292
Yvonne Chen (2023)<br>
297-
Alexander Marcoux (2022)<br>
298-
Anna Mikhailova (2022)<br>
293+
William McCall (2023)<br>
294+
Natalie Schreder (2023)<br>
295+
Raselas Dessalegn (2023)<br>
296+
Grace Wang (2023)<br>
299297
Ansh Patel (2022-2024)<br>
298+
Ziyan Zhu (2022-2023)<br>
299+
Anna Mikhailova (2022)<br>
300300
Benjamin Lehrburger (2022)<br>
301-
Dawson Haddox (2022)<br>
302-
Goutham Veeramachaneni (2022)<br>
303-
Jessna Brar (2022)<br>
304-
Kevin Cao (2022)<br>
305-
Samuel Crombie (2022)<br>
306-
Swestha Jain (2022)<br>
307301
Thomas Corrado (2022)<br>
302+
Samuel Crombie (2022)<br>
303+
Alexander Marcoux (2022)<br>
304+
Jessna Brar (2022)<br>
308305
Wenhua Liang (2022)<br>
306+
Kevin Cao (2022)<br>
307+
Goutham Veeramachaneni (2022)<br>
309308
Zachary Somma (2022)<br>
310-
Ziyan Zhu (2022-2023)<br>
311-
Aidan Adams (2021)<br>
309+
Dawson Haddox (2022)<br>
310+
Swestha Jain (2022)<br>
311+
Kunal Jha (2021-2024)<br>
312+
Daniel Carstensen (2021-2024)<br>
312313
Brian Chiang (2021-2022)<br>
314+
Aidan Adams (2021)<br>
313315
Damini Kohli (2021)<br>
314-
Daniel Carstensen (2021-2024)<br>
315316
Daniel Ha (2021)<br>
316-
Kunal Jha (2021-2024)<br>
317-
Austin Zhang (2020)<br>
318-
Chelsea Uddenberg (2020)<br>
319-
Chetan Palvuluri (2020)<br>
317+
Tyler Chen (2020-2022)<br>
320318
Chris Jun (2020-2022)<br>
321-
Chris Long (2020-2021)<br>
322-
Chris Suh (2020-2021)<br>
319+
Ethan Adner (2020-2022)<br>
323320
Darren Gu (2020-2021)<br>
321+
Tehut Biru (2020-2021)<br>
322+
Chris Suh (2020-2021)<br>
323+
Chris Long (2020-2021)<br>
324324
Esme Chen (2020-2021)<br>
325-
Ethan Adner (2020-2022)<br>
326-
Greg Han (2020)<br>
327325
Helen Liu (2020)<br>
328326
Kelly Rutherford (2020)<br>
329327
Luca Lit (2020)<br>
330-
Shane Hewitt (2020)<br>
331-
Tehut Biru (2020-2021)<br>
332-
Tyler Chen (2020-2022)<br>
333328
Vivian Tran (2020)<br>
329+
Greg Han (2020)<br>
330+
Austin Zhang (2020)<br>
331+
Chelsea Uddenberg (2020)<br>
332+
Shane Hewitt (2020)<br>
333+
Chetan Palvuluri (2020)<br>
334+
Tudor Muntianu (2019-2021)<br>
334335
Aaron Lee (2019-2020)<br>
335336
Anne George (2019-2020)<br>
336337
Sarah Park (2019-2020)<br>
337338
Shane Park (2019-2020)<br>
338-
Tudor Muntianu (2019-2021)<br>
339339
William Chen (2019-2020)<br>
340340
Alejandro Martinez (2018-2020)<br>
341+
William Baxley (2018-2019)<br>
341342
Ann Carpenter (2018)<br>
342-
Darya Romanova (2018)<br>
343-
Iain Sheerin (2018)<br>
344-
Kirsten Soh (2018)<br>
343+
Seung Ju Lee (2018)<br>
345344
Mustafa Nasir-Moin (2018)<br>
345+
Iain Sheerin (2018)<br>
346+
Darya Romanova (2018)<br>
346347
Rachael Chacko (2018)<br>
347-
Seung Ju Lee (2018)<br>
348-
William Baxley (2018-2019)<br>
349-
Armando Oritz (2017)<br>
350-
Bryan Bollinger (2017-2018)<br>
351-
Christina Lu (2017)<br>
348+
Kirsten Soh (2018)<br>
352349
Paxton Fitzpatrick (2017-2019)<br>
353350
Stephen Satterthwaite (2017-2018)<br>
354-
Aamuktha Porika (2016-2017)<br>
355-
Allison Frantz (2016-2017)<br>
356-
Aman Agarwal (2016)<br>
351+
Bryan Bollinger (2017-2018)<br>
352+
Christina Lu (2017)<br>
353+
Armando Oritz (2017)<br>
354+
Madeline Lee (2016-2020)<br>
357355
Campbell Field (2016-2018)<br>
358-
Clara Silvanic (2016)<br>
359-
Gal Perlman (2016)<br>
356+
Wei Liang Samuel Ching (2016-2017)<br>
357+
Marisol Tracy (2016-2017)<br>
358+
Allison Frantz (2016-2017)<br>
359+
Aamuktha Porika (2016-2017)<br>
360360
Jake Rost (2016)<br>
361-
Jessica Tin (2016)<br>
361+
Clara Silvanic (2016)<br>
362+
Aman Agarwal (2016)<br>
362363
Joseph Finkelstein (2016)<br>
363-
Madeline Lee (2016-2020)<br>
364-
Marisol Tracy (2016-2017)<br>
365-
Peter Tran (2016)<br>
366364
Sheherzad Mohydin (2016)<br>
367-
Wei Liang Samuel Ching (2016-2017)
365+
Peter Tran (2016)<br>
366+
Gal Perlman (2016)<br>
367+
Jessica Tin (2016)
368368
</p>
369369
</div>
370370
</div>

scripts/build_people.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -365,10 +365,11 @@ def generate_undergrad_list_content(alumni: List[Dict[str, Any]]) -> str:
365365
if not alumni:
366366
return ""
367367

368-
# Sort by start year descending (most recent first), then by name
368+
# Sort by start year descending (most recent first)
369+
# Use stable sort to preserve spreadsheet order within same start year (matches CV)
369370
sorted_alumni = sorted(
370371
alumni,
371-
key=lambda a: (-get_start_year(a.get("years", "")), a.get("name", ""))
372+
key=lambda a: -get_start_year(a.get("years", ""))
372373
)
373374

374375
entries = [generate_undergrad_entry(a) for a in sorted_alumni]

0 commit comments

Comments
 (0)