Closed yehia2amer closed 5 years ago
Thanks! I’m really glad to hear you find VocabHunter useful. Please do share it with any friends and family members interested in learning a language. It’s hard to spread the word so any help with that is appreciated.
You make some good suggestions that I think could really improve the system for users. It looks like you’ve been thinking along similar lines to me with these too. Let’s create some issues for them here.
Before going on, I should say that I can’t promise to implement these features now but I think it’s worth describing what would make a good solution here for future work by me, you or someone else. At the moment, when I get time for VocabHunter, I’ve been working on support to switch the user interface between English and Spanish. So most of my personal focus on the project is there for now. My hope is that it will be possible to support other languages for the user interface in the future.
Here are my ideas for the feature request issues to create for this. Let’s see what you think of them.
Issue 1: Allow the user to copy the current word to the clipboard
Issue Description: Add a menu item in the “Words” menu to allow the user to copy a word to the system clipboard. There should also be a keyboard shortcut, Control-C (or Command-C on the Mac) to perform the same action. The option should only be available when a session is open.
Issue 2: Support web searches for current word
Issue Description: Add a feature to open the web browser to lookup the current word on the user’s chosen reference site. For example, if the user has chosen Word Reference searches in English and the current word is “Java" then the browser would open on the page https://www.wordreference.com/definition/java. This would be achieved by inserting the current word into the URL of the form https://www.wordreference.com/definition/${word}
. We will need a way to allow the user to select their reference website of choice, perhaps from a pre-defined list of options.
Issue 3: Create an export dialogue
Issue Description: There are currently two export options: “Export Selection” and “Export Selection Without Notes”. The first exports a tab-separated value file containing the words marked as “unknown” with any notes in a column to the right of the words. The second of these excludes any notes. These two options should be replaced with a single option to bring up an export dialogue. The dialogue should include these options along with the option to choose whether to export the words marked as “known” as well.
My Comment: I recently added the option to export the “unknown” words along with their notes and so created two versions of the export feature. I think that the new version that you suggest is a good idea and I can imagine future options to export the words in other formats, such as those used by flashcard programs. To avoid lots of individual menu items, I think it would be good to introduce a dialogue to make it easy for the user to choose the option that they need and to leave room for new export options in the future.
Issue 4: Investigate grouping related words using language-aware deep text analysis
Issue Description: Words such as “look”, “looks” and “looking” in English could all be grouped together to avoid the user having to examine each individually. A similar situation exists in other languages, for example in Spanish “puedo”, “puedes” and “poder” are all forms of the same verb. It would be interesting to investigate how a deeper textual analysis could be used to achieve this and then how this could be incorporated into VocabHunter.
My Comment: You mentioned plurals and words ending in “-ing”. I think this is something that would be useful to lots of users. To do it properly, it would be necessary to analyse the grammatical structure of the text. Also, the examples you give are in English but of course, a similar problem exists if you’re studying other languages. I think that this is a big piece of work for someone to undertake but if it’s done well it could be of real benefit to users.
Finally, I’m not really sure about the “Add new document feature”. What was the use case you had in mind for this?
I realise this is quite long but let me know what you think about these ideas.
Great, Thanks @AdamCarroll for this detailed comment. I Completely agree with 90% of those issues. Just want to clarify some points. Issue 1 & Issue 2: Agree. Issue 3: Really like the idea of "Export dialogue" and I it would be great to add even "UNSEEN" words. so that the dialogue do have Multiple-Checkboxs for (KNOWN, UNKNOWN, UNSEEN, Include Notes). Issue 4: of course deeper textual analysis or NLP is the best case scenario but maybe it is easier to search in offline dictionary like https://wordnet.princeton.edu/download/current-version Or https://sourceforge.net/projects/mysqlenglishdictionary/ to know if this word is plural or not etc.. Issue 5: Add New document Feature: The use-case for this feature is for example a user clicked on "New" and chose PDF document vocab1.pdf to be analyzed then he saved the session to .wordy file and after marking all the document in this file as known or unknown he want to add more words. This feature can enable any user to add more documents to the .wordy file for example add vocab2.pdf unique words that don't already marked as known or unknown before.
Thanks!
I think your idea of adding the “unseen” words to the export dialogue is a good one. Here’s a suggestion for a new version of Issue 3:
Issue 3: Create an export dialogue
Issue Description: There are currently two export options: “Export Selection” and “Export Selection Without Notes”. The first exports a tab-separated value file containing the words marked as “unknown” with any notes in a column to the right of the words. The second of these excludes any notes. These two options should be replaced with a single option to bring up an export dialogue. The dialogue should include these options along with the option to select any combination of the words marked as “known”, “unknown” or “unseen”. This will allow, for example, a user who wants to export new vocabulary that they want to learn to a flashcard program by selecting the option for “unknown” words but leaving “known” and “unseen” unselected. A user wanting a list of all of the vocabulary, regardless of whether they know the words would select all three options: “known”, “unknown” and “unseen”.
Regarding Issue 4, you make an interesting suggestion. I think for this to work it would need to be implemented as an optional plug-in mechanism. I’m keen that VocabHunter should remain a self-contained application even if it then allows the user to optionally connect to external software. I haven’t looked at the details, for example of Word Net but since it’s an external program it might be possible to add a plug in component to VocabHunter to make the call out through an external API in Word Net. Each such plug in would be different depending on the external system being used. Care would have to be taken to avoid coupling the core of VocabHunter to the external system and also the licence would need to be looked at to avoid causing legal problems. And, of course, this would need to be done so that it doesn’t interfere with the use of the system to study other languages, such as the Spanish example I originally gave. What do you think?
Issue 5 is an interesting one. It sounds to me like your reason to add a file is to avoid analysing words that you’ve already analysed before with previous file. So, for example, you’ve studied the words for “Great Expectations” and now want to add “Hard Times” but ignore the words you’ve already looked at from the first novel. Is that the case? If so, VocabHunter already has a mechanism for this. You can use existing .wordy
files as filter files when you analyse new documents. This helps avoid repeatedly looking at the same word for different documents. The idea is that the more you use the program, the fewer words get through the filters. Does this existing functionality cover your use case?
Thanks again for your time and ideas! I look forward to hearing what you think.
Thanks @AdamCarroll Yes I Completely agree on all of them. Issue 5: Yes This can solve my use case. but it's like dealing with a lot of files rather than only one. it would be better for me to have a way to merge them. or add incrementally. So that I can send only one file if i want to share with friend etc...
btw, do you want me to create those issues or you are going to create them ?
Feel free to create the issues if you're happy with what we've discussed. There's a "Feature Request" label you can add to them. It might be a good idea to link them here too.
Are you thinking of working on any of these issues yourself?
I Created the issues, but I think i don't have access to add labels ! Regarding working on them myself. my experience is in C# & Python. I tried to play with the code but i don't have any idea about JavaFX and how it works. maybe I will try to invest sometime to learn them and hopefully the learning curve is not too big.
OK, great. I've added the labels.
Don't worry if you're not able to work on these features yourself. Like I said, at the moment I don't have as much free time as I'd like for the project and right now with the time I have I'm working on the new version in Spanish. But if I get a chance I'll take a look at the feature requests and if not then someone else here on GitHub may want to work on a Pull Request or two.
Thanks for your feedback. It's great to hear from a user of the system. One thing you can do is try to spread the word about VocabHunter. Share it, it's free and Open Source!
Let's close this now you've created the detailed issues. Thanks again for your suggestions and feedback.
First of All, thanks a lot for this GREAT tool I use it heavily to learn new languages.
I am proposing some enhancements to the tool that could make it way better and useful. I Know that each one should have it's own issue but I Think we need to talk about them first and create new issues going forward depending on there feasibility & how easy are they to be implemented.