RECENT TOPICS » View all
vix86 wrote:
That there are people that don't like it doesn't surprise me. If you look around enough you'll find people that don't like something at all. As universally liked that Anki 1 was, I'm sure there were people that didn't like it for the same reasons that many don't like Anki 2.
While Anki 2 may not be perfect, I think the new user experience has actually improved significantly over Anki 1. Making it more logical for new users required breaking existing users' expectations, because there's essentially no room for improvement if you're bound to the interface and behaviours of previous versions. One of many examples is the way deleting a deck from one location causes the deck to be deleted from other places when you sync. The requirement to explicitly enable syncing for each deck and manually delete decks on each client caused heaps of support requests, and was clearly a common point of confusion in the old version. The new behaviour is more logical, but is not what existing users have come to expect. Because it was causing confusion, this new behaviour has been mentioned in the very top "please read this" section of the change notes for some time now.
I understand that it's frustrating having to learn how a new version does things differently, but I think once you get used to it you will grow to like it, and that has been the case with most of the regulars on the Anki forum. Inevitably there will be a vocal minority that rants at length and loudly proclaims that the new version will be the demise of Anki, but judging by the more measured replies on these two threads, I suspect the situation is not as dire as some would like us to believe.
Replying to a few points made on this and the previous thread:
- As mentioned at the top of the change notes, the 10 minute "learning mode" step is optional and can be disabled if you wish Anki 2 to behave more like Anki 1 did. That said, quite a few people have said they're getting higher retention with that extra step, so you may want to give it a chance first.
- Note types can be managed not only in the add screen, but any screen that requires a note type, such as the importing screen or the change note type screen. The logic is simple: make it easy to manage the note types in the times you actually use them. Some people found this non-intuitive however, which is why the last several releases have included the Tools>Manage Note Types option as well.
- AnkiDroid is not developed by me, and I suspect the devs do not follow this forum, so if you have issues with it the best place to ask is on the AnkiDroid forum. Please bear in mind they are volunteers with regular full time jobs, which is why AD2 came out some time after Anki 2 and is still rough around the edges.
- Apple made developers choose between supporting iOS4.2 or supporting the iPhone 5 screen, so they essentially forced developers to drop support for the old version. AM2 was written to support 4.2, and it was only when Apple forced this change that the support had to be dropped.
I just wanna say that you don't really have to reply to anything, it's not like some paid their money and are not satisfied with what they got. Regardless of the reasons behind the changes, I'm sure they were made with the idea of making Anki better (who would want to make his creation worse?), so there's no need for explanations.
Anki2's UI might not be good, but I'm sure it will be fixed sooner or later, so I didn't really get annoyed by it. It's a little confusing for me now, but I know it's because it has more options, which I've missed some in Anki1.
I think people who want to stop using Anki are just looking negatively at it.
(p.s. Learning mode is Godsent! THANKS!)
Here is another way to look at it. Become amazing at Japanese faster so that you don't need it anymore.
Thanks for the replies so far. Sorry, this post is a bit technical.
You are right that one may be able to create a prettier UI by developing plugins or using the Anki library. Admittedly, I haven't looked at the Anki libraries. However, I am not sure if this is the solution to all problems though, or rather, the best way to spend one's time.
My opinion is that Anki is a powerful, but outdated, piece of software. We are living in a world where trends like social collaboration, SaaS, the ability to analyze large data sets, developer platforms, and mobile open a huge range of new possibilities. While Anki provides what I would call "hacks" to allow for some of this, it was not built with today's technologies in mind.
I am not saying Anki is a bad piece of software, it's great, and does what it's supposed to do. It did it for me, and does it for many others. However, I can only start to imagine what a system that was designed with today's technologies could do. Being completely in the cloud, allowing truly collaborative decks (as partner55083777 mentioned), using ML techniques to make smart decisions about which items to study next, or even which online content to look at, providing an open API to develop separate applications that seamlessly integrate with your SRS, and so much more. Anki will never be able to do any of this, no matter how much the author "fixes it up".
Of course this is a nontrivial undertaking, and I'm not sure if it's even worth it. An SRS may not be an important enough piece of software (to enough people in the world) to develop a community and infrastructure around it, though I don't know the Anki users numbers. Something like quizlet.com is not too far away either, but has a slightly different, and more general, purpose.
Here is another way to look at it. Become amazing at Japanese faster so that you don't need it anymore.
Until you learn another language...
Last edited by ThomasB (2013 February 05, 8:07 am)
ThomasB wrote:
My opinion is that Anki is a powerful, but outdated, piece of software.
ThomasB wrote:
Anki will never be able to do any of this, no matter how much the author "fixes it up".
I don't think you quite understand what you are talking about, so to straight things out for you:
Anki = Database (of facts/cards) + Scheduling Algorithm (SM2) + UI
Whatever system you will come out with, regardless of technologies you are going to use, it will have:
??? = Database (of facts/cards) + Scheduling Algorithm (?) + UI
Sorry, but how this system is different from Anki's architecture?
The only thing you can improve on is the UI but saying that Anki is “outdated” is out of place – Anki can progress and, if the will is there, I'm sure it will.
Last edited by Inny Jan (2013 February 05, 9:09 am)
ThomasB wrote:
However, I am not sure if this is the solution to all problems though, or rather, the best way to spend one's time.
My opinion is that Anki is a powerful, but outdated, piece of software. We are living in a world where trends like social collaboration, SaaS, the ability to analyze large data sets, developer platforms, and mobile open a huge range of new possibilities. While Anki provides what I would call "hacks" to allow for some of this, it was not built with today's technologies in mind.
Reading this, you'd think Anki was a piece of software written from a bygone era in COBOL. Anki first took form in 2006. Facebook launched in 2004. You'll have to do a lot better if you want to convince me that Anki is "an outdated piece of software."
However, I can only start to imagine what a system that was designed with today's technologies could do. Being completely in the cloud, allowing truly collaborative decks (as partner55083777 mentioned),
It would be a minor undertaking, but there isn't any reason why you couldn't write a plugin to sync to Google Cloud.
using ML techniques to make smart decisions about which items to study next
This is effectively what the libanki does. Its an algorithm that has been researched out over the years (as in real Psychology experiments) to find the optimum point to show a card without forgetting it. While its definitely within your power to try and make your own algorithm, I can't imagine why anyone would try and re-invent the wheel when the current wheel works just fine. I don't think anyone has complained that Anki's algorithms are horrible, its just been the UI.
or even which online content to look at
If you can write software that can smartly figure out what online content you should look at. Then you probably shouldn't be wasting your time on something like this. You should probably be working at Google or something building some super AI.
providing an open API to develop separate applications that seamlessly integrate with your SRS
While its not flashy like the Win API. Technically all of Anki IS open API. You tap into any and every function that Anki calls and modify its actions. It might be intimidating for some developers, but it does provide more room for expanding the application (at the potential cost of breaking your plugin in the future when the code changes) than what something like Windows API does.
While I'm also interested to see what results come out of someone's endeavors, one pet peeve I've gained in recent years has been Web 2.0 crap. Web 2.0 stuff is only valuable if you have a large user base; meaning if there is no one on it, using it, no one will join it. Even with Facebook and Twitter this was true. They made thousands of fake users and made BS updates before it took off. Then, once you get the user base, you need to have something that people want. Twitter is small posts/news reals, Instagram is photos, Facebook is social. A web 2.0 Anki would be?... "John just studied 4 new kanji from his RTK deck! Check out his deck!" Of course it'll be the one of three decks that everybody uses so there's no point in looking. Maybe people will post and talk about learning and studying tips?...sort of like they do here already?
One other thing that has sort of been missed here as well is the infrastructure cost. If you aren't offloading the processing and storage cost for something like Web 2.0 or Cloud storage, on to something like Google Cloud. Then that's money out of your pocket, unless you are planning to charge for the software, in which case you are setting a pretty high bar to beat with a piece of software that, albeit might be unappealing visually to many, is still free.
One last thing I'll point out that was stated in the other thread.
Irixmark wrote:
At this point it seems to me that the scheduling information in my Anki deck is as important as the content, so any alternative would have to allow me to import it. That's a deep moat around Anki that would probably prevent many from moving, open source or not.
I could be wrong, but it really doesn't sound like you have thought all of this through all that well. Its like you are building a house and you've decided "we'll put a pool here, a football field out back, oh and lets put a heliport on the roof; that'll be useful." And you haven't looked at the feasibility or the budget costs of any of this.
That said. I wish you luck!
Last edited by vix86 (2013 February 05, 9:13 am)
vix86 wrote:
Reading this, you'd think Anki was a piece of software written from a bygone era in COBOL. Anki first took form in 2006. Facebook launched in 2004. You'll have to do a lot better if you want to convince me that Anki is "an outdated piece of software."
It's also written in a web language and libanki could easily be used as the backend for a web-based SRS like the one Thomas wants. All he has to do is adhere to the license.
vix86 wrote:
I could be wrong, but it really doesn't sound like you have thought all of this through all that well. [...]
That said. I wish you luck!
This really sums it up. A plugin to solve one or more of your issues is a rational response, but trying to incite a language learning forum to overthrow the best study tool available is not a good use of anyone's resources.
I highly encourage you to do what the rest of us have done. Create an account on GitHub, fork the project, and make your own Anki. When you come up with something better send a push request to resolve and get your name in that about box!
I would like to respond to all of your comments, unfortunately I don't have time right now since I need to catch a flight. I'll come back to it later. However, there is one thing I would like to respond to.
I could be wrong, but it really doesn't sound like you have thought all of this through all that well. Its like you are building a house and you've decided "we'll put a pool here, a football field out back, oh and lets put a heliport on the roof; that'll be useful." And you haven't looked at the feasibility or the budget costs of any of this.
You're right, I haven't thought this through. In fact, I haven't thought about this at all. I was annoyed by Anki because I started learning a new language, came to this forum, and asked for opinions. However, this is exactly how a lot of successful projects get started. People are annoyed at the current state of things, then go on and build something better.
Alternatives are good.
But a web UI would only for me if it were totally customizeable.
Okay, have some time before I catch my flight ![]()
Inny Jan wrote:
I don't think you quite understand what you are talking about, so to straight things out for you:
Anki = Database (of facts/cards) + Scheduling Algorithm (SM2) + UI
Whatever system you will come out with, regardless of technologies you are going to use, it will have:
??? = Database (of facts/cards) + Scheduling Algorithm (?) + UI
That's a rather naive way of looking at it. All cell phones have a battery + cpu + (other chips) + case + OS. So you are saying companies shouldn't be making other phones?
Yes, whatever I will build (or not build) will have very similar components, it's supposed to be an SRS after all. Obviously it needs some kind of data store, a scheduling algorithm and an UI. However, you can improve the parts, or put them together in different ways, or add more parts. For example, exposing the database as a RESTful service, or changing the data model (Note Types/Notes/Templates/Cards/...) may allow for a lot more, or better, possibilities. Personally, I don't want to touch the scheduling algorithm, SM2 is decent and straightforward to implement. You may gain a little bit of improvement by doing more sophisticated things, but that's not worth the effort.
vix86 wrote:
Reading this, you'd think Anki was a piece of software written from a bygone era in COBOL. Anki first took form in 2006. Facebook launched in 2004. You'll have to do a lot better if you want to convince me that Anki is "an outdated piece of software."
It doesn't matter *when* it's written, I can still write COBOL today, in fact, people do. To me it feels like a piece of software that was written a long time ago. Compare the Anki app to some good native Mac or Windows (or even web with Javascript MVC) apps. Facebook doesn't feel outdated.
vix86 wrote:
This is effectively what the libanki does. Its an algorithm that has been researched out over the years (as in real Psychology experiments) to find the optimum point to show a card without forgetting it. While its definitely within your power to try and make your own algorithm, I can't imagine why anyone would try and re-invent the wheel when the current wheel works just fine. I don't think anyone has complained that Anki's algorithms are horrible, its just been the UI.
Sorry, it didn't express myself clearly enough here. Of course I know what Spaced Reptition is. I was talking about recommending items that are *not* in your deck. For example, if you know what 入口 means, you'd probably also know what 出口 means, so it should be in your deck, but isn't.
vix86 wrote:
If you can write software that can smartly figure out what online content you should look at. Then you probably shouldn't be wasting your time on something like this. You should probably be working at Google or something building some super AI.
It's not as difficult as it may seem, provided you are collecting the right data, which often is the biggest problem. By keeping track of where items in a deck have come from and then building a sparse matrix with feature columns of current spacing interval, applying a collaborative filtering approach like Sparse-ALS you would already get something usable, in relatively few lines of code. And I do have a graduate CS degree fand published research papers in Distributed Machine Learning, so I do know a bit of this stuff, as well as a bit about building systems with a good architecture.
vix86 wrote:
A web 2.0 Anki would be?... "John just studied 4 new kanji from his RTK deck! Check out his deck!" Of course it'll be the one of three decks that everybody uses so there's no point in looking. Maybe people will post and talk about learning and studying tips?...sort of like they do here already?
No, it has nothing to do with social, or sharing, or whatever. Web 2.0 is a buzzword with little meaning behind it, whatever it means to you, it doesn't mean to other people. In general, you don't quite seem to understand what I am proposing, but that probably is my fault, because I don't have a very clear picture of the full system either. What I do know however is that I am not happy with Anki, not only since v2, but I wasn't happy with v1 either for the same reasons, but I was too busy to do anything about it at that time.
vix86 wrote:
One other thing that has sort of been missed here as well is the infrastructure cost. If you aren't offloading the processing and storage cost for something like Web 2.0 or Cloud storage, on to something like Google Cloud. Then that's money out of your pocket, unless you are planning to charge for the software, in which case you are setting a pretty high bar to beat with a piece of software that, albeit might be unappealing visually to many, is still free.
Do you have an idea how cheap this is? Storage is virtually free, and processing cost is absolutely minimal if you use the right technologies. That is, until you hit hundreds of thousands of users (or thousands of concurrent users), which an SRS, how good it may be, will probably never hit, since it's too much of a niche software. You are looking at something like $50-100/month, maximum.
vix86 wrote:
At this point it seems to me that the scheduling information in my Anki deck is as important as the content, so any alternative would have to allow me to import it. That's a deep moat around Anki that would probably prevent many from moving, open source or not.
Yes, that's a fair point, but since Anki is open it's trivial to import the scheduling information.
tokyostyle wrote:
This really sums it up. A plugin to solve one or more of your issues is a rational response, but trying to incite a language learning forum to overthrow the best study tool available is not a good use of anyone's resources. I highly encourage you to do what the rest of us have done. Create an account on GitHub, fork the project, and make your own Anki. When you come up with something better send a push request to resolve and get your name in that about box
I'm not sure why, but I was hoping for a more positive response, hopinh that people feel the same way as me. Maybe I was wrong, and if everybody is more or less happy Anki, then it maybe is a waste of time to build something (in my opinion) better. In that respect the responses were very helpful, I am seriously reevaluting if this is worth the time.
corry wrote:
But a web UI would only for me if it were totally customizeable.
There could still be native applications, the idea is to have a set of APIs that exposes everything necessary to build client applications.
Last edited by ThomasB (2013 February 05, 5:51 pm)
ThomasB wrote:
I'm not sure why, but I was hoping for a more positive response, hopinh that people feel the same way as me. Maybe I was wrong, and if everybody is more or less happy Anki, then it maybe is a waste of time to build something (in my opinion) better. In that respect the responses were very helpful, I am seriously reevaluting if this is worth the time.
I assure you that there are people that feel the same way as you (for example, me.)
Remember that nobody who's -not- using anki is likely to be reading this topic, so all the people that are severely dissatisfied with anki are less likely to participate in this discussion. Second, it's human nature to be quicker to post a counter-point than an agreement.
That said, the majority of Anki users are probably not looking to switch until and less you already have proven software out there. Take the opinions expressed in this topic and other topics and it looks at a guesstimate like no more than 10-20% of people are really frustrated with the current Anki, so you should ask yourself if 10% of Anki's userbase is enough for you to code for. (Or 10% of Anki's Japanese-learning userbase or 10% of Anki's language-learning userbase, depending on how general-purpose or not you decide to be.)
ThomasB wrote:
Sorry, it didn't express myself clearly enough here. Of course I know what Spaced Reptition is. I was talking about recommending items that are *not* in your deck. For example, if you know what 入口 means, you'd probably also know what 出口 means, so it should be in your deck, but isn't.
Ah ok I see what you mean. I'll give you the benefit of the doubt that you know what you'd be doing in this instance. I just know that something like that (finding semantically related words to add), while intuitive to humans, can be difficult for computers. We do have Japanese WordNet now, but it only goes J->E when searching through the trees. There may be a better option out there now though that I'm not aware of.
Were I you, I'd spend my time working on this as a plugin/library and maybe a UI overhaul plugin. Then split the UI off into a separate program when the time came.
It's not as difficult as it may seem, provided you are collecting the right data, which often is the biggest problem. By keeping track of where items in a deck have come from and then building a sparse matrix with feature columns of current spacing interval, applying a collaborative filtering approach like Sparse-ALS you would already get something usable, in relatively few lines of code. And I do have a graduate CS degree fand published research papers in Distributed Machine Learning, so I do know a bit of this stuff, as well as a bit about building systems with a good architecture.
I think you misunderstood, or maybe I did. What I replied to, the bit about "online-content," made it sound like you wanted to build a system that hunts down new material for you to use in your learning based upon what you already know.
There could still be native applications, the idea is to have a set of APIs that exposes everything necessary to build client applications.
Is there any reason why everything needs to be in the cloud? You haven't said that everything would be in the cloud, but this statement makes it sound like data and processing would be in the cloud and people would use a thinclient to access and manipulate/study. Which is fine since Anki currently functions a little like that, just keep in mind that many us still want hard copies of our data. You never know when the cloud might up and evaporate.
You call this view naïve, I call it the architecture (a dumb down view of a complex system that communicates the most important components of that system).
From what you said so far it’s become clear to me that you think you can improve on:
1. The way the data is stored (format and/or location)
2. The User Experience (eg. elements of AI for facts generation)
Re. 1.
Vix already said that having location of your data other than your local drive is probably not going to be an advantage, so we remain with format.
Although you do put forward some technologies, I’m not sure about their advantages over SQLite that is used in Anki. Personally, I can’t imagine myself exchanging my Anki cards/decks with other learners as I like the things to be “my way” (format and content -wise). I can imagine that there are other learners who would feel the same. So, whether it’s SQLite or “database as a RESTful service” it wouldn’t matter that much (again, to me at least).
Re. 2.
If we leave the database as it is in Anki (and you declare yourself that you don’t have particular desire to play with scheduling), we are left with the UI. But look what happened – the whole problem was reduced to only one element of the architecture, one that Anki allows to be fully customisable. If you have good ideas for better UE, and it looks like you have some ideas there, then I would think that your time would be better spent on developing an Anki plugin that implements these ideas of yours than on developing a completely new SRS.
Going to put my 十五円's worth in. As an Anki 1 user, Anki 2 looks very attractive (new, sexy, has a "2" instead of a "1", etc.) but try as I like, the SRS scheduling system in Anki 1 still does what it should, and aside from changing the defaults a little, which means I don't really have to think too much about it and just "get it done".
A lot of people have admirable ambitions to alter the system, make it sync with other devices easier, and loads of other very useful things, but there also seems to be an element to it of making it "better" for the sake of upgrading although in retrospect there are probably already enough features and methods which people aren't using and instead of looking within, are pointing and comparing with other things.
I'm sure the SRS+scheduling algorithm+user interface could be made prettier and able to do many more things, but hasn't it already shown useful in helping people reach fluency magnitudes faster than prior to the rise of the internet? It seems, and this is merely a personal opinion, that unless the system is revolutionized, or involves some form of personalized fictional secret military brainwashing, or high-end experimental neurological programming AI, that most of the future "upgrades" will be an even more minuet increase in human learning proficiency than the last one.
This will sound presumptuous and rude (it probably is- apologies in advance) but a lot of people seem to be spending a lot of energy into making tiny incremental adjustments into an already effective system which has already shown that with enough consistent efforts, the total individual outcome will probably not show much of a difference in the end. Languages take time for the brain to internalize and well, wouldn't it be easier to use whatever SRS system you use, if it is already doing it's job (provided it is allowed to do it's job), and spend those extra energies on native material in the target language?
Anki 2 looks nice, but I'd rather spend an hour or so on Anki 1, not really caring if it could be a few percent more effective in the long run, then use the rest of my 「日本語の時間」 on the stuff I want to enjoy easier.
For whatever reason, it reminds me of card games in that hundreds of years (okay, a long time anyway) and hearts remains hearts, snap is still snap and strip poker is still best not played with the visiting grandparents. I've lost my train of thought. And appetite.
A few percent here and there with each tuning can add up to a large overall change which results in more efficiency and translates into less time spent on the same thing. Damien isn't as involved with numbers and data as SM's author, or if he is I've never seen the charts. Anki's algorithm is based on a SM algorithm from back in the 80's since then the SM algorithm has gone through many revisions. Whether Anki has incorporated any of these I don't know.
History and Info on the algorithm (Hope your math is strong):
http://supermemo.com/help/smalg.htm
But he has added such things as:
2002 - SuperMemo 2002 introduced the first SuperMemo algorithm that is resistant to interference from delay or advancement of repetitions. This makes it possible to safely delay repetitions (Postpone) or advance repetitions (Review):
vix86 wrote:
A few percent here and there with each tuning can add up to a large overall change which results in more efficiency and translates into less time spent on the same thing. Damien isn't as involved with numbers and data as SM's author, or if he is I've never seen the charts. Anki's algorithm is based on a SM algorithm from back in the 80's since then the SM algorithm has gone through many revisions. Whether Anki has incorporated any of these I don't know.
History and Info on the algorithm (Hope your math is strong):
http://supermemo.com/help/smalg.htm
But he has added such things as:2002 - SuperMemo 2002 introduced the first SuperMemo algorithm that is resistant to interference from delay or advancement of repetitions. This makes it possible to safely delay repetitions (Postpone) or advance repetitions (Review):
Correct usage of modern SRS systems such as Anki, Supermemo, etc. can already cut years off the time. A few percentage, however, at this stage, really shouldn't be that much in the long run.
While I do not question the value of minor incremental software updates, I do question some of the same gusto people have in relation to yet not applying it to simpler areas of life. Spending months to develop the cleaning chemicals to remove built up stains on pots and pans can save hours of scrubbing for thousands, no doubt. Spending the extra few seconds to rise and wash the pots out after cooking will save the hours of scrubbing in the first place.
In the long run, studying with Anki, or any other SRS system, should take up an extremely minuet part of your target language immersion/study/output/etc. If the time is really such an issue, it seems almost obscure as to the passion for tiny incremental factors when large amounts of time can become available in a person's life, if they either manage their time better or start doing what they want instead of trying to please everybody.
The average person could probably find an extra hour in the day to do what they want to do, if they took a few moments to manage their time. An hour a day over an average lifetime provides, well, you do the math.
I suppose my reply was a bit vague so I'll clarify a bit more with a more drawn out example.
Lets say with Anki 1 your current rate of new cards is 20 a day. This is a number you have come to over time that has worked. It lets you add new material to your deck without swamping you with more reviews than you can handle in a day or even in a few days. So in a year, you have added 7080 new words, assuming you were persistent enough.
Then Anki 2 comes out. Its new improved algorithms improve scheduling and reduce clumping of reviews on a single day as much as is feasible. You now discover that you can do a little bit more each day and not get as swamped. You can do 25 cards a day now in the same amount of time. 25% more words a day and in a year (8850 words). Even if it was a +5% gain each day, which is 1 extra card a day, that's still 354 extra words in a year.
Now all of this really depends on your mentality about acquiring a language. It sounds like you use a more material driven approach and are less worried about reviews. But there are others on here who have no problem using Anki as a learning device for new material, which is partially why the 'Learn' mode that was incorporated with Anki 2 has been a godsend. For those people, even the extra 5% would be huge.
I think a browser based srs that was a quick and easy to use as native app would be really convenient. But I agree it isnt going to revolutionize learning or anything. Still if someone wants to make it why not.
corry wrote:
I think a browser based srs that was a quick and easy to use as native app would be really convenient.
When ThomasB had talked about "new tech" I immediately thought about an HTML5 web app for Anki. Kind of like how Google Docs, Gmail, and Facebook run now.
=====
Hyperborea wrote:
All of that eaten up (and more) by the time lost in converting your decks
I never asked and I can't recall. Did you switch over to Anki 2 in beta (or worse Alpha) or after it went to release?
having one deck that you deleted on AnkiDroid propagate to all of your decks (in completely opposite behaviour from the past) causing the loss of a couple days study data
The last time you brought this up I didn't bother asking as well. Why didn't you reload from the backup? Ankidroid and Anki both create backups right before the deck is synced (probably just in case the DB corrupts in transit).
the ongoing lost productivity in adding new cards because the interface is more difficult to operate
I was going to write something strong about the Add interface but I think I finally see what you are getting at. The button layout for editing cards is still the same though, behold.
But it just clicked with me what it is I think you are talking about with Decks and Models and Card Templates. Damien dropped Card Templates from Anki 2* and basically merged them with the Card Model. Every model has a set of fields and a way to show those fields. Which would be fine except if you want a Recognition card and a Production card of basically the same info but different layout. I believe there are some clever ways to reduce this workload but it would be technical and as you said most of your friends (maybe yourself) are not technical, thats not an option. So the only logical option in this case would be to make 2 models, format the cards how you want and then add them. Except that when you add it, it clears the field, meaning you have to re-enter all the info to get it on the other model where as you could just check some boxes on Anki 1 and it auto added. If this is what you were referring to in your other post then I apologize for not understanding, I can clearly see where this would be frustrating.
There's a plugin on AnkiWeb now called Frozen Fields, have you tried this out to see if this does anything to eliminate some of the repetition?
Now that I see the problem. Let me ask this. If we were to swap the Model/Type combo box format for a list style panel to the left of the Add window, but attached; One that you could sort and group the models how you want (think explorer-style collapsible folder tree). Would that make the adding process easier, assuming there's a way to fix the repetitive re-entry issue? Because I can see where if you have multiple decks and models in each deck that you need, that hunting through that list would be a bitch. This would be doable in a plugin I believe.
*: Part of the reason why Damien removed the Card Template thing was because cards had to be generated every time the template changed. If you had decks with only a 1000 cards or so, then this was a trivial process, but when I started tweaking my Core6k deck for instance, I soon took heed to how often I did it because it resulted in me having to wait 10-15 minutes for it to finish. It would have to delete all the old cards and then rebuild the new ones. The delete operation is quick in SQL, but the rebuild has to be done inside the client and then committed to SQL and that takes time. That's where a lot of the overhead in the decks came from was generating those cards. I think the point of that implementation in Anki 1 was keeping it close to how you would envision it Object Oriented.
Lastly, one other reason for much of the change in UI and in the deck was to incorporate new technology, namely JQuery. The old Anki made ample use of PyQt for the GUI, but that has been swapped out for a couple of WebViews in PyQT and using JQuery for the rest.
Last edited by vix86 (2013 February 06, 3:29 pm)
vix86 wrote:
But it just clicked with me what it is I think you are talking about with Decks and Models and Card Templates. Damien dropped Card Templates from Anki 2* and basically merged them with the Card Model. Every model has a set of fields and a way to show those fields. Which would be fine except if you want a Recognition card and a Production card of basically the same info but different layout.
As far as I know, this functionality still exists:
http://ankisrs.net/docs/manual.html#_reverse_cards
http://ankisrs.net/docs/manual.html#cardgeneration
http://ankisrs.net/docs/manual.html#_se … generation
It's different from how Anki 1 works, but it gives you almost the same functionality (as far as I can tell).
After looking at the video under reverse cards. I realize the "card template" capability is still there. You just have to click the "+" button in the card template editor. Never knew that.
But I think you still would have to set up conditionals to control when and where to have those templates activated. Which is probably intimidating to some.
Last edited by vix86 (2013 February 07, 6:51 am)
vix86 wrote:
But I think you still would have to set up conditionals to control when and where to have those templates activated. Which is probably intimidating to some.
Yeah, it's kind of annoying. I liked the "Delete Card" functionality from Anki 1. In Anki 2 you can only "Delete Fact".
ThomasB wrote:
I'm not sure why, but I was hoping for a more positive response, hopinh that people feel the same way as me. Maybe I was wrong, and if everybody is more or less happy Anki, then it maybe is a waste of time to build something (in my opinion) better. In that respect the responses were very helpful, I am seriously reevaluting if this is worth the time.
There are definitely people who feel the same way as you do. However for me Anki 2 was a massive upgrade and I got pretty heavily involved with it as soon as I realized it was in a useable state.
Regardless, if there was something I hated about it then I would just modify Anki itself. There's so many other things you could do with your time, such as actually studying Japanese or pursing a web project with more revenue potential, that I feel like encouraging you to try and write an SRS from scratch is irresponsible.
If you do go ahead with this I would ditch the idea of it as just an SRS and trying to make it a whole learning platform like iKnow, LinguaLift, or LanguageCloud. Then at least you would have a clear roadmap to monetizing it if you choose to do so.
Last edited by tokyostyle (2013 February 07, 8:50 am)
Thanks for the responses, I won't be responding to all of them this time, I got a bit tired ![]()
tokyostyle wrote:
Regardless, if there was something I hated about it then I would just modify Anki itself. There's so many other things you could do with your time, such as actually studying Japanese or pursing a web project with more revenue potential, that I feel like encouraging you to try and write an SRS from scratch is irresponsible.
If you do go ahead with this I would ditch the idea of it as just an SRS and trying to make it a whole learning platform like iKnow, LinguaLift, or LanguageCloud. Then at least you would have a clear roadmap to monetizing it if you choose to do so.
Yes, that's what I am worried about as well. I actually do have a long list of projects I've wanting to do, but the SRS thing was somewhere near the top, mainly because I was somewhat passionate about it, not necessarily because it's the most "promising".
I think it is a bad idea to start with the goal of building a "learning platform", as that is too vague of a product, and too much competition. You won't be able to attract any people until you have spend thousands of hours building a product that is on-par with some of the existing solutions out there, and then lots of money on competing with the incumbents in terms of marketing and advertising.
To get attention you need to start from the bottom up, with a niche product, which an SRS is. There is no reason why a well-built and open SRS solution could not become part of a larger "learning platform" later on. Almost all larger companies today started with a very specialized niche product.
Either way, I'll think about this a bit more and post updates here if I decide to do this.
ThomasB wrote:
I actually do have a long list of projects I've wanting to do, but the SRS thing was somewhere near the top, mainly because I was somewhat passionate about it, not necessarily because it's the most "promising".
I don't think anyone wants to dissuade you from writing a plugin to implement collaborative deck building and fact versioning via git, a system to suggest facts to add based on deck content and knowledge of it, tweaks to various parts of the ui, etc (in fact, most of us would openly welcome them). I think all the nay-sayers are just questioning whether there's actually anything that can't be implemented via just improving Anki (especially given the ease of Duck Punching in python).
Can anyone name something useful that can't be achieved via plugin? Let alone replacement of the frontend program (ankiqt) or asking Mr. Elmes for a small change to the backend library (libanki). Completely replacing an open source program with a modular unix design, strong plugin system, and reasonable lead developer just doesn't make sense otherwise.

