9 ms·
Hashcards: A plain-text spaced repetition system
- _giorgio_ 10mo agoAll my notes are in latex. Any way to use them, or do I have to go through markdown format?
- jcul 1y agoThis looks really cool. I thought in the past about implementing something like this myself. I have use anki, and briefly mochi. Having plain text cards that are simple to edit and manage with basic linux tools is really important. I have used the genanki python library in the past to generate cards, but it's not great. Going to give this a go.
- rsanek 1y ago>I have learned that the biggest bottleneck ... is just entering cards into the system. Couldn't agree more. I think I would take this opinion and go even further -- we shouldn't be making cards fully by hand much, if at all, anymore. AI-assisted card creation is to me clearly the future, and already AIs are good enough for this to work well.
- jiehong 10mo agoBut making the card actually help in forging a memory of it.
- jwrallie 10mo agoI think it’s a matter of scale, you can create hundreds of cards in a few minutes with LLMs, and then delete a third later during learning. It depends on the nature of what’s being learned. For language learning for example this is very effective as you can create it directly from content so that you have context.
- mstipetic 10mo agoI wish more people knew about GNU recutils instead of inventing new formats
- dkarl 10mo agoPeople have invented so many things similar but not identical to recutils that I wonder why you think recutils is the solution that everyone should converge on.
- leobg 10mo agoGuilty as charged. First time I hear about it. Thanks. Looks like a natively LLM friendly database format. https://en.wikipedia.org/wiki/Recutils https://en.wikipedia.org/wiki/Recutils
- mstipetic 10mo agoYes! I have a whole blog post in the works about how they make an awesome LLM memory layer.
- knowsuchagency 10mo agoCould you link to it? I'd love to read it. This is also my first time learning of recutils
- leobg 10mo agoDito. (Or MeeToo, +1, or whatever the hell people say these days.)
- blitz_skull 10mo agoInform me please. Never heard of it.
- OJFord 10mo agoYou could think of it like markdown but for structured data, with a spec for how to do that and a utility for querying them.
- yanis_t 10mo agoI've been working on knowledge base + spaced repetition project, and I know how convenient markdown files are. 1. You can view them anywhere (Github renders them nicely) 2. You can edit them in your favorite editor 3. Formatting doesn't decrease the readability 4. Extensible (syntax highlighting, mermaid, mathjax, etc.) 5. Cross-linking which is a core for any knowledge system is free 6. You can use Git for versioning and backup, etc, etc. https://github.com/odosui/mt https://github.com/odosui/mt
- karencarits 10mo agoThis looks really interesting! I am studying "knowledge-heavy" subjects with lots of facts I need to learn, and have been looking for software where I can write flashcards directly within my notes, and both review them when reading my notes, and globally across notes. I like to have my notes locally, so I didnt find any good solutions. But there are some parsers for anki that can process markdown documents and extract items within them
- _puk 10mo agoSounds like literate programming in markdown for anki cards.
- smarkmt 10mo agoFor language learning I've found audio playback and images to be very useful. Could you imagine adding support for this?
- johanyc 10mo agohttps://github.com/eudoxia0/hashcards?tab=readme-ov-file#images https://github.com/eudoxia0/hashcards?tab=readme-ov-file#ima... https://github.com/eudoxia0/hashcards?tab=readme-ov-file#audio https://github.com/eudoxia0/hashcards?tab=readme-ov-file#aud... Both are supported already
- leobg 10mo agoFor the bar exam, I used a combination of an outliner and flashcards. Back then, I was usimg a PalmPilot. The idea was: 1. Turn the subject matter into a knowledge tree. 2. If a branch has more than 5 leaves, you split it up. 3. Flashcards are generated by traversing the tree. The parent node is the question, the child nodes are the answer. The benefit of the tree is that it forces you to think about where in your structure a given piece of new information fits.
- bangonkeyboard 10mo agoWhat was the root question of law?
- leobg 10mo agoWell. Don’t forget I wasn’t really studying “the law”, or “justice”. I was studying for the bar exam. Pretty much two separate things. :)
- ksynwa 10mo agoHow did it work out? Was it helpful?
- KingMob 10mo agoSounds kind of like a mind map.
- smarkmt 10mo agoW.r.t data entry I've resorted at times to using a Google spreadsheet with autogenerated row UUIDs (it's useful for content to have a persistent ID in case you have to correct a typo or add new fields). I also often found myself wanting to make different flashcard decks from the same basic information (for Mandarin pinyin sentence --> character recognition, characters --> English translation). If there was a sheets like data entry interface backed by a text format it would be great.l (I rolled things with streamlit but it's always cumbersome to get started).
- themk 10mo agoYes, the inability to edit cards due to the content-addressing seems like a majot drawback.
- ichverstehe 10mo agoAllow me to plug Ankivalenz[1], my library that turns (structured) Markdown files into Anki decks, using a syntax like this: # Solar System ## Planets ### Color - Earth ?:: Blue - Mars ?:: Red The best thing about it (for me) is that the header structure (and any parent list items) are added to the cards, e.g.: Path: Solar System > Planets > Color Front: Earth Back: Blue This hierarchy makes it much easier to formulate succinct cards, in my experience. The syntax also means that I can easily add cards from my regular Markdown notes, so regular notes and Anki cards live together. [1] https://github.com/vangberg/ankivalenz/ https://github.com/vangberg/ankivalenz/
- adangit 10mo agoWorking on a Rails FSRS app, similar focus on healthy defaults, trying to find the 80/20 of what Anki does today: https://cadence.cards https://cadence.cards, free side project.
- ashishb 10mo agoMarkdown is the final perfect form for every text (non-binary) content based system. Every product will eventually use markdown as their content store.
- krackers 10mo agoOne of the biggest benefits of LLMs is that products are incentivized to have a way to import and export from markdown.
- theshrike79 10mo agoAnd many sites have their documentation pages available as markdown just for this reason. If an LLM can use your product/API easily, it will get more users. If you make it hard, they'll choose something else.
- yellow_lead 10mo agoI'm happy to see others in the space, but I wish Anki competitors would implement a decent 'import from Anki' feature. Otherwise, I think most existing users of SRS are unlikely to switch (because we use Anki and have thousands of cards there already). The data format of Anki is a bit complicated but at least it's SQLite. I've seen a ton of shared decks and resources on ankiweb, but it's true you can't easily put them on GitHub.
- rikafurude21 10mo agoIsnt a sqldump just a text file? That should be easily shareable on Github
- yellow_lead 10mo agoYes, but for Hashcards they're using markdown, so it's much easier to collaborate on
- allenu 10mo agoI wrote my own flashcard app and had a very basic import from Anki feature and I have to admit that I underestimated how Anki handles it. My first attempt at import was very naive and sort "flattened" the imported data into simple front/back content. It lost a lot of fidelity from the original Anki data. After investigating the way Anki represents its flashcards a bit more, I can really appreciate the way Anki uses notes, models, and templates to essentially create "virtual cards" (my term). I suspect other people creating their own flashcard apps underestimate the data model Anki uses and have a hard time matching their own data model with Anki's, which may be why decent import options are hard to find. If someone wants to support Anki deck import, they have to essentially use the same data model to represent notes and models (plus cloze deletions). I'm now adopting Anki's model for my flashcard app for better import fidelity. Regarding the SQLite data format, I was thinking it would be great if there were a text-based format instead for defining the deck and its contents as that would make it much easier to collaborate on shared decks on GitHub, like you suggest. It would be great to have a community work on essential flashcard decks together in an open format that encourages branching and collaboration. I know some groups do this with Anki decks, but I can't imagine the SQLite file format makes it easy to collaborate. I don't think it would be that hard to come up with a universal text file-based format for a flashcard deck that supports notes, models, templates, and assets. For instance, we could have each note placed in its own text file and have the filename encode the a unique ID of that particular note. Having unique identities for everything would make it easier to re-import updated decks to apply new updates if you had previously imported the deck. The note files could also be organized into sub-folders to make it easier to organize groups of info that should be learned together.
- erhuve 10mo agoKnow a big proponent of hashcards, has a setup[1] that's followed up by a prompt[2] that converts websites, pdfs, etc. into hashcards for SRS. [1] https://www.zo.computer/prompts/hashcards-setup https://www.zo.computer/prompts/hashcards-setup [2] https://www.zo.computer/prompts/add-flashcards https://www.zo.computer/prompts/add-flashcards
- analogpixel 10mo agoDoes anyone outside of people in school or language learners use these type of tools in any interesting ways?
- ouked 10mo agoIve used Anki to learn musical intervals
- MichaelNolan 10mo agoKnow personally in real life? No. But there are plenty of examples of people using Anki/SRS tools for interesting things outside of school or 2nd language. I’m firmly in the camp that SRS is widely underrated and underused for working adults. Some examples would be Michael Nielsen, Gwern Branwen, Andy Matuschak and u/SigmaX (reddit - not sure his real name) * http://augmentingcognition.com/ltm.html http://augmentingcognition.com/ltm.html * https://gwern.net/spaced-repetition https://gwern.net/spaced-repetition * https://andymatuschak.org/prompts/ https://andymatuschak.org/prompts/ * https://imgur.com/a/anki-examples-math-engineering-eACA7QM https://imgur.com/a/anki-examples-math-engineering-eACA7QM * https://imgur.com/a/anki-practice-cards-language-music-mathematics-7dpMHhc https://imgur.com/a/anki-practice-cards-language-music-mathe...
- dangus 10mo agoThey'll always be "underrated" and underused because they're so damn unenjoyable. Sure, we all need to study and learn things in life here or there, but the flashcardification of the process makes it boring and painful. From my own personal experience trying it, I find the process to be too far removed from the practice of accomplishing what you are setting out to learn to do. An analogy might be like memorizing a recipe by using Anki cards and not physically cooking it versus doing cooking it a bunch of times without deliberately trying to memorize the recipe. For me, the latter is far more effective because you have your 6 senses of mnemonics to memorize what you are doing. I may not remember that I need 2 cups of flour, but I remember that I scooped my purple flour scoop twice and that the white contents felt powdery like flour and grainy like sugar. Even if I forgot the recipe my body would have smelled, seen, touched, weighed the material and I have all these physical clues to work with. Learning by doing, experiencing, immersing is more of a "repetition that you don't even know you're doing" while Anki/SRS has the feeling of a chore and an obligation.
- brcmthrowaway 10mo agoOk but what about images and formulas?
- Flere-Imsaho 10mo agoThe github page mentions that standard Markdown image linking works just fine: https://github.com/eudoxia0/hashcards https://github.com/eudoxia0/hashcards https://github.com/eudoxia0/hashcards?tab=readme-ov-file#images https://github.com/eudoxia0/hashcards?tab=readme-ov-file#ima...
- jbstack 10mo ago> First, [Anki] is ugly to look at, particularly the review screen. You can customise note types with CSS and Javascript, which means that you can make cards look however you want.
- johanyc 10mo ago"Anki" is ugly. not anki note
- tpoacher 10mo agoI don't mind people comparing such projects against Anki, this is natural since Anki is quite dominant in this space, but I feel like every criticism of Anki on that list was either highly subjective, exaggerated, unfair, or outright wrong and unkind (in a "one does not climb a ladder by throwing others off it" manner). Not saying this is what Fernando intended to do here, but his sharp opinion does come across a bit like it here. Personally, I find the interface is extremely functional; the ability to have deck hierarchies to be a massive feature, not a bug; the WYSIWYG being the default being obvious given the intended audience, but one can still easily edit a textfile and import it or edit in html mode directly if desired; converting something into latex math is as simple as enclosing it in "[$] ... [/$]" and hardly the nightmare it's portrayed as; and finally potentially hacky plugins is a feature, not a bug: occasionally you have a very specific problem and some kind soul creates a solution for you, which may be functional but not the most aesthetically pleasing. That's fine. Anki is a bazaar, not a cathedral, and plugins have ratings and reviews which you can consult if necessary. I have tried many different flashcard solutions, including hacky text-based ones, and I always return to Anki. Despite the fact that most other tools in my stack that I swear by are terminal-based.
- anal_reactor 10mo agoUsing Anki every day for about half an hour (I'm a slow learner lol). Anki sucks, but it's good enough that there's no point looking for other apps.
- earnesti 10mo agoSucks compared to what? I find anki super. It is amazing what other have built for me to use, for free. It is insane value.
- outside1234 10mo agoAnki IS amazing and DOES suck at the same time. I am very glad it exists and this is not meant as a dig at the maintainer for whom I am very grateful. In particular, the UX is a mess. It is very hard for a beginner and frankly it feels like you are in an escape room whenever you want to do something new in terms of difficulty. Once you are over that hump and just internalize its warts, it is AMAZING, but it IS a huge hurdle for a lot of people.
- btilly 10mo agoI think that the real power of spaced repetition is not in flashcard applications like this. It is in behavior modification. Let's take a real example to show how this works. August 19, 2025. My wife called me in to help her decide what to do about a dentist that she thought was ripping her off. A couple of quick suggestions later, and she went to being mad at me about not having heard the problem through before trying to fix it badly. As soon as she was mad, I immediately connected with how stupid what I did was, and that this never goes well. But, of course, it was now too late. Not a mistake I was going to make for a while. But, given my history, a mistake I was bound to make again. I changed that. This time I stuck this into my spaced repetition system. Each time the prompt comes up, I remember that scene, holding in mind how it important it is to emotionally engage, not offer quick suggestions, and be sure to listen to the full problem in detail. It takes me less than 30 seconds. Reviewing this prompt, for my whole lifetime, will take less than 15 minutes of work. Just typing this up this time takes more work than I'll spend on it in the next several years. This mistake hasn't happened since. Not once. And I believe it won't again in my life. I have literally changed dozens of such behaviors. My wife says that it is like there is a whole new me. She can't believe the transformation. All it took is looking at spaced repetition as general purpose structured reinforcement, and not as just a way to study flashcards.
- 0cf8612b2e1e 10mo agoI love this example because the correct, wise approach is so alien to my mind that I do not know how to respond to such situations. I am a professional problem solver, you described a problem, yet you do not want it solved? Just talk about it being annoying, like an immutable facet of the universe? Should I retort about my grievances with gravity making roof repairs a bear?
- mehagar 10mo agoThe way I approach these situations is by reminding myself that the speaker is implicitly making a request - a request for empathy or understanding. While it's tempting to try to solve their problems, what they really want is for their feelings to be heard. "Oh, that must have been frustrating."
- tester457 10mo ago> Your performance and review history is stored in an SQLite database in the same directory as the cards. Do you use Syncthing or something else to sync your performance history between devices?
- zetalyrae 10mo agoYes.
- brianjlogan 10mo agoThis was a super interesting article for me as I'm working on a prototype software aiming to promote spaced repetition and some newer wave learning science as a common approach to "leveling up" in an age where AI is pushing the competitiveness of human labor. I've thought about posting to HN but I'm a little apprehensive of when and how to post. Anyone interested in this and/or have some advice for posting my prototype online for feedback?
- gala8y 10mo agoYou might want to read https://news.ycombinator.com/showhn.html https://news.ycombinator.com/showhn.html.
- brianjlogan 10mo agoThank you!
- willmorrison 10mo agoVery interested, I’ve been working on SRS software and care about this problem too. My email is in my profile.
- MichaelNolan 10mo agoI am always intrigued by new SRS systems, though sadly most are just "simplified" Anki clones. I have always been tempted to throw my hat into the ring. The biggest area for improvement is probably deck collaboration. Most SRS proponents often state that its bets to make cards yourself because the act of making the cards is a key part of the learning process. I don't disagree, but part of the reason that making cards your self is recommended is because the shared decks are, on average, terrible. After that I would like to see more built in support for non front/back or cloze cards. There are a lot of other card types that you can make, but are difficult or impractical to do in anki. Things like "slow" cards, one sided cards, code/music/math/text cards. These can all be done in anki, but it's a pain. Then support for card order/hierarchy/prerequisite an and encompassing graphs like what MathAcademy does. And lastly, a web first experience. Anki is offline/local first. That has the benefit that you are always safe from being rug pulled. But there are a lot of places (like work) where local first does not work well.
- krychu 10mo agoSelf-plug. For anyone working in the terminal: https://github.com/krychu/lrn https://github.com/krychu/lrn. A very simple cli tool, consuming basic txt format. You can use it in a second window while waiting for your compilation to finish. Recently I’ve been also experimenting with defining QA pairs in my note files (in a special section). I then use a custom function in emacs to extract these pairs and push to a file as well as Anki.
- alexpotato 10mo agoLots of comments about using your own systems etc so I'll say two things: 1. The biggest win is just doing spaced repetition. Period You don't even need an algorithm. You can just have options for "remind me in 1 day, 7 days, 14 days". This is how people did with physical cards: they just put the card at the back of the deck, the middle or the front. 2. LLMs now make it trivial to just say "make me an Anki clone in python with these features" and it will come up with something pretty decent. In closing, learning the things that LLMs can't do quickly and efficiently is basically what we should all be doing.
- theshrike79 10mo ago#2 is what I did. In addition to "make me a prompt to go with photos of the school book word list that will output <specific JSON> I can import to my tool" Works pretty well and a lot faster than typing it all in by hand.
- linkage 10mo agoObligatory mention of Obsidian’s most popular spaced repetition plugin: https://github.com/st3v3nmw/obsidian-spaced-repetition https://github.com/st3v3nmw/obsidian-spaced-repetition It has the least friction for creating flashcards I’ve ever seen. You actually don’t even have to create flashcards - you can add any note to the review queue with one keystroke and record the ease of recall with another command.
- _JoRo 10mo agoAs someone who has used spaced repetition extensively I will just provide a few insights that might be helpful: 1. Decide on what's important. Just because you learn something doesn't mean that it should be logged to the system. I used to log a lot of minor details (like niche method signatures or command flags to the system). If you make cards for every detail like this then you will be trapped reviewing 100s of cards daily that you likely never use. 2. For the cards you deem are important, make sure you understand the concept. This often means making 2-5 cards for the concept that test your understanding from different angles (definition, pros, cons, how would I explain this to someone else, etc...). This helps to cement the concept at a foundational level. 3. Try to move from the existing flashcards to 2nd order flashcards or pure application after the first couple reviews. So your foundational cards are now set to review in 6 months or 1 year. At this timescale if you prioritized what was important and made sure that you understood the foundational concepts, then usually simply doing things related to the concepts will be the reviews (and sorry to say but if in 1 year you get a card related to what you are doing, but never used, chances are it probably wasn't that important). In addition to doing, you can also create 2nd order flashcards (which might compare 2 concepts). These types of cards test the foundational knowledge indirectly, and are helpful for higher order thinking. In conclusion, I think spaced repetition is a very effective tool for efficient learning (especially in the first 60 days or so after learning something). I think the major pitfall is not prioritizing what cards get made and being stuck in review hell.
- lovestory 10mo agoSpaced repetitions only work if you use them every day with minimal or no breaks. If the algorithm actually does the recall probability very well like FSRS does, you will keep failing the cards if you don't do them consistently. I learned the hard way where I almost forgot like 80% of my spanish deck that I was certain that I will be able to retire and recall it. But nope, even that word that you felt was rock solid in your memory is gonna fade, so just trust the algorithm.
- outofpaper 10mo agoAnother plain text option is David Miserak's GoCard. https://github.com/DavidMiserak/GoCard https://github.com/DavidMiserak/GoCard
- dustfinger 10mo agoIf you are an emacs user, you might be interested in org-drill, which of course is plain text and uses space repetition algorithm: https://orgmode.org/worg/org-contrib/org-drill.html https://orgmode.org/worg/org-contrib/org-drill.html
- BeetleB 10mo agoorg-drill has not been maintained in a long time. I would recommend org-srs[1], which admittedly may also one day not be maintained (single developer curse). However, I think it has some benefits over org-drill, the main one being it supports FSRS. [1] https://github.com/bohonghuang/org-srs https://github.com/bohonghuang/org-srs
- dustfinger 10mo agoThank you, I will check that out.
- eps 10mo ago> Cards are content-addressed, that is, identified by the hash of their text. Wouldn't this invalidate card's review history if I am to fix a typo in the card's text?
- chotmat 10mo agoobviously, they and their claude didn't think about that
- dnlzro 10mo agoEven acknowledging this flaw, there's a valid reason (simplicity) to design it this way. "Be kind. Don't be snarky."
- zetalyrae 10mo agoYes, and that's fine.
- Kerrick 10mo agoI think that's a good thing. If you learned a false fact based on a typo, you may want to treat the true fact like a brand new fact to be learned.
- victorbjorklund 10mo agoWhot is the capital of France? - Paris Not sure this needs to relearned from scratch
- pvdebbe 10mo agoDon't you just put tick "know this already" or whatever mechanism is used. It'll be asked a couple of times but it shouldn't be "relearned from scratch".
- danielscrubs 10mo agoI did something similar in markdown as the author, but my solution was to generate an unique anchor with a unicode symbol after each answer. Kind of wish I had an SSH frontend though.
- seizethecheese 10mo agoCurious what HN thinks about a spaced repetition social network. You could mark items in the feed to space repeat for yourself. This would also function as a “retweet”, which would align incentives such that content that gets promoted is actually durably useful or interesting. The posts people make would repeat to themselves too, so the source content should be good.
- DennisP 10mo agoI think that's a really interesting idea.
- deleted 10mo ago[deleted]
- btilly 10mo agoI have no idea when I'll go on a cruise next. But if I do and make friends on the cruise, I'm going to call them afterwards on a spaced repetition schedule. I think that this should turn some of those temporary friendships into lifelong ones instead!
- seizethecheese 10mo agoI'm not sure if you meant to reply to this comment. If you did, I'd love to know what you mean :)
- btilly 10mo agoFibonacci works well, and I'm sure that they'll remember me a week later. So schedule a call for a week after the cruise. Then 2 weeks after that. Then 3 weeks after that. Then 5, 8, 13, 21, and so on. Each call will bring back for both of us what it was like on that cruise, bring back that connection, and make both of us feel that any other call (say to meet on another cruise) would be welcome. At least that's the theory. I won't know how well it would work until after I try it. (My wife and I are doing something similar. Every week we pick a memory that we put into a system we have. The joint review of our memories each Sunday is a high point. So I'm sure from that, that this would bring back that sense of connection.)
- BeetleB 10mo agoI've been doing spaced repetition in plain text (org files in Emacs) for 7 years now. org-drill is the original main package, but the newer org-srs is probably better (and supports FSRS).
- jwrallie 10mo agoI think the overall idea is good. If the cards are identified in the database as their hashes, wouldn’t editing the content reset all repetition data so far? Anyone here has been using FSRS long enough to have comments about its effectiveness? I think it’s general consensus that moving from SM-2 to FSRS will show great improvement. I’m using SuperMemo 9 though, so it’s much harder to understand whether there will be an improvement or not.
- WhyNotHugo 10mo agoI’ve been storing cards as markdown with a horizontal ruler separating the prompt from the response and another ruler separating historical data. That is: the historical data in on the same file as the card. This makes cards trivial to sync.
- kuil009 10mo agoRather than treating SRS as a learning tool for facts, I find it far more valuable as a system for recording and periodically revisiting past judgments, especially to reflect on whether a decision made in context was actually a good one.
- nomadygnt 10mo agoThis seems really interesting to me as I don’t often work in domains that require me to know a lot of facts, but I still feel like SRS could be useful. I just don’t quite know how to use it. Could you give me an example of what you mean here? What kind of decisions do you find meaningful to periodically reflect on?
- treetalker 10mo agoI too would appreciate learning more about your implementation. This seems akin to Andy Matuschak's concept of "spaced everything". I presume you use FSRS. What do your card prompts look like? And how do you go about performing, evaluating, and scoring your review of each card?
- noahlt 10mo ago> The thing that makes hashcards unique: it doesn’t use a database. […] Your performance and review history is stored in an SQLite database in the same directory as the cards. Man I was really looking forward to seeing how they stored review history in plain text.
- huhtenberg 10mo agoThe OP says that he doesn't want _cards_ be stored in opaque format, because they are valuable. The review history he doesn't care about. But, yeah, phrasing could've been a bit more precise.
- oneeyedpigeon 10mo agoAbsolutely the same here. It seems weird to have 'no database' as the selling option for the main system, but then use SQLite for that slice of it.
- pi_el_59 10mo agoThis looks awesome, I'm looking forward to trying it
- wodenokoto 10mo agoI’d like to have deck-wide variables/lookup tables and links. The decks for studying Japanese that I’d like would have RTK/wanikani style elements used for mnemonics and I’d like them shown in the answer along with a full description and cross references. Right now I’d have to build a templating system to prebuilt my deck and import it and it’s just a lot of work on top of the work of building the content, but mostly it makes it difficult to edit/update cards while studying.
- est 10mo agoAs Hinton said during an podcast, humans can only learn at the rate of few bits per second. Memory and natural language are of very limited bandwidth.
- dtj1123 10mo agoFor anyone who prefers reviewing their cards via their phones, this appears to work very nicely on Termux
- pvdebbe 10mo agoPerfect timing. I just started to teach my wife Finnish so that she'll have easier time with real language lessons when she gets her paperwork sorted out to move here. And I've feverishly been looking for a self-hosted SRS system where I can feed new content to the "decks" and she can consume it on her schedule. Making micro decks that she'd import in Anki wouldn't be very convenient. This would seem perfect to me. I'm happy to hear other suggestions too?
- hiAndrewQuinn 10mo agoLoistavaa, what a perfectly tailored comment for me, I have like 80% the thing for you at https://finnish.andrew-quinn.me/ https://finnish.andrew-quinn.me/ . Unfortunately I'm all in on Anki but maybe these will sway you nonetheless. Every 6 months I create around 5000 Anki cards out of the last 6 months for reading practice of the YLE Selkouutiset news, on a sentence by sentence basis: https://github.com/Selkouutiset-Archive/selkokortti https://github.com/Selkouutiset-Archive/selkokortti For raw isolated vocabulary my finfreq10k Anki deck can't be beat! https://ankiweb.net/shared/info/1149950470 https://ankiweb.net/shared/info/1149950470 But in your case, and for writing practice, you may also like https://github.com/hiAndrewQuinn/finyap https://github.com/hiAndrewQuinn/finyap , which is self-hosted in the sense that a new deck is just a CSV file in "scenarios". Tsemppiä vaimollesi!
- pvdebbe 10mo agoFantastic tools you've collected here! My rationale for building own decks for my wife is that I'm intending to start slow and easy, and I'll build new cards that are closely tied to days' lessons I'm giving her. I'm hopeful that after a while she gains confidence to start going through premade decks. With anki and similar tools it's important not to just memorize words without having some handle on how to build sentences etc. I spent a lot of time learning Japanese that way, only to find that I maybe memorized words but to build sentences with them...
- freshteapot 10mo agoI have something close to this, even a helpful bulk import. But it works on your own account not someone else’s. The feature https://learnalist.net/faq/add-a-list-overtime-for-spaced-learning.html https://learnalist.net/faq/add-a-list-overtime-for-spaced-le... Bulk import ui https://learnalist.net/toolbox/srs-add-overtime-v1.html https://learnalist.net/toolbox/srs-add-overtime-v1.html You’re welcome to try it, it is not self-hosted. I also have a mobile app, and have been thinking of how to simplify the server etc. Equally been thinking about how to modify the mobile app to work better with a different backend but still maintain notifications (local instead of server). It used to be in the public domain but I moved it to a private repo. I am open to moving it back, there is just a small part of the code I want to keep private.
- rasengan0 10mo agoThank you, finally a SRS implementation I can use for my plain text files. Very nice! I had Gemini make a deck from https://github.com/eudoxia0/hashcards https://github.com/eudoxia0/hashcards , hashcard_tutorial.md and after correcting my deck to account for escaping the < and > with \< and \>; on the second run ($ hashcards drill --card-limit=10 ./)dealt me all the correct cards, like a self QA I really like the keyboard shortcut of space and 1,2,3,4 for making deck reviewing quick work.
- askl 10mo ago> The thing that makes hashcards unique: it doesn’t use a database. > Your performance and review history is stored in an SQLite database in the same directory as the cards.
- knubie 10mo agoI'm a little late to the party here but since Mochi was mentioned I want to take some time to address some of the criticism of it in the article. With regards to cloze deletions the author writes: > cloze deletions in Mochi are very verbose. [...] This is a lot of typing. First, the numbering (1::) is optional. Secondly there are keyboard shortcuts, cmd+L to wrap in {{}} and cmd+1,2,3 to add numbering. The point about note types is fair, and I may a similar function eventually, but I recommend most people to create no more than 10 cards a day. Any more and you risk getting overwhelmed with reviews. In the article the author shows an example of creating 4 (or more) cards for a single atomic element. This excessive card creation probably contributed more to the 1700 overdue cards than the algorithm (more on that later). If you really do want to create multiple cards like this you can use cloze groups. E.g. {{1::Helium}} (symbol: {{2::He}}) has atomic number {{3::2}} Finally, the "biggest problem with Mochi". This is kind of a moot point now that Mochi has an FSRS option, but there are a lot of misconceptions in the article about the algorithm. First being that Mochi's algorithm is inferior to SM-2 because it is simpler, and that the rational for it being simpler is because "the user can reason about the algorithm more easily." I'm not sure where the author got that idea, maybe I mentioned it before as an advantage, but it's not the main reason. The main reason is that the additional complexity in SM-2 is actually detrimental in some subtle ways. [0] The author just assumed the algorithm was worse and gave up. With regards to the forgetting multiplier the author states: > If I forgot something after sixty days, I surely won’t have better recall in thirty. But what is the evidence for this? The assumption here is that the knowledge was "completely lost". For the card to have gotten to 60 days in the first place, you must have remembered it previously after 30 days. Evidence show that reviews strengthen memory, not degrade it. Even FSRS does not completely reset the interval after a forget. I get that the author doesn't want to configure things, but lowering the multiplier to 0.2 for example seems a lot easier than building a brand new SRS flashcards app. Criticisms aside I really do like the idea of hashcards. Plain text, offline, open source. It checks a lot of boxes that I personally look for in software and I'm happy to see more options in this space. [0] https://web.archive.org/web/20200926103540/https://massimmersionapproach.com/table-of-contents/anki/low-key-anki/the-ease-factor-problem/ https://web.archive.org/web/20200926103540/https://massimmer...
- gompertz 10mo agoJust gave it a whirl and it works pretty good. It doesn't seem like you can force hashcards to let you re-review your deck at anytime though as its on a scheduler. (Imagine this is by design of SRS, but a bit annoying can't override with a flag). I think uploading a textbook to NotebookLM and getting it to build out a deck for each chapter will be a great study method.
- mxgrn 10mo agoI also wanted a frictionless card creation experience, and I didn't want another (mobile) app for that. I'm only using SR for new vocabulary in a foreign language, so I created a multilingual AI-powered Telegram bot [1] that does just that. Creating a flash card is as simple as sending a word (or expression) you want to learn. The bot takes care of the rest: generates the translation, pronunciation, and examples. The bot also uses FSRS for SR. [1] https://lexicorn.ai https://lexicorn.ai