docs

About docs of Clojure & libs
shaunlebron 2018-07-10T04:55:39.000106Z

@arrdem link down! šŸ™‚

arrdem 2018-07-10T04:56:00.000074Z

I just stood the server down so I could use my other laptop šŸ˜‰ sec.

shaunlebron 2018-07-10T04:57:06.000177Z

> Browsing good documentation should be a lot more like browsing the stacks in a library. Search and cross-reference need to be strongly supported and aggressively used.

arrdem 2018-07-10T04:57:07.000028Z

It’s uh hardly a production deployment

shaunlebron 2018-07-10T04:57:45.000084Z

maybe this is obvious, but how do stacks in a library solve the problem of search and cross-reference?

shaunlebron 2018-07-10T04:58:00.000032Z

just by physical proximity?

arrdem 2018-07-10T04:58:38.000102Z

Yeah I’m just alluding to the physical experience of standing in front of a section and being able to peruse it at leisure, or find a section rapidly by some index. Particularly that sort of associative perusal / proximity is difficult to replicate.

arrdem 2018-07-10T05:01:18.000145Z

@shaunlebron demo server’s back up for a bit.

shaunlebron 2018-07-10T05:01:19.000044Z

a startup working on this problem of connecting information by proximity: https://www.ideaflow.io/

shaunlebron 2018-07-10T05:03:01.000141Z

> In writing Grimoire, I kept banging back into wanting to write documentation for topics such as destructuring or particular interfaces like sequences which had no logical home in the documentation of a single namespace or var.

shaunlebron 2018-07-10T05:03:24.000008Z

i ran into this same problem with the cljs api docs

arrdem 2018-07-10T05:03:42.000111Z

yeah a huge part of the motivation behind stacks is trying to go articles first, gendocs / source docs second.

shaunlebron 2018-07-10T05:04:02.000125Z

i kind of got around it by having pseudo entries under syntax: http://cljs.github.io/api/syntax/#destructure-vector

shaunlebron 2018-07-10T05:04:27.000087Z

but it can’t cover everything, like sequences in your example

arrdem 2018-07-10T05:04:48.000039Z

Yeah. Grimoire did eventually grow an articles capability but it was super second class compared to how the core documentation / data was treated.

shaunlebron 2018-07-10T05:05:35.000060Z

looking at demo now

shaunlebron 2018-07-10T05:05:47.000043Z

this is your github readme, but served in a special way?

arrdem 2018-07-10T05:06:35.000137Z

Yep! The ring server is serving the same articles you can see on GH, but rendered via Stacks’ article pipeline. So the doctests and repl sessions are actually all being eval’d when you load the page. None of that output is static content.

arrdem 2018-07-10T05:07:21.000022Z

syntax higlighting, graphviz etc all done on-demand. which isn’t ideal, you could do much better, but this is an MVP of being able to serve these much more sophisticated documentation embeds.

arrdem 2018-07-10T05:11:55.000073Z

Places I want to go with this: - Static site generator mode - Ability to cross-link between articles and vars, and from var docstrings to articles (this requires some extended syntax highlighting for docstrings which will be interesting) - Better REPL session management so that sessions persist and can be joined from the web. Eg just click and example and type more forms in after it.

shaunlebron 2018-07-10T05:11:56.000120Z

this is neat, a lot of new things to consider and digest I think

shaunlebron 2018-07-10T05:12:10.000175Z

example of reference links anywhere on this demo?

shaunlebron 2018-07-10T05:12:20.000024Z

> Supports and encourages (due to convenient notation & link checking) the use of references between documents

arrdem 2018-07-10T05:12:28.000015Z

Sorta hang on.

arrdem 2018-07-10T05:13:00.000098Z

these docs were generated using the script that’s the prototype of those capabilities.

arrdem 2018-07-10T05:13:34.000149Z

I’ve copy-pasted that script around between a bunch of repos and haven’t really solidified it / integrated it into stacks yet. That’s probably the next thing I’m gonna do, because then I can defend deploying this at work.

shaunlebron 2018-07-10T05:13:42.000081Z

ah, links to other files in the docs? I was expecting links to source functions for some reason

arrdem 2018-07-10T05:14:23.000075Z

There’s a lot of things you could do there - again I’m trying to take a bunch of MVP weekend hack sorta stuff and integrate it.

arrdem 2018-07-10T05:14:46.000089Z

Probably most important is to nail down some remotely acceptable CSS šŸ˜‰

shaunlebron 2018-07-10T05:15:31.000026Z

@arrdem clojure conj talk? šŸ™‚

arrdem 2018-07-10T05:15:55.000036Z

Maybe. Definitely a SF CLJ talk or three. If I get some work time to really pull this together it could be conj worthy.

arrdem 2018-07-10T05:16:02.000106Z

Grimoire 4.0, four years late.

shaunlebron 2018-07-10T05:16:55.000067Z

I would vote for it, since I’m not in SF!

shaunlebron 2018-07-10T05:17:20.000066Z

cool stuff, I’ll keep an eye on it

shaunlebron 2018-07-10T05:18:03.000048Z

i like the activity around docs recently (and @martinklepsch’s cljdoc)

arrdem 2018-07-10T05:18:09.000019Z

thanks man! hopefully it goes somewhere soon-ish, otherwise it’ll probably take another 6mo nap.

arrdem 2018-07-10T05:18:27.000015Z

work’s suddenly reached the ā€œDOCUMENT ALL THE THINGS ZOMGā€ stage so I should have a good excuse for this.

shaunlebron 2018-07-10T05:19:28.000099Z

ā¤ļø work excuses

arrdem 2018-07-10T05:19:35.000075Z

seriously

arrdem 2018-07-10T05:20:11.000100Z

would love commentary on the ideas or even just the markup (markdown) I’m choosing if you get the chance. I know there’s a lot of halfbaked stuff going on here.

arrdem 2018-07-10T05:20:40.000117Z

I suspect that if I had to choose I’ll back off from the ā€œgraph like discoveryā€ thing and focus on this as an article / book editing platform.

arrdem 2018-07-10T05:21:01.000064Z

because there really isn’t much that even tries to get that right.

shaunlebron 2018-07-10T05:21:02.000063Z

not sure how valuable my nitpicks would be

arrdem 2018-07-10T05:21:10.000107Z

fair

shaunlebron 2018-07-10T05:21:20.000029Z

but I’ll schedule some time tomorrow to look again

shaunlebron 2018-07-10T05:22:10.000114Z

getting late here, out for the night, just wanted to see why the #docs channel suddenly went bold in the sidebar here šŸ™‚

arrdem 2018-07-10T05:22:51.000124Z

Heh.

arrdem 2018-07-10T05:23:06.000139Z

Thanks again! Get some sleep, I’m stuck up waiting for a late night deploy šŸ˜•

shaunlebron 2018-07-10T05:23:58.000151Z

good luck then

shaunlebron 2018-07-10T05:24:05.000108Z

šŸ‘‹

arrdem 2018-07-10T05:24:16.000026Z

o7