ds300 / jetzt

Speed reader extension for chrome
Other
487 stars 124 forks source link

choose # of words displayed #124

Open fueres opened 10 years ago

fueres commented 10 years ago

I think a great way to improve even more the speed is the option to choose the amount of words shown by jetzt during the reading. I could choose for example to read more than one word at a time. It would also increase the visual field for the readers, which is a good thing since we teach our brain and eyes to read texts this way. Thanks.

nomicode commented 10 years ago

I don't think it's possible to increase the visual field of the eye. This is a biological constraint, not a mental one. There's only a very small arc within which your eye can see clearly without a saccade. Much of the speed-reading stuff out there about learning to take in whole sentences or whole paragraphs in a single exposure seem like pseudoscience to me.

nomicode commented 10 years ago

For an opposing view on a similar ticket, see cameron/squirt#34

fueres commented 10 years ago

ouch, I had not seen that ticket (I just searched through the opened ones). Anyway, I (and many others) think it would be great.

And yes, it is possible to increade the visual field for more words. Specialists in reading techniques can read whole sentences in a glance. It is actually common in Speed Reading courses.

Please check at least this link so you can verify it yourself: http://www.readspeeder.com/?utm_expid=21545083-23.2UDG1zlMRX6rXTDcsq9u7Q.0

See also (copy from the other ticket):

http://www.irisreading.com/speed-reading/increase-your-reading-speed-by-reducing-your-fixation-points/ And http://www.readspeeder.com/ http://www.bcs.rochester.edu/courses/crsinf/152/13_Reading.pdf Just Google "speed reading fixation points"

nomicode commented 10 years ago

I'll counter with this:

Keith Rayner's "Eye movements and information processing during reading" is one of the more comprehensive looks at how our eyes work when we're reading.

Rayner believes speed reading claims are nonsense because our eyes can't work that way:

"You can probably push yourself to get a little over 500 words per minute, but you're limited by the eyes and the anatomy of the retina. To understand text you need to move your eyes to put the fovea on the part of the text you want to focus. Acuity drops off pretty markedly outside the fovea and you can't discriminate the words and text far from the fovea.

The other claim is that you can take in more information per eye fixation, but there's no evidence that says we can do that. What we know about the physiology of the retina is against the notion that you can take in two lines of text at the same time.

cf. http://lifehacker.com/the-truth-about-speed-reading-1542508398

nomicode commented 10 years ago

I tried out http://www.readspeeder.com/ and I found the experience unpleasant. I believe it is causing multiple saccades as my eye darts around trying to take in the word parts quickly enough before the next bit flashes up. (But I have no way of knowing for sure.) I think I'd need to try it out on longer texts to be sure how I feel about it.

I tried the exercises on http://www.irisreading.com/ and found them difficult. I felt like I was reading the words, but my comprehension was very low.

If someone had a modified Spritz-like clone that did multiple words, I would certainly try it out and see what the experience is like. Do you know of such a thing?

matt-gardner commented 10 years ago

Here's my thought:

The width of the jetzt box is, what, 12 characters? In the demo text, "predominates" takes up the whole box, pretty much. So the width of the box is assuming that you can get 12 characters in one go, at least.

Now, if you are showing words at 500+ WPM, small words are only shown for a very small amount of time, and (for me, anyway) they can easily get lost in the stream of longer words. I think a better presentation is to show as many words at a time as you can up to some fixed character length - say, 10 or 12 characters, as is currently done. Then you can slow the presentation down a bit and still have the same WPM. In some reading I've done with Spreeder (spreeder.com), that seems like the most effective reading method to me - don't try to have excessively long "visual bites", but use the space you have more effectively to show as much as you can per time step. I think that's a better handling of short words.

ds300 commented 10 years ago

I tried spreeder.com with two words at a time, and it sucks unless the words are both short and common. I'll consider making it an option to merge such bigrams, but I really can't imagine it working for arbitrary <= 13 character n-grams.

nomicode commented 10 years ago

This goes contrary to the core premise of RSVP, which is that by removing the need for eye saccades, you can reduce fatigue and speed up reading. WPM would be slower, because you'd be saccading to read the text, which removes the benefit of using jetzt.

Another part of the theory as I understand it is that we recognise word shapes. So we'd only be able to take in a compound sentence fragment if we're able to recognise word pair shapes.

So perhaps: "Another part", "of the", "theory as"

I'm not convinced that it works this way. I think to take in those fragments, your eye saccades between the two words. You're recognising two patterns.

matt-gardner commented 10 years ago

I agree that this should only be done for short words (which are pretty much always common). The problem with spreeder's implementation is that it doesn't have a character threshold. If you could give me a pointer to the place in the code where this would happen, I'd be happy to give it a try and see if I can make something that people like, or that could convince nslater =).

ds300 commented 10 years ago

The simplest thing would be to put something here which iterates over the token array and merges adjacent words if they're both short. Be careful not to merge the quotes, guillemets, linefeeds, parens, etc.

matt-gardner commented 10 years ago

Thanks, @ds300, I'll see what I can do.

And @nslater, to be a little more clear, I'm suggesting that short word sequences can be read without the need for eye saccades, provided they are within some short character limit. I think there is ample evidence of this in the fact that the main jetzt box works fine for longer words, and in my use of other apps it has worked for me. Hopefully I'll be able to demonstrate that it works for you, too. We'll see.

matt-gardner commented 10 years ago

Well, you can try it out from my fork, if you wish, here: https://github.com/matt-gardner/jetzt/tree/matt. I think the positioning of the text could probably use some work when there is more than one word in the box, but the basics work. If people think it's worth keeping, I'll make the code more configurable, so you can turn it off, or control how long you want the box to be.

ds300 commented 10 years ago

Just tried it. It's not bad, but I definitely find it more difficult to read than normal (but that may simply be due to a lack of familiarity). I don't see any harm in including it as an off-by-default option.

matt-gardner commented 10 years ago

I moved the pivot of multi-word chunks over by one, which I think helps with the presentation. @fueres, what do you think? I'll work on making this configurable, then submit a pull request.

matt-gardner commented 10 years ago

Oh, I've seen references to a rewrite - has that already happened, or should I wait on this PR?

fueres commented 10 years ago

@matt-gardner, thanks for the really quick coding man! I really liked what you did. =) I think it will be a great option to configure. For now, it will be a bit hard to read because we are not used to it yet, but in time we will, and this option to configure the amount of characters (20, 40, 60, full line) will improve even more the reading speed of many users.

Even if it comes disabled in the main code, many users would appreciate to have this option. I also agree with what you said about some considerations on the size of the box and the position of the text in the box.

Thanks man!

ds300 commented 10 years ago

@matt-gardner The rewrite is happening as we speak in the coffee branch. At the moment I'm thinking that it should culminate in an official release to the chrome web store, which might take a couple of weeks. Feel free to submit PRs to dev in the mean time. I'll handle the translation to coffeescript when the time comes.

nomicode commented 10 years ago

@matt-gardner I've loaded your version, but I can't seem to activate the multiple word feature. Do I need to activate anything in the settings?

Not sure I buy the "it's harder but I'll get used to it" rationale. Spritz was easy from the get-go. You don't have to learn it, because it's naturally easier to read without saccades. I remain skeptical that you can learn how to recognise word shapes outside of your fovea, and so suspect that this setup is just a way of forcing to you to read like normal (i.e. with saccades) at a fixed pace.

My design ethos is modelled after Apple: make the tough decisions for your users. Don't burden them down with infinite ways of configuring stuff (the typical OSS model). I worry that by including something like this, we may be communicating a benefit that doesn't exist.

(This is not to discredit the work! The contribution is excellent, but I think we ought to be circumspect about what we recommend to our users.)

If we do include it, it ought to be hidden behind an "advanced" or "experimental" section, with some sort of caveat about how it is a controversial technique, and diverges from the RSVP model. Perhaps include a link to something that discusses the topic so people can decide for themselves.

ds300 commented 10 years ago

Very good points @nslater.

matt-gardner commented 10 years ago

If you can't get more than one word to show up, my guess is that you're looking at some epub reader that wraps the text. I implemented this as part of the parsing routine, so something like Google Books that puts each word into its own tag messes up the algorithm. Any other text should be handled correctly (though it does mess up the stats at the end, because that's only counting instructions, which is no longer the same as word count).

"I remain skeptical that you can learn how to recognize word shapes outside of your fovea" -> I have not increased the width of the jetzt box at all - there is no assumption here of any kind of increased peripheral vision, or anything of the sort. If a word such as "predominates" can be understood in one chunk in RSVP, I don't see any biological reason that "of the" could not also be similarly understood.

Personally, I'm not sure yet if I like it better when allowing this option or not, but I'm glad that I have the option of trying. I think if you can read like this comfortably, your maximum reading speed will necessarily be higher than if you just get one word at a time. The question is whether or not you can do this at the same speed as you can with just a single word. And the fact is that there are a lot of people that have been taught that this is how you improve your reading speed, and have spent a lot of time practicing it. Those are the same people that are drawn to these kinds of chrome extensions, and so a lot of people request this kind of functionality. Giving them the option and letting them try it seems like a reasonable thing to do.

Re: design ethos and hiding settings: if you look at the current option page, I'm not sure that something like this is out of place. You currently have configurable duration modifiers and custom themes, things that don't fit at all into an Apple design ethos (an ethos I strongly disagree with, incidentally, but we don't need to have that discussion here).

nomicode commented 10 years ago

I was trying it out on our default demo page, which is very simple HTML.

If a word such as "predominates" can be understood in one chunk in RSVP, I don't see any biological reason that "of the" could not also be similarly understood.

The argument here is that our brain recognises words as whole shapes. And that to read two words, you need to recognise two shapes, which requires two fixations.

I think if you can read like this comfortably, your maximum reading speed will necessarily be higher than if you just get one word at a time.

Consider that reading speed is not the only thing jetzt helps with. It helps to reduce reading fatigue, which is arguably more important. (Certainly is for me.)

And the fact is that there are a lot of people that have been taught that this is how you improve your reading speed, and have spent a lot of time practicing it. Those are the same people that are drawn to these kinds of chrome extensions, and so a lot of people request this kind of functionality. Giving them the option and letting them try it seems like a reasonable thing to do.

"But in the end, for something this complicated, it's really hard to design products by focus groups. A lot of times, people don't know what they want until you show it to them." — Steve Jobs

That is to say, just because a lot of people think they want it does not make it the correct or even desirable thing to do, even if it gets us more users.

I'm much more interested in working on a tool that actually improves the reading experience, than one which panders to pseudoscience because it is popular with more people.

I'm happy to be proven wrong here, for what it's worth!

(Also, I swear it I'm not an Apple fanboy. But I do like their design ethos.)

I agree that configurable duration modifiers and custom themes are not exactly Apple-level friendly for what it's worth. But I don't think they do much harm. Deviating from the RSVP model seems like something we ought to be much more careful about.

matt-gardner commented 10 years ago

I was trying it out on our default demo page, which is very simple HTML.

Then perhaps you used the wrong branch? A search for "charLimit" in parse.js in the developer tools while running the extension should tell you if you're using the right code.

nomicode commented 10 years ago

Thanks, that did it.

I found the experience tiring. Just read some of that Sherlock Holmes stuff. This might be some sort of cognitive illusion, but my eyes feel tired and strained after it. I noticed a few times my eyes darting from one word to the other. And I also noticed missing quite a few words.

I'm formulating the idea that perhaps the way that this technique works is to train yourself to only fixate on a fraction of the words, effectively ignoring the rest, giving you a general gist of the text.

If this is true, it is vastly inferior to RSVP. And if my experience is typical (and indeed, not me just imagining whatever I fancy so as to back up my arguments) then this could actually be more tiring than reading regularly, where you can at least anticipate where to fixate. In this mode, the fixation point is random. The red letter is effectively meaningless. My eye wants to settle on certain parts of the word, and so I have to find that point each time, for two words, before the next pair is brought up. Perhaps that's why it feels more taxing than regular reading.

From the Spritz website:

Because the human eye can focus on about 13 characters at a time, Spritzing requires only 13 characters’ worth of space inside our redicle.

This supports my theory that anything more than 13 (i.e. outside of your fovea) is nonsense. Though, you still might argue that you can fit two small words into this space.

From an interview I found:

“[Spritz] positions words in a spot on a display where you can recognize the word, without moving your eye… About 80 percent of the time reading, conventionally, is spent moving your eye from one word to the next.

From Time:

When using the app, words are presented one at a time, in the exact spot where our gaze is “focalized,” or primed for visual recognition.

But this indicates that the eye is wanting to fixate on certain parts of the word. Meaning, that two words fit into 13 characters is likely to cause two fixations.

This is the theory behind the red character:

nexusae0_word_positioning_blog3_thumb

I feel like this feature is trying to cram one technique into a tool designed for another.

If reducing your fixation points works (by effectively allowing you to ignore a fraction of the words) that is fine, but I don't think that this presentation method is an effective way to do that.

nomicode commented 10 years ago

Very interesting. Just tried out QuickReader on my iPhone. This is an app designed to help with the minimal fixation technique.

The way they do it is by highlighting spans of words, effectively guiding your eyes through the text as you try to minimise fixations.

default-reading

This feels a lot less jarring, and a much better way to accomplish this technique with technology. Check out the videos for a live demonstration.

This strengthens my idea that jetzt is not the place for this.

dancaron commented 10 years ago

Hey @matt-gardner

I tried your fork, but couldn't get multiple words to show up. This is something I'm interested in as well. I read 800WPM and can read about a half a line at a time (of a normal book), so having one or two words to the left or right of the center word would be helpful to me. I think the additional context would be useful for comprehension.

To @nslater

People who are familiar with speed reading or have practiced speed reading techniques will be looking for this feature. Speed reading and comprehension is about quickly understanding context at a high level. We're not looking to move our eye. In fact, speed reading is about moving your eye less frequently, exactly like jetzt and spritz do. I think this is a valid option for the application, and does not risk bloating the software. Once you learn to read with your mind, and read for context, you'll see how powerful this option is. Again, it has nothing to do with moving your eye over additional words. The brain can comprehend three words at once, in fact, words need sentences (context) in order to make sense. And good writing is about placing words in the proper location in the sentence for maximum comprehension. Speed reading is about quickly understanding the meaning through context and not by analyzing each individual word.

To @ds300

One thing I would recommend is increasing the whitespace around the word. I think it would make it easier to focus and I think would improve comprehension.

Good stuff guys!

nomicode commented 10 years ago

@dancaron jetzt is not a tool for general speed reading. It's an implementation of the RSVP model. We need to keep that in mind when adding features. Criticisms of alternative models aside, the model you're referring is best implemented in other ways, as I have already detailed.

matt-gardner commented 10 years ago

@dancaron: It'd probably be best to open an issue on my fork, giving details about what you tried, and I'll help you get it working.

@nslater: You say "it's an implementation of the RSVP model." You mean it's an implementation of Spritz's RSVP model. They aren't the only ones to do RSVP, and others that do it have indeed shown multiple words at a time (several have been cited in this thread already).

Having now used my modification a bit more, and compared it to reading without it, I have a few more points, then I'm giving up - I don't have time to argue this with you.

  1. I definitely read faster with my modification than without it (and indeed it seems obvious that this should be the case). However, I haven't done any comprehension test, and it does also cause more fatigue. It could be the case that people who have spent a lot of time training with other speed reading techniques do not get as fatigued with this, but I can't really speak to that. @fueres seemed to be happy with it, and @dancaron may be able to give us another data point.
  2. I do not have more saccades with my modification than without it. I decided that shifting the characters over by one was a bad idea, so I undid it, and you can still just focus on the red line. There are no more characters for your eye to read with this method than there were previously. If your complaint is about "optimal recognition points", note that you've moved past RSVP and are only talking about Spritz. Their innovations are indeed very appealing, but if you're relying on their "science" you must keep in mind that they are trying to sell you a product; they haven't published any studies that I'm aware of about their techniques. And my particular modification is really uncharted territory - no one else has put together the idea of multi-word chunks with a fixed fixation point and fixed character length. The studies that you quoted don't speak to this at all.
  3. I really think you're exaggerating the difference between this technique and Spritz's RSVP method. This modification is small, and seems to me like a natural extension of the innovations made by Spritz to also incorporate other innovations made by people who have studied speed reading for a long time. Brushing off the many companies that for a long time have successfully trained people to increase their reading speed as "pseudoscience" while accepting the word of Spritz's marketing material seems a little backwards to me.
  4. The modification is incredibly simple. I put it together in an hour or so, and you can see the code difference in my fork. It's not like we're talking about huge maintenance headaches to make this feature available.
  5. The number of people speaking for this feature is now larger than the number of people speaking against it.
nomicode commented 10 years ago

Answers to your points:

  1. Cool! Without comprehension data, reading speed is meaningless though. I can "read" at 2,000 wpm with jetzt. But I'm not going to understand much of what I "read". ;)
  2. How do you know you don't have more saccades? They are predominantly imperceptible. The ORP theory behind Spritz is based on established research into word recognition, isn't it? It's certainly not the first time I've heard the theory that we recognise whole words by shape. (And you're right, I've never read anything about a theory that we recognise word-group shapes. Though it certainly seems possible that you might be able to train yourself to do this.)
  3. There are lots of different speed-reading models. RSVP seems fundamentally different to the more-words-per-fixation method you are talking about. And I'm not disputing it based on Spritz's marketing. I'm disputing it based on the comments by Keith Rayner, "a cognitive psychologist best known for pioneering modern eye-tracking methodology in reading and visual perception."
  4. Yep, okay. My concern was more about whether it's appropriate for jetzt. What are we trying to do with jetzt? Is it a general purpose speed-reading tool? Should we accept patches for any sort of model or technique if someone is prepared to submit a PR? Or should we stick to implementing one particular model of speed-reading, and focusing on doing that well? It's not "my" project, so I don't get to set the direction. But I don't think that the "kitchen sink" approach is a good one.
  5. I understand that a few people have requested it now. That is indeed compelling. But also hardly surprising. Lots of people are already familiar with the more-words-per-fixation model. So when a new approach comes along, it makes sense that those people are going to be your first users. They're already practicing speed reading in their daly lives, and see a need for it. But as I have argued previously, I don't think jetzt is a particularly good target for this work. If you check out my comment about about QuickReader, I think an extension that guided you through a page by highlighting sentence fragments would be a much more compelling idea. That is to say: hey, if this works for you, then great. But maybe jetzt isn't the best thing to shoehorn it into. There might be much more exciting progress waiting to be made by copying QuickReader.

I'm sorry that you feel frustrated by our interaction. I hope I've explained my thoughts clearly. I can't do much more. I think this one needs David to adjudicate. If we're interested in folding in a variety of speed reading models, then okay. If we're not, then okay. But I expect that most of the useful stuff has been said by this point now. We are at an impasse. :)

fueres commented 10 years ago

I would like to thank you again @matt-gardner. Hope you work gets improved and merged in the main code (specially with the option to choose the amount of words). Even if it comes disabled by default. Thanks!

matt-gardner commented 10 years ago

On point 3: What you quoted from Rayner has no bearing on this particular feature. The statement from Rayner talks about how much your eye can focus on. As I've said many times, my modification doesn't change that. The only thing that is changed by my feature is the ORP, and we have no evidence other than the implementation itself that speaks to whether short multi-word chunks can also have an ORP. Well, I guess we do have some evidence, in all of the prior work on speed reading that says it is quite possible to understand several short words in one glance, though that was not done in the context of RSVP.

nomicode commented 10 years ago

I would agree with that.

kovek commented 10 years ago

I searched for my favorite speed reader and did not find it, but stumbled on jetzt, which looked very much like what I was looking for. I thought the speed reader I used to use had a multiple word display, and did not find it on jetzt, so I wrote something quickly: https://github.com/kovek/jetzt/compare/kovek_branch?expand=1. Whilst keeping in mind that that was a quick solution that definitely needs improvement in its functionality, that feature still does not look very correct. Definitely, quick reading multiple words with a reticle is not optimal.

canda commented 10 years ago

The reader showing only one word at a time improves reading speed because you don't have to move your eyes in order to read word after word. (Theoretically. I didn't test it) El 17/07/2014 05:13, "kovek" notifications@github.com escribió:

I searched for my favorite speed reader and did not find it, but stumbled on jetzt, which looked very much like what I was looking for. I thought the speed reader I used to use had a multiple word display, and did not find it on jetzt, so I wrote something quickly: https://github.com/kovek/jetzt/compare/kovek_branch?expand=1. Whilst keeping in mind that that was a quick solution that definitely needs improvement in its functionality, that feature still does not look very correct. Definitely, quick reading multiple words with a reticle is not optimal.

— Reply to this email directly or view it on GitHub https://github.com/ds300/jetzt/issues/124#issuecomment-49271137.

sergeevabc commented 8 years ago

Would be great to have an option to see previous and next words shaded to stay involved in the context.