57 karma · joined December 10, 2014
I don't currently have an option for multiple choice learning. That's something I might do in the far future.
Interop is not bad, I don't do too much interop. I don't use npm-deps but just bundle the React builds separately and include them in the HTML. They rarely change and I set caching header to immutable so the browser will just read them from memory (my CLJS app changes multiple times a week). If you want to use a lot of NPM deps I'd recommend shadow-cljs, there has been a lot of development by the maintainer and it seems to work incredibly well for NPM deps. Feel free to ping me on the Clojure slack, there is also a beginners channel that is very active. And there is a shadow-cljs channel where the maintainer will quickly respond.
Backend: Cassandra + Datomic + Elasticsearch + Redis + Clojure.
SAAS: Mailgun, Datadog.
Editor: Cursive IDE (hands down best Clojure editor)
I think Latex support is interesting. I could lazily load it and then render it. Something to think about for the future...
I have not considered Titan, I looked into JanusGraph the other day but I have intention to switch.
I dabbled in RN + CLJS a few weeks ago and got some toy screens running. So: Yes I'd use that stack for a native app!
1. Let's assume: The flash card isn't new. You last review was 100 days ago.
2. It is due in 3 days but you have some extra time today! You have only 10 cards to review but but have some extra time right now and you're are gone for the weekend.
3. It shouldn't matter if you review the flash card today already even though it's only due in 3 days. If it ends up being 100 or 103 days... It doesn't matter. It's all just a probabilistic model anyways with much larger errors.
4. So in premium: After you've reviewed your most pressing/recently-learnt ones you can keep going and pre-learn your old ones.
There is a few more ideas I have but this is basically it.
Yes, enter should submit the form. I think I had `onSumit` defined at some point but it gave me issues so I reverted it. I'll look into it again and make sure it works. And yes, please feel free to contact me!
It does not yet use PWA, though I'm intending to add it, so that I have offline support. It does however work pretty well on mobile right now. The entire SPA is rather small ~180KB (+ React). On my old phone it refreshes the entire app (initial load is slower) in 1 to 1 1/2 seconds. Reviewing on the phone is pretty good and I use it myself.
The course you're learning will be under "notebook". My course is really only the courses you created.
Edit: Fixed, Rate limiting was hitting for some reason. :/
A few key differences:
- A central DB (it has over 1.8M flash cards) which anybody can edit. Card owner can accept/reject the change request.
- Courses are just references to flash cards, nothing else.
- You decide what you want to learn "Display me field X,Y,Z and prompt me to enter field 'A'. You can choose any field/audio)
- Efficiently add bulk audio to a course
- A super fast UI (it's an SPA)
I have a few ideas for premium which (as far as I know) would bring features that don't exist yet for any spaced repetition platform:
- Prioritized learning (learn the most pressing ones)
- In advance learning (You'll be gone for the weekend, but it's Friday and you have 1h time: You can prelearn "long term" flash cards that'd come around over the weekend).
Also for some tech background: Frontend is pure Clojurescript + Datascript. Backend is Clojure, Cassandra, Datomic, Elasticsearch. I'd use the tech stack again, hands down.
The best introduction is the video at the bottom of the landing page it show all the features. There are only few courses right now so early adopters should (hopefully) be willing to create their own courses.
Questions welcome.