Because of an moderation problem with my email 
(https://groups.google.com/group/clojure/browse_frm/thread/90c0a82153e08c9c) 
this thread is a bit outdated already.

Perhaps it should be merged with the ClojureDocs.org thread now, as Tim and 
Justin apparently already seem to agree on collaboration (which is great!).

- Greg

On Jul 9, 2010, at 12:33 PM, Greg wrote:

> I'm very excited to see how quickly the Clojure community is taking up the 
> charge of improving the documentation!
> 
> Within a few *days* of my "Clojure n00b problem" post, several solutions have 
> emerged to take up the cause of providing proper documentation and examples 
> for Clojure's API, and third-party APIs as well. I don't know whether that 
> post had anything to do with it, and frankly it doesn't matter.
> 
> The projects that have emerged are:
> 
> http://clojure-examples.appspot.com/
> http://www.clojuredocs.org/
> 
> Further, I noticed several other reactions in this group of people stating 
> they were planning on doing the same thing. You can add me to that list. :-p
> 
> I'm worried, however, about the problem of fragmentation. This is a very 
> serious problem that affects many projects, companies, etc.
> 
> Providing good documentation and examples for Clojure's APIs, as well as 
> third-party libraries, is *not* an easy task, and I doubt very much that a 
> good result will emerge in the existence of a fragmented playing field.
> 
> It would be a wish come true for me if Clojure's documentation were as good 
> as PHP's or newLISP's. The only way that's going to happen is if efforts are 
> not fragmented. Notice that both of those examples are examples of 
> non-fragmented, focused community efforts.
> 
> Clojure currently has at *least* 3 locations for API/examples. The two 
> efforts above, and the existing Clojure.org/api. I have a feeling that more 
> are on the way.
> 
> I'd like to propose that we address this problem immediately, before it gets 
> worse. We need to have one, single, awesome goto location for examples and 
> documentation. Without that Clojure's documentation will remain third-rate.
> 
> I think such a website must include, at the very minimum:
> 
> 1) A way for anyone to easily add and edit examples and documentation.
> 2) For functions to be grouped by task/category
> 3) API access to the documentation and examples via JSON, so that IDEs can 
> hook into it and provide documentation inline while you're editing.
> 4) Simple and easy methods for third-party developers to add their project(s) 
> to the site.
> 5) Site-wide search on function/namespace names, documentation, and examples.
> 
> And this is the "it would be nice" list, (again, all my opinion, of course):
> 
> 1) Comments by users.
> 2) For the comments to be parsesable in markdown/textile so that commenters 
> can post syntax-highlighted code.
> 3) Community voting and replying on individual comments ala HackerNews.
> 4) Live-updating searching in a frame/div in a section on the left to filter 
> for functions/namespaces.
> 5) For the site to be powered by Clojure. Call me old-fashioned, but I think 
> it should be. :-p
> 6) A better clojure-doc to integrate developers with the site. It would be 
> great if developers could provide the initial documentation to such a site by 
> running a tool like javadoc on their code.
> 
> With regards to the minimum, #2 (task/category), is one of the most important 
> (IMO).
> 
> Have a look at how newLISP does this:
> 
>       http://www.newlisp.org/downloads/manual_frame.html
> 
> The left-navigation bar makes it incredibly easy to find what you're looking 
> for. PHP does something similar. I wouldn't consider a documentation site 
> "good" without it.
> 
> The practice of listing namespaces and then the functions within them in 
> alphabetical order on one massive page isn't helpful. It's not helpful for 
> learning an API, and it's not helpful for quick-reference.
> 
> ============================
> Possible solutions to fragmentation
> ============================
> 
> As I mentioned, I was (and still am) planning on addressing this issue if 
> it's not solved well by another effort. But I don't want to add to the 
> fragmentation either.
> 
> Shortly after posting "Clojure n00b problems", I registered clojuredoc.org 
> for that purpose. I'm now not so sure what to do with it, but I have some 
> ideas.
> 
> I have two proposals:
> 
> Proposal #1: Combine clojure-examples & clojuredocs.org
> --------------------------------------------------------------------------
> 
> clojure-examples is already on Github. This is good, it means anyone can 
> contribute and improve the site. It's also powered by Clojure. I think it'd 
> be great if the two efforts combined forces and combined their 
> documentation/comments/examples. I'd be happy to hand over clojuredoc.org to 
> such an effort.
> 
> Proposal #2: Central database of documentation and examples
> ---------------------------------------------------------------------------------
> 
> If for some reason you don't want to combine efforts on the front-end of the 
> site, clojuredoc.org could server simply as a backend for holding all the 
> data. This way clojure-examples and clojuredocs.org (and IDEs) could pull & 
> push examples/comments/documentation from a central location. This way, when 
> someone submits examples on one site, they're available for all sites to use, 
> and thus effort is not fragmented.
> 
> 
> Comments/Feedback welcome (especially Zachary Kim and Justin Kramer, and 
> anyone else who is working or is interested in working on these 
> frontends/backends).
> 
> Cheers,
> - Greg
> 
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to