Live data from Hacker News

Show HN: I made a spaced repetition tool to master coding problems

lanki.xyz

61–70 of 103 posts

Re: Show HN: I made a spaced repetition tool to master coding problems

#62
post #60

Earlier quoted context omitted.

Learning the concepts and using SRS are not only not mutually exclusive, they're complementary. There's no quicker way to "grok" a deep technical or mathematical insight than to simply expose yourself to it in a diversity of cognitive contexts. SRS works incredibly well because it generates this diversity as a function of regularly scheduled time. Think of it as entropy generation coupled with heavy reinforcement.

Right. I learned what binary trees were in college and didn't directly use them much afterward. Since interviews sometimes ask about trees, I started my practice of solving tree problems by practicing how to invert a binary tree. I practiced it so much that I can invert a binary tree from memory now, so that I won't get bounced from an interview like the inventor of Homebrew was from a Google interview. Most of the c…

Learning is like nutrition. There is no ”one true way", instead there are lots of people and each one has their own approach to learning.

Some people are closer to each other, and upon realizing that they believe they've found a pattern. But it's like when people tell you that you need to supplement x in your diet. It's possible that x helped you. And it's even possible that you'll find other people with the same nutritional deficit, creating the illusion that everyone would benefit from supplementing. But that's just what it is: a premature extrapolation from anecdotes

Re: Show HN: I made a spaced repetition tool to master coding problems

#64
I've been working on a more effective leetcode site - https://deriveit.org/coding/roadmap.

The goal of our site is to teach smart people how to quickly master leetcode.

We put in a year's worth of thought to make things as simple as possible, and are super proud of our content. Recently, two people used our site to land Amazon. Check it out!

Re: Show HN: I made a spaced repetition tool to master coding problems

#65
post #60

Earlier quoted context omitted.

Learning the concepts and using SRS are not only not mutually exclusive, they're complementary. There's no quicker way to "grok" a deep technical or mathematical insight than to simply expose yourself to it in a diversity of cognitive contexts. SRS works incredibly well because it generates this diversity as a function of regularly scheduled time. Think of it as entropy generation coupled with heavy reinforcement.

Right. I learned what binary trees were in college and didn't directly use them much afterward. Since interviews sometimes ask about trees, I started my practice of solving tree problems by practicing how to invert a binary tree. I practiced it so much that I can invert a binary tree from memory now, so that I won't get bounced from an interview like the inventor of Homebrew was from a Google interview. Most of the c…

> [...] so that I won't get bounced from an interview like the inventor of Homebrew was from a Google interview.

Just for the record, that never actually happened. It's just a thing the homebrew guy made up.

(I know, the rest of your points are unaffected by this. I just feel annoyed when we casually warm up old myths.)

Re: Show HN: I made a spaced repetition tool to master coding problems

#66

I feel like spaced repetition is exactly what you shouldn't do. Spaced repetition is great for rote memorization of arbitrary facts but programming is about how to think about and solve problems. If you master the methods and ideas, you should be able to derive the answers on the spot. That's better than memorization because then you can actually deal with real interviewers who 1) Want to hear your train of thought a…

I thought we were done with the myth that once we understand something, we don't need to memorize. I've come to the realization that memorization is a core competency. The more I have memorized, whether it's syntax or concepts or problems and how to solve them, the better equipped I am and the more productive I am in the future when faced with even novel problems. Memorization saves me insane amounts of time in day to day programming and gives me an edge in being able to solve and understand problems. I don't just have a deep understanding of the code bases I work with, I have a lot of details memorized about what parts there are, how they work, how they're interconnected, certain technical details, etc. And sure, I could just check, but when having meetings about technical problems and planning our projects, it's an insane help to know so much off the top of my head and that I only need to check a handful of things.

Spaced repetition is nothing other than intentionally refreshing something you currently know, to ensure that in a month or a year or longer, you'll still know it. It's not your place to judge what to memorize or not. I'd suggest you should also use spaced repetition on the methods and ideas, since we're very prone to forgetting that too. I would also never criticize anybody for memorizing something, since it's literally just doing intentionally what we would otherwise do haphazardly and by accident.

Re: Show HN: I made a spaced repetition tool to master coding problems

#67

I feel like spaced repetition is exactly what you shouldn't do. Spaced repetition is great for rote memorization of arbitrary facts but programming is about how to think about and solve problems. If you master the methods and ideas, you should be able to derive the answers on the spot. That's better than memorization because then you can actually deal with real interviewers who 1) Want to hear your train of thought a…

I disagree. To be fair, I used to think this too, but then when I started to actually used spaced repetition in the process of learning more complex subjects I became surprised by how much more fluid my reasoning became.

Writing good flashcards is about

- noticing similarities and differences,

- exploring variations of a concept,

- finding generalisations of related concepts,

- learning properties of a concept, etc.

All these things are things you use when reasoning also about more complex ideas.

In other words, spaced repetition is an efficient way to raise the baseline for what counts as a "fundamental fact" which makes it possible to think at a higher level of abstraction.

Re: Show HN: I made a spaced repetition tool to master coding problems

#68

I feel like spaced repetition is exactly what you shouldn't do. Spaced repetition is great for rote memorization of arbitrary facts but programming is about how to think about and solve problems. If you master the methods and ideas, you should be able to derive the answers on the spot. That's better than memorization because then you can actually deal with real interviewers who 1) Want to hear your train of thought a…

A lot of my personal opinion follows, and I'd be very, very happy to hear dissenting opinions! I believe there are at least two valid goals for learning that are relevant to memorization: 1) Learning for mastery / competency to apply the skills to real life endeavors 2) Learning so you can meet some standard necessary to enable certain opportunities in life It seems your opinion comes from a personal value bias towar…

On the topic of memorising arithmetic, I have found it surprisingly useful to memorise a few base ten logarithms. While most people have a good sense of numbers as an arithmetic progression, the geometric perspective is often more useful. (Things like how 3 is halfway from 1 to 10, but 10 is halfway from 1 to 100. (This is just the square root, of course, since that is a power of a half. But it's also useful to know that 2 is one-third of the way to 10, and 1.6 is a tenth of the way to 100. I.e. knowing some logarithms, you can mentally compute arbitrary fractional powers in your head.))

For the curious, I write a little more about it here: https://two-wrongs.com/learning-some-logarithms.html

Re: Show HN: I made a spaced repetition tool to master coding problems

#69
post #4

Earlier quoted context omitted.

So many people coming up with different Anki's. For me Anki is so flexible that I don't think anything will ever easily beat it.

how do you use anki for code/technical skills?

The anki decks/cards are fully customisable to add any fancy extra feature.

Otherwise one can make their own cards (I often use LLMs to convert knowledge into cards and then import them into my account) for just about anything.

Re: Show HN: I made a spaced repetition tool to master coding problems

#70
post #65
post #60

Earlier quoted context omitted.

Right. I learned what binary trees were in college and didn't directly use them much afterward. Since interviews sometimes ask about trees, I started my practice of solving tree problems by practicing how to invert a binary tree. I practiced it so much that I can invert a binary tree from memory now, so that I won't get bounced from an interview like the inventor of Homebrew was from a Google interview. Most of the c…

> [...] so that I won't get bounced from an interview like the inventor of Homebrew was from a Google interview. Just for the record, that never actually happened. It's just a thing the homebrew guy made up. (I know, the rest of your points are unaffected by this. I just feel annoyed when we casually warm up old myths.)

He admitted to lying about it? Do you have a source for that? I couldn't find anything.
Post reply on HN