-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Indexes: add People index #1127
base: master
Are you sure you want to change the base?
Conversation
add support for calculating and displaying mentions of topics in the newsletter based on double-bracket link syntax
showcase the feature based on the topics mentioned in the latest newsletter
make use of the newly linking syntax to create a new index for people and their relevant mentions in newsletters
showcase the feature based on the names mentioned in the latest newsletter
show paragraph snippet for each mention in the people-index
add Larry Ruane to showcase the podcast mentions functionality
facfcdf
to
cdc86a3
Compare
@kouloumos another amazing feature! Some quick thoughts:
That's my quick take, besides saying again that this looks amazing!. I'll try to find some time to dig in deeper next week. |
On the podcast side of things, it would be very easy for me to add the I think a mentions outside of explicit podcast guests could be a bit hairy, resulting in some folks being discouraged due to their type of work not being acknowledged) and others attempting to game the mentions (or am I thinking too highly of Optech that someone would try to game Optech mentions?). Would it be possible to auto-generate the people/ pages when someone new is referenced? Dave is both the primary topic author as well as the one that provides the weekly manual entries, so on those items I'd defer to him. Additionally, Dave's idea of compiling topics that is affected potentially here. Dave's idea of the project index could be interesting as well, not sure if that could be a separate PR or consideration or bundled in here. @kouloumos thanks for opening this and waiting so long for feedback. |
38028a8
to
9db038c
Compare
Overview
Topics' mentions are currently manually updated with every newsletter. But the current writing flow and structure of the newsletter allows for automated calculation of mentions.
This PR introduces two main features:
Topics automated mentions
The goal is to automate topics' mentions without degrading the experience. The 1st commit introduces the bidirectional linking logic by adding support for double-bracket link syntax
[[]]
. When[[]]
is used, the parser inbidirectional_links_generator.rb
creates a new mention from the newsletter to the[[topic]]
, using the title of the paragraph as thetitle
of the mention.The 2nd commit showcases this new logic by making a few changes to a recent newsletter in order for automated mentions to start working. Automated mentions are backwards-compatible with the manual mentions.
Limitations
When
optech_mentions
are manually added they often include a more descriptive title than just the title of the paragraph.For example, news item LDK #1794 from newsletter #251:
bitcoinops.github.io/_posts/en/newsletters/2023-05-17-newsletter.md
Lines 206 to 208 in a051a45
when it was mentioned in the dual funding topic it was added as
bitcoinops.github.io/_topics/en/dual-funding.md
Lines 110 to 111 in a051a45
but with the new automated mentions logic it will be displayed as just
LDK #1794
because the rest of the text cannot be derived from the writing style. You can see this in action in the newsletter podcast recaps (example) as the newsletter-reference logic introduced with #1083 shares some of the same implementation details.Dealing with Limitations
If this limitation is a deal-breaker, we could introduce some minor changes in the writing style of the newsletter that would allow for the parser to detect a more descriptive title to add to the mention. The exact solution is still an open question.
New index for People
The 3rd commit adds a page
/en/people
that provides another way to navigate the website and gather context based on what people are working on. Because it makes use of the automated mentions logic it doesn't need any manual work except of using the new linking syntax as shown in the 4th commit.The automated mentions logic can allow for more verbose mentions and easier creation of them.
That's how I originally started working on this; I imagined an enhancement of the topics page mentions that would allow for more efficient context gathering, kind of like I did in bitcoin-core-review-club/website#639. That original idea is not part of this PR as I later realized that it would be a breaking change for a non-validated idea.
The 5th commit is that same enhancement but instead applied on the newly introduced people index:
The above screenshot also includes the podcast mentions functionality that is introduced with the 6th commit and showcased with the 7th commit.
This PR contains only a limited number of People as a way to showcase the feature. If there is positive sentiment for this feature, I could add the rest of the people in a subsequent PR(s).
Build time change: I see a 6s increase in my local builds, from ~66s to ~72s.
Open Questions