Show HN: SpacedTime – Remember the important things in your life
spacedtime.com
spacedtime.com
If there was a library like that, a tool like SpacedTime could use it easily (currently it uses fibonacci sequences when determining how soon to recall).
[0] https://github.com/slaypni/SM-15, https://news.ycombinator.com/item?id=9844613
[1] https://github.com/walterscarborough/LibSpacey
[2] https://gist.github.com/doctorpangloss/13ab29abd087dc1927475...
For example I notice it’s really common for spaced repetition algorithms to really easily allow me to shoot myself in the face by learning too much up front and then drowning in reviews; or to destroy myself by missing a few days. Not sure what is out there, but some extensions I’d like as a user is to be “I don’t want to spend more than x time per day doing this, so pace me please”, things like:
- the ability to specify a max “learning load” taking into account projected reviews + new cards
- the ability to “recover” from missed days not by seeing 1000 pending reviews and panicking, but by saying “do an extra 10 cards a day and in two weeks you’ll be caught up”
I’m sure I’m not the first one to think of these things but I don’t know how to research what people have done - and if these kinds of usability things, good documentation with clear comparisons of strategies, flexibility of use in different environments/languages were encapsulated in a library it would be a game changer for me.
I'd love to contribute towards a repo to work on this.
Max 100 cards per day (I can set the number of reviews, but seeing a card twice counts as 2 reviews)
Max 10 new cards per day (restricted by the above limit)
I’ve found this to be a good pace when manually juggling this, but the thing is, I don’t want to manually do it, especially not on a piece of software like anki.
Since learnawesome.org is open-source, if anyone needs a Ruby/Rails implementation of spaced-repetition algorithm, feel free to take code from here: https://github.com/learn-awesome/learn/blob/master/app/model...
Feedback and pull requests are of course welcome :)
I noticed that at the root of the repository the license is specified as Creative Commons, requiring attribution and disallowing commercial use or derivatives, so not really anyone anyone ;)
Doesn’t prevent somebody writing a SRS library in another language from taking your implementation as a good reference point, though. Thank you for sharing!
Do folks feel like there would be value in a hosted service that provides a backend for spaced-repetition apps? It's a bit niche, but feels like there would be demand for a service that would let folks build memorization apps without having to manage their own spaced repetition implementation.
It could become a platform for courses built around SRS, or learning materials like Michael Nielsen's mnemonic media: https://numinous.productions/ttft/ .
I created Spacedtime because I'm known to have a horrible memory. Maybe people are kidding but I wanted to change that. There are flashcard apps out there but I wanted to create one that is focused on creating cards for my personal memories. My personal goal is to store and recall all that is dear to me.
Given the personal nature, I do plan on spending a lot of my time on protecting the user's information. Today, Spacedtime does not have a server and stores all information locally. The command-line app stores information in a local JSON file and the web app stores into Local Storage. However, I'm not sure what is the best user-friendly way to go about the encryption layer and how it should be applied.
I've posted to Product Hunt, [Lobste.rs](http://lobste.rs) and Indiehackers so far. I've been saving my self from posting to HN till now. It is still an MVP but at least it is not the first version :). I've been pretty aggressive in publishing my work.
I'm looking forward to everyone's feedback!
Best,
-James
I've lost far more data to password or key loss or bugs in an encryption software than I've had someone try to our succeed to access/steal/...
So encryption for something that is on your local machine from my perspective wouldn't need to be a priority.
Also easy to use same data across devices.
Not sure on the syncing strategy/performance
Why rewrite you ask?
npm install gives: added 509 packages from 307 contributors and audited 258096 packages in 11.65s
509 packages WTF?!????????????? Javascript ecosystem is a mess.
I did not believe it, but looks like it's true: `npm ls |grep -v deduped |wc`
512 3359 24956
wait for more: `du -sh node_modules`56M !?!?!?!?
and final check: `find node_modules -type f|wc `
6745 6745 303596
Verdict: NO, THANK YOU BUT NO.p.s. among them 6 warnings about using sth deprecated. You can guess how many of 500 of them just dont give a shi^H^H^Hwarning.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^2.1.2 (node_modules/jest-haste-map/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
I haven't seen any of these tools doing anything that anki doesn't — why not contribute to it instead?
However it probably is worth considering an import of Anki cards in the future. For now though, I'm focused on cards with answers you'd only know.
For the same reason that your area likely has more than 1 pizza restaurant. Other people want to take a stab at their own vision of a thing and that's awesome. Personally, I find Anki to be pretty uninviting to the general public.
Fluent-Forever.com is an example of an application of spaced time learning applied specifically to languages and their app is pretty great.
We may disagree philosophically, and that's ok, but I tend not to buy into the perspective that if X already exists and Y is like X then Y should not exist.
I don't mean to be harsh or mean but OP is treating this as a product rather than a hobby projects with producthunt submissions etc. when in reality it's a barebones clone of a standard application that already exists.
Open communities benefit from numbers. Another developer to Anki even if you'd just wrap around nice web ui around it would be significantly more efficient and valuable then reimplementing the same spaced learning logic and starting everything from 0.
The whole point of Anki is to standardize this field - it's libre software made for the medium not for profit.
If anything new Anki UI project would be more impressive and clearly in demand compared to yet another flash card web app.
It's also a very old project where it's hard to enact change that you might want. So if you have a different vision, there's no way to realistically implement that.
But it's not. Just look at the source code for card[1]. It's modern, fully type hinted python3 code, you don't even need to know python to understand big chunk of it.
1 - https://github.com/ankitects/anki/blob/master/pylib/anki/car...
Also, the web client is very bare-bones, unfortunately.
A couple of notes :)
* It seemed to me that the cli and the web app would be related. I had to come read your comment to realize the cli doesn't read from the web app (I also had to come here to realize it was stored locally).
* Once I started creating questions, there was no way to "log out" to get back to the splash page. So that means I couldn't see the npm install command
Good luck!
There isn’t a login so I technically cannot log you out right now. Either way a menu in the app would be helpful to direct users back to the homepage.
I personally use my Todoist for that (Project called "Anki" where every todo is a question and the answer is in the comments. And I can manage intervals by using the task scheduling feature to have them appear later (depending on the ease to remind the answer).
But I like the simplicity of your app and the logo is kinda cool also. +1 for the command line interface. Good idea.
On the website however it seems to make it impossible to go back. Clinking the browser back button gets stuck in a loop after you click "Start Remembering Now"
I am sure that there are people around that can flawlessly remember hundreds of complex passwords and numbers, even ones they have used in a decade. Also, knowing something does not guarantee that we can use that. For example, I guess a lot of you had:
A: Honey, when is our anniversary?
B: April 20th, obviously.
A: And which date is today?
B: April 21st... oh f-.
The notion that memorization is useless or somehow not integral to the learning process is wrong. When you intuitively know an idea, you can build upon it and combine it with other ideas in a subconscious and long-term way. This isn't possible if you externalize your memory to a computer.
"They will cease to exercise memory because they rely on that which is written, calling things to remembrance no longer from within themselves, but by means of external marks."
> The notion that memorization is useless or somehow not integral to the learning process is wrong. When you intuitively know an idea, you can build upon it and combine it with other ideas in a subconscious and long-term way.
There is a profound difference between memorizing sequences of characters (passwords, ids, phone numbers, surnames, dates, particular APIs) and memorizing concepts (which may, but not need to, use these characters as a component).
Don’t disagree with on the sequences of characters point, though. Unfortunately most people don’t make that distinction and lump everything into the ‘not worth memorizing’ camp.
Can you elaborate on the time-line? What do you mean by it?
I don't forsee using this for remembering my security questions. But I will definitely use this for remembering little bits of knowledge and trivia that I want to become second nature.
I'm a big fan of the `spacedtime list` command by the way. Looks good! Preview here: https://i.imgur.com/5BZygbE.png