Re: Public contributor profile pages

From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Melanie Plageman <melanieplageman(at)gmail(dot)com>
Cc: pgsql-www(at)lists(dot)postgresql(dot)org, PostgreSQL Contributors <contributors(at)lists(dot)postgresql(dot)org>
Subject: Re: Public contributor profile pages
Date: 2025-12-17 14:03:04
Message-ID: CABUevEzJqKgnRjHscDP1r8kr+04Nozh=HQ=c8SY6Eq7+V_+tqA@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-www

On Wed, 17 Dec 2025 at 01:24, Melanie Plageman <melanieplageman(at)gmail(dot)com>
wrote:

> Hello,
>
> The Contributors Committee is working on a new program to recognize
> specific contributions (e.g. "volunteered at PGConf.dev 2024" or
> "contributed code to PostgreSQL 18"). These would be listed on an
> individual contributor's profile. As a step toward that, we are
> proposing to add public contributor profile pages.
>
> Attached is a patch set which implements this by:
> 1) allowing all those with pgo user accounts to edit their
> "contributions" (currently only enabled for recognized contributors)
> 2) adds a public contributor profile view accessible via
> postgresql.org/community/contributors/[username]
> <http://postgresql.org/community/contributors/%5Busername%5D>
> 3) links all recognized contributors on [1] to their public contributor
> profile
>
> There are quite a few details to work out. A few I know of are:
> - How should opting into a public profile work? What about existing
> recognized contributors, do we opt them all in automatically? Or just
> opt-in Major Contributors since their "Contributions" are already on a
> public web page? (see patch 0003)
> - How to make the public profile URL scheme work for contributors who
> do not have a pgo user account? Or should it work at all?
>
> This is my first real web patch, so I'm sure I did some things in a
> non-pgweb-idiomatic (or non web-idiomatic) way and didn't think of
> lots of things. I'll probably need lots of guidance.
>

Hi!

A couple of comments!

AFAICS with this patch, *every* user who visits their profile gets a
Contributor object created. And they do that even if they don't save their
profile? And the contributions part of the profile shows up for all users,
whether they are contributors at all or not -- not just "all levels of
contributors". That doesn't seem right, surely only those who are
recognized at *some* level should be getting that, and the change is to
list all levels, but not random non-contributors? (And even if it's shown
for non-contributors intentionally, we shouldn't create a database record
for people just viewing things)

Also, when making changes to a model that only changes fields that aren't
actually in the database (such as the change of help_text), instead of
making a migration for that it's better to "backpatch" it into the latest
existing migration. Otherwise we just collect a lot of no-op migrations
that over time will start costing time and annoyance.

And finally, when adding URLs that contain items from a model, you need to
add those URLs to purge_urls() otherwise it will stay cached when edited.
See for example news.NewsArticle as an example of how that's done
dynamically.

As for the questions - I think we should absolutely do opt-in, and I do
think it makes sense to auto-opt-in the current major contributors since
"it's been like that forever and they haven't complained", but listing the
others and in a more visible way there are sure to be some who might not
want it. In particular, maybe we should make the listing of *email* a
separate opt-in/opt-out? That is you can opt-out of being listed
completely, or you can say "list me, but not my email"?

I've thought a bit about it and I do think listing the profiles with the
username in the URL as you have done is in the end good. I don't think
people would care about exposing that one -- and it's already exposed on
for example the commitfest app. But based on that I would go with "does not
show at all if they don't have an account". They won't be able to edit any
information on it anyway, and if they care enough to do that they will
create an account. We will presumably continue to list them in the list of
contributors, just not provide a details page.

I wonder if we really need a separate "report inappropriate profile"? We
should be getting notifications for them, but in particular if we are
seriously worried about this case, we should make the records moderated.
But these are known contributors - I think we can trust them?

--
Magnus Hagander
Me: https://www.hagander.net/ <http://www.hagander.net/>
Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/>

In response to

Responses

Browse pgsql-www by date

  From Date Subject
Next Message Martijn Tonies (Upscene Productions) 2025-12-17 14:17:32 Wiki editor request
Previous Message Melanie Plageman 2025-12-17 00:24:38 Public contributor profile pages