I have no idea if this works for anyone else, but I have a bunch of files in dropbox where I take notes about whatever tech I'm learning. _git-notes.txt, js-notes.js, linux-notes.txt _etc. I also (separately) keep a library of little learning exercises if I've done them.
For programming languages I tend to construct a sort of personal X In Y Minutes type of document as I learn it. Basics like the syntax for vars, loops, interpolation; notes about the runtime; whatever is relevant.
Ultimately the thing is if you've spent some time googling it, writing it down helps solidify it; but also next time you hit the issue you might think "hey... did this before I think..." and you can go back and check. I like to write down the problem in my own words, then the solution including any specific terminology for the domain. Even if I have forgotten the precise terminology, I've found I tend to describe the problem in a pretty reliable/consistent way.
Plus it becomes a little code library. "Oh I need to do this with a string in this language... and there's my example from last time! yoink"