Re: Describing Postgres as "object-relational" on the home page
От | Karl O. Pinc |
---|---|
Тема | Re: Describing Postgres as "object-relational" on the home page |
Дата | |
Msg-id | 20240101134459.0d23672b@slate.karlpinc.com обсуждение исходный текст |
Ответ на | Re: Describing Postgres as "object-relational" on the home page ("Jonathan S. Katz" <jkatz@postgresql.org>) |
Ответы |
Re: Describing Postgres as "object-relational" on the home page
Re: Describing Postgres as "object-relational" on the home page |
Список | pgsql-www |
On Sun, 31 Dec 2023 14:40:49 -0500 "Jonathan S. Katz" <jkatz@postgresql.org> wrote: > On 12/31/23 12:40 PM, Karl O. Pinc wrote: > > On Sun, 31 Dec 2023 10:42:11 -0500 > > "Jonathan S. Katz" <jkatz@postgresql.org> wrote: > > > >> I think it's a good idea to talk about the types of > >> functionality/workloads PostgreSQL can support, whether in core or > >> extensions (geospatial, time series, vector/AI/pick-the-buzzword, > >> distributed, etc.), and perhaps the starting point is adding that > >> language that suggests that. We can then link to the wiki, perhaps > >> make a "List of Extensions" page that's similar to "List of > >> Drivers"[4] (which [4] is now linked to from the docs) that > >> categorizes them. [5] has a nice starting point on the aggregation > >> of what's out there. > > > >> [5] > >> https://gist.github.com/joelonsql/e5aa27f8cc9bd22b8999b7de8aee9d47 > >> > > > > There's also https://pgxn.org, the PostgreSQL Extension Network. > > It's interface, a list of tags with font sizes that correspond to > > frequency of occurrence, gives me an idea. > > > > Give up. Add the sentence "PostgreSQL supports many popular > > buzzwords, which make it more than a relational database." > > and link "buzzwords" to a page of buzzwords. Since "buzzword" > > is so generic, "Geospatial" can appear next to "ACID" next to "SQL" > > without concern. Each buzzword could link to a google search of > > "PostgreSQL" + "<buzzword>". To get fancy, let the user choose the > > search engine. Or really give up and link to a buzzword page on > > the pg wiki. > > I don't really follow what you're suggesting here. The suggestion here is to first, change the "object-relational" sentence as has been discussed. (Then, tl,dr; use a interactive "word cloud") But instead of coming up with wording describing functionality, workloads, etc., to simply say "PostgrSQL does lots more stuff." on the home page and link that to a page with nothing but keywords. The keywords can be linked to descriptions or project pages, or not. That way nobody has to write sentences, and more importantly, nobody has to maintain much when there's a new hot technology or figure out what's important enough to put on the home page. Just add a new keyword to the keywords page. (Especially labor free if the keyword page is a pg wiki page.) To extend this idea, just a list of keywords is not engaging. Categorizing the keywords by attaching one or more tags to each opens up possibilities for interaction and alternate ways to view the keywords. In particular the user can find keywords by tag and so keywords need not be categorized in a fixed fashion. This would likely only be interesting if the keywords were linked to somewhere so that after getting a relevant set of keywords the reader could follow the links to find information or tools. In addition to tabular views, the https://pgxn.org sort of view, a "word cloud", provides a useful overview. In this presentation all tags are displayed on a single page but the visual presentation emphasizes those tags that are more important (e.g., occur with more frequency) by displaying them in a larger font. In this view, clicking on any tag shows its associated keywords to facilitate exploration. (From an implementation perspective it might be simplest if each keyword was also a tag, so that there's no need to make a distinction between tags and keywords when searching.) Example: Here are technology keyword/category tag pairs: (CSV file attached) keyword,tag transactions,transactions transactions,SQL standards transactions,data integrity transactions,atomicity consistency,consistency consistency,data integrity constraints,constraints constraints,data integrity constraints,SQL standards isolation,isolation isolation,SQL standards isolation,concurrency atomicity,atomicity atomicity,SQL standards durability,durability durability,data integrity durability,SQL standards SQL,SQL SQL,SQL standards SQL,interfaces geospatial,geospatial geospatial,database types spatial,spatial spatial,database types time series,time series time series,database types temporal,temporal temporal,database types temporal,auditing temporal,security vector,vector vector,database types vector,AI AI,AI failover,failover failover,high availability high availability,high availability clustering,clustering clustering,high availabiltiy clustering,high performance partition,partition partition,high performance table inheritance,table inheritance table inheritance,SQL standards table inheritance,object-relational extensible types,extensible types extensible types,object-relational relational,relational relational,database types client-server,client-server client-server,database types GUI,GUI GUI,interfaces views,views views,interfaces views,SQL standards materialized views,materialized views materialized views,interfaces materialized views,SQL standards materialized views,high performance triggers,triggers triggers,data integrity triggers,SQL standards stored procedures,stored procedures stored procedures,SQL standards stored procedures,high performance row level security,row level security row level security,SQL standards row level security,security SELinux,SELinux SELinux,security table inheritance,table inheritance table inheritance,SQL standards table inheritance,object-relational security,security SQL standards,SQL standards data integrity,data integrity auditing,auditing auditing,security concurrency,concurrency interfaces,interfaces database types,database types high performance,high performance object-relational,object-relational object-relational,database types security,security List of keywords: AI atomicity auditing client-server clustering concurrency consistency constraints database types data integrity durability extensible types failover geospatial GUI high availability high performance interfaces isolation materialized views object-relational partition relational row level security security SELinux spatial SQL SQL standards stored procedures table inheritance temporal time series transactions triggers vector views List of keywords with a "database types" tag: client-server geospatial object-relational relational spatial temporal time series vector And finally, a word cloud image is attached. Of course there are no hyperlinks to the list of tagged keywords as there would be on a web page. Clicking on "database types" would get the above list of database type keywords. (The keywords would then each link to somewhere useful.) Image generated with: cut -d , -f 2 pg_keywords.csv | grep -v '^tag$' | sed 's/ //g' | sed 's/-//g' | wordcloud_cli > pg_keywords.png (There is a python3-wordcloud package in Debian which has wordcloud_cli. https://github.com/amueller/word_cloud Also available at pypi.org.) ) (It occurs to me that "relational" would be much bigger if I was more consistent in using it as a tag.) Perhaps the tuples of keywords, their hyperlink targets, and their tags could be opened up to PG contributors in a wiki-like way. Or maybe have tighter control over the keywords' hyperlinks, given their importance. Accept patches to the keyword/tag db, or whatever makes sense to reduce the maintenance burden while facilitating change. Regards, Karl <kop@karlpinc.com> Free Software: "You don't pay back, you pay forward." -- Robert A. Heinlein
Вложения
В списке pgsql-www по дате отправления:
Предыдущее
От: "Jonathan S. Katz"Дата:
Сообщение: Re: Describing Postgres as "object-relational" on the home page
Следующее
От: "Karl O. Pinc"Дата:
Сообщение: Re: Describing Postgres as "object-relational" on the home page