Fork me on GitHub
#docs
<
2018-07-10
>
arrdem04:07:00

I just stood the server down so I could use my other laptop 😉 sec.

shaunlebron04:07:06

> 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.

arrdem04:07:07

It’s uh hardly a production deployment

shaunlebron04:07:45

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

shaunlebron04:07:00

just by physical proximity?

arrdem04:07:38

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.

arrdem05:07:18

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

shaunlebron05:07:19

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

shaunlebron05:07:01

> 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.

shaunlebron05:07:24

i ran into this same problem with the cljs api docs

arrdem05:07:42

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

shaunlebron05:07:02

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

shaunlebron05:07:27

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

arrdem05:07:48

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

shaunlebron05:07:35

looking at demo now

shaunlebron05:07:47

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

arrdem05:07:35

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.

arrdem05:07:21

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.

arrdem05:07:55

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.

shaunlebron05:07:56

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

shaunlebron05:07:10

example of reference links anywhere on this demo?

shaunlebron05:07:20

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

arrdem05:07:28

Sorta hang on.

arrdem05:07:00

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

arrdem05:07:34

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.

shaunlebron05:07:42

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

arrdem05:07:23

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.

arrdem05:07:46

Probably most important is to nail down some remotely acceptable CSS 😉

shaunlebron05:07:31

@arrdem clojure conj talk? 🙂

arrdem05:07:55

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

arrdem05:07:02

Grimoire 4.0, four years late.

shaunlebron05:07:55

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

shaunlebron05:07:20

cool stuff, I’ll keep an eye on it

shaunlebron05:07:03

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

arrdem05:07:09

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

arrdem05:07:27

work’s suddenly reached the “DOCUMENT ALL THE THINGS ZOMG” stage so I should have a good excuse for this.

shaunlebron05:07:28

❤️ work excuses

arrdem05:07:11

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.

arrdem05:07:40

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.

arrdem05:07:01

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

shaunlebron05:07:02

not sure how valuable my nitpicks would be

shaunlebron05:07:20

but I’ll schedule some time tomorrow to look again

shaunlebron05:07:10

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

arrdem05:07:06

Thanks again! Get some sleep, I’m stuck up waiting for a late night deploy 😕

shaunlebron05:07:58

good luck then