Skip to content

Reorganize podcast structure #142

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

Merged
merged 1 commit into from
Oct 21, 2021

Conversation

nomeata
Copy link
Collaborator

@nomeata nomeata commented Oct 21, 2021

This fixes #41.

Summary and justification of change:

  • The index page of podcasts is trimmed down: Only title and summary.
    In particular, no player. Having the browser load a player for every
    episode will probably be quite sluggish as we grow more episodes.

  • Not even an embedded player for the latest episode, as suggested by
    Andres. This way I want to prevent people who listen to the episode
    there to then share a non-permanent link to /podcasts. By guiding
    them to the per-episode page, they’ll have a permanent URL when they
    are listening to the episode.

  • Per-episode pages. The main purpose of this refactor. This gives us
    stable URLs for each episode, which is important for sharing, and
    also for googlability.

  • The transcript is part of that page; no separate transcript page.
    Yes, the page gets long, but that’s ok, there is nothing below.
    Advantages:

    • less pages
    • search engines will lead people to the episode page directly, so
      better discoverabiliy
    • people can scroll and read while they are listening to the episode;
      no need to open a new tab (or click on the link which then stops
      the player)

    The transcript could be in a collapsed section; leaving this for
    future refinement.

  • Shuffling of the source files in pdocast/:

    • all files for one episode in one directory, no further nesting

    • links and transcripts are both separate markdown files, both
      optional

    • this way, the description becomes the “body” (in the Hakyll sense)
      of the index.markdown file. This means we can use markdown markup
      there too, if we want to.

  • Tweaked styling, stealing some ideas from the “affiliates” page, in
    particular the bar on the left. Horrible cargo-culting of tailwind
    CSS classes – I will be happy when someone polishes that a bit further

  • Loading the extra pages via the hakyll context the way I do may or
    may not be idiomatic hakyll code. Also here: refactoring welcome.

This fixes haskellfoundation#41.

Summary and justification of change:

 * The index page of podcasts is trimmed down: Only title and summary.
   In particular, no player. Having the browser load a player for every
   episode will probably be quite sluggish as we grow more episodes.

 * Not even an embedded player for the latest episode, as suggested by
   Andres. This way I want to prevent people who listen to the episode
   there to then share a non-permanent link to `/podcasts`. By guiding
   them to the per-episode page, they’ll have a permanent URL when they
   are listening to the episode.

 * Per-episode pages. The main purpose of this refactor. This gives us
   stable URLs for each episode, which is important for sharing, and
   also for googlability.

 * The transcript is part of that page; no separate transcript page.
   Yes, the page gets long, but that’s ok, there is nothing below.
   Advantages:

   - less pages
   - search engines will lead people to the episode page directly, so
     better discoverabiliy
   - people can scroll and read while they are listening to the episode;
     no need to open a new tab (or click on the link which then stops
     the player)

   The transcript could be in a collapsed section; leaving this for
   future refinement.

 * Shuffling of the source files in `pdocast/`:

   - all files for one episode in one directory, no further nesting

   - links and transcripts are both separate markdown files, both
     optional

   - this way, the description becomes the “body” (in the Hakyll sense)
     of the `index.markdown` file. This means we can use markdown markup
     there too, if we want to.

 * Tweaked styling, stealing some ideas from the “affiliates” page, in
   particular the bar on the left. Horrible cargo-culting of tailwind
   CSS classes – I will be happy when someone polishes that a bit further

 * Loading the extra pages via the hakyll context the way I do may or
   may not be idiomatic hakyll code. Also here: refactoring welcome.
@myShoggoth myShoggoth merged commit 9a0eb20 into haskellfoundation:hakyll Oct 21, 2021
@tfausak
Copy link

tfausak commented Oct 21, 2021

😍

@nomeata nomeata deleted the podcast-reorg branch October 22, 2021 07:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Governance page out of date
3 participants