Skip to content

Commit 23c4634

Browse files
committed
Add keynoter individual pages with full bios, socials and card links
- Add /keynoter/[slug].astro page (photo + name/tagline side-by-side, bio and links below) - Extend keynoters schema with social URL fields (mastodon, bluesky, twitter, linkedin, github, homepage) - Move bio content to markdown body for proper paragraph rendering - Make entire keynoter card clickable, linking to individual page - Update all 8 keynoter .md files with full bios and social handles
1 parent 10ca136 commit 23c4634

12 files changed

Lines changed: 277 additions & 46 deletions

File tree

src/components/sections/keynoters/keynoter.astro

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,11 @@ const Placeholder =
3333
---
3434

3535
<li class:list={["list-none rounded-2xl overflow-clip flex group", className]}>
36-
<div class="block w-full h-full relative">
36+
<a
37+
href={url || undefined}
38+
class:list={["block w-full h-full relative", url ? "cursor-pointer" : "cursor-default"]}
39+
aria-label={!placeholder ? `View ${name}'s keynote speaker page` : undefined}
40+
>
3741
<div class="relative aspect-[9/10] overflow-clip">
3842
{
3943
image ? (
@@ -57,24 +61,15 @@ const Placeholder =
5761
<p class="text-body-inverted">More keynoters coming soon</p>
5862
) : (
5963
<>
60-
{url ? (
61-
<h2 class="text-[#17223A] font-bold">
62-
<a
63-
href={url}
64-
class="text-2xl font-bold hover:underline"
65-
>
66-
{name}
67-
</a>
68-
</h2>
69-
) : (
70-
<h2 class="text-2xl font-bold">{name}</h2>
71-
)}
64+
<h2 class="text-[#17223A] font-bold">
65+
<span class="text-2xl font-bold group-hover:underline">{name}</span>
66+
</h2>
7267
{tagline && (
7368
<h3 class="text-secondary-hover text-lg italic">{tagline}</h3>
7469
)}
7570
</>
7671
)
7772
}
7873
</div>
79-
</div>
74+
</a>
8075
</li>

src/components/sections/keynoters/keynoters.astro

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ const placeholders = Math.max(0, 5 - keynoters.length);
1919
.map((keynoter, _index) => (
2020
<Keynoter
2121
name={keynoter.data.name}
22-
url={keynoter.data.url || ""}
22+
url={keynoter.data.url || `/keynoter/${keynoter.id}`}
2323
tagline={keynoter.data.tagline}
2424
image={keynoter.data.image}
2525
placeholder={false}

src/content/config.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,12 @@ const keynoters = defineCollection({
4747
tagline: z.string().optional(),
4848
image: image(),
4949
order: z.number(),
50+
homepage: z.string().url().optional(),
51+
mastodon_url: z.string().url().optional(),
52+
bluesky_url: z.string().url().optional(),
53+
twitter_url: z.string().url().optional(),
54+
linkedin_url: z.string().url().optional(),
55+
github_url: z.string().url().optional(),
5056
}),
5157
});
5258

src/content/keynoters/guido.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,13 @@
22
name: Guido van Rossum
33
image: ./guido.jpg
44
tagline: Creator of Python
5-
bio:
6-
"The creator of Python, now a CPython core developer at Microsoft. Continues
7-
to contribute to the language he started in 1989 as a side project."
85
order: 3
6+
twitter_url: https://x.com/gvanrossum
7+
github_url: https://github.com/gvanrossum
98
---
9+
10+
Guido van Rossum is the creator of Python. He began working on the language in the late 1980s at Centrum Wiskunde & Informatica (CWI) in the Netherlands, building upon his earlier work on the ABC programming language. Guido sought to ensure Python was simple, easy to read, and that it enhanced developer productivity.
11+
12+
He served as Python's Benevolent Dictator For Life until 2019, guiding the language's design and evolution, and helping to shape one of the most influential open source communities in the world.
13+
14+
Guido has worked across academia and the private sector, including roles at Google, Dropbox, and Microsoft. He's been contributing to developer tools, large-scale systems, and the ongoing evolution of Python. He remains an active and highly influential voice in the Python community.

src/content/keynoters/imogen.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22
name: Imogen Wright
33
image: ./imogen.jpg
44
tagline: Senior Engineer at Amazon EC2
5-
bio:
6-
"Software engineer and bioinformatician (they/them) with a PhD in
7-
bioinformatics. Co-founder of Hyrax Biosciences, whose Exatype software
8-
helps track HIV drug resistance across Africa. Two decades of experience
9-
spanning physics, genomics, healthcare, and cloud technologies."
105
order: 7
6+
linkedin_url: https://linkedin.com/in/imogenwright
7+
twitter_url: https://x.com/imogenwright
118
---
9+
10+
Imogen Wright (they/them) is a Senior Engineer at Amazon EC2, where they focus on making incredibly complex systems behave. Their career spans over two decades of solving high-stakes challenges across theoretical physics, HIV drug resistance, COVID genomics, cloud technologies, and even ad tech.
11+
12+
Imogen co-founded Hyrax Biosciences, where their Exatype software helps track HIV drug resistance across Africa, and they led the team that assembled the very first Omicron variant SARS-CoV-2 genomes.
13+
14+
Imogen's deep technical expertise is backed by an incredible academic foundation — they hold a PhD in bioinformatics and a master's in theoretical physics from the Perimeter Institute, where Stephen Hawking was the guest of honour at their graduation.

src/content/keynoters/leah.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,17 @@
22
name: Leah Wasser
33
image: ./leah.png
44
tagline: Executive Director & Founder of pyOpenSci
5-
bio:
6-
"Executive Director and founder of pyOpenSci, building a community of 400+
7-
researchers making scientific software development more accessible. Organizer
8-
of the Maintainers Summit at PyCon US."
95
order: 4
6+
linkedin_url: https://www.linkedin.com/in/leahawasser/
7+
mastodon_url: https://fosstodon.org/@leahawasser
8+
bluesky_url: https://bsky.app/profile/leahawasser.bsky.social
9+
github_url: https://github.com/lwasser
1010
---
11+
12+
Leah Wasser is the Executive Director and founder of pyOpenSci, a community of 400+ researchers, engineers, and maintainers working to make developing and maintaining research software more accessible, sustainable, and human. Through open peer review — with 60+ packages reviewed to date — contributor mentorship, and accessible training, pyOpenSci helps scientists build better software and develop the technical skills to participate in open source.
13+
14+
Leah's work sits at the intersection of open source, open science, and open education — with inclusion at the center. She organizes the Maintainers Summit at PyCon US and believes the communities behind research software matter as much as the code itself.
15+
16+
As GenAI reshapes how software gets built, Leah is focused on protecting the human networks and reciprocal relationships that make open source sustainable — not just technically, but socially.
17+
18+
She has built nationally recognized programs at the National Ecological Observatory Network (NEON) and the University of Colorado Boulder. Leah holds a PhD in ecology and is an active open source maintainer. In her free time, you can find Leah on the trails with her rescue pup or at the gym lifting weights and swinging around bars and rings.

src/content/keynoters/lukasz.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
22
name: Łukasz Langa
33
image: ./lukasz.webp
4-
tagline: CPython Core Developer & PEP 703 (nogil) author
5-
bio:
6-
"Python core developer, creator of PEP 703 (nogil), and the current Python
7-
Release Manager. Driving performance and concurrency improvements in CPython."
4+
tagline: CPython Core Developer & Creator of Black
85
order: 2
6+
mastodon_url: https://mastodon.social/@ambv
7+
bluesky_url: https://bsky.app/profile/lukasz.langa.pl
98
---
9+
10+
Łukasz is a failed comedian. Wannabe musician. Python guy at Meta. Co-host of the core.py podcast. Former CPython Developer in Residence at the Python Software Foundation. Former Python release manager. Creator of Black.

src/content/keynoters/marlene.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,15 @@
22
name: Marlene Mhangami
33
image: ./marlene.jpg
44
tagline: Senior Developer Advocate at Microsoft & GitHub
5-
bio:
6-
"Senior Developer Advocate at Microsoft and GitHub focusing on Python and AI.
7-
Co-chair of the ACM practitioner board, former vice-chair of the Python
8-
Software Foundation, and organizer of the first PyCon Africa."
95
order: 6
6+
linkedin_url: https://www.linkedin.com/in/marlenemhangami/
7+
mastodon_url: https://fosstodon.org/@Marlene
8+
bluesky_url: https://bsky.app/profile/marlene.bsky.social
9+
twitter_url: https://x.com/marlene_zw
1010
---
11+
12+
Marlene is a Senior Developer Advocate at Microsoft and GitHub, where she focuses on the cutting edge of Python and AI. As a computer scientist, keynote speaker, and explorer, she is a massive driving force behind community growth across the globe.
13+
14+
Her impact on open-source leadership is legendary: she is the current co-chair of the ACM Practitioner Board, was the previous vice-chair of the Python Software Foundation (PSF), and was the lead organizer of the very first PyCon Africa.
15+
16+
When she's not busy building the future of Python and AI, she is deeply passionate about empowering the next generation of developers, having co-founded ZimboPy to mentor and teach young girls in Zimbabwe how to code.

src/content/keynoters/pablo.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22
name: Pablo Galindo Salgado
33
image: ./pablo.jpg
44
tagline: CPython Core Developer & Steering Council member
5-
bio:
6-
"Python core developer and Steering Council member. Maintainer of the parser,
7-
designer of many language features, and a leading voice in Python's evolution."
85
order: 1
6+
twitter_url: https://twitter.com/pyblogsal
7+
bluesky_url: https://bsky.app/profile/pablogsal.com
98
---
9+
10+
Pablo Galindo Salgado works in the Python team at Hudson River Trading. He is a CPython core developer and a theoretical physicist specialising in general relativity and black hole physics.
11+
12+
He serves on the Python Steering Council, having been re-elected for his 6th term in 2026, and was the release manager for Python 3.10 and 3.11. He also has a cat, though it does not code.

src/content/keynoters/paul.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@
22
name: Paul Everitt
33
image: ./paul.jpg
44
tagline: Developer Advocate at JetBrains
5-
bio:
6-
"Developer Advocate at JetBrains, focusing on Python and the Web. Co-founder
7-
of Zope Corporation and bootstrapper of both the Python Software Foundation
8-
and the Plone Foundation."
95
order: 8
6+
mastodon_url: https://fosstodon.org/@pauleveritt
7+
twitter_url: https://x.com/paulweveritt
8+
github_url: https://github.com/pauleveritt
109
---
10+
11+
Paul is a Developer Advocate at JetBrains, focusing on Python and the Web. Before that, Paul was a co-founder of Zope Corporation, taking the first open source application server through $14M of funding.
12+
13+
Paul has bootstrapped both the Python Software Foundation and the Plone Foundation. Prior to that, Paul was an officer in the US Navy, starting www.navy.mil in 1993.

0 commit comments

Comments
 (0)