How to keep track of concepts that learn while coding in notes
Posted by DueCapital8117@reddit | learnprogramming | View on Reddit | 16 comments
How people remember so many algorithms,syntax, commands and mistakes that often do unknowingly and inbuilt functions which are useful many times. I know I can just google them but what people will do in interviews and exams or hackathons in which they are not allowed to use them
Tuomas90@reddit
I have "Reference" files for some programming languages written in Asciidoc.
They can contain everything I have learned or at least important things I learned.
When I stumble over an annoying problem or quirk in a language, I write it down, so I only have to solve the problem once.
What's important is to have quick access to those files. For example: I just run "psref" in the terminal to open my PowerShell reference and can quickly add a little thing I just learned. Can be just a heading and 3 pasted lines of code.
I wish someone had told me about Asciidoc when I started my Bachelor's. I've been locking for exactly that thing for years while I was trying to format code in Micro$lop Word.
Nowadays I write everything in Asciidoc. When it's not a txt file, its an Asciidoc.
AffectionateLunch327@reddit
keeping track of concepts while coding is hard because you learn them in context and lose them out of context. the best way to retain them is periodic self testing. write down concepts then quiz yourself on them later. quizlink.net can generate questions from your notes which is way better than just reviewing them passively
patternrelay@reddit
A good way to keep track is by creating a personal reference notebook or digital document where you jot down key concepts, algorithms, and functions you find useful. You can organize them by category or problem type, and add notes about common mistakes. Over time, reviewing this will help reinforce what you've learned and make it easier to recall during exams or interviews. The more you practice, the more these things stick without needing to look them up.
I_Am_Astraeus@reddit
Dump concepts into obsidian.
Mostly I just reference my own code. I've written enough where I'll just pull up my own GitHub for the last time I solved something similar
cainhurstcat@reddit
Did you ever read about what steps are required to drive a car? What you have to look for and take care for while driving? If you read that stuff, it looks like it's the most complicated thing in the word, and you feel like you won't ever be able to remember or learn all of that. But driving actually isn't that hard, it just takes some time to learn, which you do by practicing it.
The same goes for coding. You practice, and you learn while doing so. Taking notes about some concepts or how I solved certain problems really helped me, and I still take notes, even if I'm not a total rookie anymore. But the more experienced I become, the less I look into them.
One-Yogurt-6145@reddit
It seems to me that simple practice and frequent use of this information, maybe memorization or using a manual on the phone, for example
DueCapital8117@reddit (OP)
I prefer to use books rather than phone but my problem is how to organize what I am learning in my notes what do u suggest should I start using notepad in phones than books
BrannyBee@reddit
Markdown notes instead of .txt, theres syntax for codeblocks specifically
Then continue on writing normally, easily add another block in the same file wherever.
Can do the same in reddit comments, start and end the block with ```
One-Yogurt-6145@reddit
Maybe try this - https://app.milanote.com
Ill_Professor_6288@reddit
I use Obsidian for coding notes and it's been game changer for me. You can link concepts together and create kind of knowledge web that helps with remembering connections between different algorithms and patterns
For interviews though, I think the key is understanding the underlying logic rather than trying to memorize everything - once you get why something works, the syntax becomes secondary
phoebeb_7@reddit
I'd say build a personal cheat sheet file or per topic as you go.... not a dump of everything like just the things that tripped you up personally, your own mistakes stick better than any tutorial, sort of reverse engineering you can assume, review it for 5 minutes
Dubiisek@reddit
That's the neat part, they don't.
I use anki and put notes into obsidian but even that is generally for broader concepts/things(process, how to do specific thing I think I'll have use for...), never for a single command or a piece of syntax. The notes/explanations in my obsidian/anki are very short and to written in a way I can instantly recognise what to do because there is no point to a note/anki card that takes longer to read and understand than googling the issue(or asking your AI friend) would.
I don't think you should overly stress and spend a lot of time on direct memorisation, if you use something frequently you will remember it before you even realize, when you stop using it you will forget and have to google it (or search through notes) once it's needed again.
HashDefTrueFalse@reddit
IME It's not actually that hard to remember lots of things when you use them frequently. For things I don't use frequently I use plain text files to write notes that are searchable using anything, usually grep. I have a wiki directory full of files that I keep in a remote git repo so that I can access it anywhere. That's basically it. I don't want to use any service or proprietary software/format that someone can discontinue or overzealously monetise in the future, and I like to keep things simple. If it's complicated I'll avoid interacting with it until it's convenient, which means I might fail to capture something I later need.
skarfacegc@reddit
I've been at this for over 20 years. I google all the time. For the set of libraries / frameworks I'm using at the moment, I'll build up memory while working on the project, but whenever I need to use a new library / framework I go back to google/documentation.
Closed book interviews are kind dumb IMO ... if you're asking syntax trivia questions you're not actually guaging skill (IMO). If the interviewee needs 30 minutes to lookup a concept they /should/ know, you've learned something. I.e. I know what red/black trees are, I don't use them so I don't keep the details in my head. A quick search to refresh then I could explain. (if that makes sense)
javascriptBad123@reddit
People dont memorize them forever. They learn specific bullshit for interviews and forget about that 2 days after the interview. Coding is not about memorizing algorithms. Youll automatically memorize whatever you use a lot.
DueCapital8117@reddit (OP)
So it's just , remember it if you want to use it or just throw it away