Mailing List Archive

Sentence-level editing
Hello everyone,

As this is my first post to the mailing list, let me introduce myself shortly. My name is Jan Paul Posma, and I'm a 20 year old Computer Science student from the Netherlands. I was introduced to MediaWiki by Roan Kattouw, contractor for the Usability Initiative, who also happens to be a friend of mine. :-)

The reason for mailing to the list is the research I'll be conducting this year: building a new editor for MediaWiki. Now I guess this has been discussed over and over again, but this is a bit different. Instead of building a true WYSIWYG editor, I'm proposing to build an editor that's based on adding extra markup to the original, rendered page. This extra markup provides the ability to edit these segments. With this approach, it's possible to slowly enable editing for different elements. First, we can enable editing for "simple" sentences (thus the title sentence-level editing). "Simple" in this context means: without most wikicodes. I.e. only links are allowed, and perhaps bold and italic. This editor can be extended step by step to include other elements, such as references, images, templates, lists, tables, etc.

The last few weeks I've worked on some prototypes to illustrate this idea.
You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html
The full project proposal and prototypes can be found here: http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing

Right now I'm not looking for anything in specific, just whether or not you think this is a good idea, technically feasible, etc. If you have suggestions of any kind I'll be happy to hear them!

Thanks for your time!
Regards,
Jan Paul Posma

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On Mon, Aug 9, 2010 at 6:55 PM, Jan Paul Posma <jp.posma@gmail.com> wrote:
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html

Can I just say that looks freakin' awesome?

-Chad

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
I'm with Chad. That is simply AWESOME. It addresses yet another issue
with usability, and it a well-done solution to it.

-X!

On Aug 9, 2010, at 7:00 PM, Chad wrote:

> On Mon, Aug 9, 2010 at 6:55 PM, Jan Paul Posma <jp.posma@gmail.com>
> wrote:
>> The last few weeks I've worked on some prototypes to illustrate
>> this idea.
>> You can find the most advanced prototype here: http://
>> janpaulposma.nl/sle/prototype/prototype3.html
>
> Can I just say that looks freakin' awesome?
>
> -Chad
>
> _______________________________________________
> Wikitech-l mailing list
> Wikitech-l@lists.wikimedia.org
> https://lists.wikimedia.org/mailman/listinfo/wikitech-l


_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On Tue, Aug 10, 2010 at 8:55 AM, Jan Paul Posma <jp.posma@gmail.com> wrote:
> Hello everyone,
>
> As this is my first post to the mailing list, let me introduce myself shortly. My name is Jan Paul Posma, and I'm a 20 year old Computer Science student from the Netherlands. I was introduced to MediaWiki by Roan Kattouw, contractor for the Usability Initiative, who also happens to be a friend of mine. :-)
>
> The reason for mailing to the list is the research I'll be conducting this year: building a new editor for MediaWiki. Now I guess this has been discussed over and over again, but this is a bit different. Instead of building a true WYSIWYG editor, I'm proposing to build an editor that's based on adding extra markup to the original, rendered page. This extra markup provides the ability to edit these segments. With this approach, it's possible to slowly enable editing for different elements. First, we can enable editing for "simple" sentences (thus the title sentence-level editing). "Simple" in this context means: without most wikicodes. I.e. only links are allowed, and perhaps bold and italic. This editor can be extended step by step to include other elements, such as references, images, templates, lists, tables, etc.
>
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html
> The full project proposal and prototypes can be found here: http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing
>
> Right now I'm not looking for anything in specific, just whether or not you think this is a good idea, technically feasible, etc. If you have suggestions of any kind I'll be happy to hear them!

This is a really nice design. I'll be interested to see how it handles
all the ugly edge cases that Wikitext makes possible ;-)

I do notice that the "Preview" button for sentence-level editing
doesn't quite work (it shows the old text). There's some stuff
missing, but I assume that this is because it's not finished yet.

Either way, this is a really awesome first step towards a more
friendly editing interface. Thanks for sharing.

--
Andrew Garrett
http://werdn.us/

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On 9 August 2010 23:55, Jan Paul Posma <jp.posma@gmail.com> wrote:
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html

It seems like a great idea, but your prototype doesn't appear to work.
I can't see a way to save a modified sentence (the only options are
preview and cancel, there is no submit option) and the publish button
at the top of the page doesn't seem to do anything. Am I doing
something wrong?

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
Jan Paul Posma wrote:
> Hello everyone,
>
> As this is my first post to the mailing list, let me introduce myself shortly. My name is Jan Paul Posma, and I'm a 20 year old Computer Science student from the Netherlands. I was introduced to MediaWiki by Roan Kattouw, contractor for the Usability Initiative, who also happens to be a friend of mine. :-)
>
> The reason for mailing to the list is the research I'll be conducting this year: building a new editor for MediaWiki. Now I guess this has been discussed over and over again, but this is a bit different. Instead of building a true WYSIWYG editor, I'm proposing to build an editor that's based on adding extra markup to the original, rendered page. This extra markup provides the ability to edit these segments. With this approach, it's possible to slowly enable editing for different elements. First, we can enable editing for "simple" sentences (thus the title sentence-level editing). "Simple" in this context means: without most wikicodes. I.e. only links are allowed, and perhaps bold and italic. This editor can be extended step by step to include other elements, such as references, images, tem
> plates, lists, tables, etc.
>
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html
> The full project proposal and prototypes can be found here: http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing
>
> Right now I'm not looking for anything in specific, just whether or not you think this is a good idea, technically feasible, etc. If you have suggestions of any kind I'll be happy to hear them!
>
> Thanks for your time!
> Regards,
> Jan Paul Posma
>
Interesting.
I find the switch to 3row textarea from content a little jarring. A
further developed version could make use of contentEditable to provide
the same editing ability but without the negative side effects of the
textarea. This could either be done as a actual lightweight wysiwyg --
floating undo, bold, italic, link/unlink buttons (being sure that when
the user instinctively types [[internal link]] it turns into a link --
Wikia failed there). Or converting the simple content back to WikiText
and showing the syntax ([.[., '', etc...) inline, with a floating cancel
and preview button just using contentEditable as a textarea replacement
that doesn't disrupt the page flow as much.

If you do start to get into the contentEditable stuff later, be sure to
try to contact me about it. I was working on a company project that
could really have used a good inline wysiwyg editor, but I found all the
wysiwyg editors out there lacking. They don't support contentEditable,
they don't let you detach the toolbar from the editor (or better, give
you an api and let you build the toolbar yourself), and they're such a
horrid mess of bloated code I can't for the life of me find a way to
extract the components that focus on cleaning up the mess the browsers
make of the html and abstracting the wisiwyg api. And the browsers make
a mess of things. So while I've had to make due with a workaround since
we haven't launched yet, I've been hoping to eventually finish creating
a MIT or MIT/GPL licensed ContentEditable library that'll abstract the
basic wysiwyg mess that every editor seams to be reinventing and make
rolling your own custom wysiwyg editor easier. Depending on what state
we're at whenever you do get to that, we could collaborate on that, or I
could probably spin it as a small contract or sponsorship for an
open-source project we could use which would also be useful in your
project and for other projects, if we're already launched. Or, perhaps
enough time might elapse that we already hired someone to develop the
library and left it open for people to freely use.

--
~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://daniel.friesen.name]

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
2010/8/10 Andrew Garrett <agarrett@wikimedia.org>:
> I do notice that the "Preview" button for sentence-level editing
> doesn't quite work (it shows the old text). There's some stuff
> missing, but I assume that this is because it's not finished yet.
>
It couldn't really work, could it? Cross-domain restrictions prevent
it from running sentences you enter on janpaulposma.nl through the
parser (sentences can contain links) on en.wikipedia.org . Could be
fixed by either setting up a MediaWiki instance on the same domain
(which is of limited use) or by or writing a quick proxy script for
api.php (much more useful, as that'll return 'real' results), but I'm
guessing this stage is really just about the UI.

Roan Kattouw (Catrope)

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On 10-Aug-2010, at 11:05, Roan Kattouw wrote:

> 2010/8/10 Andrew Garrett <agarrett@wikimedia.org>:
>> I do notice that the "Preview" button for sentence-level editing
>> doesn't quite work (it shows the old text). There's some stuff
>> missing, but I assume that this is because it's not finished yet.

Ah, I guess I wasn't quite clear on that. These are "prototypes", user-interface mashups, without actual server-side logic behind it.

The next step of the project will be to write the server-side stuff that matches the sentences, and find out how good this his, what the edge-cases are and how those are handled, etc.

Finally, it can be made to a working plugin which only does the sentence-editing. The other things like references, images, etc. are a bit harder. These can be built one-by-one to extend this editor, but I think that only the sentence-level editor can be quite useful already.

Besides, with only the ability to edit the sentences there will be enough challenges already: performance, security, handling edit collisions, localization, etc.

Anyway, it would take quite a while to be able to do everything shown in the third prototype. It shows what we *could* have eventually. The plan is that in half a year the second prototype will be fully functional and available as an extension.

Best regards, Jan Paul


_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
> Interesting.
> I find the switch to 3row textarea from content a little jarring. A
> further developed version could make use of contentEditable to provide
> the same editing ability but without the negative side effects of the
> textarea.

Actually, showing the original wikitext is one of the goals of this user-interface. The goal of this project is to lower the barriers for novice users, and providing a better way for them to learn the wikitext syntax. Hiding the wikitext completely would defeat this purpose.

In the best cases novice users would first edit some sentences, while noticing the wikitext syntax, but only some links and perhaps bold/italics. This is much less scary than a big textarea with lots of code. Then they may experiment with references, images, templates (once these are implemented), so they can slowly learn more. Eventually they can either be advanced users of this editor, or try the editor we have now, which will always be more powerful. The editor I'm proposing *isn't* a total replacement for the current editor, just an addition.

Best regards, Jan Paul
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On 08/10/2010 11:59 AM, Jan Paul Posma wrote:
> Finally, it can be made to a working plugin which only does the sentence-editing. The other things like references, images, etc. are a bit harder. These can be built one-by-one to extend this editor, but I think that only the sentence-level editor can be quite useful already.

An idea: perhaps instead of extending the sentenct-editor, you could
introduce new kinds of editors for different types of content. For
example, you could have an image editor with + and - buttons to change
the size of the image and those ≡ buttons to change the alignment of the
image; or a template editor that would just present a list of fields to
fill in. This should be both easier to do for you, and easier to use for
the end user.

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On 8/9/10 3:55 PM, Jan Paul Posma wrote:

> Right now I'm not looking for anything in specific, just whether or not you think this is a good idea,
> technically feasible, etc. If you have suggestions of any kind I'll
be happy to hear them!

This is definitely a huge step in the right direction.

Aside from the simplicity of just editing sentence by sentence, I like
the massive help section you added at the top. We have to assume that
the average contributor hasn't made more than a few edits.

This will introduce a big chasm in between making a simple sentence
edit, and then making a big change like cleaning up a whole paragraph.
But that's quite acceptable and we can build on this to make paragraph
editors, image inserters, infobox editors, and so on.

--
Neil Kandalgaonkar <neilk@wikimedia.org>

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
2010/8/10 Neil Kandalgaonkar <neilk@wikimedia.org>:
> This will introduce a big chasm in between making a simple sentence
> edit, and then making a big change like cleaning up a whole paragraph.
> But that's quite acceptable and we can build on this to make paragraph
> editors, image inserters, infobox editors, and so on.
>
Exactly. It's true that, at first, there'll be a rather large gap
between the 'simple' sentence-level editor and the 'full'
old-fashioned edit page, but the long-term vision (voiced by some, at
least, and I agree with it) it to close most (not all, that can't
really be done) of that gap with editors that can accomplish other
simple-ish tasks.

Roan Kattouw (Catrope)

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
> This is definitely a huge step in the right direction.

Thanks everyone for the positive feedback!

> Aside from the simplicity of just editing sentence by sentence, I like the massive help section you added at the top. We have to assume that the average contributor hasn't made more than a few edits.

If you like to read more about the choices made in the top section, I've written it down at:
http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing/Prototypes/Prototype_2
and http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing/Prototypes/Prototype_3

> This will introduce a big chasm in between making a simple sentence edit, and then making a big change like cleaning up a whole paragraph. But that's quite acceptable and we can build on this to make paragraph editors, image inserters, infobox editors, and so on.

Exactly, that is the goal. To 'teach' wikitext by slowly introducing more complex concepts. For now I'll focus on the sentence-level editing though.

Best regards, Jan Paul
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On Mon, Aug 9, 2010 at 6:55 PM, Jan Paul Posma <jp.posma@gmail.com> wrote:
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html
> The full project proposal and prototypes can be found here: http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing
>
> Right now I'm not looking for anything in specific, just whether or not you think this is a good idea, technically feasible, etc. If you have suggestions of any kind I'll be happy to hear them!

This looks like an excellent incremental improvement in editing
usability. One major problem I've seen (anecdotally) with people
trying to edit typical Wikipedia articles is that they get intimidated
by the wall of wikitext, which often has large templates and things
obscuring the text they were trying to get at. I think the problem of
wikitext complexity will be greatly mitigated if you can go into some
edit mode where you can just click a sentence to edit it. New users
can then readily ignore the funny square brackets and such, and we
don't have to deal with trying to convert between WYSIWYG and
wikitext.

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
I suppose I just go on and build it as an extension then. ^_^
Again, if you have suggestions or want to join in development or anything else, feel free to mail.

Best regards, Jan Paul
_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
2010/8/13 Jan Paul Posma <jp.posma@gmail.com>:
> I suppose I just go on and build it as an extension then. ^_^
> Again, if you have suggestions or want to join in development or anything else, feel free to mail.
>
You've already applied for commit access right? Did you apply for
extension access or core access?

If and when you get commit access for extensions, you're encouraged to
develop your extension in our SVN repo.

Roan Kattouw (Catrope)

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
On 10 August 2010 00:55, Jan Paul Posma <jp.posma@gmail.com> wrote:
...
> The last few weeks I've worked on some prototypes to illustrate this idea.
> You can find the most advanced prototype here: http://janpaulposma.nl/sle/prototype/prototype3.html
> The full project proposal and prototypes can be found here: http://www.mediawiki.org/wiki/User:JanPaul123/Sentence-level_editing
>

This is the best thing I have see the whole week.

But suppose I want to be always in this mode, I can't click on links.
Also maybe the user don't really need to see the lines highlighted,
... here in firefox wen I double-click on a word, the whole phrase is
highlited... is like the user is already acustomed for how
line-selections works on double click. But IANUE. Also, there need
to be stronger options, "commit changes", "cancel" or something,
maybe theres a better way to do this.
May pay to ask some real usability experts about this, if have some
positive feedback to give, before continue.


--
--
ℱin del ℳensaje.

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
Jan Paul Posma wrote:
>> Interesting.
>> I find the switch to 3row textarea from content a little jarring. A
>> further developed version could make use of contentEditable to provide
>> the same editing ability but without the negative side effects of the
>> textarea.
>>
>
> Actually, showing the original wikitext is one of the goals of this user-interface. The goal of this project is to lower the barriers for novice users, and providing a better way for them to learn the wikitext syntax. Hiding the wikitext completely would defeat this purpose.
>
> In the best cases novice users would first edit some sentences, while noticing the wikitext syntax, but only some links and perhaps bold/italics. This is much less scary than a big textarea with lots of code. Then they may experiment with references, images, templates (once these are implemented), so they can slowly learn more. Eventually they can either be advanced users of this editor, or try the editor we have now, which will always be more powerful. The editor I'm proposing *isn't* a total replacement for the current editor, just an addition.
>
> Best regards, Jan Paul
>
Aye, I had one suggestion later on in the message which could apply
there. "Or converting the simple content back to WikiText and showing
the syntax ([.[., '', etc...) inline, with a floating cancel and preview
button just using contentEditable as a textarea replacement that doesn't
disrupt the page flow as much."

contentEditable is more than simply WYSIWYG, it can also be used to
build custom inputs that fuse html and text to provide a text area
enhanced by extra ui inline with the content.

~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://daniel.friesen.name]



--
~Daniel Friesen (Dantman, Nadir-Seen-Fire) [http://daniel.friesen.name]

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l
Re: Sentence-level editing [ In reply to ]
> You've already applied for commit access right? Did you apply for
> extension access or core access?

Actually, I didn't say it explicitly, but I mentioned "Sentence-level editing", so that would be an extension.

> If and when you get commit access for extensions, you're encouraged to
> develop your extension in our SVN repo.

Sure!

> But suppose I want to be always in this mode, I can't click on links.
> Also maybe the user don't really need to see the lines highlighted,
> ... here in firefox wen I double-click on a word, the whole phrase is
> highlited... is like the user is already acustomed for how
> line-selections works on double click. But IANUE.

You can't follow links, no. This is an editing mode and not a viewing mode. Perhaps there should be another "Edit mode" option "Preview" or something, to show the page as it would be. But I don't think it's that much of a problem, as you can in fact see if the links you entered are correct depending on the color. This hasn't been implemented in this prototype, obviously, but it should be there in the final version.

> Also, there need
> to be stronger options, "commit changes", "cancel" or something,
> maybe theres a better way to do this.

What exactly do you mean? There is a "Publish" button now to save the page, and cancel buttons when you edit individual sentences.

> May pay to ask some real usability experts about this, if have some
> positive feedback to give, before continue.

If WMF or someone else wants to do this, then sure, but I'm not going to pay for it! ;-) Do note, by the way, that I have two supervisors from my university monitoring the project, one of whom is specialized in usability.

> Aye, I had one suggestion later on in the message which could apply
> there. "Or converting the simple content back to WikiText and showing
> the syntax ([[, '', etc...) inline, with a floating cancel and preview
> button just using contentEditable as a textarea replacement that doesn't
> disrupt the page flow as much."
>
> contentEditable is more than simply WYSIWYG, it can also be used to
> build custom inputs that fuse html and text to provide a text area
> enhanced by extra ui inline with the content.


I understand your point. If done right, this could look very good, while still embracing the concept of showing the wikitext.
For now I personally cannot invest much time in this, as the coding of the extension will take a lot of time. If you like to take a shot at it, the source can be found at http://github.com/janpaul123/sle-prototype. If it looks and works good, I will include it in the extension for sure!

Again, thanks for all the responses. I'm quite confident that this is the way to go, judging by your comments. Right now I'm trying to implement a nice way of plugging in these different edit modes, and building the first editor, the basic sentence-level editor. This, by the way, is not that easy, as there are quite some ambiguities on where a sentence ends. Finding a good algorithm is still a topic of research called "Sentence boundary disambiguation". (http://en.wikipedia.org/wiki/Sentence_boundary_disambiguation)

If you have any ideas on how to do this right, please share it!

Best regards, Jan Paul

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l