
Library of Babel - klunger
http://libraryofbabel.info/
======
jacques_chester
For those who haven't read the Borges short story, this might seem a bit
confusing.

For those who have, another book to read is _The Unimaginable Mathematics of
Borges ' Library of Babel_.

It definitely confirms my suspicion that sometimes Borges wrote horror stories
for anyone who touches combinations.

~~~
klunger
Yes, quite right, I should have included some context. Here we go:

[http://en.wikipedia.org/wiki/The_Library_of_Babel](http://en.wikipedia.org/wiki/The_Library_of_Babel)

Original text, translated into English:
[http://hyperdiscordia.crywalt.com/library_of_babel.html](http://hyperdiscordia.crywalt.com/library_of_babel.html)

------
ifdefdebug
Wow, I just found the refutation for P=NP in your library: it's at ... NOOOO,
I accidentally closed the other tab damn should have written it down

~~~
thaumasiotes
Reopen the tab from your browser history :p

~~~
hnyc
Cursed are those that search in private browsing mode.

------
yk
It should be possible to link to individual pages. ( So that one can show
where the opening line of _Neuromancer_ or the first paragraph of _The Library
of Babel_ is located.) But otherwise really cool.

~~~
recursive
On average, the link would be at least as long as the book.

~~~
octatoan
Not if you let the first linked page be site.com/1, the next one site.com/2
and so on, I think.

~~~
recursive
Yes, even then.

Sure "1" and "2" are pretty short. And even "57834573495879436129386943" is
pretty short.

But the average link would have so many digits, I couldn't post it in this
comment.

~~~
jonotrain
The bookmarks would only need to map to the book locations - you would only
need sufficient values for the number of bookmarked pages, not the entire
range of possibilities.

------
DanAndersen
Very cool. First thing I did was to search for "it was the best of times, it
was the blurst of times".

However, I notice that the site routinely locks up my Chrome browser. What
client-side processing is it doing that causes everything to freeze?

~~~
jonotrain
Hey DanAnderson,

I'm the programmer of libraryofbabel.info - thanks for letting me know about
this. Which pages is it happening on?

~~~
DanAndersen
When I'm at the search results at
[http://libraryofbabel.info/search.cgi](http://libraryofbabel.info/search.cgi)
and I try to click the "Location" link for a result, everything freezes for
about 15-30 seconds.

------
mariusz79
First of all is there a source code you can share? Just in case something was
to happen to the Library, we wouldn want to lose all the knowledge like we did
with Library of Alexandria (Although I'm sure we can find all the missing
manuscripts in this library :) )

Second, maybe it would be worth adding ability to flag pages/books but also
include a flag that signifies that there is nothing really worth reading
there. :)This way you could have people flag content that does not make sense
in any known human language.

~~~
jonotrain
Hey mariusz - interesting ideas. for the first, I was new to coding when i
started this project, so i dont really know how people go about sharing their
code. I imagine I could put it on github or something like that - but I'm a
little apprehensive that someone might be able to find a way to do something
malicious to the site if they were to know its inner workings. So I'm not sure
- I too think about the posterity of the library, though.

As for the second idea, the forum exists for librarians to share any sorts of
discoveries they make in or thoughts they have about the library. But I would
never say there could be a page with nothing interesting on it! After staring
at these pages for a possibly unhealthy length of time, I can tell you that
there's something interesting to be found in all of them.

and keep in mind what Borges said: "In truth, the Library includes all verbal
structures, all variations permitted by the twenty-five orthographical
symbols, but not a single example of absolute nonsense. It is useless to
observe that the best volume of the many hexagons under my administration is
entitled The Combed Thunderclap and another The Plaster Cramp and another
Axaxaxas mlö. These phrases, at first glance incoherent, can no doubt be
justified in a cryptographical or allegorical manner; such a justification is
verbal and, ex hypothesi, already figures in the Library. I cannot combine
some characters - dhcmrlchtdj - which the divine Library has not foreseen and
which in one of its secret tongues do not contain a terrible meaning. No one
can articulate a syllable which is not filled with tenderness and fear, which
is not, in one of these languages, the powerful name of a god."

~~~
hnyc
Putting the code up on, say, GitHub would also help with stopping people from
doing malicious things to the site, because people aren't always mean and
villainous, they can be nice as well and help out. One of the benefits is
people fixing your code for you!

If you're worried that somebody will do something malicious... what is there
that one could maliciously do? As long as you don't have, for example, credit
cards on there, not much to steal then. Perhaps somebody is malicious enough
to decide to take down your website for their perverse pleasure, in that case
anybody can have their own, local copy of the library in case the internet-
facing one goes down.

EDIT: What I meant and managed to completely fail to convey well in the first
paragraph is that by obscuring the code, the vulnerabilities that you're
afraid of people finding don't go away. And people can find them nonetheless.
By opening the code, other people can fix vulnerabilities, etc. But keeping
this paragraph in mind, to relate it to the others, seeing as how your library
still exists, nobody seems to have bothered to try to destroy the library in
the first place using their own means, so what difference will putting the
source up make? :)

tl;dr: Security by obscurity? For shame. Put the source on GitHub! There's
nothing to lose, and everything to gain. :)

------
shaughan
How long will it take for the takedown for copyright violation notices to
start coming in?

------
mockery
Neat. How on earth does search work? (Particularly the "with random English
words" part)

~~~
mockery
Oh. Nevermind. Duh.

~~~
mockery
(Since the address is the content, just generate a random block of text that
has whatever properties you want, and then "re-encode" it as an address.
"Search" complete!)

------
ryuzakieru
Is this actually valuable in some fashion to humanity? (not hating, serious
question). It seems more efficient to store every book than to predict every
book ever by holding GB's of nonsensical sequences. Or is this just a for fun
thing?

~~~
berns
"Others, inversely, believed that it was fundamental to eliminate useless
works. They invaded the hexagons, showed credentials which were not always
false, leafed through a volume with displeasure and condemned whole shelves:
their hygienic, ascetic furor caused the senseless perdition of millions of
books."

------
irixusr
the best part is that you can search for a particular string.

------
wazoox
I notice that all books seem to be exactly 410 pages long.

~~~
jonotrain
The parameters of the books are mostly set by the story - you can take a look
at the link klunger posted, or read a pdf here:
[http://libraryofbabel.info/Borges/libraryofbabel.pdf](http://libraryofbabel.info/Borges/libraryofbabel.pdf)

------
ReedR95
How long did it take to generate all of the books?

~~~
jonotrain
I didn't pre-generate the books - that would have taken longer than the
lifespan of the earth (that didn't stop me from trying, though!). The books
are generated by a pseudo-random algorithm which uses the "location" as the
seed. So you get random seeming text, but the same page is in the same place
every time. I described some of the coding process here:
[http://libraryofbabel.info/theory4.html](http://libraryofbabel.info/theory4.html)

------
tcfunk
Abulafia?

------
hliyan
I found an interesting tidbit:

    
    
        ...
        axropabbwz  xplxvzny,putmgqmcgbyftxqzdp
        uwdlwdnzdmxeynijv.oazyxminlztkcqmwer.m fi
        mkvchlofjdlmvriu lnqcghyzqaboxlicq taggnj
        ynqemzyope,.mvfahenmxfgtjxldonzygqpjbn.
        hc sfcadlbkn,ln,
        lcnjgtsufin the beginning god created the 
        heaven and the earthhu
    

It tells me that this is at:

    
    
          0y8b3mgqtuhukt3gbh1p9fh97ua5hsgr92x3h3frswm7vswg2jauwq33c7kgeo019j16yyln5w1vohcniu0zk3rdwcqhzqrf21mime48njfsd4j3lojjpo2gxjbl8i39x3i84u6jfce0fyvimtlspgql8alqnyc4nu4ofsyezlkhb4m9ibuhdj1l5p6wyllp5hcw549fz32znr3dxg7zdo5qe05maufsl1iiurv758cavczrhk7o9zyql1pddw3xmu00dc87ia5vwd4knjclkhzajni38z4cldyhcw4d77yg3mm1ls0m16rummla284hg1uanpjsvxk93qkqjs5o0bl8n6q1j2u0g1jakvkz4aiu021bm6859akw2ewaknqyloy8f4ilgnhu2h7k5aph0yevs4r0pjbz2w9u2wzcr4l265xr7ollq796vvgrl8hqdqjrk618raj5y5w55r9z0k79t2reqohqym9vsjva71jaw23yjn2lnbkhnvw901hohcef8tdhdijxquts91wbdhsypr09r6lfjirgpckhgmxpsiffelivnrcfsuvft5rl9jg5tn9ecnmom2b05aloe9sofdkfpbjdmopd8md2rv1wihkepgt2pl7g3pexi5ppr4rukzjdoy6cno2xiu2nv61r8ho42p4nxkdgr5twvocmr2jk64isp4n1fl3e9h93869buan6ql2aouip6r8xmlh9lmu7xsfsy9m2n15jytglizhvt0h8vkui24kd7lxagpe2q9wrvmdd3e06lvbv6fw4kiyyhuykv9br3384sw25zs8ycd3uso3wf89vrao28ty7e38z19ox1hqvdjobsf3mjcsbeol8ggshhieg8zc2iuc1v0eau5g5vyj57eb968snxqy4ttlvtb43a67anwhhvexwvr0nirxsmdovfjnfikr2v5q87awohe171mbyth6qtmur5eua0q1khf1h0yznzztgxtrfp5y05sd7hsm86io79lwjvi9qj89n1v7y0v9vga800rq7kanb9jpoewq6f7q6vz5s1kigy4jwconz9ffc9y87v6eao3tug3qt9groij2i1glxszzr6dfzip3rvsx86bpfnlps4aeuw27tgjpcaqta3mrtdh97uh6y15foa357gytl6a826h7hxtss5jjavhq3phd4d0dby37j3y6w2ei5k9b45k4nvg3l34x3kku1m2o1fydfi8lqkqxpur5dtp59vrbzl1bpr5oxe28xy506scgk3nsbae2zl52kzvoja27eqn29z4d3lvitjtefeuieqqdy3qzun30cesbj88bp62kc1h26zb47j06k58m9r4sce9dk2sthhh9cnqt8zpkf3a6j1e55aoncslus4t7djh506a4j3h9cd8fr2w7e63pn4xtaqnm58tmx04gq6s668jw21k3i4ze40ivv1v5nvc78p9sbmrrb2myj6ftga5trstbabvdrmebs063guwnxonnvkoxmue5afxxstqtn6bjerg4h6387x6jeksdajgo55en5fvg70oeykfg6hy8zfffo204vyzncph5xxehstsv66k9fd3ywznohiwpt181dx3ua4p550fw8nzm8gfi3164uzxn629u8wbvccoi4vq0mjmy1niw8xtwetvlkjs5w7kwl38vn1zasjonsrb2asxq8jqta53xo7ek355vzyg61i9zr3ugxapxsq60e1zl2vljflazhw0q0f5t7ch8srh5k7gf86voqq3nrj92ovvh6k85kdexc8tlv7rl7djc407me6hj9reozhx3wntcugwr54t545i1apxgqbuug11vp9fu1tt3zwp5lvvkmznt66dh28s1x9upzmloqe6b7w28o8geb1uw78d3u1btza78zicleh70h757mnvw0rps0c3lt9mlswbgzwb18i6fa7t0x9d0gth3gpglaxbhgp6nvpdyrqhcq4659l13ybn2para0ott5entop8bspu8ajzlys07mohuvd0gyjzbqzaxh3q8u281xk44rnmqmgabd3sltvg1dsrzbsemcd9hjdipjyi8mdh9mf7uguw0xjyeps1xfiswdoxtbma5hkdxhj2ft2qd15zqi7bb9gccdsn1erqzrc9bxos9ups6oj2mnfwq6bmbx2gj9jg6jb1rozlypxdszbkcwkycwjpntkhw6x3p9optfgaqim3959qhiw2l1mh6yjiv4i1vn0lx6r4ru04w46edldcj60awb9ihceddwpvmlrvj232krvypgui16uktfcrukx7toixlmdzvl6gmgrw6q3mtqxto3dezljsuw88ri1muwgsnbnokhev444ihjr4zgzi1p2ghop2n3wvsb8i2v6wfwnsy86rk8urbkar43swhmcfghexieagnoe41seo8osfl4zy7i6eczsvq0d7jx2fe0ublz018xk8pftb79ccr4s5jr4itx6bubehm16e5fhxpgnuzbitdxa7a92pr6m6q4f6i3iu4c2dpdkxouxqhurfg80eez9nnj1p5tezt9zfqcf5nx8f4cxzrl7hqyv10fk0l00v7c62lct8c7mgckcr5hju8szmoqdk4zpu3qiof7854gtiglhdl2vs3146znsp1868ofhs3o5bb39m37oqo4foia0qym9nnlysqwl3yklo3yae9eit8ocgqnhpq3r118ajahacjcrcwbu5cufmmyq6awb47fcgurlfn7x09oyrtgpal2qaeizfz8b7xxd339yjeduxwgne1xckllqrrfh6axqcu0i2wxhh6u0gdx8lluo9filbhkr3626x3fh5bdv6fugdejgi9a1vxek9n27iyi1ttfbq09ugfwcgrxgtqxqct4edhcuv92jilzi2orgg1m0ffg8r3nlbai6gi3hw0ob2ch45xgkpt0cgv3mpzr4b52ywjw07scwrj3d8b3gtegxq2ujoq1hwk7fv3aqhiep1rl042srut4p0kntgup9180haudlb4uf209r0io90sqpgpyw18g4dzcadqi1x4svfznd112wb6poqxw07nm8nsj7kl5qveq3glf75wjj8fj5fptg0h0vz8q32acdgpp68ejd4nxwcbep7pq4y03tnk08liq0o4uwc3dmeisakcrwao1z1bxuuvn74stkhhib5nn1id008u7k8z39b7b302o392gcl424glzg6034p5i8e3fk964xebkf7g5l8
    

Volume 28 on Shelf 4 of Wall 4

But when I go directly there using browse, it doesn't seem to be the same
text.

~~~
jonotrain
Hey hliyan! I'm glad you're deeply exploring the library - did you make note
of the page number?

~~~
hliyan
Sorry, I just saw this. Sadly, I've forgotten the page number. But I'm sure
it's recreatable.

Thanks for this. The Library of Babel was one of those ideas that first got me
thinking deeply about the nature of knowledge as a kid.

