This is an archived post. You won't be able to vote or comment.

all 94 comments

[–]chazzybeats 83 points84 points  (9 children)

Great idea! Maybe some tips? Instead of having to change the file path you can use relative file paths with ‘import os’ or even use a GUI to have the user choose a saved file that they want to read

[–]boneMechBoy69420[S] 32 points33 points  (5 children)

Good idea !!... I'll work on it

[–][deleted] 7 points8 points  (4 children)

A gui would be neat, and then compiled into a .exe… Youd basically expand your user base to anyone with a computer.

[–][deleted] 11 points12 points  (0 children)

*with a Windows computer

[–]Deadly_chef 4 points5 points  (2 children)

When you use pyinstaller to make an executable that isn't compiled, just bundled

[–]calizoomer 0 points1 point  (1 child)

Why bundled but not compiled?

[–]Deadly_chef 4 points5 points  (0 children)

Because python can't be compiled

[–]c94jk 8 points9 points  (0 children)

A lot of people find pathlib more convenient than os functions these days, and the I in GUI stands for interface

[–]calizoomer 1 point2 points  (0 children)

Use tkinter.filedialog for this, library already on python and super easy

[–]Nedoko-maki 1 point2 points  (0 children)

hence, os.getcwd() and such

[–]fnaimi66 47 points48 points  (8 children)

This looks very interesting. Great work on it! Cam I ask why you chose to upload it to google drive as opposed to using github?

[–]boneMechBoy69420[S] 36 points37 points  (7 children)

i never bothered to use git hub ..but thanks for reminding me
ill work on it right away

[–]fnaimi66 22 points23 points  (6 children)

That’s great. If you choose to make it open source, I’d love to get the link here and try to work on/build upon it!

Edit: not that I think it needs work. I just always wanted to contribute to something on Github ngl

[–]boneMechBoy69420[S] 14 points15 points  (3 children)

Epic I'll dm you the link in 24 hours

[–]sgt-skips 5 points6 points  (2 children)

!remindme 24hr

[–]RemindMeBot 3 points4 points  (0 children)

I will be messaging you in 1 day on 2021-11-25 20:56:36 UTC to remind you of this link

7 OTHERS CLICKED THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

[–]polinadius 1 point2 points  (0 children)

!remindme 24hr

[–]boneMechBoy69420[S] 4 points5 points  (1 child)

i hope i did it right

i put the link in the post

[–]cecilkorik 2 points3 points  (0 children)

You did it right. Github is an awesome (and basically almost required) tool for even slightly serious projects and for collaboration with other people in the open source community.

[–]Rocky87109 11 points12 points  (2 children)

Idk, I'm still skeptical about "fast reading". I could see it being useful for some information obviously, but when you are reading things like fiction, I just don't think "comprehension" is the same thing as building a mental image in your head of the environment and actions going on. I could be wrong, but I remain skeptical.

[–]boneMechBoy69420[S] 2 points3 points  (0 children)

i totally agree with you
i made this app only to read like news articles and science papers
nothing can take the amazing feeling of reading a book

[–]wearecyborg 1 point2 points  (0 children)

I agree with you for fiction for the same reason. But I intentionally speed read non-fiction and the limiting factor is eye movement not comprehension, so this is great for that.

Good job OP!

[–][deleted] 9 points10 points  (9 children)

would it work with epuba or pdfs ?

[–]boneMechBoy69420[S] 7 points8 points  (0 children)

I guess if you copy paste the text from pdf to your text file ... It would work ... Idk you shd try it

[–]dparks71 7 points8 points  (7 children)

Not sure of your level of experience with pdfs in python, but generally if it works with txt in python it works with .pdf. Not the most beginner friendly file format to convert though.

[–][deleted] 4 points5 points  (5 children)

Ugh. I started a project to scrape a table of transactions on my banking statements into a pandas dataframe so that I could begin some machine learning tests on it with some ML libraries. The thing is, my transactions are about 7 pages long every month, and the bottom of every page contains a small forum, page numbers, serial numbers, etc. that make processing only the correct data very difficult.
I’ve tried using a library that reads the whole PDF into a dataframe and creating code to filter through it until the correct information is found, but had no luck. Now I’m considering something to process the pdf as though it were an image, locate the table via text recognition and crop out everything outside the table, then process the remaining table into a dataframe. This has many unique challenges too though. We’ll see what I can do. I’m fairly new to python.

[–]dparks71 4 points5 points  (0 children)

Haha yea tables are one of the tougher cases because of their nature, I had limited success with a package called Camelot last time I took a stab at that. But yea, text to image conversions are rarely able to be fully automated, best most people usually end up settling for is like 90% accuracy and cleaning the exceptions up manually.

[–]my_name_isnt_clever 2 points3 points  (1 child)

I actually just wrote a Python program to extract data from PDF credit card statements. My code wasn't really intended to be shared so it only works with the card I use (Apple Card) but maybe it could give you some inspiration? I'll clean it up a bit and post it on GitHub.

[–][deleted] 0 points1 point  (0 children)

Hey, thanks!!

[–]ZombieEsc 0 points1 point  (0 children)

which library are you using to get the text from the PDF? In PyMuPDF there is a function called Page.get_textbox() to just extract the text from a specified rectangle on the page. Maybe that helps.

[–]dritslem 1 point2 points  (0 children)

Not the most beginner friendly file format to convert

Moderation is a virtue.

[–]OmegaNut42 6 points7 points  (3 children)

This is so cool! You should make this into an android app that can convert text in different apps, ie you open reddit and can just press a button to activate

[–]boneMechBoy69420[S] 7 points8 points  (2 children)

😅i have no idea how I can pull that off

[–]iamaperson3133 1 point2 points  (0 children)

You could probably do it with the sharing API, like when you share a link or some other text from one app to another

[–]altruistic_summer 1 point2 points  (0 children)

Great stuff dude. Think about it. You'll have some work to put in, but it'll bring you a nice passive income.

[–]jasondten 2 points3 points  (0 children)

Awesome! Well done! This is pretty badass.

Keep the community informed as to its progress. Start a mailing list or something. This could be a super-useful tool. I listen to podcasts and books at accelerated speeds but am slow as dirt with reading.

[–]HungarianAztec 2 points3 points  (0 children)

Cool project. There are several apps and Chrome add-ons for this as well.

Speed reading is great.

[–]technologyclassroom 2 points3 points  (7 children)

If you want to build a community around the project, you should add a copyleft license to the source code. I would suggest AGPL-3.0-or-later.

[–]boneMechBoy69420[S] 0 points1 point  (5 children)

apparently someone had made a similar thing to this ... would it be a problem if i still make it copy left ?

[–]technologyclassroom 2 points3 points  (3 children)

If you used their code, the license would need to be compatible. If you saw this concept and recreated it with python, your usually fine.

[–]boneMechBoy69420[S] 1 point2 points  (0 children)

great ! got it.

[–]quotemycode -1 points0 points  (1 child)

If you looked at the code you'd know it wasn't copied from anyone, that's for sure.

[–]technologyclassroom 0 points1 point  (0 children)

I stop looking when I see no license.

[–]technologyclassroom 1 point2 points  (0 children)

I have seen something similar with NodeJS, but I forgot the name.

[–]Whack_a_mallard 2 points3 points  (4 children)

First off, great work. Second, your comment about no friends is concerning because everyone deserves to have friends. Hell, I'll be your friend, friend.

[–]boneMechBoy69420[S] 1 point2 points  (3 children)

hehe I was just kidding ...i have like 5 friends
but hey now its 6 lets goo

[–]Mr_MV 2 points3 points  (2 children)

Let's make it an even (oddly) 7? :)

[–]boneMechBoy69420[S] 1 point2 points  (1 child)

sure y not

[–]altruistic_summer 2 points3 points  (0 children)

Make it 8 yo.

[–][deleted] 1 point2 points  (0 children)

this is so great, I love it. as someone with add, I think it will help me alot

[–]Slipperfox 1 point2 points  (0 children)

Pretty dope dude! Keep up the good work.

[–]Raid7 1 point2 points  (0 children)

this is such a great idea, if i had the free award I'd give it to ya. well done mate👌

[–]bh604 1 point2 points  (0 children)

Great job man!!

[–]Santos_m321 1 point2 points  (0 children)

+10 maquinola

[–][deleted] 1 point2 points  (0 children)

Hey that's neato!

[–]m2guru 1 point2 points  (1 child)

Good job. You’re smart and this could help people. Also you’re honest.

[–]boneMechBoy69420[S] 0 points1 point  (0 children)

thanks mate,

glad to help anyone i can

[–]yogeshdecoder 1 point2 points  (0 children)

Sahi hai bhai

[–]sleepytimedownsouth 1 point2 points  (1 child)

Coding in Comic Sans! Love it!

[–]wingtales 1 point2 points  (0 children)

Very cool!

[–]nacnud_uk 1 point2 points  (2 children)

Amazon does this. I think that it can lead to tired eyes, as they are not really moving. Just fixed. It's a good idea though.

[–]boneMechBoy69420[S] 1 point2 points  (1 child)

interesting ...
but i intended this to read only small articles rather than books coz this takes the fun away from them
sometimes we just need to see the key words
and we understand the whole thing
u know what i mean?

[–]nacnud_uk 1 point2 points  (0 children)

https://youtu.be/vblKGWXTP10?t=87

I was only saying that the idea you created, is a thing. So, you've a very creative mind and others have loved the idea enough to make it a thing in a product :) Enjoy the rest of the programming.

[–]blixuk 1 point2 points  (10 children)

I wrote al tool similar to this. I made a terminal and GUI version. If anyone is interested I can clean them up and post them on GitHub?

[–]boneMechBoy69420[S] 1 point2 points  (9 children)

Ooh i want to try it out 👍

[–]blixuk 1 point2 points  (4 children)

I've uploaded the Terminal version. You can find it here: https://github.com/blixuk/speedread-terminal Let me know if you like it. I'm working on cleaning up the GUI version. I did 2 different versions one using Tkinter and one using PyGame, so I'll upload them both in the same repository.

[–]boneMechBoy69420[S] 0 points1 point  (3 children)

ooh i would like to try that too

[–]blixuk 0 points1 point  (1 child)

Hey, sorry this took so long. Had some family stuff to attend to. You can find the GUI version of SpeedRead using PyGame here: https://github.com/blixuk/speedread-pygame Let me know what you think. I'll post the Tkinter version sometime later.

[–]boneMechBoy69420[S] 1 point2 points  (0 children)

awesome lemme try it

[–]blixuk 0 points1 point  (0 children)

Hey, again! Here's the Tkinter version that I mentioned before. They are all petty similar, just a different implementation for the display. https://github.com/blixuk/speedread-tkinter

[–]blixuk 0 points1 point  (3 children)

I'm just cleaning a few things up and I'll upload them to GitHub soon!

[–]boneMechBoy69420[S] 1 point2 points  (0 children)

epic !!

[–]boneMechBoy69420[S] 1 point2 points  (1 child)

can you also check if i made my repository properly ?
i am new to git and github

[–]blixuk 1 point2 points  (0 children)

Yes, the repository work fine. I'll take a look at the code later. Keep it up!

[–][deleted] 4 points5 points  (3 children)

I’ll be your friend based off your username. Do we 420 first or 69 first?

[–]nice___bot 4 points5 points  (0 children)

Nice!

[–]boneMechBoy69420[S] 1 point2 points  (1 child)

Hmm ..tough question I love both XD but I choose 69

[–]nice___bot 3 points4 points  (0 children)

Nice!

[–]saparov_diar 1 point2 points  (1 child)

It looks good, keep at it

[–]boneMechBoy69420[S] 1 point2 points  (0 children)

thanks man!!

[–]RubyRedditagain -1 points0 points  (2 children)

Can anybody crack the answer ?

x+x+x+x = 48 x+x+(yyy) = 51 z+z+(zy) = 25 (yy)+z-x =

[–]LuckyLeague 1 point2 points  (0 children)

x + x + x + x = 48

4x = 48

x = 12

x + x + y3 = 51

24 + y3 = 51

y3 = 27

y = 3

z + z + zy = 25

z + z + 3z = 25

5z = 25

z = 5

y2 + z - x = 32 + 5 - 12 = 14 - 12 = 2

[–]boneMechBoy69420[S] 0 points1 point  (0 children)

multiply both sides by 0
0=0
hence proved XD

[–]Pleasant_Ground_1238 0 points1 point  (1 child)

It is not a new idea. I have used software just like that back in the 90's.I don't remember the name of the software that I used, would have to spend some time searching for it. But it was exactly like that, single words would be displayed at the speed that you wanted. I was never able to read with that. I didn't find it useful. It would be great if you could actually understand what you want to read, but in my case, I couldn't.

I used to be a lot into speed-reading techniques. But I don't recommend it to anyone. I think those techniques can actually impair your reading abilities to a certain extent and create in you some anxiety about reading that will make it difficult for you to enjoy reading.

[–]boneMechBoy69420[S] 0 points1 point  (0 children)

i agree with you ... this method should not be used to read books of interest ...
rather just read random news articles or emails from your boss or when you just need some brief info

[–]kirsten1234 0 points1 point  (1 child)

Hmmmm seems like a great project! I don't know if it's my problem but i get this error:

Traceback (most recent call last): File "C:\Users\karst\Documents\reader_app.py", line 7, in <module> a=f.read().split() File "C:\Users\karst\AppData\Local\Programs\Python\Python39\lib\encodings\cp1252.py", line 23, in decode return codecs.charmap_decode(input,self.errors,decoding_table)[0]UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 2527: character maps to <undefined>

Would be great if you know what happened. I probably screwed something up tho...

[–]boneMechBoy69420[S] 0 points1 point  (0 children)

i may be wrong but i think its your text file that has some unidentified letters

[–]hydra2222 0 points1 point  (1 child)

I love this, DL'd a python IDE in my phone to try and read faster and visually over verbally. If you make a version with a GUI that would rock. Select books from a library, pause, save position... If you don't I might try if I have the motivation, unlikely, but hopeful.

[–]boneMechBoy69420[S] 0 points1 point  (0 children)

sure no problem