let’s please use hashtag terms to create _arbitrary_ deep-links

leverage the immense popularity of the hashtag for a new web functionality to provide people more power


ok, so twitter finally got its big payday in 2013.

this means that, in retrospect, we will probably sum up this year by twitter’s major characteristic, which has now undoubtedly become the hashtag.

people love hashtags. #peoplelovehashtags

businesses love them too. your bank is probably promoting a hashtag or three at this very moment.

and don’t pretend that you are above this fray, because you fancy yourself as this special techie.

first, techies invented the hashtag.

and, more importantly, the techies love to wallow in the hashtag mud-pit, just like “regular” people.

for instance, do consider #fivewordtechhorrors, which was big viral recently in the twitter-sphere.

it’s a boatload of tweets — of, by, and for techies…

in case you’re wondering, here’s the best entry:

> https://twitter.com/flenser/status/410854370579058689


like i said, techies invented the darn hashtag, as that’s how you deep-link into an .html file. a deep-link is a link that jumps somewhere into the middle of some web-page, not just to the top. and deep-linking is the job that the hashtag does. hashtags are also used in tagging systems, which is how (one of) their (many) names shifted, ever so slightly, from “hashmark” to “hashtag”. but primarily the hashtag is associated with deep-links.

and that is ironic.

because deep-linking is definitely one spectacular weakness of the web, in this present day and age. so hashtags are now suddenly immensely popular, but deep-links stay the same old ugly wall-flower.

sure, deep-links work just fine when the author of a web-page put an id on the specific element you would like to link to; but otherwise, you are stuck.

let’s say you want to point your friends to some particularly juicy turn-of-phrase on a web-page. odds are, it’s not going to be possible to do that, since that turn-of-phrase will not have an id on it. no id, no deep-link. tough luck, kid.

so hashtags run with fun and live life large, skip freely and stroll red carpets with celebrities, while deep-links limp along, lame, with their same old gimpy leg, propped against the need-an-id crutch. no id? so sorry, but that’s how it goes, old man; never seems to be an id there when you need one.

just as an example, try to find out how you’d link to this paragraph.

really, make the link…

go ahead, i’ll just sit right here and wait quietly, while you figure out how to do it… i’m serious…

give up?

um, well… if you went off to do “view-source”, i apologize for any pain you experienced there. the gobbledygook of medium’s source is ghastly.

but you actually can deep-link on medium, fairly easily.

the secret is to leave a comment at the place where you want to link to. the comment will have a little “link symbol” above it, which you can click, and then the deep-link url is displayed. (which means, technically, the link is to the comment, rather than the paragraph, but this does indeed accomplish the spirit of the goal, albeit not precisely the letter. this also explains why, if you did do “view-source”, and tested using the “name” component as your id for a deep-link, you saw it opens a comment-field.)

but… most web-pages don’t offer any such utility.

thus, for now, deep-linking to any arbitrary place in any old arbitrary web-page just isn’t in the cards.


this is not to say deep-linking is simply impossible.

and yes, there have been proposals in the past.

maybe the one with the most traction is called “purple numbers”, the strategy of placing a link on each paragraph, purple and numbered in order, so people know that’s its purpose, to be the link for that paragraph, a proposal which originated from the famed link pioneer, douglas engelbart himself.

but even purple numbers didn’t gain enough traction to get the critical mass that’d cause it to explode in general consciousness. the problem was that too few web-page-authors bothered to adopt it — it was too much work for just too little return. plus, that isn’t technically arbitrary deep-linking; it is just a very thorough set of id-labeled elements. but the idea focuses at the level of the paragraph, which is savvy, since a paragraph provides the link with what i’d feel is the correct amount of context. let us grant big full credit to engelbart for the push.


still, arbitrary deep-linking is not impossible…

indeed, with a bit of javascript on a page which has the right structure, one can achieve it rather easily. yet it sinks us with the same chicken-egg problem; it’s fine for us as individuals to use such a solution, but it’s not going to bring us to the general answer.


so i am gonna propose a better solution here now. this proposal is targeted at the browser companies. note — this is so vitally important — it’s a wrinkle browser-makers could likely add into their product without too much trouble at all. (and i say that as a programmer used to hearing naive people saying “my requested feature won’t be that hard to add” all the time, while shaking my head because they clearly cannot imagine the pits that coders fall in.)

but the very best part of my proposal is that it is our good old hashtag — the peoples’ new pull-toy — which is the instrument that can pull all this off.

that is so fitting! deep-linking gave the hashtag its popularity, and now hashtag leverage can help propagate deep-links out to the unwashed masses.


the idea is that, when a url has a hashtag on it, if the browser doesn’t locate an id with that label, it’ll then consider the hashtag as a term to find, just exactly as if it was entered in the “find” box. heck, the browser could even just insert it there, and then immediately scoot off and do the search. so if i were to point a link to the url for this page, ending with “#scoot”, a browser would see no id with the label of “scoot”, so it would do a search for “scoot”, and end up here, at this fine paragraph.

we’d need to set up conventions for a number of fine points, such as whether it would stop on the initial hit, or the final one, but even without that, the find-again command will make it rather easy to find the “right” location, from the mindset that you arrived with, from the link that you’d just clicked. what with the link-rot we’ve come to expect from the web, we no longer think links will be “perfect”.


if the browser doesn’t locate an id with the hashtag term, it’ll go on to consider the hashtag term as a string to find


aside from the “fact” that it “should be easy” for the browser-coders to provide this functionality, another important point is that it will require no buy-in (or even any work) by web-page-authors, which — as we learned previously — is a big plus.

even more important, however, is the fact that people already know hashtags, and they love them!

this means it’ll be easy to teach users about this great functionality, whereby anybody at all can deep-link to arbitrary spots on any arbitrary page.

“find a unique word near where you want to link, and put that word in a hashtag at the end of the url.”

you wouldn’t have to do “marketing” to push that idea to people; they’ll just snatch it off of the shelf.

man, you won’t even be able to fart before people deep-link up a storm, since people love hashtags!

i can visualize it now in the “trending topics” list:

> #itsamiracle

let’s do it for douglas engelbart, and ted nelson too:

> https://www.youtube.com/watch?v=yMjPqr1s-cg
> ted nelson’s eulogy for douglas engelbart

-bowerbird