
The Mystery of the Deterministic Super Shotgun - kqr
http://two-wrongs.com/the-mystery-of-the-deterministic-super-shotgun
======
speps
I guess he could have searched for the word "shotgun" instead of spending 3
paragraphs explaining how he found the right method.

~~~
Nacraile
Eh. It may have worked correctly in this particular case, but it also would
have been a poor lesson in grokking big unfamiliar codebases. In my
experience, hail-mary grepping for words of interest is a pretty poor
strategy: if it turns up anything at all, it is usually something totally
unrelated, while the code you wanted to find uses some synonym you didn't
think of. Even when you are lucky enough to hit the code you're looking for,
you don't have enough context to understand it.

Tracing a related input from ingestion to the point of interest is a very good
strategy: it's reliable, and you pick up important context on the way.

~~~
jrcii
It's not your fault but I wish the word "grok" would disappear.

~~~
Shish2k
Why? It seems a perfectly cromulent word for a concept which has no other
succinct description

~~~
dalke
How do you think it's being used here? That is, how is it being used here
differently than "come to grips with", "apprehend", "understand", or
"comprehend"?

Another dimension is its use as a shibboleth. In this case, the origins from a
science fiction novel that was popular in the counter-culture of the 1960s and
made its way into the hacker culture of the 1970s and 1980s. Its use indicates
membership in this group, even if the meaning duplicates words in common
practice. Similarly, your use of cromulent indicates your alignment with a TV
series.

If you mean to include that dimension as well, then you are right; using
'grok' embiggens the distinction between ingroup and outgroup in a way that
those words do not.

~~~
TeMPOraL
'Grok' usually has a stronger meaning than the words/phrases you mentioned. It
means to comprehend something deeply, gain intuitive and thorough
understanding.

~~~
dalke
Agreed. I gave a similar definition in a parallel thread. My question is, is
it being used in that sense _here_ by Nacraile. My followup question is, is
that's how it's usually used? I get the stronger sense that it indicates that
one is a hacker, than that it's being used for an otherwise missing concept.

~~~
Retric
I find people usually use it to mean the point where they could modify the
code and expect it to probably work. I might not really understand all the
details, but I know it well enough to become part of it. Which really fits the
origional definition far more than understand.

~~~
dalke
The original definition is "to understand so thoroughly that the observer
becomes a part of the observed—to merge, blend, intermarry, lose identity in
group experience. It means almost everything that we mean by religion,
philosophy, and science—and it means as little to us (because of our Earthling
assumptions) as color means to a blind man."

Your description here is nothing like the original meaning.

~~~
Retric
To use more flowery language. You merge your thoughts with those who came
before allowing for synthesis, extention, or improvement. Nothing in the book
suggests grocking is total understanding just the point where there ready to
act. So, being able to follow the thought process of the coder(s) who came
before instead of just reading the logic is a deeper understanding. Sum=54;
Foreach(int x in Dalist) sum += x;

The logic is easy to follow. But WTF is 54. Until I understand why 54 is there
I don't grock the code even if I understand what it does. Again I might not
agree with the coder but I need to understand what they where thinking before
I can change anything.

