permashortlink
A permashortlink (abbreviated PSL) is a URL using a short-domain that expands to a permalink; on the IndieWeb, PSLs use personal short domains to expand to the same person's personal domain, thus minimizing the fragility often associated with shortlinks.
Why
There are several reasons to create and maintain permashortlinks.
- More reliable in email (some mail programs truncate/break URLs >70 chars)
- Quicker to recall / copy due to size in IM, browser screenshots, print, images, etc [1]
- Less effort to manually enter - The easier to read and type-in, the more folks visit the URL.
Older reasons that apply less or not at all nowadays:
- Content limits on POSSE destinations, where providing a permashortlink at the end saves space over a full permalink, thus allowing you to POSSE more of your content.
See also: http://tantek.com/w/Whistle#whyshortURLs
How
Here is a simple way to setup permashortlinks:
- Get a personal short-domain
- Set it up to redirect to your personal domain
- Setup short path handling on your personal domain to expand and redirect to your permalinks.
IndieWeb Examples
Ordered roughly by when deployed.
Tantek
Tantek Γelik uses Falcon running on tantek.com with algorithmic permashortlinks POSSEd since 2010-01-26. Example:
- https://twitter.com/t/status/8228455558 POSSE copy has http://ttk.me/t43W1 at the end, which links to:
Summary description:
- http://ttk.me/tSSSn or
- http://ttk.me/b/SSSn where:
- SSS = sexagesimal epoch days - see http://tantek.com/w/NewBase60
- t = literal 't' for short text notes, and 'b' for blog posts / articles. Both from this list: http://tantek.com/w/Whistle#design
- n = nth post of that type that day
This is sufficient to expand to:
- http://tantek.com/YYYY/DDD/tn/ or
- http://tantek.com/YYYY/DDD/bn/ respectively, where:
- YYYY = year
- DDD = day of the year (see related: http://en.wikipedia.org/wiki/ISO_8601#Ordinal_dates )
- t or b = again a literal 't' or 'b'
- n = nth post of that type that day
- and that's sufficient to retrieve the post from storage, including slug text which follows the "...n/" in the permalink URL
For more details and background/thinking, see the interview/article:
Michael Owens
Template:mowens uses Whistler on https://mowens.com/ as of 2014-07-08.
Whistler is a Node.js module that implements a flexible version of the Whistle algorithm (by Tantek at http://tantek.com/w/Whistle) for shortening, expanding, and explaining links using NewBase60.
Whistler and the NewBase60 Node.js modules are both available on NPM and GitHub:
- Whistler
- NewBase60
Marty McGuire
Marty McGuire uses algorithmic permashortlinks, handled by a Python Flask application since April 2016.
Summary Description:
- Each post on Marty's site has a permalink URL (or a redirect) based on the date and time it was published. They are of the form: https://martymcgui.re/YYYY/MM/DD/hhmmss/.
- Permashortlinks are of the form http://mmg.re/DDDTTT where:
- Example: http://mmg.re/4xgNaa expands to: https://martymcgui.re/2018/11/26/173535/
The source code for handling the redirects is available here.
Maxwell Joslyn
Maxwell Joslyn implemented version 1 of a permalink URL shortener on 2020-12-21. It lives at mxjn.me. Right now it handles only the simplest use case: straight redirects from short domain to full domain.
Summary:
- There are a mishmash of permalink forms on his website, including /yyyy/mm/dd/slug, /slug, and /poems/slug.
- Version 1 of Maxwell's shortener simply converts "mxjn.me" to the full "maxwelljoslyn.com" domain and redirects the request with the same path.
- Being so simple, the entirety of the implementation was setting up DNS records and writing a couple lines of server config to capture and pass on the path after "mxjn.me".
Silo Examples
Aaron Parecki 2009-12-08 I'm noticing everyone has their own URL shortener now.[2] E.g. silos:
Flickr
Flickr: flic.kr -> flickr.com
Build It With Me
Build It With Me: bldw.me -> builditwith.me
See Also
- permalink
- short-domain
- permashortcitations
- https://www.hanselman.com/blog/URLsAreUI.aspx
- URL shortener
- NewBase60
- https://twitter.com/_/status/1386754776478752771
- "As you know, here at http://evanstoner.com the whole team is passionate about the quality of the reading experience for you, our valued customer.
Starting today, you will no longer see those dangly links in my tweets, and my indieweb crap will just work invisibly." @estoner April 26, 2021
- "As you know, here at http://evanstoner.com the whole team is passionate about the quality of the reading experience for you, our valued customer.