Less Wrong is a community blog devoted to refining the art of human rationality. Please visit our About page for more information.

[META] Alternatives to rot13 and karma sinks

18 Post author: HonoreDB 17 April 2012 08:01PM

rot13 is... (Results)
A quaint internet tradition that I quite enjoy
So annoying
Easy to use because I have Leet Key

In November, DanielVarga complained about rot13.com as a way of hiding spoilers, and suggested some specifications for an alternative web service, with an algorithm that can operate on any character.  I whipped up two, one using a bitwise not and the other using a password.  These have a usability advantage over rot13.com: they automatically generate a decode link, so that people who don't have an add-on such as Leet Key (get Leet Key! or d3coder if you're on Chrome!) on whatever device they're on can still use them.  The advantage over using a site like pastebin is that all of the text is encoded in the url, so if makefoil.com is down or you're offline you can still extract it with a bit of work.  Both algorithms are in unobfuscated javascript; feel free to host your own version.

Recently, I had the thought of doing a similar thing with polls.  This site doesn't have built-in polling functionality, and the project to create it seems to have stalled.  People generally solve this by creating a comment for each option, asking people to upvote the comment of their choice, and asking people to downvote another comment to balance the karma.  It's elegant as these kludges go, but it's still visually confusing in a comment thread, clogs the "Top Comments" lists, and somehow rarely ends up balancing correctly.

Here's the site I used to create the above poll.  Those vote buttons will turn into vote counts once you vote (you may need to refresh).  The site outputs poll syntax in two formats: html, which you can use by creating an article and clicking the html button on the top tool bar, or markdown, which is for comments.  The markdown display is a little different because the Less Wrong functionality for having an image be a link seems to be broken; the image gets double-encoded or something.

I hope you'll consider using markdownSpoiler or passwordXor when sharing secret info on the next Harry Potter and the Methods of Rationality chapter, and getting input with a makefoil poll.


  • If you use the password version, the spoilered output includes some ascii special characters that LessWrong will automatically wrap in multiple <code> tags.  It works, but it's not as pretty as the other options.
  • The services are on very bare pages right now, like rot13.com. That won't change much, but at some point I'll be turning makefoil.com into a navigable personal site so there'll probably be a navigation bar.  If traffic starts becoming an issue, I may even add some third-party text ads.
  • The polls are "checkbox" style: you can vote for as many options as you want, but you can't vote for the same option more than once.
  • The polls are extremely easy to abuse, and I don't anticipate putting much effort into changing that.  If you have a serious concern about ballot-box stuffing, probably best to stick to the old system, where presumably there are safeguards against massive sock-puppet creation.
  • If you host the spoiler pages on your own site, bear in mind that special characters in GET parameters are often blocked or escaped by default by security modules on the web server.
  • Yes, I know the right way to do this is to mod Less Wrong itself to create spoiler tags and poll embedding.  But that requires getting multiple organizations to work with me, which is a higher order of problem than creating embeddable kludges.  And this way, you can use these services on any forum, comment thread, or whatever that allows images and links.

Comments (31)

Comment author: Username 18 April 2012 05:27:40AM *  11 points [-]

A few things:

  • The extra effort it takes to decode rot13 is an incentive to try and figure things out on your own. I really like this feature, as anything that's only one click away is a huge temptation to go and click it, and ruin what I might have really enjoyed finding out on my own. Rot13 is one of the few instances that allows my akrasia to benefit me.

  • If you do end up using another web service, please operate on only the alpha characters, not punctuation. Basically, still rot13 but with the links. ᆲマミヨモレヘフ￟ヒミ￟レムワヘニマヒ￟リミ￟ラレヘレ￑￵ is much more jarring on the eyes and attention-grabbing than guvf fgevat bs grkg. But more importantly, it lets you keep markdown when you rot13 something. If you want vgnyvpf, you can write *italics* directly in. If you obfuscate punctuation (especially spacing) than it is absolutely impossible to figure out where to put the markdown after you encode it.

  • Honestly I'd skip the middleman and go straight to spoiler tags. Here's the CSS code for spoilers tags on reddit. Lesswrong uses the reddit engine so this would be incredibly simple to implement. Just a matter of getting site consensus and showing it to whoever runs the site. (Lesswrong admin, can you implement this please?) Alternatively, you can hijack the link markdown: Hover for a major Spoiler. This looks like [Spoiler](http:// "Spoiler text here.").

  • Those polls are awesome.

Comment author: gwillen 18 April 2012 05:23:36AM 4 points [-]

If we're going to use links to automatically decode spoilered text, it's not clear to me why we can't still use rot13 for the spoilering, and just make it linked rot13.

I voted for 'quaint internet tradition', but I don't think it's all that quaint; it's a very practical Internet tradition.

Comment author: QuicklyStarfish 21 April 2012 12:49:04AM *  4 points [-]
Comment author: Username 24 April 2012 04:49:09AM 2 points [-]

Perfect. Easy to use, preserves markup, can be used on mobile devices/without and special hardware, all the information is preserved in the link, and it even has decoded hover-text.

Motion to make this the standard rot13 tool, I for one will start using it.


Comment author: Grognor 17 April 2012 11:10:36PM *  4 points [-]

Upvoted for posting a solution rather than a call for solutions.

Edit: Though I accidentally clicked one of your vote buttons before knowing that it was a poll (it's not obvious, you know!) and ended up voting for "A quaint internet tradition that I quite enjoy" instead of "So annoying (and bad for SEO)".

Comment author: ahartell 18 April 2012 12:14:54AM 0 points [-]

Same thing happened to me. I wonder if that effect biased the results much.

Comment author: gyokuro 19 April 2012 02:21:05AM *  2 points [-]

For fun, I learned to read rot13 semi-fluently. It's an exercise that makes me look forward to spoilers so I can practice reading them. Serving its purpose? No, but it's much more entertaining.

Comment author: see 18 April 2012 05:02:15AM 2 points [-]

I'm still in the, "It ain't easy until I have a bookmarklet that will encode/decode for me" camp.

This LW comment in the "Reforming rot13" discussion has a very good one for rot13.

I'm perfectly willing to deal with something else — if you make it just as easy for me to encode/decode. No external websites, no vastly overengineered plug-in; just highlight the text and press the bookmarklet's icon.

Comment author: Viliam_Bur 18 April 2012 07:56:21AM *  1 point [-]

This is a great solution! And it could be made even easier by readers not having to install the bookmarklet, but to include the "Rot 13" button directly in the LW pages. With "position:fixed" it would be always on screen.

Like this:

<script type="text/javascript">
function rot13() {
// rot13 code here
<style type="text/css">
#tools { position: fixed; }

<div id="tools">
<p><a href="javascript:rot13();">Rot 13</a>

Comment author: Stanley 14 September 2013 04:31:06AM *  1 point [-]

I've made a ro13 function here. It returns a RO13'd version of it's arguments.

Comment author: Normal_Anomaly 17 April 2012 11:09:59PM 2 points [-]
Comment author: philh 18 April 2012 03:04:14AM 1 point [-]

I prefer rot13. I don't have an extension, but I can hilight it and type "xsr13" into a terminal window which I already have open and visible. Having to visit a new webpage has higher friction, and I can't see the spoiler and its context at the same time. It's also easier for me to generate, although I don't think I ever have.

I accept that most people are probably not in the same situation. It's only minor, because If this became common I'd just write a terminal app to decode it. (The bitwise-not version is better for that: for the password version I'd have to copy link location instead of just hilighting.)

Comment author: HonoreDB 17 April 2012 11:59:48PM 0 points [-]
Comment author: David_Gerard 17 April 2012 08:16:04PM 1 point [-]
Comment author: RobertLumley 17 April 2012 08:18:59PM 6 points [-]

And d3coder for Chrome

One of the reasons I switched back to Chrome recently was that Leet Key wouldn't work for my build of FF. Has it been updated to work with the most recent version?

Comment author: David_Gerard 17 April 2012 08:23:06PM -1 points [-]

I'm using FF 11 (stable) and it's fine.

Comment author: RobertLumley 17 April 2012 08:24:10PM 0 points [-]

Interesting. That's what I was on, and it didn't work. But I was having other problems with my build that were just frustrating me. I like chrome less, because I can't streamline the interface as much, but Firefox just wasn't worth it.

Comment author: David_Gerard 17 April 2012 10:53:46PM *  0 points [-]

This is the Ubuntu distro version, fwiw.

Most annoying thing about Leet Key is going through multiple menus to get to ROT13, the only function in the list I want it for. Also that they made the preferences dialogue over 600px high, which is irritating on a netbook.

Comment author: dbaupp 18 April 2012 01:12:18PM 1 point [-]

One can also use bookmarklets. I've got this one on my bookmark bar for one-click rot13-ing (it even works in text boxes!).

Comment author: fubarobfusco 18 April 2012 01:00:53AM 1 point [-]

Wouldn't it use less total human brain time to just patch the forum source to support hide/show spoiler markup?

Comment author: wedrifid 18 April 2012 01:10:43AM 3 points [-]

Wouldn't it use less total human brain time to just patch the forum source to support hide/show spoiler markup?

You should get right on that! ;)

It's open source. Edit in the change you want, make a post here advocating it then make it a pull request!

Comment author: Oscar_Cunningham 18 April 2012 08:18:08AM 1 point [-]

[polling by voting on comments] clogs the "Top Comments" lists

Not nearly as much as that one thread.

Comment author: wgd 20 April 2012 06:47:03PM *  0 points [-]

I often read LW on my phone and for that use case rot13 is the best spoiler method by far. It prevents immediately seeing words that would give away spoilers, but I can generally decode a given phrase in my head given the word lengths, punctuation, topic of conversation, and position of common words like 'gur', 'na', 'bs', 'vf', or 'gb'.

Using reddit-style CSS spoiler tags means that I can't access the spoilered content at all AFAICT, and linking me to a decoder, while nice in theory, isn't very helpful because if I click it I will lose the nice highlighting of new posts. This is a Big Deal on long-running threads like the HPMoR discussions.

Comment author: Wei_Dai 20 April 2012 07:39:56PM 0 points [-]

linking me to a decoder, while nice in theory, isn't very helpful because if I click it I will lose the nice highlighting of new posts

Does your phone browser allow you to open links in new tabs? (If you're not sure, try doing a long press on a link.) If not, you should switch browsers. I use Dolphin on Android. Opera Mini also has this feature and is available for virtually all phones, I think.

Now if someone could tell me how to avoid accidentally voting someone up or down on my phone (or worse, accidentally banning a comment) when I'm trying to scroll...

Comment author: wgd 20 April 2012 10:11:05PM 0 points [-]

I'm using the stock browser that comes with Cyanogenmod 9, so in principle I can open links in a new window but in practice the interface is annoying enough that I rarely use it. I've tried Firefox mobile but the white-and-grey "not yet rendered" texture makes the browser feel much slower due to its obviousness. Dolphin looks interesting, I'm surprised I haven't heard of it before.

I guess my complaint isn't that I can't open a link separately, it's just that it's annoying enough to do so that I find myself running into the question of "do I care enough about learning what this spoilered text is saying to bother following the link?" and repeatedly running into that question during a longish discussion causes enough decision fatigue that I stop bothering.

Comment author: Incorrect 18 April 2012 12:48:37AM -2 points [-]

ウィ コド スピク ライク ヂス

Comment author: falenas108 18 April 2012 01:36:34AM 1 point [-]

Google translate says this means as "We Cry Kudji to spin codon."

Comment author: Incorrect 18 April 2012 01:51:54AM 4 points [-]

It's just English poorly written using the Japanese phonetic alphabet.

"ui kodo supiku raiku disu" = "we could speak like this"

Comment author: Mitchell_Porter 18 April 2012 03:17:42AM 8 points [-]

The translator parsed it as "ui-kodo-supi-kurai-kudi-su", "we codon spin cry Kudji su". "su" is the infinitive particle, so "supi..su" has come out as "to spin".

Kuji are esoteric mantras, and a codon is the minimal semantic unit in the genetic code. It's as if you're saying that you recite a spiritual formula in order to scramble or unscramble ("spin") a genetic sequence. So you see, you were making a practical contribution to the discussion of how to efficiently hide information from those who don't want to see it... or you would have been, if you were a character in an anime that doesn't exist. "In my universe, when we don't want the genes in a chromosomal implant to express just yet, we recite the Nine Magic Syllables, and all the codons temporarily reverse, so the transcriptases won't see a 'start' signal."

Comment author: thomblake 18 April 2012 01:50:31PM 3 points [-]

we recite the Nine Magic Syllables, and all the codons temporarily reverse, so the transcriptases won't see a 'start' signal.

I vote for this method.

Comment author: RobertLumley 17 April 2012 08:20:20PM 0 points [-]

I half expected this entire post to be rot13ed.