
Ask HN: For programming what to actively memorize? - takizawa11
With programming I still want to actively try to memorize absolutely everything. Anki doesn&#x27;t seem to help long-term. I find it to be mentally taxing and would very much like to find a balance.<p>In terms of coding, what do you actively memorize, vs figure you&#x27;ll indirectly memorize through use, vs figure that you&#x27;ll Google again for in the future?
======
UglyToad
As little as possible. I think there's an extent to which the trend for
'memory hacking' is a little harmful. The field of modern software is too
broad to possibly remember much of it so it's better to learn how to find
answers well and quickly than memorise things. I know about 4 common git
commands by memory and everything else I know how to Google (DDG) the answer.
Using a language with a good IDE also helps, your tools should assist you to
build working things rather than tangling with parameter order trivia.

------
arkis22
I memorize what I need to type into google to get the correct Rails API
documentation page. Maybe one day I'll memorize the API, but I don't care.
APIs change. My productivity limitation is never how quickly I can type the
code correctly.

You don't need to know every English word to be a good English speaker.

~~~
cchen408
I agree. I almost never actively try to memorize anything, it simply happens
through repetition that occurs naturally when writing code.

Remembering how to access the information that you need is pretty much the
only thing that needs to be committed to memory.

------
oliwarner
What? No, really, this seems like a strange question.

You'll learn and forget all sorts of things in your life. The things you
remember, the things you need to remember, are the things you use all the
time.

Outside of exam halls and ridiculous interviews, you almost always have a
search engine. Knowing how to use it is 50% of professional development.

(Note: I'm not saying don't _learn_ things. Of course you need to learn syntax
and how stuff works and ... well, there's huge amounts of stuff any given
developer might know... but there's a difference between picking stuff up and
dryly flash-carding out topics. I [obviously] favour learning what you need by
_doing_ than trying to learn a whole book, cover to cover.)

------
quickthrower2
Memorise the idioms of your language. Eg is it “for in” or “for of” for
looping through an object keys in js. It’s handy to have this in L1 cache so
to speak. This won’t change for 10 years.

Have bookmarks to api docs so you don’t need to google them every time and
search logically through links in those. It’s much faster to look through
nodejs docs than google “how to open file in nodejs” and get a useless 200
word medium article aimed at getting its author some traffic.

Treat remembering like automation. Is it worth automating and is it worth
remembering are similar questions. Y.A.G.N.I. applies where the “a” is one of
[‘aint’, ‘are’].

------
softwaredoug
I think the problem underlying “memorize everything” is wanting to always
choose the best tool/pattern/solution for the job. I think a better solution
is collaborating more regularly or pairing with peers. Collectively you’ll
establish tools and practices that will become second nature. I think too
you’ll “memorize” what you’re supposed to do, because you don’t want to be
embarrassed choosing the wrong thing!

------
LarryMade2
I memorize the commands/functions/capabilities of the language/libraries -
When I face a problem I need to recall what I can utilize to solve the
problem. Which functions will I need or which libraries could get the job
done.

Memorize solutions that you make or read about, like methods to optimise
databases and their queries. The better you write your code the more it will
become your reference.

------
bradwood
mostly productivity stuff: vim keystrokes, readline navigation, !bang queries
in DuckDuckGo to documentation websites. The programming language and habits
come through repetition and practice, rather than active memorisation IMHO.

