Wow! Okay, so, not being really familiar with the list etiquette combined with the fact that the topic has digressed a bit, I hope you'll forgive the non-inline reply here. I want to hit the main points of what everybody said / asked, but let it be known that I read all of it!
How can we combine these efforts, or at least keep from working at cross purposes?
I see from your link above that you are building your own Sphinx project. Perhaps you would be better off working from the results of the Lore2sphinx conversion? Are you modifying existing docs or working from scratch?
Let's get together on this!
So here's what I'm kind of thinking as far as combining efforts:
1) I'll continue with the "Project Documentation" conversion, while Tom works on the other bits. Should be fairly easy to combine them, I'm thinking.
2) Let's leave the "Project Documentation" pretty much as-is for the moment, until the Sphinx convo is done.
3) I wonder if at least some of the "task-based docs" shouldn't be put into the project sections, and then just linked to from the task-based section?
There are many outstanding documentation branches which are substantial improvements, which need to be edited and merged - the trial tutorial among them. It would be great if your efforts could start with getting those landed, turning the crank on the process to get our users better documentation in the interim, as you survey the existing documentation.
What should a newcomer who reads this document know by the end of it?
A massive pile of improved documentation would of course be useful, but a good start would be a clear statement of requirements and audience. (As well as an enumeration ofdifferent audiences that different documents might serve.)
(minor nitpick: I really like "event-based" or "event-driven", as you've said here: why does <http://docs.recursivedream.com/twisted/> say "asynchronous"?
You will probably have to press us core developers on this one, and you may spark some debates. These tend to sputter out with no clear resolution as everyone is frustrated that nobody's solution (not even their own) is ideal, but you would be doing us all a great service if you really forced us to develop a consensus about certain things (like "what's the best way to build a twisted command-line program", for example) and agree to agree on the current documented "best practice" for those things.
The biggest problem with this is that you will find that a very small group of people have created the vast majority of this stuff and don't have time to maintain it all any more :). We certainly don't have a separate dedicated maintainer for each project (although I really wish we could get to that point).
As problematic as the current situation is, there is a definite potential for some baby vs. bathwater confusion in improving it... Also, while you're energized now, please consider what happens to our documentation efforts if you run out of time or out of motivation halfway through this process. Incremental improvements may not necessarily provide the best outcome, but they _do_ mean that users get to see some results from these volunteer efforts even if the original volunteer gets busy with other aspects of life and can't complete their project.
I'd really like any effort that undertakes to substantially change the structure of the documentation to make a concerted effort to hit the ground running with test-driven examples which can be automatically verified, so that we have some idea of the impact of code changes on the docs.
Indeed, as the author of many of these original documents, I did not feel insulted in either my person or my work :). Hopefully you didn't feel that way either after reading this reply!
On Thu, Jan 20, 2011 at 06:34:17PM -0600, Kevin Horn wrote:
> On Thu, Jan 20, 2011 at 5:57 PM, Tim Allen <screwtape@froup.com> wrote:
> > You mean these DTDs?Well, you wouldn't necessarily be depending on Twisted, just depending
> >
> > twisted/lore/xhtml1-strict.dtd
> > twisted/lore/xhtml1-transitional.dtd
> >
> > They reference the xhtml-*.ent entity definitions which are also in the
> > same directory. It would be neat if lore2sphinx could be taught to use
> > the DTDs packaged with lore instead of having to download them from the
> > Internet every time.
>
> Huh. Never even knew that was there. It probably could, and the reason it
> downloads from the internet was because that's the default way of doing it
> in lxml. I've since figured out how to override that behavior (which is how
> the caching works) so maybe that wouldn't even be hard. The easiest/fastest
> fix for the moment though would probably be to pre-populate the cache as I
> mentioned before, since IIRC, this would just involve adding the file to my
> hg repo. I'll have to look into it though, it may be just as easy to do it
> the other way, though I don't want to depend necessarily on having Twisted's
> code available (remember, this is supposed to work on the various divmod
> projects, and anything else that uses Lore, too).
on Lore - and I imagine any not-Twisted project whose documentation
depends on Lore has already made peace with the idea of depending on
Lore. :)
If it's easier to just copy these well-known DTDs into the lore2sphinx
repository, I guess that's a good plan too - it's not like the W3C is
going to suddenly issue updated XHTML DTDs.
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python