Integrate an open interface for collaboration plaftorms

@dae wants to integrate AnkiHub to Anki in Integrate AnkiHub Sign-in by abdnh · Pull Request #3232 · ankitects/anki · GitHub

But AnkiHub will stay as a paid, closed-source and third-party platform.

I and some other people have proposed to make it an open interface so any platform could benefit from it, like AnkiCollab (free, open) and AnkiHub (paid, closed).

This topic is to divulgate the idea to the people who hasn’t seen the PR, so they can share their opinions.

9 Likes

So would the open interface be more like this?


Login to collaboration platform
Login to a third-party collaboration platform for extra deck editing and syncing features. Capabilities depend on the platform. Some platforms may be paid. Examples: AnkiCollab (free), AnkiHub (paid)

[dropdown: Select platform]
Login to platform


Or maybe Anki will have an OAuth flow which any platforms can implement and the login will happen in the browser instead?

5 Likes

Regardless of licensing (but especially when dealing with a paid proprietary service) it strikes me as really weird for third-party integration code like this to be built into Anki itself. Wouldn’t this require updates to Anki anytime some major part of the login scheme was changed (a URL change, or adding 2FA for example)?

I second the OAuth flow idea (or really anything else that completely decouples Anki from any third-party integration) and I would hope that any functionality exposed to any particular service would also be available to all others.

5 Likes

Wow this is a very interesting project, I think it will be a new game changer.

In my opinion, it is very unlikely that they will be open interface. The official Anki Damien wants ideally to incorporate collaboration features into the currently closed-source AnkiWeb, and only Ankihub can actually develop such a project.

And if Ankihub becomes more popular cross-platform and medical student Anki users increase, AnkiMobile users will increase as well, so their interests are aligned. (Perhaps technically, the official Anki may be able to develop its own collaboration service.) I think these are quite important for the Anki ecosystem.

2 Likes

it is very unlikely that they will be open interface.

That’s the thing. It only won’t be open if Damien doesn’t want to, since he is the BDFL of Anki. He can simply only accept the integration if it is open.

If AnkiHub gets integrated in a closed way, it will gain a first-mover advantage big enough to mostly destroy any possibility of another competitor platforms, specially free and open ones. People would prefer Anki Hub because it is officially integrated and works in the mobile versions. And open source volunteers likely won’t get the resources to implement an open interface, so this kind of puts AnkiHub as the only viable platform

5 Likes

I think there is no problem if AnkiHub gets a first-mover profit.
According to my previous info, AnkiHub is mostly in the red, and the founder Anking does not receive even $1 from AnkiHub.
In short, they are almost a non-profit volunteer-like organization. (Student users without money can use Ankihub for free if they apply for a scholarship.)

1 Like

It does by the reason appointed by Brayan above

very unlikely without a source to back it up, and even if it was true, the problem lies on licensing rather than monetization

FOSS enthusiastic users would prefer their open source apps to promote others of the same copyleft spectrum when possible

Anking team have done much for the Anki ecosystem, from YT videos, add-on development (miss the free 40+ add-on folder :cry:), and the collaboration platform. Hopefully a consensus can be made


Off topic: i think the idea of providing sign-in integrations are great, would love to see for OpenCollab (Open source AnkiHub alternative) and Anki Leaderboard by Shige

2 Likes

I understand that, but since AnkiWeb is closed source I think it is outside the scope of this.

Another reason is the official Anki plans to develop it.
The official Anki Damien is ideally going to provide the collaboration features from AnkiWeb, so eventually collaboration may be possible natively in AnkiWeb’s shared decks.(That should be extremely useful.)

2 Likes

A little background on the linked PR first: this started when AnkiHub contacted me about ways to improve their new user experience. AnkiHub/AnKing are a significant driver of med students to Anki, and they were concerned by how the use of an add-on for getting started/collaborating makes things complicated for desktop users, and impossible for users who don’t have access to a computer.

I was very reluctant to accept any changes at first, as I don’t particularly like the idea of linking to third-party services, and such collaboration features were something I’ve wanted to add to AnkiWeb for quite some time, and still want to. But I gave it some thought, and ultimately started leaning towards a yes. Some of the points that influenced that decision:

  • For the intersection of Anki and AnkiHub users, it’s a usability win.
  • I don’t want to appear to have double standards. AnkiWeb is not open source either, yet it’s already included in the app.
  • AnkiHub’s concerns about how bad the onboarding/mobile experience is for their users are valid, and I was worried that if I was not willing to bend at all, it may encourage them to consider alternatives like leaving Anki in favour of their own custom SRS, as some other add-ons/platforms have done in the past.

Since there have been some aspersions cast elsewhere, I will state it clearly: there’s no quid-pro-quo arrangement. AnkiHub have contributed to the community in the past (things like sponsoring of certain add-ons), but without strings attached. I will not benefit in any way if the PR is merged.

Regarding an “open interface”, I presume you mean a generic, formally-specified interface that would be appropriate for all collaboration platforms. I think that’s quite a big ask, as the different platforms may have different ways of syncing/representing changes, or may have platform-specific features. I think a more pragmatic approach for now would be to require each collaboration site to submit their own PR, like AnkiHub have done. It can be tailored to their protocol, and doesn’t require their server’s protocol to be changed that way.

8 Likes

I think it’s worth considering whether it should actually appear under the menu item “Syncing” or a separate menu item “Third-party services”. This way, users who want to activate synchronisation via AnkiWeb alone will not encounter it. I would keep the description as short as possible and avoid buzzwords such as “AI capabilities”. Nobody should get the impression that they are not using a fully-fledged Anki version by not using AnkiHub.

5 Likes

Oh, I would like to see official Anki and AnkiHub work together to make free AnkiWeb more powerful… :confused:

1 Like

It is free (as in free beer), and first-party. That’s way different than paid and third-party.

  1. I believe that’s totally possible to do any kind of acceptable platform specific features with a generic interface.
  2. I don’t think that’s sane to incorporate the code of every platform to the main app.
  • It makes the app harder to maintain.
  • The app will get more bloated with the assets of many different platforms while most users won’t use any of them.
  • If any platform wants to be integrated into Anki, they need to do the process of getting their code reviewed and merged, which is a unnecessary barrier

And more importantly, I still stand my point that this kills most of prospects of a competitor being able to raise if AnkiHub wins that kind of first-mover advantage.

I get the pragmatic point and the short term rewards, but it isn’t fair and it isn’t a healthy decision for the future of the ecosystem.

8 Likes

In my opinion only Ankihub would want to use this sign-in integration.

Leaderboard and AnkiCollab do not have advanced web servers to sync decks in real time on mobile, so there is no need for sign-in integration. (Perhaps AnkiCollab does not have the resources to develop such a server either.)

For third-party organizations, it is common for them to provide their own custom SRS, as mentioned by official Anki Damien. (The language learning organization Migaku has already developed their own SRS, and educational organizations that want to make their decks closed source are doing something similar.)

It should be more convenient and economical for them to develop their own mobile app, all the complicated initial setup and downloads for Anki will no longer be necessary, and they can avoid the criticism from free users. They would also be able to sell their products exclusively in the app, and they could use FSRS.

So if Anki third party organizations and developers become advanced in pursuit of profit, they become copy cats of Anki. They can promote themselves and there is no benefit to volunteering with Anki.

This is why I find this project interesting, Ankihub is not trying to develop their own SRS system as such, despite their development and advertising capabilities. They seem to be trying to make Ankihub available on AnkiMobile and AnkiDorid to benefit the Anki ecosystem, so this is the mindset of a volunteer organization or Anki geek, not a for-profit company.

2 Likes

Be aware that endorsing a paid, for profit, closed-source, third-party company, will make some of the current and future contributors do exactly that, or prefer to contribute to another projects with more open standards.

5 Likes

@CravingCrates Maybe you are interested in the discussion in this thread.

1 Like

Although not related to official Anki, there are more medical student Anki users on Reddit than general Anki community users. So the majority of the Anki community may already be medical students.

In the subreddit r/medicalschoolanki, Anking (Ankihub) is a moderator.
The same concerns that BrayanDSO has pointed out in this thread are also being condemned and discussed against Anking on medicalschoolanki.
They are promoting Ankihub on Reddit and the Anking decks are based on free decks developed by volunteers, so they resemble spam. This is a double standard since spam is not allowed on medicalschoolanki.

Anking probably agrees with these criticisms, and they voluntarily quit as moderators once several years ago. (It seems they continued to receive organized low votes.)
However, Anking has since been returned as a moderator at the request of other moderators and users.

This is just speculation, perhaps because there are very few medical student volunteers who can work long term.
Medical students are busy with their studies and also working in the medical field after graduation, so they do not have the time to volunteer like non-medical student Anki users.

It should be practical for Anki medical students and graduates to support organizations like Anking, it is not recommended to reduce their study time or valuable leisure time for Anki volunteering.

So Anking is already a necessity for the medical student Anki community, they cooperate with Anki volunteers and compete with other commercial companies.

However such communities as medicalschoolanki are not related to official Anki or non medical student Anki users, so I think it may not be necessary to consider them at all.

2 Likes

I don’t see the need for a description at all. It is meant for users who already are using AnkiHub. No need to do PR for them. If this is added their business still gets a boost, why do more in-app marketing for them? I have seen such third-party services thing in one other app and they simply list multiple names with the company logo. I notice no description there and you only can do a simple “log in”. No link to create an account. @dae I raised this before but why is there a prompt to create an AnkiHub account? I see this as promotion of AnkiHub rather than providing an easy way to access AH and I think others would agree too.

4 Likes

I agree, but I think it is necessary to promote for Anki.

Anki’s ecosystem is not supported by free volunteers, Anki’s development for AnkiWeb server and desktop is supported by $25 from us AnkiMobile users, and AnkiDroid’s development is supported by donations. Both are clearly inadequate.

Importantly Anki has no subscriptions. So unless Anki continues to increase the number of new Anki users who purchase AnkiMobile ($25), the development budget will dry up. I don’t know how long they can sustain unlimited free servers.

1 Like

Excluding Damien, every commit, PR, review, translation, help support, tutorial, template, script, snippet, shared deck, and most of the addons are supported by volunteers working for free, so I think that’s fair to say that most of the ecosystem is supported by free volunteers.

I believe that most of the contributors and maintainers do it for altruism and the community. They would be quite underpaid if they did it for the money. The money intends to be more as a “thank-you” gift than a compensation. The repo won’t die if suddenly we don’t get any donations. The money also helps us to fix some of the user problems, like an issue that we had only on Xiaomi devices, or another one where it only happened in old ones.

4 Likes

Hmmm, seriously? You exclude about 7,200 commits over 15 years by official Anki Damien from about 11,000 commits of Anki for desktops and say these are not the most part of the Anki ecosystem.

1 Like