Hi Mylène, and happy new year everyone! Sorry (again) for the delayed
reply. You know, end-of-year celebrations and shit.
On Sun, Dec 21, 2014 at 8:58 PM, Mylène JOSSERAND
<
josseran...@gmail.com> wrote:
>> Hopefully. I started Tagaini for my own Japanese studies, as I wanted
>> a tool that helps me find, organize, and practice vocabulary and
>> kanji, while showing as many connections between entries as possible
>> to facilitate memorization. Although some time has passed, I have yet
>> to find a free tool that connects data that way.
>>
>
>
>
> hum, I am not so far with my Japanese studies ! :)
> I know the Hiragana pretty well and some Kanji but I have to learn Katakana and
> much more Kanji !
> Tagaini helps me for the practice part. This is what is missing in other
> applications. I have tested KanaTest for example. But I can not practise kanji
> and katakana and hiragana and also, customise to practise "vocabulary" !
Although the current GUI probably reflect that fact poorly, I view
Tagaini as a Japanese study assistant (and not a dictionary) designed
to help with three important phases of learning:
1) Finding what you want to study. It should be easy to find entries
you want or need to remember, either because they are the logical next
steps in your study (e.g. kanji made of components you already master
and which are part of vocabulary you already know), or because you
stumble upon a word and need to look it up despite it being made of
kanji you don't know (e.g. the Ctrl-k kanji input method which is
probably the most underexploitd feature of Tagaini).
2) Connecting the new entries to study with those you already know to
help their memorization, and keeping them in its database so you will
be remembered of them the next time you meet them in another context
(e.g. a kanji you are trying to remember that shows up in a new word
you just looked up).
3) Providing means to practice the entries you want to remember, and
consolidate their memorization. The current practice mode does a
decent job at it, but should be improved with a spaced-repetition
engine. The printable booklets are a very outdated way to practice on
the mode, and should be replaced by a decent mobile app.
> I really like the animation to show how write kanji and to split the different
> part of it ! This is very cool =)
Yet there is sooo much more things that can be done on top of this
basic animation feature. I dream that someday, someone will implement
the ideas in Jeroen Hoek's brilliant thesis
(
http://handle.jeroenhoek.nl/files/hoek_2009.pdf ). All the data is
already here.
> During my first test, to be honest, I was a little lost with the different
> lists. In fact, I did not understand that the list view in left side was
> different from the study list. I was expecting to get the study list printed
> here. Now, I get it ! But I was lost to add kanji in the study list and not
> seeing them in the list view. I do not know if you see what I mean. Maybe the
> study list could be printed in the list view ? I think you should have your
> reasons to do it like this. So I was wondering, why did you print the study list
> in a different way than the others list ?
There is no "study list" per say - just entries that you marked as
"studied", and which you can later retrieve by making the appropriate
query. This, together with the "Add to study list" menu entry, indeed
gives the misleading impression that there is an actual "study list".
The wording probably deserves to be changed here, and the interface is
certainly old and sub-optimal. That's mostly because I am a kernel
engineer for a living, with very little UI experience - IOW, I just
suck at making UIs!
The left list is just an ordered, hierarchical list in which you can
put anything you like, in the order you like. It is useful to keep
track of e.g. entries in a book - you can have sublists for each
chapter, and keep the entries in their order of appearance. Having
entries in this list does not require you to have them marked as
"studied".
> Yes I noticed it !
> I fixed it in the Qt code last week. I successed to compile kanjidic, jmdict and
> tagaini.
> It was an error during building kanjidic2. The XML parsing failed because some
> contents were empty.
Ah, right. Interestingly the crash does not occur with the Qt4 branch.
> I do not know if my fix is enough (I add a test about empty data) because,
> maybe, the bug is deeper and in the XML file side.
> Should I send you a pull request of it or should I search deeper the cause of
> the bug ? If you want more informations, ask me ! I can open another subject
> about this "bug".
Please send a pull request! Even if it is not the "right" fix, it will
provide information about what is going wrong. And from there we can
work incrementally until we reach a proper fix.
>> QML did not exist at the time I was really active with Tagaini. ;) And
>> while it is definitely fit for mobile, I am not convinced it is the
>> best way to present data to desktop users?
>>
>
> Hum, the GUI will be more "simple" because of Mobile constraints but I think it
> can fit for a Desktop use.
> With QML, it is easy to create some GUI, with the Qt Quick Designer, just to see
> what can be done. I can design some "empty" GUI if you want. You will see if you
> did not like it for Desktop use.
Sure, please do so, especially if it does not require too much of your
time. My only constraints are that I would like to keep the workflow I
described above (find, keep, and train entries). Apart from that, I
leave it to you to come with a better UI than what I did (which should
not be too hard).
I am really happy that you are willing to give this a shot, to be
honest. Tagaini's internals are somehow ok, but the UI is really,
really getting old, and it was not so good to begin with anyway. So
please consider you have a blank check for this.
>> Well, I intent to rework the DB design and core architecture anyway,
>> so there will be a rewrite to some extent. I thought it might also be
>> the opportunity to add portability by switching languages.
>>
>
> Ah okay ! So you planned to rewrite many parts.
Yeah, now will I *actually* do it, that's another story... >_< I
really want to, though.
>> At the risk of infuriating some people, and to be fully honest, I
>> don't really care about iOS at this point. What I am more interested
>> in, and which I haven't seen in the list of platforms supported by Qt,
>> is Chrome OS. But here it seems like we would need a fully HTML
>> interface or something like that.
>>
>
>
> Okay, I understand this part. I am not interesting about iOS either ;) But many
> people have an iPhone so I guess we will have to develop for it.
Yup, although as far as I am concerned this is in the "nice to have" department.
> For me, I have a Firefox OS so I have the same "problem" because all is written
> in HTML5. I agree that it is not supported by QML at this point.
Ah! I have not mentioned Firefox OS because I could not guess you were
a user, but this is also a platform I would like to see supported, if
only by principle! Well here it is again a matter of having a HTML+JS
interface, same as Chrome OS.
So if we summarize what we want to see supported, and the options we
current have:
- desktop version, Qt UI
- desktop version, HTML+ JS (ChromeOS)
- mobile version, QML (Android, iOS?)
- mobile version, HTML + JS (Firefox OS)
... or 4 different UIs. And of course we need a core under the UI, and
at the moment the C++/Qt core can only support the Qt/QML UI. This is
really not a simple choice, but I would like to be able to minimize
code duplication and at least reuse the same core (writing different
UIs is of course cumbersome, but more acceptable). And at the moment I
don't think C++/Qt are viable runtimes for Firefox OS and Chrome OS.
The only common denominator would be Javascript, hence my idea of
rewriting the core using it, and having the UI call into it, no matter
what language it is written in.
Nice - this would at least cover the UI part. The C++ core would still
be an issue.
Me too, that's really the last bit that is missing for Qt to be truly
cross-platform again. We can gamble that HTML will be a supported
platform at some point, and concentrate on Qt/QML which will at least
cover the three major desktops and Android for now. Having the core in
C++ would still be an issue for environments that expect pure HTML
apps though.
>> Actually exploring the feasability of QML would be a great thing to
>> try, if you don't know what to do. ;) It is one of my great shames in
>> life that Tagaini does not support mobile platforms yet, and any step
>> that could help going forward in that direction is probably the best
>> contribution one can make at this point.
>>
>
>
>
> Okay, let's do it !
> I will try the feasability of QML.
> If you agree, I will send you some QML "empty" design to see if it could
> interest you and I will see what can be done.
Yes, having a basis to discuss on would be great. Please don't hold
back if you want to make major changes to the UI.
> As I wanted, in first place, develop my own japanese learning application, I
> have "my" idea of what GUI I was waiting for.
> This is "my idea" so it will be different than yours and, maybe, they are not
> good ideas :) But I can design some QML gui to talk about it. What do you think
> ? And I will look deeper at QML and all its possibilities !
I think that it would be great to seed some new ideas into Tagaini, so
please feel free to come with what you feel is appropriate. I (and
hopefully others too) will then play my role as the old fart in charge
and grumble about what may break the core objectives of the app. After
a few sessions of ping-pong, I am confident that we will reach a good
design that will make everyone happy - at least, that's what my
experience with OSS projects have taught me so far: reasonable people
confronting ideas always result in something that is better than the
sum of the individual proposals. So, don't hold back, be creative, and
break everything - after 6 years of existance, it is time for Tagaini
to get a solid refresh.
It is also my hope that with time you will start seeing Tagaini as
being "your" app too - in the OSS world, app ownership comes with
contributions, and a UI overhaul would be a huge contribution indeed.
Cheers,
Alex.