Want to take part in these discussions? Sign in if you have an account, or apply for one below
Vanilla 1.1.10 is a product of Lussumo. More Information: Documentation, Community Support.
Consider the case where a wiki like the nLab is equipped with this additional functionality:
next to the “submit”-button in the edit window there is one more button labeled “submit and confirm” (accompanied with a link to a footnote on what that may mean)
such that after a user hits that button the entry is updated as it would after just hitting “submit”, but in addition in the entry’s history page there is added next to this specific version (with this specific date) a little label saying
full entry content confirmed by last author
Or similar.
Questions:
Does that sound like a desireable situation?
What might be the chances that an IT-inclined person is found to implement this?
I am asking because it seems this should be very easy to implement into the software, while at the same time being very useful for the wiki as a scientific tool.
Alternatively, having the ability to supply a comment with each edit would also be useful and could serve the same purpose, e.g. a comment, “In my opinion, this article is now in good shape.” would confirm the page. If the comment could appear in the version history, that would be awesome.
True, if that were possible, it would of course be even better. But since I cannot implement these things myself, and hence need to find somebody who can and will, I was looking for the most lightweight solution that would still accomplish a good purpose.
Yep yep. I would imagine that comments for version history is such a common feature that someone has probably implemented it for Instiki somewhere. You never know.
I see two slightly different ideas here. One is the ability to add comments to edits. The other is the ability to sign a page to say, “At this revision, I certify that I have read it and believe it to be correct.”.
The first of these is something I’m not interested in. I like the fact that people have to come here to tell me what they’ve been doing. It means that it is up to the person editing the page to decide “Is this worth telling people about or not?”. The other way around puts the onus on me to keep an eye out for “interesting edits”. As my name isn’t Toby Bartels, I’ll miss most of them that way.
The second of these is much more intriguing. It doesn’t necessarily need any hacking in instiki, though. A rough idea would be to parse the “source” view through an encryption program that “signs” it, then store that signature on your personal page together with the link to the revision. Then anyone reading the page can check that signature against the source (at least, they’ll be able to if we can make the source view available for any revision, which wouldn’t be hard to do). We could maintain a central list of pages that have been signed. Hey, we could even call it the ’nJournal’ (after all, that’s what a journal is meant to do).
But I’m not sure which of these is what Urs wants!
But I’m not sure which of these is what Urs wants!
I want the second. The intriguing one.
How does my understanding of what I think Urs wants differ than him just adding a sentence at the top of an edited page that says that he, Urs, at a particular date, considers the page complete and fully checked?
Maybe the page complete page could be created, then a sentence saying “this page is complete” would cause the current page to be listed in what links to complete page.
That would be a possibility, true, but if next somebody comes and edits the page but does not think of removing that comment of mine, it becomes awkward (even if dates are given). The idea was to have a more official stamp.
But of course as a first workaround we could do what you say.
Urs (#6): good. It’s something I’ve pondered a bit about as well. The Manifold Atlas handles this by having two sites, one freely editable and one closed to external editing. I’m not sure that I would have us go that far, but I think that there’s the kernel of something there.
So rather than discussing implementation, I’d rather concentrate on specifications. What should this “thing” achieve? To make it clear what we’re talking about, let me define the “thing” as some way for a person to (verifiably) point to a particular revision of a particular page and make a statement about it. As far as implementation goes, the key word there is “verifiably” (however it’s spelt, my spellchecker is complaining … and it’s complaining about “spellchecker”).
The basic questions are always a good place to start: What, Why, How, Where, and Who?
“What” would this look like (in general terms)?
Just a brief remark in the history-list. It would be sufficient to add a star or something, to indicate that the user who submitted declares that he was happy with the entire entry as submitted.
“Why” would someone want this?
Because it is generally considered to be very useful (see Manifold Atlas). Because it would add additional value to our efforts.
“How” would it be done (again, general terms only)?
Somebody needs to hit certain keys on a comuter in a delicate order…
“Where” should it take place?
This is a generic question, right?
“Who” would do it, and “who” would benefit from it?
Some IT-savy person does it and the rest of the world will benefit.
Andrew wrote in part:
I like the fact that people have to come here to tell me what they’ve been doing. It means that it is up to the person editing the page to decide “Is this worth telling people about or not?”. The other way around puts the onus on me to keep an eye out for “interesting edits”.
But that isn’t the point, is it? The purpose of these edit comments would be to have a record there on the history page that people can look at to see which versions have been accepted by which authors, and to what extent. This is part of the permanent record, while the announcements of latest changes are ephemeral. Really, it would be like Urs’s idea of a star on the history page, only more sophisticated, since you can explain any subtleties in words.
As my name isn’t Toby Bartels, I’ll miss most of them that way.
You’d miss most of them even if your name were Toby Bartels. There was a time when I kept up with everything on the Lab, but that time is past.
if we can make the source view available for any revision, which wouldn’t be hard to do
Regardless of anything else that we decide here, I would like that.
If someone thinks that a page is worth “starring”, then I would like them to take the trouble to tell me about it. It doesn’t have to be on the nForum, we could have a page on the nLab listing all starred pages. I can see that it could be useful to be on a page and think, “Does this have a starred version?”, click on the history, and see which ones are starred; but that could equally well be done by looking on a particular wiki page, or by having a private-but-public web, say “Official nLab”, where the starred version is kept intact. Then a link on the nLab page saying “Last starred version is at …”. The only advantage to having it be one of the revisions is that the “diff” tool is easiest to use to see what’s changed (though that only compares successive diffs).
Also, I’m not sure that adding a comment when editing is the best way to do this. To be prepared to sign a page, I should read it as it is, so I’ll sign a page some time after editing it. So signing and editing are two distinct activities. Another thought: perhaps the one signing shouldn’t be the one editing it! After all, I think that my work is perfect - how could it be otherwise? But it’s someone else who’ll spot the errors.
I hope it’s clear that I’m just trying to get the basic idea more concrete before thinking about any sort of implementation scheme.
perhaps the one signing shouldn’t be the one editing it!
Not the only one, necessarily. But as long as he is the only one willing to sign it, why not sign it. That’s the kind of information an outsider may want.
If some big-shot mathematician comes here, writes an entry that none of us understands. Wouldn’t it be useful to know whether he thinks “This is stuff I thought through carefully for two years. Should be pretty much right”. or “This is a thought I had last night in a dream, thought the nLab might be the right place to see if it can become real.”
Seems useful to me. So why not have the option to indicate which of my own entries I consider myself to be beyond beta-phase?
I agree with Andrew and Urs, as follows:
So signing and editing are two distinct activities.
That is a good point. It might be handy to have a button that does both at once, but that would only be a convenience. Fundamentally, we need two buttons.
But as long as he is the only one willing to sign it, why not sign it.
That is also a good point. I would not necessarily star every article that I’ve written. This reinforces Andrew’s point: the question is not whether it is starred (still less whether it was starred when last edited, or even when it was last starred) but who has starred it (and which version).
I would not necessarily star every article
Right, certainly not! As Todd amplified, it’s a minority of nLab entries (maybe even a tiny minority) that have achieved signable state (but maybe the signing-option motivates us to polsih up more entries!)
Maybe I didn’t make that clear enough: the reason why I suggested that signing goes hand in hand with submitting was only that it seemed this would make for simple software implmenetation. Analogous to how in the current software setup the “rollback”-operation is also a “submit” operation.
I like the comments in version history for precisely the reasons given by Toby in #11. There might be an occasion for someone to prefer to have a look at some earlier version and they may not know which version and be forced to resort to trial and error. This has happened to me on several occasions. Sometimes the deltas contain useful information.
Here’s two reasons why I don’t like the idea of implementing this as a glorified “comments on editing”:
If I’m on a page and want to know if there’s an approved version, it’s not much more work to go to a central list of such and look for it there than to click on the “history” page. Indeed, if I know about approved versions but don’t know how they’re done, I’m much more likely to look for a central list than to think, “I’ll just look on the history page”. Adding a link on the page “This Page (nlabapproved)” is much more prominent and obvious and so more user-friendly. In addition, knowing that some pages are approved is going to make me much more likely to read a page because it’s been approved. So a central list will help me find these pages easily.
If there’s a box for “edit comments” which is used for recording these approvals, it will get used for everything and finding which pages have actually been approved will be like finding a needle in a haystack. It won’t be possible to search for an easy string because Urs will have used “certified”, I’ll have used “approved”, and Toby will have used “this page is not evil”.
I second Andrew’s comments in #17.
Personal conventions for edit comments would vary if they were to be implemented. One person’s terse explanation is another’s overkill. And who wants to describe in detail complicated changes, then come here and do it again? Providing alternative channels for recording changes just makes tracking details on changes more difficult, as someone could stubbornly only mention changes here, another could record changes only in edit comments and so on.
Only as an analogy, but ’approved’ pages could be like wikipedia’s featured pages….
Let me reiterate my point that figuring out the implementation is secondary to figuring out what it is we want to implement! I apologise for falling in to my own trap with #17 on this.
So far, it seems that the desire is:
That there be a system whereby it is possible to mark certain revisions of certain pages as “special”.
I’m leaving to one side (for the moment) how this is done, and what “special” means precisely (in particular, there may be varying categories of “special”).
Does anyone disagree with that statement? If that is the foundation stone of this, is anyone afraid that some part of what they envision is in danger of being left out?
I don't like the idea. The single author which feels in certain moment that he is happy is making his will stronger by using a joker card. Others may not be happy with the same entry. With somebody's sign that xx is happy there is then a pressure for others not to touch it and develop it further (I would feel it strongly that way and will hesitate to work on such entries!!). Very bad thing in my opinion. If somebody is happy with HIS contribution, he will just stop editing for a while. If somebody likes the list of versions which he personally likes, one can simply make a list of links to such versions on one of the personally maintained TOC pages in his own nlab. So if I like version from last year 0of abelian categories than in zoranskoda part of the lab I can place a link to that version of abelian categories and embed it in a larger scope. For this no new software is needed.
Furthermore there is a danger that with approving we slide down the ideal of nlab. I mean one approves it and the thing has errors. This makes bad image. If a nonlabelled entry has an error who cares, we are anyway still improving it, but saying that it is checked we put our competence at stake. And of course there is much more version in ongoing project than in standard sources like peer reviewed journal articles, so at least we should not pretend of having articles reviewed in some even more formal way. The present system is good, and I do not see the reason to put the quality self-claims of nlab contribution at a public microsope by labelling them "checked".
@Andrew #19
that seems to sit fine with me.
Edit: hmm, after reading Zoran’s #20 (which as I didn’t refresh the page for a long time wasn’t there when I started writing this) I get his point. But one would hope that by attaching one’s name to a version it doesn’t imply ownership of the page per se, just that version of the page, and then when a new one gets created, that page is stored as ’page approved by ….’ and the page goes on as it did before. In fact one should probably not see that a page is approved just by looking at it, so as not to frighten people off. That being said, I’d want for the ability to un-approve a page, in case I’d approved it by accident, or there was something that was subsequently pointed out as wrong.
Perhaps ’approved’ (as in ratify) is too strong, but in the sense ’a page I approve of’ is better - more along the lines ’I like this page’. But then as Todd pointed out, this sort of implies a ’like this’ system, which I also wouldn’t appreciate.
@Zoran: I think I agree almost exactly with your view as to the effect the suggested button might have. I would like to get more people citing n-Lab as a source as well, but that will take time and it will be the excellence of the material that is put in the Lab that will be the best hope for that. Perhaps major edits of material that has not been changed for some time might be discussed here before being embarked on. They usually have a good reason, but sometimes that reason may be accommodated by creating an alternative version rather than doing a rebuild of the structure of a page. In other words although there may be advantages in what has been suggested, I feel that those advantages can be obtained by other means and without some of the less desirable effects that those changes would have. Alternative entries plus discussion and comparison would be a good idea, and there are some areas of the lab where, of course, this has been done. (I particularly like pages ‘for dummies’ in those cases where there is a slick nPOV way and a pedestrian way of presenting something. Saying things twice is not wrong. Both ways may be correct but someone with a non-nPOV background may need the slower approach to get to the same POV.)
I think I’m leaning to what Zoran said in #20. There is almost no limit to the polishing and improvement that can be made, and it would be all too easy for “approvals” to get in the way of that.
From Tim #22:
I particularly like pages ‘for dummies’ in those cases where there is a slick nPOV way and a pedestrian way of presenting something.
Hear, hear. If we are now focusing on whether and how nLab pages are useful to others (which is getting away from the self-centered approach we were advocating at another time and place), then here is a general criticism that applies to many pages: the Idea sections are frequently pitched way too high. They’re so top-down that the reader basically has to be on top of things in a world-class way to understand. (With a lot of work, one could just continually click links and with luck get to the bottom of things, but luck is far from assured.)
This isn’t just my criticism – one hears it from others too.
It’s not wrong to present the ultra-high level POV in the Idea section, but it would be great to give a for-dummies inkling of the Idea first, and then give the Zen master point of view. (Again, this is getting away from the self-centered approach. This comment is only for those in a frame of mind where they want to be helpful to others.)
Well, Zoran #23 may have just superseded what I just wrote. Good thinking, Zoran!
With somebody’s sign that xx is happy there is then a pressure for others not to touch it and develop it further
The certification is not suposed to be saying “I think this page is stable or perfect.” But just “I went through it and I think there is nothing outright wrong with this page. “
A much worse threat to the incremental improvement that we want would be to keep different versions of the same page. That will just result in a huge mess.
I did not suggest different versions of the same page. Just for creation of self-standing “circles” of special purpose versions. I have such needs all the time. Before or later there will be ways we will do it. Knuth wanted a single TeX and then people developed all kinds of TeX but they were mainly very compatible with old TeX, and now with web all the nonstandard ones appeared, really nonstandard. Why the sharp changes only when the web appeared while 20 years everything was so compatible ? Because the way the system has been envisioned is not very compatible with the web format, hence people just took a math significant subset and adapted it to the web. So the nlab could maybe envision the needs now and then it will be more in control of things to come then by denial you just expressed.
The certification is not suposed to be saying “I think this page is stable or perfect.”
You can claim whatever, but psychology is psychology. There are hundreds of people who use nlab daily and never contribute though it looks that it would be of their immediate and easy benefit to do it. Similarly you can claim that you do not want that if you certificate that somebody else feels obstructed modifying a page. But he will. Namely, modification means to enjoy modifying and not only adding but also finding new formulations, often nontrivially equivalent. I am sure I will feel uneasy touching somebody’s page when labelled somehow, specially in creative way. Wikipedia is even not doing that and wikipedia is much more aiming at stability and statics than our research environment.
Also, it seems rather rare that some entry is really polished.
For example today I had a student who needs to write a seminar on A-infinity spaces and A-infinity algebras. One of the students who is not in this area but took a course in abstract homotopy theory. So the nlab page has too general and difficult links and idea sections for that student. However the nlab pages have some useful info. I would save time if I created a student version in a circle for students, where I would copy of nlab page with all the extra confusing and intimidating stuff away. I can transfer it to personal nlab; this I feel uneasy as I did not author most of the material and also because the links to nlab enetries won’t immediately work from personal nlab unless I change most of them manually. I do not see why would existence of clearly distinguished circles be a mess. The main nlab page on word 2-idiot would never be labelled, touched or version multiplied. The morphed versions are in separate circles which have more functions than mere and rare “approval” labelling.
Just a wild thought, but it would be kind of neat if there was something similar to the hovering contents, where you could “hide” the more sophisticated material and leave only the “basic” material. Something like, “Hover your mouse here if you are not afraid of heights”.
31 Sometimes that would be enough for low level version. But often one would really need hand-made adaptations. For example take the conventions. For A-infinity algebras there are many. If you teach a course you choose one and adapt all pages to that one.
5 said > I see two slightly different ideas here. One is the ability to add comments to edits.
Wikipedia has a “talk” page with each page. This works fine. It is usually not used so, but one can theoretically put the link to some old version in similar systems, including to a last himeself-certified one. Urs has rejected that approach mentioned by Andrew in 5, as he rather wants to have green flag system. I find talk pages from wikipedia more versatile as one can comment what one likes or does not like. Approves a section but not another section, for example. Talk pages may be initiated from within nlab, but be stored and updated in nForum with backlink kept in nlab. I like that system too.
Also, it seems rather rare that some entry is really polished.
Yes, and I don’t want to mark entries as polished or stable or anything like that. I want to mark pages as “free of outright mistakes”.
I can’t imagine that people’s psychology would be badly affected by them knowing that I think that some nLab entries are in fact correct. (!)
It sounds to me like the proposed “circles” are kind of like a version-control “branch” of the main nlab (as opposed to an entirely different project, which is what using a whole other web is like). With this POV, they would be like a separate web, but would start out with everything identical to the main lab, after which one can then change some of the pages according to the needs of the branch, while leaving the rest of the pages unchanged. The unmodified pages would automatically keep in sync with changes to the main lab, while changes on the main lab to the pages that were modified in the branch could be merged into the branch manually if the branch maintainer so chooses. While viewing the branch, a header would tell you whether the page you’re looking at has been modified in the branch or not. This would result in slightly different functionality than the design proposed by Zoran; in particular, if you follow a link from a modified page to an unmodified page, and then back to a modified page, you would still be within the branch and get the modified version, rather than the main nlab version. But that seems to me to actually be what one would prefer.
While I see how this would be useful when using the lab to teach a course, and perhaps also if one wants to create specialized/certified versions of groups of pages to refer to from a published paper, I don’t really see how it addresses the original desire for people to be able to mark versions of pages on the main nlab as “correct”.
I can’t imagine that people’s psychology would be badly affected by them knowing that I think that some nLab entries are in fact correct. (!)
I think the point being made is that knowing that would make them less likely to want to change those entries, because after their changes the page would no longer be marked as “Urs thinks this is correct.” I can see myself being affected in that way.
One possible way to alleviate the problem would be if edits, and certifications, could be done section-by-section. (E.g. Mediawiki has the functionality to let you edit only a particular section of a page.) Often substantive edits to a page take the form of adding new sections, or are confined to a particular section. Thus, even if all the existing sections on a page are marked “Urs thinks this is correct,” then adding a new speculative section would not change the marks on all the other sections.
I think section-by-section markings would also be useful in terms of distinguishing “stable/standard” sections from more speculative ones. In fact, if section “tags” could be more general than “So-and-so thinks this is correct,” then they could also address #31: some sections could be marked “experts only” or “highbrow nPOV” or “newbie explanation” and one could even set a flag somewhere saying “only show me sections tagged as X”.
For all the comments on the quality pof pages Wikipedia uses “talk page” attached to the original page which is equal like the original page except that it also often contains signatures by editors of the additions. This is to me serving the purpose, not the contamination of a page by single purpose certified case (and we know that what some consider a minor issuefor others is outright mistake, so the emphasis on outright which Urs made seems to me totally relative). It might look to noe that the page is free of mistakes while it has them. Recall when I was writing entries on the Conne’ cyclic category and Mike was finding several time flaws in my formulations for what I would swear a bit before was entirely correct. I still do not understand what Urs wants to accomplish with these certifications. To make outsiders aware that most of entries are not much of checked in detail ?? Outsiders who read lab are not that careful about menaing of various bars and symbols all around. I used Macintosh at the physics dept in Wisconsin in mid nineties for baout 3 years and did not learn the meanings of several of the main menu terms there, while using it regularly for email and other things. On the other hand, I think that wikipedia talk pages have multiple comment value and if being oragnized into a section of nForum while back-linked from nLab would make them highly accessible and can among minor purposes cover the Urs’s need to comment on happiness with a page state in particular version.
34 Mike, I do not see much in common between what you propose and what I proposed. Probably I do not understand your idea much.
33 “I can’t imagine that people’s psychology would be badly affected by them knowing that I think that some nLab entries are in fact correct.”
You are way too optimistic. I can not imagine a normal person not to hesitate to mess with certified version when feeling to make a significant change.
28 > A much worse threat to the incremental improvement that we want would be to keep different versions of the same page.
Urs, most of pages in nlab are way too abstract for my students and no incremental improvement can make them useful. Only radical adaptation for special needs. Similarly for other special purposes.
34 > I think section-by-section markings
The idea with section by section updates is interesting, but one has to be aware that the section pages can change and the organization can change (wikipedia allows such changes…just within the section and than the section gets merged with another or subdivided or with changed title in some). This may be challenging from the point of view of the database and software, specially when one wants also to have personal copies of such more complicated webs. On the other hand the hiding etc. idea is too complicated to live. There are not only levels but also different systems of conventions, say sign conventions etc. If I make a circle for some purpose I want it to be in the same conventions, when possible.
Edit: you see Urs made an entry infinity Chern-Weil but also entry introduction to infinity Chern-Weil, which is just a bit lower level, so he might understand the need for versions. But these entries are huge, so one can within it organize the stuff and remember few such special pedagogical pages. But one usually wants to have the pedagogical pages point to the links at the same level. That is why I propose circles, to really have links maintained, whenever the intyernal links exist to the links within the circle. If we serve mainly our own pruposes as researchers we do not need to go awaw from synthetic one format fits all and absorbing all kinds of data, notations and so on in single entry. When communicating to non-nlabers, then the adaptations are often needed.
I do not see much in common between what you propose and what I proposed. Probably I do not understand your idea much.
Perhaps I do not understand your idea much, but if I do, then what I proposed would behave to the user in exactly the same way as what you proposed, with the one difference that I mentioned: if you follow a link from “inside” the circle to a page “outside” the circle, and then a link from that “outside” page to a page which also has an inside version, then you’d end up back at the inside version. That is, it’s as if the “outside” page you ended up at maintained a flag or something remembering that you were “inside” the circle, even though that particular page doesn’t have an inside version so you got the outside version instead.
This may be challenging from the point of view of the database and software
But we aren’t talking about implementation yet, are we? (-: Ignoring such complications, I don’t think that section rearrangement is a conceptual problem: when sections are combined or subdivided, that’s a change to all involved sections, so existing certifications to any of them are no longer valid.
There are not only levels but also different systems of conventions, say sign conventions etc.
I was not proposing section tags as a replacement for your circles. There are a lot of different use cases coming up in this discussion and getting mixed together. The circles you want for giving pages to your students are one. Making pages friendlier to newcomers without lots of background is a different one. Certifying pages, or parts of pages, as correct, is a third.
I still do not understand what Urs wants to accomplish with these certifications.
At a grandiose level, I think part of the goal is to explore to what extent wikis can replace journals as a means for doing, communicating, and archiving mathematics. We know that finding a replacement for peer review is one significant stumbling block to the replacement of journals, so it makes sense to experiment with wiki-aware mechanisms that can have similar effects. Some of us would like to envision a day when we could apply for a job and cite nLab pages that we’ve written/contributed to alongside, or instead of, published journal articles. But before that day can come, we need to build the tools that will make it practical.
Note that the reviewer of a journal submission is not only checking it for correctness, but for importance, interest, and appropriateness. An extended “tagging” system could allow such markings as well.
Is it time for the nJournal?
Thank you Mike for clarificationa in 38 and 39. It seems to me that the discussion is far from conclusion or consensus, but is opening wider scope for the work, which makes finding solutions difficult but attractive goal.
As far as section tags, I am in principle for it, provided it does not exclude future changes of section structure, including removing, renaming, merging and splitting sections. So I think it would still take quite much thinking to find the mode.
If there’s a box for “edit comments”
Well, that would be horrible, for the cited reasons. But is anybody proposing that?
Why not a box for “approval comments”? Or better, a checkbox labelled “Approve this page”, then only when you click it pops up a text field for approval comments. (Compare “Move this page”.)
The certification is not suposed to be saying “I think this page is stable or perfect.” But just “I went through it and I think there is nothing outright wrong with this page. “
It occurs to me that we could put this sort of thing in a box at the bottom of the page right now. Then we would be in a better position to know what people want the software to help them to say.
@Toby 43: except that that might already have the sort of negative effects on editing that people are worried about.
I think Urs and maybe some others looked at a wiki project someone else is working on, saw that they do things differently, and thought perhaps things could be done differently here as well.
That is a perfectly natural thing to do.
However, once the idea settles along with the repercussions it is OK to decide to not change anything.
I’m kind at the point I’ve come full circle and think we should not change anything. It is not broken.
I think Urs and maybe some others looked at a wiki project someone else is working on, saw that they do things differently, and thought perhaps things could be done differently here as well.
Why do you talk in enigmas and allusions ? It confuses the point of clearing the issue by discussion. If you have a concrete system in mind, describe precisely what they have and what do you wish to take from their practice.
I don’t think that this discussion has gone nowhere (or that the net result should necessarily be “we don’t do anything”). I think that there are several ideas here that have something worth considering. What we should be wary of is thinking that all these ideas are somehow lumped together, either that we must choose one to the exclusion of the others, or that they must be implemented through the same mechanism.
So we have Urs’ desire to “mark” certain revisions of certain pages somehow. From what others have said, this has to be done in a way that it doesn’t dissuade others from further revising them. So on that, my main question is: is this “marking” meant to be something for personal use or for public use? By “personal” use, I mean that Urs’ marks a page in order to find it again if he wants to make reference to it. That reference might be public, but they key point is that marking a page is not intended to be findable by itself (though I don’t suggest it be explicitly hidden). If “personal”, then simply listing the pages on your own page (a variant of what I do at Andrew Stacey) would suffice. If “public”, then the intention is that these pages be findable and so a central repository is perhaps more in line.
One thing I would say on this is that if the intention is that a certain version of a page be easily found then it should not be hidden away in the history. I doubt that most people go looking through the revisions of a page to find particular versions. Copying a page to a new page has the double benefit that: 1) it’s obviously meant to be found, 2) there’s no stigma attached to revising the original version since revising that doesn’t change the marked version.
We also have Zoran’s desire to create an “overlay” of certain nlab pages so that some pages are created in a “user friendly” way but missing pages redirect to the nLab, but again in an “overlaid” manner so that links point back to within the “circle” if they exist. That’s a (to my mind) completely separate idea. Exactly how one might implement it would depend on whether the “circle” is intended as a static set of webpages (though they would be updateable, of course) or as a wiki.
Then there is the idea that one could loosely describe as the ’nJournal’ where pages (or sections of pages) were properly reviewed and given a “stamp of approval” if they met certain criteria. Again, I’d argue that anything given such a stamp should be copied to a new location because the aim of such should be that they be easily found and clearly distinguished from the rest of the nLab.
Most of this - even Zoran’s ideas - wouldn’t take much in the way of implementation. However, the ideas aren’t completely clear as yet and once they are they would need some sort of rules and regulations to ensure that everyone (especially our casual visitors) knew what was what.
Again, I’d argue that anything given such a stamp should be copied to a new location because the aim of such should be that they be easily found and clearly distinguished from the rest of the nLab.
That was not my impression. I see one of the innovations of wiki mathematics that the process from wild conjecture to polished verified exposition is a continuous and flowing one; why should the currently-believed-to-be-correct-and-polished pages be copied somewhere else? For one thing, if someone then discovers an error or makes an improvement on the main nLab, those changes would then have to be copied to the “nJournal place” if it were separate.
So we have Urs’ desire to “mark” certain revisions of certain pages somehow.
I’m not sure what you’re referring to here – I thought that what Urs was advocating was the “reviewing / stamp of approval” idea, not something different. Certainly it’s that idea which raised the objections that it would inhibit others from editing the page.
To add a further variant in, perhaps there is a use for a signal corresponding to a message: ’I think this page is more or less stable. Could anyone involved or especially interested in it have a look and give a view on this.’ This would mean that a page would be scrutinised a bit more and hopefully by more people before being declared ’stable’ and given a bit more flagged status.
I do like the lab as it is and think it works very nicely so we need to make sure that if we ’fix it’ the end result does make it better. It certainly ’ain’t broke’ but that does not mean that it cannot be improved!
i said
The certification is not suposed to be saying “I think this page is stable or perfect.” But just “I went through it and I think there is nothing outright wrong with this page. “
Toby remarked
It occurs to me that we could put this sort of thing in a box at the bottom of the page right now. Then we would be in a better position to know what people want the software to help them to say.
Mike replied
except that that might already have the sort of negative effects on editing that people are worried about.
This I still cannot follow. In fact I find it weird. This is saying that people would feel inhibited to edit a page of which somebody else thinks it contains no errors. You and Zoran can’t seriouly mean this. This is like saying that people can relax and work on the Lab only as long as it can safely be assumed that every single page of it is wrong!
I think there is still a mix-up between “not wrong” and “finished”.
I think the whole point of wikis is that pages are never finished. They are being incrementally improved, possibly indefinitely. (And I find it therefore a bad idea to extarct certain pages as being finished.)
But while not finished a page can still be correct or free of errors .
(See example below.)
I want nothing but a means to make public the information which people think they have checked which pages in which version. I imagine a very lightweight indication of that. “Joe Absentminded looked through this page and, while it is not perfect, thinks that the statements given are not wrong.”
I am thinking this could add considerable additional value to the nLab activity that we are already doing anyway. Suppose Zoran writes out a proof on some nLab page. Somebody finds the result interesting and would like to cite it. But since it is not journal-published, it does not carry the stamp “passed through peer-review”, so won’t be considered citable. But suppose now there is a small remark there saying that Mike and Todd looked at the proof and found it to be correct. Then that makes the theorem have peer-review status (even considerably better one than the traditional journal peer review).
That would greatly improve the value – scientific-community-wise – of Zoran’s effort of writing up that proof on the nLab. In fact, as soon as there is some record of such peer-reviewed statements on a wiki, I could easily imagine that we get to the point where Zoran need not go and send that theorem to some random editor who will pick some random referee who with a random chance is able to verify that theorem. Instead, people will point to the nLab and say: look I am using this theorem verified by Skoda, Shulman and Trimble.
And even better, if a year later Toby Bartels comes along and proves a stronger version of the theorem and then Andrew Stacey comes and observes an important corollary that yields an interesting applicatioon, people will all see this, because the corresponding nLab page, while already correct before, will have be incrementally improved and accumulated all this additional information.
If I were still in academics publishing papers (which I’m not), I would find this whole discussion moot. I would have no problem referencing a page on the nLab in a formal peer reviewed article. I would simply make sure to specify what section AND importantly which version of the page I am referring too. In my dissertation I referenced IRC conversations. So what?
Do there exist journals that would frown on this? If so, avoid those journals.
This I still cannot follow. In fact I find it weird. This is saying that people would feel inhibited to edit a page of which somebody else thinks it contains no errors.
Weird or not. This is precisely what we’re saying. You’re outnumbered on this one.
However, the ideas brought up here are good (of course considering the sources), so I still think there should be something completely new, e.g. an nJournal, to satisfy these new desires that is set up more formally and keep the nLab as the name suggests a Lab with occasional chemical explosions, not a Library.
I would have no problem referencing a page on the nLab in a formal peer reviewed article.
You are missing the point. Of course you can point to an nLab article for information. You can also point to a random internet page if you think that’s useful for your reader. But you can’t have that pointer to a random page serve as proof for any proposition that you make in the article.
What this is about is to make it possible for people to write “Proof: Apply our lemma 4 and the theorem on nLab page xyz” and have that be accepted.
But you can surely say Apply our lemma 4 and then apply the following: states theorem. (A proof can be found and checked on the n-Lab….) or (The following proof is found on the n-Lab (ref) but is reproduced here for the convenience of the reader. It would seem to be due, in this instance, to XXX with additional comments and adjustments by YYY and ZZZ.)
I feel that we should provide some example wordings and suggestions somewhere e.g. in FAQs, and start trying out some of them in papers we write and submit, then we can if needs be adjust the n-Lab to fit the perceived need at that point in time.
I think I’m beginning to see a difference between what Urs originally said and what he meant. Or rather, between what Urs originally said and what I (and some others, I think) read it as saying. I would feel very differently about editing a page in the following two circumstances:
The whole page (or even a section of it) is marked by someone in some way.
A proof is marked as having been checked by someone.
I think that this is one thing that Knuth got absolutely right in TeX: when I read a paper (or nLab article or …), my mind has (at least) two modes: a text mode and a maths mode. Whichever mode I’m in, that type of content is paramount. The difference between my head and TeX (in this respect …) is that for me the analogues of \[
and \]
are “Proof” and “□” (also, Theorem, Lemma, and so forth). So if a proof is marked as having been checked, I would not mess with the mathematics unless I was very sure (and would probably check here first), but I wouldn’t be so hesitant about changing the wording or grammar or anything like that. However, if a section is marked some how then I would interpret that in “text mode” and so not want to mess with the text.
I really would like to see this sort of thing happening on the nLab. I think it would be a fantastic example of real peer review. I’m sure that it already does, but without some way of flagging it, that doesn’t have the effect that it could.
At a crude level, this could be as simple as having a list of names after the proof: “proof verified by: XXX,YYY,ZZZ” (make it a “click to reveal” to avoid cluttering up the page). It could even have the revision number: “proof verified by: XXX(N), YYY(M)”.
Does that sound like what you’re thinking, Urs, or am I wrong again?
One misconception that people may have is about the level of checking of proofs in books. I have written and also refereed several books. I get the impression that in the refereeing process proofs are not examined in gory detail. If the proof looks good and reads well and intelligently then it will be okayed. Sometimes someone will signal a glitch that they have noticed and the author then will find a way around or whatever, but the level of checking in a book is often less sturdy than that in a published paper. What Andrew is saying sounds to me feasible and would provide MORE evidence for the acceptability of a proof than many books provide, (as long as others accept the views of XXX, YYY and ZZZ). That would seem something very useful.
Does that sound like what you’re thinking, Urs,
I kept suggesting a phrase such as “This page, while offering possibly room for lots of polishing and expansion, seems to me to contain no erroneous statements.” I guess that is supposed to express what you call the distinction between text-mode and math-mode.
Andrew wrote:
I really would like to see this sort of thing happening on the nLab
Tim wrote:
That would seem something very useful.
Ah! :-) We are getting somewhere.
By the way, in reply to Zoran’s question above where this discussion was motivated from: recall that this was motivated from me learning from Alan Carey – who asked me to name potential referees – that the Manifold Atlas-wiki is trying to provide refereed citable articles with reliable theorems, in view of the fact, he said, that Wikipeia does not serve that purpose.
Andrew asked you to tell him what you wanted without consideration (yet) of how to achieve it.
Instead, maybe a better thing to do is tell him what problem you are trying to solve. For example, we can focus on the situation Urs highlighted:
You are missing the point. Of course you can point to an nLab article for information. You can also point to a random internet page if you think that’s useful for your reader. But you can’t have that pointer to a random page serve as proof for any proposition that you make in the article.
What this is about is to make it possible for people to write “Proof: Apply our lemma 4 and the theorem on nLab page xyz” and have that be accepted.
Maybe we should focus on this. I think this can be accommodated by better use of existing nLab technology rather than introducing something new that might have unintended consequences.
Andrew has some very nice pages complete with theorem environments that are more than sufficient for the kinds references Urs is looking for. If you’d like an example, check out
or better
As Andrew says, something appearing in a theorem environment means something different to me. It is “Serious Mode”. Most pages are in “Development Mode” or “Lab Mode”. We can use this as an implicit approval mechanism, i.e. only put it in “Serious Mode”, i.e. theorem environments, if it is serious and approved content.
I had a thought last night that maybe we can also take advantage of the nLab’s ability to include other pages within pages. We could maybe use this by creating pages specifically for “serious” theorems that have been reviewed and approved. Then we include this serious theorem on another nLab page.
The point is that before we fix something that isn’t necessarily broken, we should first focus on what problem we’re trying to solve and explore whether the existing technology is sufficient already and we just need to utilize it better. I suspect this to be the case here.
Most pages are in “Development Mode” or “Lab Mode”. We can use this as an implicit approval mechanism, i.e. only put it in “Serious Mode”, i.e. theorem environments, if it is serious and approved content.
This would just indicate what the author thinks of the material. But the point of a peer-review system is that others can add their opinion to that. Conversely, a page may look horrible and be in need of polishing and still contain good correct results.
I suppose I really do not get it. You guys ARE the peers. If you submit a paper to a refereed journal, there is a significant chance another of you would be the referee anyway. The nLab is written by experts for experts. If Urs writes a theorem in a theorem environment on the nLab, why isn’t that just as good as writing the same theorem in a peer-reviewed journal? You guys ARE the peers. The nWorld is not that big (and is shrinking and sadly will continue to shrink along with all science and mathematics programs supported by public funds).
I suppose I really do not get it.
Maybe Mike has to come again to explain it, if I keep failing. But maybe we should wait for what others have to say.
You guys ARE the peers.
You can’t tell from a bare entry who of us guys would officially claim to have counter-checked all the statements.
If you submit a paper to a refereed journal that points to a theorem on the nLab, I think it is fairly safe to assume that that theorem stands on solid ground, otherwise you would not have referenced it. Still not getting it.
I’m focusing on trying to address the situation you highlighted
What this is about is to make it possible for people to write “Proof: Apply our lemma 4 and the theorem on nLab page xyz” and have that be accepted.
Who in their right mind would not accept that coming from one of you? In other words, before you would write that, you would likely have made sure that the proof has been reviewed by others in the first place. There has to be room for trust, integrity, etc.
If you submit a paper to a refereed journal that points to a theorem on the nLab, I think it is fairly safe to assume that that theorem stands on solid ground, otherwise you would not have referenced it.
Well, one point would be to expand the amount of material in the nLab that Urs or anyone else would feel secure in referencing in a submitted article. In fact, let’s take Urs as our example.
It seems clear to me that Urs has varying levels of confidence about what he puts down here, whether it’s a definition of a theorem or a proof. You can tell because he often asks for feedback, and I don’t think he’s asking to be polite. It’s probably not a huge percentage of the time that he gets back a definitive “yes, Urs, that definitely looks right to me”, and so some lingering uncertainty may remain. But if two or three of us do explicitly vouch for correctness of the point in question, his own confidence goes up, and it would probably carry a fair amount of weight with others.
As it stands, there is an awful lot in the nLab that has a kind of sandbox feel to it, and it’s not at all clear to me what sort of stock other people put in it – despite the fact that we are such wonderful mathematicians. :-D So having parts of it explicitly flagged as having been examined and okayed for accuracy could be very helpful for everyone.
So having parts of it explicitly flagged as having been examined and okayed for accuracy could be very helpful for everyone.
All right, it seems we are converging on something!
By my count of the above messages (but, as Todd amplifies, you should peer-review that count) this now makes Andrew, Tim, Todd and me agree on the usefulness of the proposal (where I gather the hard part in the agreement was sorting out what the proposal actually was).
So then I am back to suggestions for how to implement it: Andrew emphsized that it would be useful to have a somewhat sophisticated system that allows to flag-as-having been-examined-and-okayed-for-accuracy different parts of a single entry.
I would be happy to have such a system, but it sounds to me like requiring a fair bit of effort to implement, even to think about how to implement. With its outcome in nLab-practice unclear and untested, this may be a bit risky.
Therefore I come back to my original suggestion: at least for the purpose of testing it all out, for getting a feel for what things can be like, wouldn’t it be easy (Andrew mentioned that it would be easy, i think) to just install one additional button in the entry window, the [flag-this-version-as-having-been-examined-and-okayed-for-accuracy-by-you]-button.
If that’s easy to implement, I vote for implementing it. Then we can see what will happen.
I still don’t think doing so can break anything. The worst that can happen is that people won’t use the functionality much. To make crystal clear the meaning of hitting that button and to rule out all possibility of misunderstanding that flaggd entries are meant not to be further edited, we can add somewhere a brief description of what it’s all about, emphasizing that no entry is ever to be considered finished, that flagging with that button is not meant to imply that the entry is even well written and flagged entries may well deserve a complete rewrite, in principle, and that all it means is that the user who flagged thinks that the technical statements in the entry are not wrong.
@Todd I think that is the point. Let me make it in another example to see if others agree. We have various levels of ’finishedness’ on the Lab, and use it for slightly different purposes. I tend to try to put down stuff that i know and which has been known for some time yet is not often refereed to in other people’s papers, e.g. the stuff on cat-n groups has I think a lot of potential AND some interesting open questions, but has been somewhat dead to activity recently. I want reactions and perhaps a bit of advertisement of the methods,and to develop things a little further for my own satisfaction, to evaluate others reactions in an effort to see the blockages to future development. The first part of that story is mostly published, but some isn’t although it has been around for 20 years, the latter part is being developed slowly and has not got the certainty the first part has. It is not that easy to signal to outside users the difference between the two parts. Oh, we can say ’work in progress’ but often it isn’t, it is fairly certainly right even in its detail but perhaps we need the reaction of others to decide where next to push and for the relative value of various parts of the theory… is the proposition optimal or is it really badly stated. That work is ’sandbox’ but where we need the interaction with others to lift it from there. We choose to do that in public but need to flag up what pparts are considered reasonably certain and what parts are considered sketches.
If that is the picture, then we may have to think how to improve the clarity of the status of entries.
@Eric In the SGAs of Grothendieck et al, it was very new stuff and AG was no duffer on proof, BUT the seminar notes were distributed with quite a large number of errors. AG claimed things that on closer study were not true. (I know this from work by Kimmo Rosenthal who corrected stuff on etendues.) The main ideas and intuitions were in general clear and good, but sometimes individual statements (or examples) were not 100% worked through before they were made available in the seminar notes. (This may be part of the reason why AG did not want various documents republished. He knew there were errors and that they would need quite a lot of editing.) We are not AG et al but are running various ’seminars’ on-line some of which are expository (and they are perhaps no problem), some of which are exploratory, some live somewhere in between the two types. If I understand Urs correctly, he wants to flag up which is which and for the more exploratory ones, to state that the some of the ’seminar group members’ have reasonable confidence in the proofs etc being discussed.
This does not mean that I agree 100% with Urs on the ’how’ but I think I do begin to see that something like that may be useful.
Note the SGAs were published but contained errors. They were referenced and still are. I do not see that publishing gives certainty, so I think the problem is slightly elsewhere.
I very much like this comment of yours, Tim.
By the way, one short remark on what i said above, the question of whether to flag whole entries or parts of them: we already emphasized in other discussions that it may be useful to break entries apart into pieces on separate pages anyway, such as moving the proof of a theorem to a separate page.
So even with just the functionality of flagging entire entries, if someone feels he would like to flag just a single statement, that could easily be extracted to a separate entry
+1 for #65, Tim. I agree as to the usefulness of the Idea (my first approval of the approval button perhaps too far back in time to be of use). I suppose we can think of it as a sort of ’have a read of/listen to this and see if you think it works’ mechanism that happens between researches in geographic proximity. Instead of your mate saying ’it’s all good’, one of the nLabizens read it over and give it a thumbs up. But just as in real life, said approval can be localised to certain proofs etc.
Switching into “How to” mode…
Let’s say that a page contains a mixture of “Lab Mode” and “Serious Mode”. Could we move the serious material to a separate page and “include” it? This would seem to be transparent to the reader yet make approving sections possible rather than a blanket approval for the whole page.
Not that I foresee it ever being a problem, but what could we do to avoid a fraudulent approval, e.g. let’s say I pretend to be Todd and give my approval to something?
such as moving the proof of a theorem to a separate page
I was wondering (we have a guest from today afternoon so I will be in Zeitnot the rest of the week, so no time to check): if I use the inclusion of one page in another and then I want to look at version xx of the page y which includes page z, will the listing of the old version include also the version of page z at that time or at present time ? I noticed that if I look at old version of the page and look at the list of pages which refer to it, it is the current list of the pages which refer to it. On the other hand, many of the pages which are refering to any page by its redirect name often do not appear on the list.
Urs (64)
So then I am back to suggestions for how to implement it: … it sounds to me like requiring a fair bit of effort to implement, even to think about how to implement.
In my original comment on this (7) I asked:
How does my understanding of what I think Urs wants differ than him just adding a sentence at the top of an edited page that says that he, Urs, at a particular date, considers the page complete and fully checked?
Now consider the discussion in Status of the Database of Categories, where I a pursuing an approach that starts with the general ability to position harvestable JavaScript Objects (JSOs) in nLab pages and then uses them to define a database of categories as Types.
Combining these two ideas would give Urs or anybody the ability to ’sign’ a page or section of a page not by writing a sentence at the top but instead by inserting a JSO to encode the signature in a structured manner. From this perspective the main issues is what should should ’signature JSOs’ encode and what should their structure be? For example maybe something like:
{0: {person: [[urs]], date: "2010/10/10", inProgress: false, noTypos: true, mathValid: true,} 1: {person: [[zskoda]], date: "2010/10/20", mathValid: true,} }
to cook up an example off the top of my head.
On a nLab show page display of such data could be hidden behind a ’signature glyph’ that you have to click on to see and edit.
In initial implementation of this idea would just be to insert such JSOs on nLab pages and use the nLab version system to update their changes. Eventually such JSOs could be harvested into a separate database.
[edit: I thought I was being clever by using this url encoder to put in URLs that the nForum parser barfs on (above). They look fine when moused over. However when you click on them they don’t take you the the right place. Let’s try not being clever with this link: Status of the Database of Categories. ]
In my original comment on this (7) I asked:
How does my understanding of what I think Urs wants differ than him just adding a sentence at the top of an edited page that says that he, Urs, at a particular date, considers the page complete and fully checked?
Didn’t I reply to that? I think this could work as a hack, but it looks to me like it would be quite awkward. There would be no automatism that removes the signature when the entry is next modified, or at least an automatism that highlights that the signature corresponds to a different version. Even if dates are given, readers are likely to just see the entry and the signature. That can lead to quite awkward siuatoins. Suppose in 10 years form now I get back to that entry and see that someone filled it with lots of nonsense and the first line of the entry still states that I think this is all great.
Combining these two ideas would give Urs or anybody the ability to ’sign’ a page or section of a page not by writing a sentence at the top but instead by inserting a JSO to encode the signature in a structured manner.
This, like your other comments on the CatDatabase, sounds all very interesting. I have to admit, though, that I still have just a very vague idea of how what that programming that you keep telling us about would result in in practice. I’d be very interested in seeing a toy version of this implemented, to see what it is you have in mind.
I’d be very interested in seeing a toy version of this implemented, to see what it is you have in mind.
I’ll create a working toy example after I get the JSO editing for the category database working.
For now, people might consider what “properties” should be in these objects. For example one might want IP address
in a signature entry as a means to avoid forgeries. So for now come up with a list of properties, and decide whether they should stated in positive form (complete
) or negative (inProgress
). And please talk about sets of properties (as in “I think the properties should be p1, p2, p3, p4
” and what values they can take - for example one want to have 3 different binary properties, or say one property Status
that could take on values from [stub, inProgress, checked, complete, ... ]
) so that different whole schemes can be compared.
After implemented, will these sets of properties be displayed in a menu to the user for deciding which one to pick?
I’m still not sure what problem this is meant to solve! Eric got it right when he said:
Andrew asked you to tell him what you wanted without consideration (yet) of how to achieve it.
Instead, maybe a better thing to do is tell him what problem you are trying to solve.
Implementation is the easy part of this whole thing. But I’m still confused as to exactly what it is that should be implemented. I feel like I’ve got the edge pieces in place, and maybe a bit of detail on the strange object in the left-hand lower corner, but as yet I don’t feel that I have a sense of the whole picture.
I know I’m probably just being dense and this is very annoying for everyone else, but could someone please outline the problem. That is, I don’t want implementation ideas, I don’t want the details on what you want done, but I do want to know how it will be used. That is, if you “sign” or whatever a page, section, proof, or whatever, what next? Who is going to use that information, who is expected to be able to find it (and how easily), and how is that information going to help them?
(Rod: links work fine if you use the Markdown syntax: [text](link)
. Any XHTML that you paste in has to be 100% valid otherwise it gets sanitised. The assumption is that if you use XHTML then you know what you’re doing, and if you don’t know what you’re doing, then you should use Markdown.)
Andrew, what did you mean in #54 when you wrote:
I really would like to see this sort of thing happening on the nLab. I think it would be a fantastic example of real peer review. I’m sure that it already does, but without some way of flagging it, that doesn’t have the effect that it could.
??
if you “sign” or whatever a page, section, proof, or whatever, what next?
People will see the signatures, will be alerted of the fact that the material they are looking at has been peer-reviewed and has a high chance of being reliable. If what they see is useful for them, they will possibly use this material in their work by citation, and possibly their journal referees will accept proofs by reference to signed nLab pages, etc. so that eventually the signed nLab pages become part of the reliable math literature. Just as peer-reviewed journal articles are. But quite possibly a bit better.
@ Zoran
if I use the inclusion of one page in another and then I want to look at version xx of the page y which includes page z, will the listing of the old version include also the version of page z at that time or at present time
It will include the page as it appears at the present time.
I’m having trouble following this long discussion, since I’m busy with a lot of other stuff and I can only come to read it every few days. Going back to about #50 where I left off, I’m not sure whether the confusion about psychology was completely resolved? Imagine it this way: if a page is marked as “Urs thinks this page is correct,” then that mark makes it a better page than it would be otherwise. If I edit that page in such a way that Urs’ approval mark no longer applies, then my edits have (hopefully) improved the page, but the removal of Urs’ approval mark has simultaneously decreased the value of the page relative to its state before my edits. Do you see how that could make someone less likely to work to improve a page than they would be otherwise? I agree entirely that there is a good thing here we’re working towards, but we have to do it right.
@Eric #60, 62:
If Urs writes a theorem in a theorem environment on the nLab, why isn’t that just as good as writing the same theorem in a peer-reviewed journal?
The point of peer-review is that it’s reviewed by someone other than the person who wrote it. In theory, when you read a theorem in a peer-reviewed journal, you can be confident that at least one person, other than the author(s), read the proof and thought it looked okay. The nLab has the potential to be even better than that – with a good system it could tell us exactly how many people and who. But as it stands now, you can’t tell whether anyone other than the person who wrote it has even glanced at the page.
Ideally, again, once a paper has been peer-reviewed and published, the theorems in it can be considered fairly “trustworthy.” In particular, when a referee is reviewing another paper which cites a result from the first one, it is much less her responsibility to worry about the correctness of the cited result – she can reasonably trust the referee of the first paper to have caught errors in it. (Of course, people are human, and errors do slip past, and not all referees are as conscientious as they should be, but I like to think this is how it should work.) By contrast, as things stand currently, if a submitted paper cites a theorem from the nLab, a conscientious referee worried about the correctness of the paper in question would have to apply just as much scrutiny to any result cited from the nLab, because she knows nothing about any other referee who might have checked that result.
I think what I am envisioning is exactly what Urs said here:
People will see the signatures, will be alerted of the fact that the material they are looking at has been peer-reviewed and has a high chance of being reliable. If what they see is useful for them, they will possibly use this material in their work by citation, and possibly their journal referees will accept proofs by reference to signed nLab pages, etc. so that eventually the signed nLab pages become part of the reliable math literature. Just as peer-reviewed journal articles are. But quite possibly a bit better.
I very much like the idea that what gets flagged as “checked/peer-reviewed” is a piece of “serious” mathematics, i.e. a theorem statement and proof, rather than the philosophy, motivation, etc. which is usually in more flux. I don’t think that flagging theorems+proofs as correct would have any of the negative psychological effects on future editors that I’ve been worried about, as long as changes elsewhere in the page don’t affect existing markings. It’s even more refined than the idea of putting marks on sections of a page, and I think it actually gets at the root of what we want – theorem statements and proofs are really what matters as far as correctness goes. (Although, of course, a correct theorem could be made incorrect by changing a definition earlier on the page which it refers to… but maybe we shouldn’t worry about that?)
With a view towards the future, it would be nice to have a system that could also integrate with automated proof checking tools, so that in addition to “So-and-so checked this theorem and proof” you could have “This theorem and proof has been formalized in Coq, code available here.”
Mike, that sounds very good to me!
Andrew, what do you think are the chances that we get somebody (you? Rod?) to code something that will make our Lemma/Proposition/Therorem-environments come equipped with some kind of extra functionality that allows to sign them in some way?
something that will make our Lemma/Proposition/Therorem-environments come equipped with some kind of extra functionality that allows to sign them in some way?
now this is something I feel is workable. By restricting ’approval/flagging/signing’ to what are essentially the bones of the page - the hard results - it leaves the rest of the page (exposition) to be continuously improved/updated and added to.
For what it’s worth, I like this direction as well. I really like Andrew’s idea of “Lab Mode” and “Serious Mode”. Serious mode can be represented by putting it in a theorem environment. It is only the Serious Mode content that needs to be approved and it is the only content that will be referenced externally. A tweak to the theorem environment that allows approvals somehow sounds good to me.
I wrote:
Although, of course, a correct theorem could be made incorrect by changing a definition earlier on the page which it refers to.
Actually, of course, definitions are just as “serious” as theorems and proofs. (And a category theorist should know that as well as anyone! (Moreover, in the realm of propositions as types, giving a proof of a theorem is just defining a particular inhabitant of some type.)) So I’d suggest that whatever we do to theorems and proofs, we do to definitions as well.
Let me continue brainstorming a bit….
I kind of like the idea of each definition/theorem having its own page which is included from other page(s), so that the “signing” mechanism can operate on pages as units. Maybe we could also implement along the way some standard “zooming/hiding” CSS for proofs of theorems, like we have for floating TOCs, which has maybe been talked about before. Having theorems on separate pages would also make it easier to reference/link to a specific other theorem: rather than having to give it an #Anchor name on one page it occurs on, one could link directly to the theorem page, which would be stable in case someone decided to move that theorem to another main page. This would be best if we also implemented an “included from” list that would automatically backlink from the theorem page to the main page(s) on which it appears.
On the other hand, this might result in a lot of tedious proliferation of pages, especially if we also do it to definitions. But perhaps the existing page about a given subject, such as category, could do double-duty as the specified “definition” page for that concept. Then “signing” that page would mean certifying that the definition given is correct.
There isn’t currently a way for a page to specify that only a certain fragment of its text shows up when it’s included into another page, is there? If not, it seems like it would be easy to implement. That would be useful if we wanted to use existing pages as definition pages and still be able to include just the definition into some other page. Moreover, theorem pages could contain additional useful information, in addition to the text of the theorem/proof which is included into other pages. Of course, there is the signing info, although that has to be automatically updated, but we could also store information about dependencies – “this theorem depends on these definitions and this lemma”, with of course links to the corresponding pages.
I think dependency information would be especially important if we start including proof-assistant code, since we would want the code of each definition or theorem to be associated to that object, but we’d also need a way to pull together all the requisite code from dependencies in order to be able to run the proof assistant and verify the code for a particular theorem. If dependencies were specified in a standard format, then an automated tool could be told “I want all the Agda code necessary to prove Theorem X” and go slurp it all from the necessary pages and put it together. (For that matter, the automated tool could run on the server.) This is getting more and more speculative, of course, but it doesn’t hurt to look ahead.
@Toby 76: Hmm, that might be a serious concern if people start citing specific revision #s of nLab pages and we are using page-includes more heavily! I wonder how difficult it would be to have old versions of pages include corresponding old versions of sub-pages? (There’s even a bit of the same issue with links – someone referred to an old version of a page might want to follow some links from it, but if the whole surrounding circle of pages was changed, then the links will go to the current versions of other pages and that might produce confusion.)
I wonder if you could include a revision of a page rather than the current version?
Let me continue brainstorming a bit….
These are all questions that deserve thinking about. But I think answering which operation mode precisely will work is best done with a little bit of feel for what happens in practice.
For the beginning, just to get our feets in the water and so that it can be easily implemented and – more importantly – will be implemented (-instead of remaining a dream), we would do well with having a functonality to sign just single pages.
Then we can experiment a bit. As we remarked several times, this functionality alone is already sufficient for signing single defs/lemmas/theorems/proofs/corollaries/examples, because these can always be moved to their seperate page. If we find this works and is found useful, we can still later refine it in many ways
Sorry, Urs, we’re still not yet at the implementation stage!
I think I now have a clear idea of what, and it’s pretty much what I hoped it would be: peer review, but peer review done right.
So what’s still to sort out? The who (or, as Terry Pratchett points out, “The Whom”), mainly, but with a side-order of Where.
Who initiates the signing process? Does it start from the author, or should I be able to read a random page and “sign” anything I like?
Where is the information on signing to be found? Should there be a central list of “things that have been signed”? Or should it simply be a discrete footnote on the page itself?
I like very much new details coming up from 77 to 82. Urs, in 83 you still propose to sign pages, and before you said that it is not good to leave a comment as you want that the correctness sign automatically disappears in changed version, unless one keeps it by human intervention. Mike complained above that this disappearance annihilates the value added with signature, hence it is even more obstructing people to decide to change it (their intervention will either annihilate the signature or they have to feel competent to do another signature of correctness by themselves).
Others talk about hard wiring the proofs. I think proofs also can change and we often generalize definitions. It seems to me more reasonable still that special groups of content pages can be hard wired but not every single proof. Each group may have different generality in definitions and so on.
Sorry, Urs, we’re still not yet at the implementation stage!
… and if we were, we’d still need to decide if the signature should apply to a page or to an environment. I was kind of liking the idea of having the signature/approval be a part of the theorem environment.
I was kind of liking the idea of having the signature/approval be a part of the theorem environment.
If so, why not having two theorem environments, one for those which are not subject to those certifications and one which is subject to those certifications (with syntax minimally different so it can be easily moved in category). Sometimes one is first creating, say, a special case of a theorem or something of the sort, with having in mind improvement. Now somebody comes to such a theorem and approves it for correctness, while the original creator had in mind just as a temporary version before being able to create a better and more general version of the statement or the proof. Then what to do ? I see a lot of collision of interest when improving a thing and somebody makes a hard-wired stamp on something. I still prefer that we have a speicalized talk page like wikipedia (but hosted in nForum and with backlink from nLab) in which the people can, give statements on any level of certification of material. 5 different users might like five different kinds of statement about it.
On the other hand, is there a way starting with a nlab page to find the list of all nForum entries (by this I mean which discussion and which entry) refering to that nlab entry, including if possible, all of its aliases. This can give a lot of scientific background info on the history and issues related to some entries...including the pointers to the discussion preceding some version. Scientifically it would tell me more about the state of some entry than mere certification mark.
5 different users might like five different kinds of statement about it.
For example, "proof correct in constructive mathematics", "proof correct in constructive mathematics after trivial adaptation".
I should say that to me still Urs's seemingly attrcative statement "free of basic errors" does not mean anything. For example, a couple of weeks ago I had a proof of something in which I did not notice that one lemma was inferring that I had a right inverse to certain morphism, not a two-sided inverse necessarily. The proof was very convincing except that I did not notice that the exhibited morphism is from the right side. No matter how many times I would reread the proof, I would repeat the same error. Simply proofreading is very weak guarantee for such trivial slips in argument. The real test is usually when somebody looks it from differnt point of view, one looks at different examples, has multiple proofs and so on. So it is not so much matter of being serious in literally checking the text but more of looking from different sides and different people. So comments on examples, on different people discussing it, on references with similar statements and so on are more useful to me than mere statement "I have read it three times and it looks to me free of basic errors".
The real test is usually when somebody looks it from differnt point of view, one looks at different examples, has multiple proofs and so on. So it is not so much matter of being serious in literally checking the text but more of looking from different sides and different people. So comments on examples, on different people discussing it, on references with similar statements and so on are more useful to me than mere statement “I have read it three times and it looks to me free of basic errors”.
I agree very strongly, but I also think this is almost a given: when people are reading mathematics at a high level and assessing how convincing it is, it is almost never at the level of going through the proof line-by-line, but of checking it against acquired stores of examples and intuition and experience first, and perhaps at the end through the lens of delicate logical nuance. And I think the differences in points of view between us is marked enough (compare Urs to Toby for instance) that getting consensus is something that will give a strong guarantee of correctness.
Yes, so one of the questions now is, how to best channel the "consensus" ?
Yes, so one of the questions now is, how to best channel the “consensus” ?
Easy: let everyone who thinks a proof is correct sign it. Then you can read off from the number and kind of signatures what kind of consensus there is.
I think your argument that checking a proof requires different perspectives is a strong argument in favor of the signing system.
Sorry, Urs, we’re still not yet at the implementation stage!
I see that. I am beginning to run a bit out of steam.
Maybe remember that last time we added a similar chage – the drop-down tables of contents – there was a long inconclusive discussion about how one might do it, which ended up seemingly saying one should use Greasemonkey scripts. Then nothing happened for a while. Then you suddenly – kindly – started to implement something Then we saw how it worked and requested changes. Then you implemented the changes. And then suddenly it worked very fine, even though it was not of the kind any one of us had previously imagined.
Same probably here: you can send me long questionaires and I can continue to fill them out. But I think fiddling around in practice is more likely to lead us to a result.
93 Drop-down tables of content are a minor thing contentwise, and if somebody would like a different system it is so unimportant. But here we talk about the sensitive content and the rights scenarios will have much impact for future and for attracting/repelling new contributors (most of whom are afraid of seeing many signs of technology).
92 It seems Urs you are not reading our remarks. You said that writing on top of page is not good because it does not include automatism of updating, that is if somebody changes the page it is not approved version any more. So how do you conceive in automatic system which does the automatic removal of certification for changed version attached to entire pages to work ? If 5 people sign that is likely to be in different versions. Or you expect that all 5 people will run to the same page checking it in the same period before the page changes to another version ? Or you expect that somebody will be looking for approvals of different people in several versions which are not likely to be essentially the same ?
If we start with some system and put effort into creating side information and later change the information to differently tagged than importing the data in which people put effort may create problems with migration. So it is better to have some long sighted vision of the system before we start putting yet addiitonal effort in certification. And maybe we need more than one system simultenaously.
Finally, if the versions are very important than we can consider having for the whole pages the notion of version tag for a minor edit. Minor edits should not change any approval tags as it is supposed they are just cosmetic/linguistic/graphical changes. But this may be misunderstood by irregular contributors who can mean a minor edit something like in wikipedia what is similar but without proof checking (or, more ambitious, peer review) in mind.
P.S. Nobody ever commented on my idea of optional "talk pages" alike wikipedia hosted in nForum but linked from the corresponding nLab page. Should I start a separate thread ?
92: > Easy: let everyone who thinks a proof is correct sign it.
As it is hard to get referees for journals and new regular contributors to nLab, you will even less get people to an uninteresting job of approving theorems written by others. Light approval like in nForum discussion yes. People like to glance a bit, say, yes this sounds right. But if I want to put at stake my common sense for theorem written in conventions of other person, it is unlikely I will intervene in it in tat way. I am more likely to add another corollary of a theorem or a remark about another version which I like or something like that. So I am not very optimistic that such a narrow usage will grow so soon. But if we allow for multiple uses and formats, including more flexibility in sectionings, additional informations, talk pages and so on, than more people will fit some of their needs there and cumulatively this can be very useful. For examples, for me most useful comment tag would be the link to automatically generated link of all nForum pages citing any of the aliases of any given nLab page I am in the moment interested, and also if in the source code of a nlab page I could write a comment line. Talk pages by the way would remove the need for more than a half of query boxes, I mean all of those which are of technical nature and not providing also temporary discussing information for only content users.
Zoran just said what I was going to say: this is an order of magnitude bigger than drop down menus! However, I do understand the frustration as well.
Zoran, you’ve mentioned a couple of ideas in this discussion which have been very interesting, but perhaps not quite germane to the central discussion. Please do start new discussions about them so that they don’t get lost in the traffic.
OK, I will start another discussion on the first occasion.
this is an order of magnitude bigger than drop down menus!
So? All the more reason to start with something!
If we can’t figure out how to do dropdown menus by having abstract sterile discussion, we are not going to solve an order of magnitude bigger problem this way.
We had this kind of opposing approach several times before. I think I am drawing on previous experience: for instance if I had not simply created the nLab at some point, we’d still be discussing what it should be like. And would likely be completely off.
This discussion is far from sterile, Urs, we have communicated each to another lots of ideas (I learned most form Mike in this discussion). The fact that Andrew Stacey found pretty good thing to do in drop down menus is that he looked for a while at all ideas in the discussion before we had "sterile", thought a lot and was content with trying it. If he finds something what will not inhibit future changes of framework and allow different systems in parallel and allow migration to different system of tagging he is welcome to do it, yes and he probably knows that (?).
In the meantime I have moved some of the non-verification issues on related issues on search and talk pages here:
http://www.math.ntnu.no/~stacey/Mathforge/nForum/comments.php?DiscussionID=1870&page=1#Item_1
(btw, talk pages can also have supplementary information on review/proof status as well which may replace or supplement some of the issues here).
Urs, I think Andrew’s questions in 85 really are fairly basic things that need to be discussed before anything can be implemented. But we’re pretty close.
Who initiates the signing process? Does it start from the author, or should I be able to read a random page and “sign” anything I like?
If it starts from the author, then one has to ask the question “who is ’the’ author”? I would expect that sometimes it would take several edits by different people before something gets to the point of being “signable”. So I would lean towards just allowing anyone to sign something at any point.
However, a related question is how the “who” doing the signing is identified. Does the signer just type in their name, as we do when editing pages, with no verification of identity? I’m a little worried about that because it would be easy for a malicious user to give a page fake signatures by lots of people, and if no one is watching the edit logs carefully we might not even notice. I’m tempted to say the ideal thing would be a PGP signature, but requiring that much technological savvy might raise the difficulty of signing pages too much. Unless we could somehow integrate it into the wiki under the hood so that Joe Mathematician can sign pages without knowing what PGP means.
Where is the information on signing to be found? Should there be a central list of “things that have been signed”? Or should it simply be a discrete footnote on the page itself?
We could have both, couldn’t we? I definitely think it should appear somewhere on the page, probably close to the “sign this” link. It would probably also be useful to display information about who signed a previous version of a page, e.g. so that fixing a trivial typo doesn’t destroy all information about signatures. (It might also be nice for people who’ve signed pages to get notified somehow when those pages are changed, so that they can go look at the new versions and update their signatures if the page is still correct.)
But I think a central list of signed pages would also be useful, if for no other reason than that we can then watch it grow. (-: A list of “pages signed by X person” would also be useful. If it displayed also pages with out-of-date signatures, it could serve the notification function I mentioned above – I could go to “pages signed by Mike Shulman” periodically to see whether I need to update my signatures. Moreover, as Zoran points out, we’re almost certainly going to have a hard time getting people to read pages carefully enough to sign them, and we need any incentive possible. Being able to point to a list of all the pages you’ve signed seems like at least a minor step in that direction, by giving people recognition for the “community service” of signing pages. (If we were MO, we could also give people reputation points.)
One easy way to start this is by hosting the signatures here. That adds a layer of authenticity since we then have to log in here to leave a signature (it’s not a huge guarantee, but a little more than is currently possible on the nLab!). Then a discrete link by the bit being signed to the signing-discussion. This also removes the connection between editing and signing (which is something that I never quite understood: if I’m reading something with a view to signing it, then it’s unlikely that I’ll also be thinking of editing it).
An author-initiated system would be simplest to set-up (thinking also in terms of procedure). So here’s a proposal:
So a typical “signature” post will look like:
Title: Theorem on Hausdorff Froelicher Spaces
Body: I would like people to check my proof of the theorem that the embedding of smooth manfolds into the category of Hausdorff Froelicher spaces preserves limits and colimits: [link](http://ncatlab.org/nlab/show/Froelicher+spaces#theorem7). [possibly some more details on what actually I’d like people to look for, but “mathematical correctness” is most likely to be the norm so could be omitted]Mike Shulman: This looks correct to me.
Urs Schrieber: This looks correct to me.
and so forth. If anyone objects, they should raise that elsewhere (though we could allow for a “negative signature”: “This is false as written: see [this discussion]”).
It’s probably worth pointing out that a significant advantage of this system is that it uses existing technologies and doesn’t involve any hackery.
Some other comments: I don’t like using includes to separate out content for this. As Zoran questioned (and Toby confirmed), includes and revisions don’t always work well together. I also don’t like using revisions for saying “This particular revision is okay”. If something is worth stamping, then it is worth saving. It’s easy enough to take a snapshot of a page and put it somewhere permanent. It can be digitally signed and linked to the signature thread (if people like that idea). But revisions and inclusions have a particular role to play already, and assigning them a new role will mean that they don’t do one of them all that well.